source: issm/trunk-jpl/src/wrappers/InterpFromGridToMesh/InterpFromGridToMesh.h@ 22678

Last change on this file since 22678 was 22678, checked in by jdquinn, 7 years ago

CHG: Modified JS module and header file for InterpFromGridToMesh to correctly retrieve data and mesh input lengths.

File size: 2.2 KB
RevLine 
[2290]1/*!\file InterpFromGridToMesh.h
[1172]2 * \brief: prototype for Data Interpolation mex module.
3 */
4
[2290]5#ifndef _InterpFromGridToMesh_H
6#define _InterpFromGridToMesh_H
[1172]7
[13211]8#ifdef HAVE_CONFIG_H
9 #include <config.h>
10#else
11 #error "Cannot compile with HAVE_CONFIG_H symbol! run configure first!"
12#endif
13
[13213]14/*For python modules: needs to come before header files inclusion*/
15#ifdef _HAVE_PYTHON_
16#define PY_ARRAY_UNIQUE_SYMBOL PythonIOSymbol
17#endif
18
[14776]19#include "../bindings.h"
[14948]20#include "../../c/main/globals.h"
[3913]21#include "../../c/modules/modules.h"
[3712]22#include "../../c/shared/shared.h"
[1172]23
24#undef __FUNCT__
[2290]25#define __FUNCT__ "InterpFromGridToMesh"
[1172]26
[13214]27#ifdef _HAVE_MATLAB_MODULES_
[1172]28/* serial input macros: */
[13235]29#define XHANDLE prhs[0]
30#define YHANDLE prhs[1]
31#define DATAHANDLE prhs[2]
32#define XMESHHANDLE prhs[3]
33#define YMESHHANDLE prhs[4]
[1174]34#define DEFAULTHANDLE prhs[5]
[13235]35#define INTERPENUM prhs[6]
[1172]36/* serial output macros: */
37#define DATAMESH (mxArray**)&plhs[0]
[13214]38#endif
[1172]39
[13235]40#ifdef _HAVE_PYTHON_MODULES_
41/* serial input macros: */
42#define XHANDLE PyTuple_GetItem(args,0)
43#define YHANDLE PyTuple_GetItem(args,1)
44#define DATAHANDLE PyTuple_GetItem(args,2)
45#define XMESHHANDLE PyTuple_GetItem(args,3)
46#define YMESHHANDLE PyTuple_GetItem(args,4)
47#define DEFAULTHANDLE PyTuple_GetItem(args,5)
48#define INTERPENUM PyTuple_GetItem(args,6)
49/* serial output macros: */
50#define DATAMESH output,0
51#endif
52
[22673]53#ifdef _HAVE_JAVASCRIPT_MODULES_
54/* serial input macros: */
55#define XHANDLE xIn,nodsIn,1
56#define YHANDLE yIn,nodsIn,1
[22678]57#define DATAHANDLE dataIn,dataNumRowsIn,dataNumColsIn
58#define XMESHHANDLE xMeshIn,meshNumRowsIn,1
59#define YMESHHANDLE yMeshIn,meshNumRowsIn,1
[22676]60#define DEFAULTHANDLE defaultValue
61#define INTERPENUM interpType
[22673]62/* serial output macros: */
[22676]63#define DATAMESH pdataMesh
[22678]64#define WRAPPER(modulename) extern "C" { int InterpFromGridToMeshModule(double** pdataMesh, double* xIn, double* yIn, double* dataIn, double* xMeshIn, double* yMeshIn, double defaultValue, int nodsIn, int dataNumRowsIn, int dataNumColsIn, int meshNumRowsIn, char* interpType)
[22676]65#define nrhs 6
[22673]66#endif
67
[1172]68/* serial arg counts: */
69#undef NLHS
70#define NLHS 1
71#undef NRHS
[1174]72#define NRHS 6
[1172]73
[2290]74#endif /* _INTERPFROMGRIDTOMESH_H */
Note: See TracBrowser for help on using the repository browser.