Index: /issm/trunk-jpl/src/modules/AverageFilter/AverageFilter.h
===================================================================
--- /issm/trunk-jpl/src/modules/AverageFilter/AverageFilter.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/AverageFilter/AverageFilter.h	(revision 13235)
@@ -32,8 +32,15 @@
 /* serial input macros: */
 #define IMAGEIN prhs[0]
-#define SMOOTH prhs[1]
+#define SMOOTH  prhs[1]
+/* serial output macros: */
+#define IMAGEOUT (mxArray**)&plhs[0]
+#endif
 
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define IMAGEIN PyTuple_GetItem(args,0)
+#define SMOOTH  PyTuple_GetItem(args,1)
 /* serial output macros: */
-#define IMAGEOUT &plhs[0]
+#define IMAGEOUT output,0
 #endif
 
Index: /issm/trunk-jpl/src/modules/BamgConvertMesh/BamgConvertMesh.h
===================================================================
--- /issm/trunk-jpl/src/modules/BamgConvertMesh/BamgConvertMesh.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/BamgConvertMesh/BamgConvertMesh.h	(revision 13235)
@@ -32,10 +32,19 @@
 /* serial input macros: */
 #define INDEXHANDLE prhs[0]
-#define XHANDLE prhs[1]
-#define YHANDLE prhs[2]
-
+#define XHANDLE     prhs[1]
+#define YHANDLE     prhs[2]
 /* serial output macros: */
 #define BAMGMESHOUT    (mxArray**)&plhs[0]
 #define BAMGGEOMOUT    (mxArray**)&plhs[1]
+#endif
+
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define INDEXHANDLE PyTuple_GetItem(args,0)
+#define XHANDLE     PyTuple_GetItem(args,1)
+#define YHANDLE     PyTuple_GetItem(args,2)
+/* serial output macros: */
+#define BAMGMESHOUT    output,0
+#define BAMGGEOMOUT    output,1
 #endif
 
Index: /issm/trunk-jpl/src/modules/BamgMesher/BamgMesher.h
===================================================================
--- /issm/trunk-jpl/src/modules/BamgMesher/BamgMesher.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/BamgMesher/BamgMesher.h	(revision 13235)
@@ -31,11 +31,20 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-#define BAMGMESHIN  (mxArray*)prhs[0]
-#define BAMGGEOMIN  (mxArray*)prhs[1]
-#define BAMGOPTIONS (mxArray*)prhs[2]
+#define BAMGMESHIN  prhs[0]
+#define BAMGGEOMIN  prhs[1]
+#define BAMGOPTIONS prhs[2]
+/* serial output macros: */
+#define BAMGMESHOUT (mxArray**)&plhs[0]
+#define BAMGGEOMOUT (mxArray**)&plhs[1]
+#endif
 
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define BAMGMESHIN  PyTuple_GetItem(args,0)
+#define BAMGGEOMIN  PyTuple_GetItem(args,1)
+#define BAMGOPTIONS PyTuple_GetItem(args,2)
 /* serial output macros: */
-#define BAMGMESHOUT    (mxArray**)&plhs[0]
-#define BAMGGEOMOUT    (mxArray**)&plhs[1]
+#define BAMGMESHOUT output,0
+#define BAMGGEOMOUT output,1
 #endif
 
Index: /issm/trunk-jpl/src/modules/BamgTriangulate/BamgTriangulate.h
===================================================================
--- /issm/trunk-jpl/src/modules/BamgTriangulate/BamgTriangulate.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/BamgTriangulate/BamgTriangulate.h	(revision 13235)
@@ -38,4 +38,13 @@
 #endif
 
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define XHANDLE PyTuple_GetItem(args,0)
+#define YHANDLE PyTuple_GetItem(args,1)
+
+/* serial output macros: */
+#define INDEX output,0
+#endif
+
 /* serial arg counts: */
 #undef NLHS
Index: /issm/trunk-jpl/src/modules/Chaco/Chaco.h
===================================================================
--- /issm/trunk-jpl/src/modules/Chaco/Chaco.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/Chaco/Chaco.h	(revision 13235)
@@ -35,16 +35,30 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-#define A_IN (mxArray*)prhs[0]
-#define VWGTS_IN (mxArray*)prhs[1]
-#define EWGTS_IN (mxArray*)prhs[2]
-#define X_IN (mxArray*)prhs[3]
-#define Y_IN (mxArray*)prhs[4]
-#define Z_IN (mxArray*)prhs[5]
-#define OPTNS_IN (mxArray*)prhs[6]
-#define NPARTS_IN (mxArray*)prhs[7]
-#define GOAL_IN (mxArray*)prhs[8]
-
+#define A_IN      prhs[0]
+#define VWGTS_IN  prhs[1]
+#define EWGTS_IN  prhs[2]
+#define X_IN      prhs[3]
+#define Y_IN      prhs[4]
+#define Z_IN      prhs[5]
+#define OPTNS_IN  prhs[6]
+#define NPARTS_IN prhs[7]
+#define GOAL_IN   prhs[8]
 /* serial output macros: */
 #define ASSGN_OUT (mxArray**)&plhs[0]
+#endif
+
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define A_IN      PyTuple_GetItem(args,0)
+#define VWGTS_IN  PyTuple_GetItem(args,1)
+#define EWGTS_IN  PyTuple_GetItem(args,2)
+#define X_IN      PyTuple_GetItem(args,3)
+#define Y_IN      PyTuple_GetItem(args,4)
+#define Z_IN      PyTuple_GetItem(args,5)
+#define OPTNS_IN  PyTuple_GetItem(args,6)
+#define NPARTS_IN PyTuple_GetItem(args,7)
+#define GOAL_IN   PyTuple_GetItem(args,8)
+/* serial output macros: */
+#define ASSGN_OUT output,0
 #endif
 
Index: /issm/trunk-jpl/src/modules/ContourToMesh/ContourToMesh.h
===================================================================
--- /issm/trunk-jpl/src/modules/ContourToMesh/ContourToMesh.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/ContourToMesh/ContourToMesh.h	(revision 13235)
@@ -33,10 +33,10 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-#define INDEX (mxArray *)prhs[0]
-#define X (mxArray *)prhs[1]
-#define Y (mxArray *)prhs[2]
-#define CONTOURNAME (mxArray *)prhs[3]
-#define INTERPTYPE (mxArray *)prhs[4]
-#define EDGEVALUE (mxArray *)prhs[5]
+#define INDEX       prhs[0]
+#define X           prhs[1]
+#define Y           prhs[2]
+#define CONTOURNAME prhs[3]
+#define INTERPTYPE  prhs[4]
+#define EDGEVALUE   prhs[5]
 /* serial output macros: */
 #define PLHS0 (mxArray**)&plhs[0]
@@ -46,10 +46,10 @@
 #ifdef _HAVE_PYTHON_MODULES_
 /* serial input macros: */
-#define INDEX PyTuple_GetItem(args,0)
-#define X PyTuple_GetItem(args,1)
-#define Y PyTuple_GetItem(args,2)
+#define INDEX       PyTuple_GetItem(args,0)
+#define X           PyTuple_GetItem(args,1)
+#define Y           PyTuple_GetItem(args,2)
 #define CONTOURNAME PyTuple_GetItem(args,3)
-#define INTERPTYPE PyTuple_GetItem(args,4)
-#define EDGEVALUE PyTuple_GetItem(args,5)
+#define INTERPTYPE  PyTuple_GetItem(args,4)
+#define EDGEVALUE   PyTuple_GetItem(args,5)
 /* serial output macros: */
 #define PLHS0 output,0
Index: /issm/trunk-jpl/src/modules/ContourToNodes/ContourToNodes.h
===================================================================
--- /issm/trunk-jpl/src/modules/ContourToNodes/ContourToNodes.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/ContourToNodes/ContourToNodes.h	(revision 13235)
@@ -31,11 +31,22 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* input macros: */
-#define XHANDLE prhs[0]
-#define YHANDLE prhs[1]
-#define FILENAME prhs[2]
+#define XHANDLE         prhs[0]
+#define YHANDLE         prhs[1]
+#define FILENAME        prhs[2]
 #define EDGEVALUEHANDLE prhs[3]
 
 /* serial output macros: */
 #define FLAGS (mxArray**)&plhs[0]
+#endif
+
+#ifdef _HAVE_PYTHON_MODULES_
+/* input macros: */
+#define XHANDLE         PyTuple_GetItem(args,0)
+#define YHANDLE         PyTuple_GetItem(args,1)
+#define FILENAME        PyTuple_GetItem(args,2)
+#define EDGEVALUEHANDLE PyTuple_GetItem(args,3)
+
+/* serial output macros: */
+#define FLAGS output,0
 #endif
 
Index: /issm/trunk-jpl/src/modules/ElementConnectivity/ElementConnectivity.h
===================================================================
--- /issm/trunk-jpl/src/modules/ElementConnectivity/ElementConnectivity.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/ElementConnectivity/ElementConnectivity.h	(revision 13235)
@@ -33,7 +33,6 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-/* serial input macros: */
-#define ELEMENTS (mxArray*)prhs[0]
-#define NODECONNECTIVITY (mxArray*)prhs[1]
+#define ELEMENTS         prhs[0]
+#define NODECONNECTIVITY prhs[1]
 /* serial output macros: */
 #define ELEMENTCONNECTIVITY (mxArray**)&plhs[0]
@@ -42,6 +41,5 @@
 #ifdef _HAVE_PYTHON_MODULES_
 /* serial input macros: */
-/* serial input macros: */
-#define ELEMENTS PyTuple_GetItem(args,0)
+#define ELEMENTS         PyTuple_GetItem(args,0)
 #define NODECONNECTIVITY PyTuple_GetItem(args,1)
 /* serial output macros: */
Index: /issm/trunk-jpl/src/modules/Exp2Kml/Exp2Kml.h
===================================================================
--- /issm/trunk-jpl/src/modules/Exp2Kml/Exp2Kml.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/Exp2Kml/Exp2Kml.h	(revision 13235)
@@ -31,10 +31,18 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-#define EXP_IN    prhs[0]
-#define KML_IN    prhs[1]
-#define SGN_IN    prhs[2]
-
+#define EXP_IN prhs[0]
+#define KML_IN prhs[1]
+#define SGN_IN prhs[2]
 /* serial output macros: */
 #define RET_OUT    (mxArray**)&plhs[0]
+#endif
+
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define EXP_IN PyTuple_GetItem(args,0)
+#define KML_IN PyTuple_GetItem(args,1)
+#define SGN_IN PyTuple_GetItem(args,2)
+/* serial output macros: */
+#define RET_OUT    output,0
 #endif
 
Index: /issm/trunk-jpl/src/modules/HoleFiller/HoleFiller.h
===================================================================
--- /issm/trunk-jpl/src/modules/HoleFiller/HoleFiller.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/HoleFiller/HoleFiller.h	(revision 13235)
@@ -32,8 +32,15 @@
 /* serial input macros: */
 #define IMAGEIN prhs[0]
-#define SMOOTH prhs[1]
+#define SMOOTH  prhs[1]
+/* serial output macros: */
+#define IMAGEOUT (mxArray**)&plhs[0]
+#endif
 
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define IMAGEIN PyTuple_GetItem(args,0)
+#define SMOOTH  PyTuple_GetItem(args,1)
 /* serial output macros: */
-#define IMAGEOUT &plhs[0]
+#define IMAGEOUT output,0
 #endif
 
Index: /issm/trunk-jpl/src/modules/InternalFront/InternalFront.h
===================================================================
--- /issm/trunk-jpl/src/modules/InternalFront/InternalFront.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/InternalFront/InternalFront.h	(revision 13235)
@@ -30,8 +30,14 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-#define MODEL (mxArray*)prhs[0]
-
+#define MODEL prhs[0]
 /* serial output macros: */
 #define FRONT (mxArray**)&plhs[0]
+#endif
+
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define MODEL PyTuple_GetItem(args,0)
+/* serial output macros: */
+#define FRONT output,0]
 #endif
 
Index: /issm/trunk-jpl/src/modules/InterpFromGridToMesh/InterpFromGridToMesh.h
===================================================================
--- /issm/trunk-jpl/src/modules/InterpFromGridToMesh/InterpFromGridToMesh.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/InterpFromGridToMesh/InterpFromGridToMesh.h	(revision 13235)
@@ -31,14 +31,26 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-#define XHANDLE prhs[0]
-#define YHANDLE prhs[1]
-#define DATAHANDLE prhs[2]
-#define XMESHHANDLE prhs[3]
-#define YMESHHANDLE prhs[4]
+#define XHANDLE       prhs[0]
+#define YHANDLE       prhs[1]
+#define DATAHANDLE    prhs[2]
+#define XMESHHANDLE   prhs[3]
+#define YMESHHANDLE   prhs[4]
 #define DEFAULTHANDLE prhs[5]
-#define INTERPENUM prhs[6]
-
+#define INTERPENUM    prhs[6]
 /* serial output macros: */
 #define DATAMESH (mxArray**)&plhs[0]
+#endif
+
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define XHANDLE       PyTuple_GetItem(args,0)
+#define YHANDLE       PyTuple_GetItem(args,1)
+#define DATAHANDLE    PyTuple_GetItem(args,2)
+#define XMESHHANDLE   PyTuple_GetItem(args,3)
+#define YMESHHANDLE   PyTuple_GetItem(args,4)
+#define DEFAULTHANDLE PyTuple_GetItem(args,5)
+#define INTERPENUM    PyTuple_GetItem(args,6)
+/* serial output macros: */
+#define DATAMESH output,0
 #endif
 
Index: /issm/trunk-jpl/src/modules/InterpFromMesh2d/InterpFromMesh2d.h
===================================================================
--- /issm/trunk-jpl/src/modules/InterpFromMesh2d/InterpFromMesh2d.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/InterpFromMesh2d/InterpFromMesh2d.h	(revision 13235)
@@ -31,15 +31,28 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-#define INDEXHANDLE prhs[0]
-#define XHANDLE prhs[1]
-#define YHANDLE prhs[2]
-#define DATAHANDLE prhs[3]
-#define XPRIMEHANDLE prhs[4]
-#define YPRIMEHANDLE prhs[5]
+#define INDEXHANDLE   prhs[0]
+#define XHANDLE       prhs[1]
+#define YHANDLE       prhs[2]
+#define DATAHANDLE    prhs[3]
+#define XPRIMEHANDLE  prhs[4]
+#define YPRIMEHANDLE  prhs[5]
 #define DEFAULTHANDLE prhs[6]
-#define FILENAME prhs[7]
-
+#define FILENAME      prhs[7]
 /* serial output macros: */
 #define DATAPRIME (mxArray**)&plhs[0]
+#endif
+
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define INDEXHANDLE   PyTuple_GetItem(args,0)
+#define XHANDLE       PyTuple_GetItem(args,1)
+#define YHANDLE       PyTuple_GetItem(args,2)
+#define DATAHANDLE    PyTuple_GetItem(args,3)
+#define XPRIMEHANDLE  PyTuple_GetItem(args,4)
+#define YPRIMEHANDLE  PyTuple_GetItem(args,5)
+#define DEFAULTHANDLE PyTuple_GetItem(args,6)
+#define FILENAME      PyTuple_GetItem(args,7)
+/* serial output macros: */
+#define DATAPRIME output,0
 #endif
 
Index: /issm/trunk-jpl/src/modules/InterpFromMeshToGrid/InterpFromMeshToGrid.h
===================================================================
--- /issm/trunk-jpl/src/modules/InterpFromMeshToGrid/InterpFromMeshToGrid.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/InterpFromMeshToGrid/InterpFromMeshToGrid.h	(revision 13235)
@@ -31,20 +31,38 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-#define INDEX (mxArray*)prhs[0]
-#define X (mxArray*)prhs[1]
-#define Y (mxArray*)prhs[2]
-#define MESHDATA (mxArray*)prhs[3]
-#define XMIN (mxArray*)prhs[4]
-#define YMAX (mxArray*)prhs[5]
-#define XPOSTING (mxArray*)prhs[6]
-#define YPOSTING (mxArray*)prhs[7]
-#define NLINES (mxArray*)prhs[8]
-#define NCOLS (mxArray*)prhs[9]
-#define DEFAULTVALUE (mxArray*)prhs[10]
-
+#define INDEX        prhs[0]
+#define X            prhs[1]
+#define Y            prhs[2]
+#define MESHDATA     prhs[3]
+#define XMIN         prhs[4]
+#define YMAX         prhs[5]
+#define XPOSTING     prhs[6]
+#define YPOSTING     prhs[7]
+#define NLINES       prhs[8]
+#define NCOLS        prhs[9]
+#define DEFAULTVALUE prhs[10]
 /* serial output macros: */
 #define XM (mxArray**)&plhs[0]
 #define YM (mxArray**)&plhs[1]
 #define GRIDDATA (mxArray**)&plhs[2]
+#endif
+
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define INDEX        PyTuple_GetItem(args,0)
+#define X            PyTuple_GetItem(args,1)
+#define Y            PyTuple_GetItem(args,2)
+#define MESHDATA     PyTuple_GetItem(args,3)
+#define XMIN         PyTuple_GetItem(args,4)
+#define YMAX         PyTuple_GetItem(args,5)
+#define XPOSTING     PyTuple_GetItem(args,6)
+#define YPOSTING     PyTuple_GetItem(args,7)
+#define NLINES       PyTuple_GetItem(args,8)
+#define NCOLS        PyTuple_GetItem(args,9)
+#define DEFAULTVALUE PyTuple_GetItem(args,10)
+/* serial output macros: */
+#define XM output,0
+#define YM output,1
+#define GRIDDATA output,2
 #endif
 
Index: /issm/trunk-jpl/src/modules/InterpFromMeshToMesh2d/InterpFromMeshToMesh2d.h
===================================================================
--- /issm/trunk-jpl/src/modules/InterpFromMeshToMesh2d/InterpFromMeshToMesh2d.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/InterpFromMeshToMesh2d/InterpFromMeshToMesh2d.h	(revision 13235)
@@ -36,12 +36,11 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-#define INDEX prhs[0]
-#define X prhs[1]
-#define Y prhs[2]
-#define DATA prhs[3]
-#define XINTERP prhs[4]
-#define YINTERP prhs[5]
-#define ARGUMENTS prhs
-
+#define INDEX     prhs[0]
+#define X         prhs[1]
+#define Y         prhs[2]
+#define DATA      prhs[3]
+#define XINTERP   prhs[4]
+#define YINTERP   prhs[5]
+#define ARGUMENTS prhs 
 /* serial output macros: */
 #define DATAINTERP (mxArray**)&plhs[0]
@@ -50,12 +49,11 @@
 #ifdef _HAVE_PYTHON_MODULES_
 /* serial input macros: */
-#define INDEX PyTuple_GetItem(args,0)
-#define X PyTuple_GetItem(args,1)
-#define Y PyTuple_GetItem(args,2)
-#define DATA PyTuple_GetItem(args,3)
-#define XINTERP PyTuple_GetItem(args,4)
-#define YINTERP PyTuple_GetItem(args,5)
+#define INDEX          PyTuple_GetItem(args,0)
+#define X              PyTuple_GetItem(args,1)
+#define Y              PyTuple_GetItem(args,2)
+#define DATA           PyTuple_GetItem(args,3)
+#define XINTERP        PyTuple_GetItem(args,4)
+#define YINTERP        PyTuple_GetItem(args,5)
 #define ARGUMENTS args
-
 /* serial output macros: */
 #define DATAINTERP output,0
Index: /issm/trunk-jpl/src/modules/InterpFromMeshToMesh3d/InterpFromMeshToMesh3d.h
===================================================================
--- /issm/trunk-jpl/src/modules/InterpFromMeshToMesh3d/InterpFromMeshToMesh3d.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/InterpFromMeshToMesh3d/InterpFromMeshToMesh3d.h	(revision 13235)
@@ -31,16 +31,30 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-#define INDEXHANDLE prhs[0]
-#define XHANDLE prhs[1]
-#define YHANDLE prhs[2]
-#define ZHANDLE prhs[3]
-#define DATAHANDLE prhs[4]
-#define XPRIMEHANDLE prhs[5]
-#define YPRIMEHANDLE prhs[6]
-#define ZPRIMEHANDLE prhs[7]
+#define INDEXHANDLE   prhs[0]
+#define XHANDLE       prhs[1]
+#define YHANDLE       prhs[2]
+#define ZHANDLE       prhs[3]
+#define DATAHANDLE    prhs[4]
+#define XPRIMEHANDLE  prhs[5]
+#define YPRIMEHANDLE  prhs[6]
+#define ZPRIMEHANDLE  prhs[7]
 #define DEFAULTHANDLE prhs[8]
-
 /* serial output macros: */
 #define DATAPRIME (mxArray**)&plhs[0]
+#endif
+
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define INDEXHANDLE   PyTuple_GetItem(args,0)
+#define XHANDLE       PyTuple_GetItem(args,1)
+#define YHANDLE       PyTuple_GetItem(args,2)
+#define ZHANDLE       PyTuple_GetItem(args,3)
+#define DATAHANDLE    PyTuple_GetItem(args,4)
+#define XPRIMEHANDLE  PyTuple_GetItem(args,5)
+#define YPRIMEHANDLE  PyTuple_GetItem(args,6)
+#define ZPRIMEHANDLE  PyTuple_GetItem(args,7)
+#define DEFAULTHANDLE PyTuple_GetItem(args,8)
+/* serial output macros: */
+#define DATAPRIME output,0
 #endif
 
Index: /issm/trunk-jpl/src/modules/KMLFileRead/KMLFileRead.h
===================================================================
--- /issm/trunk-jpl/src/modules/KMLFileRead/KMLFileRead.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/KMLFileRead/KMLFileRead.h	(revision 13235)
@@ -31,8 +31,14 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-#define FILENAME      prhs[0]
-
+#define FILENAME prhs[0]
 /* serial output macros: */
 #define ERRORFLAG (mxArray**)&plhs[0]
+#endif
+
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define FILENAME PyTuple_GetItem(args,0)
+/* serial output macros: */
+#define ERRORFLAG output,0
 #endif
 
Index: /issm/trunk-jpl/src/modules/KMLMeshWrite/KMLMeshWrite.h
===================================================================
--- /issm/trunk-jpl/src/modules/KMLMeshWrite/KMLMeshWrite.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/KMLMeshWrite/KMLMeshWrite.h	(revision 13235)
@@ -41,7 +41,22 @@
 #define CMAPHANDLE    prhs[8]
 #define FILENAME      prhs[9]
-
 /* serial output macros: */
 #define ERRORFLAG (mxArray**)&plhs[0]
+#endif
+
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define NAME          PyTuple_GetItem(args,0)
+#define NOTES         PyTuple_GetItem(args,1)
+#define ELEMHANDLE    PyTuple_GetItem(args,2)
+#define NODECONHANDLE PyTuple_GetItem(args,3)
+#define LATHANDLE     PyTuple_GetItem(args,4)
+#define LNGHANDLE     PyTuple_GetItem(args,5)
+#define PARTHANDLE    PyTuple_GetItem(args,6)
+#define DATAHANDLE    PyTuple_GetItem(args,7)
+#define CMAPHANDLE    PyTuple_GetItem(args,8)
+#define FILENAME      PyTuple_GetItem(args,9)
+/* serial output macros: */
+#define ERRORFLAG output,0
 #endif
 
Index: /issm/trunk-jpl/src/modules/KMLOverlay/KMLOverlay.h
===================================================================
--- /issm/trunk-jpl/src/modules/KMLOverlay/KMLOverlay.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/KMLOverlay/KMLOverlay.h	(revision 13235)
@@ -31,8 +31,14 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-#define FILENAME      prhs[0]
-
+#define FILENAME  prhs[0]
 /* serial output macros: */
 #define ERRORFLAG (mxArray**)&plhs[0]
+#endif
+
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define FILENAME  PyTuple_GetItem(args,0)
+/* serial output macros: */
+#define ERRORFLAG output,0
 #endif
 
Index: /issm/trunk-jpl/src/modules/Kml2Exp/Kml2Exp.h
===================================================================
--- /issm/trunk-jpl/src/modules/Kml2Exp/Kml2Exp.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/Kml2Exp/Kml2Exp.h	(revision 13235)
@@ -31,10 +31,18 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-#define KML_IN    prhs[0]
-#define EXP_IN    prhs[1]
-#define SGN_IN    prhs[2]
-
+#define KML_IN prhs[0]
+#define EXP_IN prhs[1]
+#define SGN_IN prhs[2]
 /* serial output macros: */
 #define RET_OUT    (mxArray**)&plhs[0]
+#endif
+
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define KML_IN PyTuple_GetItem(args,0)
+#define EXP_IN PyTuple_GetItem(args,1)
+#define SGN_IN PyTuple_GetItem(args,2)
+/* serial output macros: */
+#define RET_OUT    output,0
 #endif
 
Index: /issm/trunk-jpl/src/modules/Kriging/Kriging.h
===================================================================
--- /issm/trunk-jpl/src/modules/Kriging/Kriging.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/Kriging/Kriging.h	(revision 13235)
@@ -30,13 +30,26 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-#define X            (mxArray *)prhs[0]
-#define Y            (mxArray *)prhs[1]
-#define OBSERVATIONS (mxArray *)prhs[2]
-#define XINTERP      (mxArray *)prhs[3]
-#define YINTERP      (mxArray *)prhs[4]
+#define X            prhs[0]
+#define Y            prhs[1]
+#define OBSERVATIONS prhs[2]
+#define XINTERP      prhs[3]
+#define YINTERP      prhs[4]
 
 /* serial output macros: */
 #define PREDICTIONS (mxArray**)&plhs[0]
 #define ERROR       (mxArray**)&plhs[1]
+#endif
+
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define X            PyTuple_GetItem(args,0)
+#define Y            PyTuple_GetItem(args,1)
+#define OBSERVATIONS PyTuple_GetItem(args,2)
+#define XINTERP      PyTuple_GetItem(args,3)
+#define YINTERP      PyTuple_GetItem(args,4)
+
+/* serial output macros: */
+#define PREDICTIONS output,0
+#define ERROR       output,1
 #endif
 
Index: /issm/trunk-jpl/src/modules/Ll2xy/Ll2xy.h
===================================================================
--- /issm/trunk-jpl/src/modules/Ll2xy/Ll2xy.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/Ll2xy/Ll2xy.h	(revision 13235)
@@ -31,11 +31,20 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-#define LAT_IN    prhs[0]
-#define LON_IN    prhs[1]
-#define SGN_IN    prhs[2]
+#define LAT_IN prhs[0]
+#define LON_IN prhs[1]
+#define SGN_IN prhs[2]
+/* serial output macros: */
+#define X_OUT (mxArray**)&plhs[0]
+#define Y_OUT (mxArray**)&plhs[1]
+#endif
 
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define LAT_IN PyTuple_GetItem(args,0)
+#define LON_IN PyTuple_GetItem(args,1)
+#define SGN_IN PyTuple_GetItem(args,2)
 /* serial output macros: */
-#define X_OUT    (mxArray**)&plhs[0]
-#define Y_OUT    (mxArray**)&plhs[1]
+#define X_OUT output,0
+#define Y_OUT output,1
 #endif
 
Index: /issm/trunk-jpl/src/modules/MeshPartition/MeshPartition.h
===================================================================
--- /issm/trunk-jpl/src/modules/MeshPartition/MeshPartition.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/MeshPartition/MeshPartition.h	(revision 13235)
@@ -34,10 +34,18 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-#define MODEL (mxArray*)prhs[0]
-#define NUMAREAS (mxArray*)prhs[1]
-
+#define MODEL    prhs[0]
+#define NUMAREAS prhs[1]
 /* serial output macros: */
 #define ELEMENTPARTITIONING (mxArray**)&plhs[0]
 #define NODEPARTITIONING (mxArray**)&plhs[1]
+#endif
+
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define MODEL    PyTuple_GetItem(args,0)
+#define NUMAREAS PyTuple_GetItem(args,1)
+/* serial output macros: */
+#define ELEMENTPARTITIONING output,0
+#define NODEPARTITIONING output,1
 #endif
 
Index: /issm/trunk-jpl/src/modules/MeshProfileIntersection/MeshProfileIntersection.h
===================================================================
--- /issm/trunk-jpl/src/modules/MeshProfileIntersection/MeshProfileIntersection.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/MeshProfileIntersection/MeshProfileIntersection.h	(revision 13235)
@@ -31,11 +31,20 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* input macros: */
-#define INDEX prhs[0]
-#define X prhs[1]
-#define Y prhs[2]
+#define INDEX    prhs[0]
+#define X        prhs[1]
+#define Y        prhs[2]
 #define FILENAME prhs[3]
-
 /* serial output macros: */
 #define SEGMENTS (mxArray**)&plhs[0]
+#endif
+
+#ifdef _HAVE_PYTHON_MODULES_
+/* input macros: */
+#define INDEX    PyTuple_GetItem(args,0)
+#define X        PyTuple_GetItem(args,1)
+#define Y        PyTuple_GetItem(args,2)
+#define FILENAME PyTuple_GetItem(args,3)
+/* serial output macros: */
+#define SEGMENTS output,0
 #endif
 
Index: /issm/trunk-jpl/src/modules/NodeConnectivity/NodeConnectivity.h
===================================================================
--- /issm/trunk-jpl/src/modules/NodeConnectivity/NodeConnectivity.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/NodeConnectivity/NodeConnectivity.h	(revision 13235)
@@ -30,6 +30,6 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-#define ELEMENTS (mxArray*)prhs[0]
-#define NUMNODES (mxArray*)prhs[1]
+#define ELEMENTS prhs[0]
+#define NUMNODES prhs[1]
 /* serial output macros: */
 #define CONNECTIVITY (mxArray**)&plhs[0]
Index: /issm/trunk-jpl/src/modules/PointCloudFindNeighbors/PointCloudFindNeighbors.h
===================================================================
--- /issm/trunk-jpl/src/modules/PointCloudFindNeighbors/PointCloudFindNeighbors.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/PointCloudFindNeighbors/PointCloudFindNeighbors.h	(revision 13235)
@@ -31,11 +31,20 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* input macros: */
-#define XHANDLE prhs[0]
-#define YHANDLE prhs[1]
+#define XHANDLE     prhs[0]
+#define YHANDLE     prhs[1]
 #define MINDISTANCE prhs[2]
 #define MULTITHREAD prhs[3]
-
 /* serial output macros: */
 #define FLAGS (mxArray**)&plhs[0]
+#endif
+
+#ifdef _HAVE_PYTHON_MODULES_
+/* input macros: */
+#define XHANDLE     PyTuple_GetItem(args,0)
+#define YHANDLE     PyTuple_GetItem(args,1)
+#define MINDISTANCE PyTuple_GetItem(args,2)
+#define MULTITHREAD PyTuple_GetItem(args,3)
+/* serial output macros: */
+#define FLAGS output,0
 #endif
 
Index: /issm/trunk-jpl/src/modules/PropagateFlagsFromConnectivity/PropagateFlagsFromConnectivity.h
===================================================================
--- /issm/trunk-jpl/src/modules/PropagateFlagsFromConnectivity/PropagateFlagsFromConnectivity.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/PropagateFlagsFromConnectivity/PropagateFlagsFromConnectivity.h	(revision 13235)
@@ -31,11 +31,20 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-#define CONNECTIVITY (mxArray*)prhs[0]
-#define POOL (mxArray*)prhs[1]
-#define INDEX (mxArray*)prhs[2]
-#define FLAGS (mxArray*)prhs[3]
-
+#define CONNECTIVITY prhs[0]
+#define POOL         prhs[1]
+#define INDEX        prhs[2]
+#define FLAGS        prhs[3]
 /* serial output macros: */
 #define POOLOUT (mxArray**)&plhs[0]
+#endif
+
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define CONNECTIVITY PyTuple_GetItem(args,0)
+#define POOL         PyTuple_GetItem(args,1)
+#define INDEX        PyTuple_GetItem(args,2)
+#define FLAGS        PyTuple_GetItem(args,3)
+/* serial output macros: */
+#define POOLOUT output,0
 #endif
 
Index: /issm/trunk-jpl/src/modules/Shp2Kml/Shp2Kml.h
===================================================================
--- /issm/trunk-jpl/src/modules/Shp2Kml/Shp2Kml.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/Shp2Kml/Shp2Kml.h	(revision 13235)
@@ -31,10 +31,18 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-#define SHP_IN    prhs[0]
-#define KML_IN    prhs[1]
-#define SGN_IN    prhs[2]
+#define SHP_IN  prhs[0]
+#define KML_IN  prhs[1]
+#define SGN_IN  prhs[2]
+/* serial output macros: */
+#define RET_OUT (mxArray**)&plhs[0]
+#endif
 
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define SHP_IN PyTuple_GetItem(args,0)
+#define KML_IN PyTuple_GetItem(args,1)
+#define SGN_IN PyTuple_GetItem(args,2)
 /* serial output macros: */
-#define RET_OUT    (mxArray**)&plhs[0]
+#define RET_OUT output,0
 #endif
 
Index: /issm/trunk-jpl/src/modules/TriMesh/TriMesh.h
===================================================================
--- /issm/trunk-jpl/src/modules/TriMesh/TriMesh.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/TriMesh/TriMesh.h	(revision 13235)
@@ -33,7 +33,7 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-#define DOMAINOUTLINE  (mxArray *)prhs[0]
-#define RIFTSOUTLINE   (mxArray *)prhs[1]
-#define AREA           (mxArray *)prhs[2]
+#define DOMAINOUTLINE  prhs[0]
+#define RIFTSOUTLINE   prhs[1]
+#define AREA           prhs[2]
 /* serial output macros: */
 #define INDEX             (mxArray**)&plhs[0]
Index: /issm/trunk-jpl/src/modules/TriaSearch/TriaSearch.h
===================================================================
--- /issm/trunk-jpl/src/modules/TriaSearch/TriaSearch.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/TriaSearch/TriaSearch.h	(revision 13235)
@@ -31,11 +31,23 @@
 /* serial input macros: */
 #define INDEXHANDLE prhs[0]
-#define XHANDLE prhs[1]
-#define YHANDLE prhs[2]
-#define X0HANDLE prhs[3]
-#define Y0HANDLE prhs[4]
+#define XHANDLE     prhs[1]
+#define YHANDLE     prhs[2]
+#define X0HANDLE    prhs[3]
+#define Y0HANDLE    prhs[4]
 
 /* serial output macros: */
 #define TRIA (mxArray**)&plhs[0]
+#endif
+
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define INDEXHANDLE PyTuple _GetItem(args,0)
+#define XHANDLE     PyTuple _GetItem(args,1)
+#define YHANDLE     PyTuple _GetItem(args,2)
+#define X0HANDLE    PyTuple _GetItem(args,3)
+#define Y0HANDLE    PyTuple _GetItem(args,4)
+
+/* serial output macros: */
+#define TRIA output,0
 #endif
 
Index: /issm/trunk-jpl/src/modules/Xy2ll/Xy2ll.h
===================================================================
--- /issm/trunk-jpl/src/modules/Xy2ll/Xy2ll.h	(revision 13234)
+++ /issm/trunk-jpl/src/modules/Xy2ll/Xy2ll.h	(revision 13235)
@@ -31,11 +31,20 @@
 #ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
-#define X_IN      prhs[0]
-#define Y_IN      prhs[1]
-#define SGN_IN    prhs[2]
+#define X_IN   prhs[0]
+#define Y_IN   prhs[1]
+#define SGN_IN prhs[2]
+/* serial output macros: */
+#define LAT_OUT (mxArray**)&plhs[0]
+#define LON_OUT (mxArray**)&plhs[1]
+#endif
 
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define X_IN   PyTuple_GetItem(args,0)
+#define Y_IN   PyTuple_GetItem(args,1)
+#define SGN_IN PyTuple_GetItem(args,2)
 /* serial output macros: */
-#define LAT_OUT    (mxArray**)&plhs[0]
-#define LON_OUT    (mxArray**)&plhs[1]
+#define LAT_OUT output,0
+#define LON_OUT output,1
 #endif
 
