Index: /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/modules/EnumToString/EnumToString.cpp
===================================================================
--- /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/modules/EnumToString/EnumToString.cpp	(revision 13033)
+++ /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/modules/EnumToString/EnumToString.cpp	(revision 13034)
@@ -4,16 +4,17 @@
 
 #include "./EnumToString.h"
 
-void mexFunction( int nlhs, mxArray* plhs[], int nrhs, const mxArray* prhs[]){
+WRAPPER(EnumToString){
 
 	char    *name    = NULL;
 	int      enum_in;
 
-	/*checks on arguments on the matlab side: */
-	if(nrhs!=NRHS){
-		EnumToStringUsage(); _error2_("usage. See above");
-	}
+	/*Boot module: */
+	MODULEBOOT();
 
+	/*checks on arguments: */
+	CHECKARGUMENTS(NLHS,NRHS,&EnumToStringUsage);
+
 	/*Fetch inputs: */
 	FetchData(&enum_in,ENUMIN);
 
@@ -22,6 +23,9 @@
 
 	/* output: */
 	WriteData(NAME,name);
+
+	/*end module: */
+	MODULEEND();
 }
 
 void EnumToStringUsage(void)
Index: /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/modules/EnumToString/EnumToString.h
===================================================================
--- /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/modules/EnumToString/EnumToString.h	(revision 13033)
+++ /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/modules/EnumToString/EnumToString.h	(revision 13034)
@@ -5,21 +5,38 @@
 #ifndef _ENUMTOSTRING_H
 #define _ENUMTOSTRING_H
 
-/* local prototypes: */
-void EnumToStringUsage(void);
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#else
+#error "Cannot compile with HAVE_CONFIG_H symbol! run configure first!"
+#endif
 
+/*Very important definition in case we are compiling a python module!: needs to come before header files inclusion*/
+#ifdef _HAVE_PYTHON_
+#define PY_ARRAY_UNIQUE_SYMBOL PythonIOSymbol
+#endif
+
+/*Header files: */
 #include "../../c/include/globals.h"
 #include "../../c/modules/modules.h"
 #include "../../c/Container/Container.h"
 #include "../../c/shared/shared.h"
 #include "../../c/issm-binding.h"
     
+#ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
 #define ENUMIN (mxArray*)prhs[0]
-
 /* serial output macros: */
 #define NAME (mxArray**)&plhs[0]
+#endif
 
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define ENUMIN PyTuple_GetItem(args,0)
+/* serial output macros: */
+#define NAME output,0
+#endif
+
 /* serial arg counts: */
 #undef NLHS
 #define NLHS  1
@@ -29,4 +46,7 @@
 #undef __FUNCT__ 
 #define __FUNCT__  "EnumToString"
 
+/* local prototypes: */
+void EnumToStringUsage(void);
+
 #endif  /* _TEST_H */
Index: /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/modules/StringToEnum/StringToEnum.cpp
===================================================================
--- /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/modules/StringToEnum/StringToEnum.cpp	(revision 13033)
+++ /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/modules/StringToEnum/StringToEnum.cpp	(revision 13034)
@@ -4,16 +4,17 @@
 
 #include "./StringToEnum.h"
 
-void mexFunction( int nlhs, mxArray* plhs[], int nrhs, const mxArray* prhs[]){
+WRAPPER(StringToEnum){
 
 	char    *name    = NULL;
 	int      enum_out;
 
-	/*checks on arguments on the matlab side: */
-	if(nrhs!=NRHS){
-		StringToEnumUsage(); _error2_("usage. See above");
-	}
+	/*Boot module: */
+	MODULEBOOT();
 
+	/*checks on arguments: */
+	CHECKARGUMENTS(NLHS,NRHS,&StringToEnumUsage);
+
 	/*Fetch inputs: */
 	FetchData(&name,NAME);
 
@@ -22,6 +23,9 @@
 
 	/* output: */
 	WriteData(ENUMOUT,enum_out);
+
+	/*end module: */
+	MODULEEND();
 }
 
 void StringToEnumUsage(void)
Index: /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/modules/StringToEnum/StringToEnum.h
===================================================================
--- /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/modules/StringToEnum/StringToEnum.h	(revision 13033)
+++ /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/modules/StringToEnum/StringToEnum.h	(revision 13034)
@@ -5,21 +5,38 @@
 #ifndef _STRINGTOENUM_H
 #define _STRINGTOENUM_H
 
-/* local prototypes: */
-void StringToEnumUsage(void);
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#else
+#error "Cannot compile with HAVE_CONFIG_H symbol! run configure first!"
+#endif
 
+/*Very important definition in case we are compiling a python module!: needs to come before header files inclusion*/
+#ifdef _HAVE_PYTHON_
+#define PY_ARRAY_UNIQUE_SYMBOL PythonIOSymbol
+#endif
+
+/*Header files: */
 #include "../../c/include/globals.h"
 #include "../../c/modules/modules.h"
 #include "../../c/Container/Container.h"
 #include "../../c/shared/shared.h"
 #include "../../c/issm-binding.h"
     
+#ifdef _HAVE_MATLAB_MODULES_
 /* serial input macros: */
 #define NAME (mxArray*)prhs[0]
-
 /* serial output macros: */
 #define ENUMOUT (mxArray**)&plhs[0]
+#endif
 
+#ifdef _HAVE_PYTHON_MODULES_
+/* serial input macros: */
+#define NAME PyTuple_GetItem(args,0)
+/* serial output macros: */
+#define ENUMOUT output,0
+#endif
+
 /* serial arg counts: */
 #undef NLHS
 #define NLHS  1
@@ -29,4 +46,7 @@
 #undef __FUNCT__ 
 #define __FUNCT__  "StringToEnum"
 
+/* local prototypes: */
+void StringToEnumUsage(void);
+
 #endif  /* _TEST_H */
