summaryrefslogtreecommitdiff
path: root/src/include/cctk_Interp.h
diff options
context:
space:
mode:
authortradke <tradke@17b73243-c579-4c4c-a9d2-2d5706c11dac>2001-02-14 14:49:57 +0000
committertradke <tradke@17b73243-c579-4c4c-a9d2-2d5706c11dac>2001-02-14 14:49:57 +0000
commite945662e1bfb9fc852cc839b8d41ca58e3b4c923 (patch)
tree6d1017dd7aa723eacac6c3c3acbd4011c5e94f6b /src/include/cctk_Interp.h
parent013e557f37d9492821f7f4007d0db9b16e83e1e8 (diff)
Added prototypes for new interpolation API routines CCTK_InterpGV() and
CCTK_InterpLocal(). git-svn-id: http://svn.cactuscode.org/flesh/trunk@2021 17b73243-c579-4c4c-a9d2-2d5706c11dac
Diffstat (limited to 'src/include/cctk_Interp.h')
-rw-r--r--src/include/cctk_Interp.h62
1 files changed, 58 insertions, 4 deletions
diff --git a/src/include/cctk_Interp.h b/src/include/cctk_Interp.h
index 733cf002..a36b1359 100644
--- a/src/include/cctk_Interp.h
+++ b/src/include/cctk_Interp.h
@@ -20,6 +20,62 @@
extern "C" {
#endif
+/* prototype for interpolation operator routine
+ working on a list of grid variables */
+typedef int (*cInterpOperatorGV) (cGH *GH,
+ const char *coord_system,
+ int num_points,
+ int num_in_array_indices,
+ int num_out_arrays,
+ void *interp_coord_arrays[],
+ int interp_coord_array_types[],
+ int in_array_indices[],
+ void *out_arrays[],
+ int out_array_types[]);
+
+/* prototype for interpolation operator routine
+ working on local arrays */
+typedef int (*cInterpOperatorLocal) (cGH *GH,
+ int num_points,
+ int num_dims,
+ int num_in_arrays,
+ int num_out_arrays,
+ int coord_dims[],
+ void *coord_arrays[],
+ int coord_array_types[],
+ void *interp_coord_arrays[],
+ int interp_coord_array_types[],
+ void *in_arrays[],
+ int in_array_types[],
+ void *out_arrays[],
+ int out_array_types[]);
+
+int CCTK_InterpHandle (const char *interp);
+
+int CCTK_InterpRegisterOperatorGV (cInterpOperatorGV operator_GV,
+ const char *name);
+
+int CCTK_InterpRegisterOperatorLocal (cInterpOperatorLocal operator_local,
+ const char *name);
+
+int CCTK_InterpGV (cGH *GH,
+ int operator_handle,
+ int coord_system_handle,
+ int num_points,
+ int num_in_array_indices,
+ int num_out_arrays,
+ ...);
+
+int CCTK_InterpLocal (cGH *GH,
+ int operator_handle,
+ int num_points,
+ int num_dims,
+ int num_in_arrays,
+ int num_out_arrays,
+ ...);
+
+
+/* depricated functions */
#define INTERP_REGISTER_ARGLIST \
cGH *, \
int, \
@@ -44,10 +100,8 @@ int CCTK_InterpArray(cGH *GH,
int nOutFields,
...);
-int CCTK_InterpHandle(const char *interp);
-
-int CCTK_InterpRegisterOperator(int (*function)(INTERP_REGISTER_ARGLIST),
- const char *name);
+int CCTK_InterpRegisterOperator (int (*function)(INTERP_REGISTER_ARGLIST),
+ const char *name);
int CCTK_Interp(cGH *GH,
int operation_handle,