Index: /issm/trunk/src/c/objects/Params/BoolParam.h
===================================================================
--- /issm/trunk/src/c/objects/Params/BoolParam.h	(revision 3841)
+++ /issm/trunk/src/c/objects/Params/BoolParam.h	(revision 3842)
@@ -63,12 +63,12 @@
 		int   EnumType(){return enum_type;}
 		void  GetParameterValue(bool* pbool){*pbool=value;}
-		void  GetParameterValue(int* pinteger){ISSMERROR("Bool param cannot return an integer");}
-		void  GetParameterValue(double* pdouble){ISSMERROR("Bool param cannot return a double");}
-		void  GetParameterValue(char** pstring){ISSMERROR("Bool param cannot return a string");}
-		void  GetParameterValue(char*** pstringarray,int* pM){ISSMERROR("Bool param cannot return a string arrayl");}
-		void  GetParameterValue(double** pdoublearray,int* pM){ISSMERROR("Bool param cannot return a double array");}
-		void  GetParameterValue(double** pdoublearray,int* pM, int* pN){ISSMERROR("Bool param cannot return a double array");}
-		void  GetParameterValue(Vec* pvec){ISSMERROR("Bool param cannot return a Vec");}
-		void  GetParameterValue(Mat* pmat){ISSMERROR("Bool param cannot return a Mat");}
+		void  GetParameterValue(int* pinteger){ISSMERROR("Bool param of enum %i (%s) cannot return an integer",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(double* pdouble){ISSMERROR("Bool param of enum %i (%s) cannot return a double",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(char** pstring){ISSMERROR("Bool param of enum %i (%s) cannot return a string",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(char*** pstringarray,int* pM){ISSMERROR("Bool param of enum %i (%s) cannot return a string arrayl",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(double** pdoublearray,int* pM){ISSMERROR("Bool param of enum %i (%s) cannot return a double array",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(double** pdoublearray,int* pM, int* pN){ISSMERROR("Bool param of enum %i (%s) cannot return a double array",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(Vec* pvec){ISSMERROR("Bool param of enum %i (%s) cannot return a Vec",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(Mat* pmat){ISSMERROR("Bool param of enum %i (%s) cannot return a Mat",enum_type,EnumAsString(enum_type));}
 		char* GetParameterName(void);
 		void  Process(double* partition,int numberofvertices);
Index: /issm/trunk/src/c/objects/Params/DoubleMatParam.h
===================================================================
--- /issm/trunk/src/c/objects/Params/DoubleMatParam.h	(revision 3841)
+++ /issm/trunk/src/c/objects/Params/DoubleMatParam.h	(revision 3842)
@@ -65,13 +65,13 @@
 		/*Param methods: {{{1*/
 		int   EnumType(){return enum_type;}
-		void  GetParameterValue(bool* pbool){ISSMERROR("DoubleMat param cannot return a bool");}
-		void  GetParameterValue(int* pinteger){ISSMERROR("DoubleMat param cannot return an integer");}
-		void  GetParameterValue(double* pdouble){ISSMERROR("DoubleMat param cannot return a double");}
-		void  GetParameterValue(char** pstring){ISSMERROR("DoubleMat param cannot return a string");}
-		void  GetParameterValue(char*** pstringarray,int* pM){ISSMERROR("DoubleMat param cannot return a string arrayl");}
-		void  GetParameterValue(double** pdoublearray,int* pM){ISSMERROR("DoubleMat param cannot return a double array");}
+		void  GetParameterValue(bool* pbool){ISSMERROR("DoubleMat param of enum %i (%s) cannot return a bool",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(int* pinteger){ISSMERROR("DoubleMat param of enum %i (%s) cannot return an integer",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(double* pdouble){ISSMERROR("DoubleMat param of enum %i (%s) cannot return a double",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(char** pstring){ISSMERROR("DoubleMat param of enum %i (%s) cannot return a string",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(char*** pstringarray,int* pM){ISSMERROR("DoubleMat param of enum %i (%s) cannot return a string arrayl",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(double** pdoublearray,int* pM){ISSMERROR("DoubleMat param of enum %i (%s) cannot return a double array",enum_type,EnumAsString(enum_type));}
 		void  GetParameterValue(double** pdoublearray,int* pM,int* pN);
-		void  GetParameterValue(Vec* pvec){ISSMERROR("DoubleMat param cannot return a Vec");}
-		void  GetParameterValue(Mat* pmat){ISSMERROR("DoubleMat param cannot return a Mat");}
+		void  GetParameterValue(Vec* pvec){ISSMERROR("DoubleMat param of enum %i (%s) cannot return a Vec",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(Mat* pmat){ISSMERROR("DoubleMat param of enum %i (%s) cannot return a Mat",enum_type,EnumAsString(enum_type));}
 		char* GetParameterName(void);
 		void  Process(double* partition,int numberofvertices);
Index: /issm/trunk/src/c/objects/Params/DoubleParam.cpp
===================================================================
--- /issm/trunk/src/c/objects/Params/DoubleParam.cpp	(revision 3841)
+++ /issm/trunk/src/c/objects/Params/DoubleParam.cpp	(revision 3842)
@@ -127,4 +127,15 @@
 }
 /*}}}*/
+/*FUNCTION DoubleParam::GetParameterValue(int* pinteger) {{{1*/
+void DoubleParam::GetParameterValue(int* pinteger){
+#ifdef _SERIAL_
+
+	*pinteger=(int)value;
+#else
+	ISSMERROR("Double param of enum %i (%s) cannot return an integer",enum_type,EnumAsString(enum_type));
+#endif
+}
+/*}}}*/
+
 /*FUNCTION DoubleParam::ProcessParams(double* partition,int numberofvertices);{{{1*/
 void  DoubleParam::Process(double* partition,int numberofvertices){
Index: /issm/trunk/src/c/objects/Params/DoubleParam.h
===================================================================
--- /issm/trunk/src/c/objects/Params/DoubleParam.h	(revision 3841)
+++ /issm/trunk/src/c/objects/Params/DoubleParam.h	(revision 3842)
@@ -63,13 +63,13 @@
 		/*Param methods: {{{1*/
 		int   EnumType(){return enum_type;}
-		void  GetParameterValue(bool* pbool){ISSMERROR("Double param cannot return a bool");}
-		void  GetParameterValue(int* pinteger){ISSMERROR("Double param cannot return an integer");}
+		void  GetParameterValue(bool* pbool){ISSMERROR("Double param of enum %i (%s) cannot return a bool",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(int* pinteger);
 		void  GetParameterValue(double* pdouble){*pdouble=value;}
-		void  GetParameterValue(char** pstring){ISSMERROR("Double param cannot return a string");}
-		void  GetParameterValue(char*** pstringarray,int* pM){ISSMERROR("Double param cannot return a string arrayl");}
-		void  GetParameterValue(double** pdoublearray,int* pM){ISSMERROR("Double param cannot return a double array");}
-		void  GetParameterValue(double** pdoublearray,int* pM, int* pN){ISSMERROR("Double param cannot return a double array");}
-		void  GetParameterValue(Vec* pvec){ISSMERROR("Double param cannot return a Vec");}
-		void  GetParameterValue(Mat* pmat){ISSMERROR("Double param cannot return a Mat");}
+		void  GetParameterValue(char** pstring){ISSMERROR("Double param of enum %i (%s) cannot return a string",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(char*** pstringarray,int* pM){ISSMERROR("Double param of enum %i (%s) cannot return a string arrayl",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(double** pdoublearray,int* pM){ISSMERROR("Double param of enum %i (%s) cannot return a double array",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(double** pdoublearray,int* pM, int* pN){ISSMERROR("Double param of enum %i (%s) cannot return a double array",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(Vec* pvec){ISSMERROR("Double param of enum %i (%s) cannot return a Vec",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(Mat* pmat){ISSMERROR("Double param of enum %i (%s) cannot return a Mat",enum_type,EnumAsString(enum_type));}
 		char* GetParameterName(void);
 		void  Process(double* partition,int numberofvertices);
Index: /issm/trunk/src/c/objects/Params/DoubleVecParam.h
===================================================================
--- /issm/trunk/src/c/objects/Params/DoubleVecParam.h	(revision 3841)
+++ /issm/trunk/src/c/objects/Params/DoubleVecParam.h	(revision 3842)
@@ -63,13 +63,13 @@
 		/*Param methods: {{{1*/
 		int   EnumType(){return enum_type;}
-		void  GetParameterValue(bool* pbool){ISSMERROR("DoubleVec param cannot return a bool");}
-		void  GetParameterValue(int* pinteger){ISSMERROR("DoubleVec param cannot return an integer");}
-		void  GetParameterValue(double* pdouble){ISSMERROR("DoubleVec param cannot return a double");}
-		void  GetParameterValue(char** pstring){ISSMERROR("DoubleVec param cannot return a string");}
-		void  GetParameterValue(char*** pstringarray,int* pM){ISSMERROR("DoubleVec param cannot return a string arrayl");}
+		void  GetParameterValue(bool* pbool){ISSMERROR("DoubleVec param of enum %i (%s) cannot return a bool",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(int* pinteger){ISSMERROR("DoubleVec param of enum %i (%s) cannot return an integer",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(double* pdouble){ISSMERROR("DoubleVec param of enum %i (%s) cannot return a double",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(char** pstring){ISSMERROR("DoubleVec param of enum %i (%s) cannot return a string",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(char*** pstringarray,int* pM){ISSMERROR("DoubleVec param of enum %i (%s) cannot return a string arrayl",enum_type,EnumAsString(enum_type));}
 		void  GetParameterValue(double** pdoublearray,int* pM);
-		void  GetParameterValue(double** pdoublearray,int* pM, int* pN){ISSMERROR("DoubleVec param cannot return a double array");}
-		void  GetParameterValue(Vec* pvec){ISSMERROR("DoubleVec param cannot return a Vec");}
-		void  GetParameterValue(Mat* pmat){ISSMERROR("DoubleVec param cannot return a Mat");}
+		void  GetParameterValue(double** pdoublearray,int* pM, int* pN){ISSMERROR("DoubleVec param of enum %i (%s) cannot return a double array",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(Vec* pvec){ISSMERROR("DoubleVec param of enum %i (%s) cannot return a Vec",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(Mat* pmat){ISSMERROR("DoubleVec param of enum %i (%s) cannot return a Mat",enum_type,EnumAsString(enum_type));}
 		char* GetParameterName(void);
 		void  Process(double* partition,int numberofvertices);
Index: /issm/trunk/src/c/objects/Params/IntParam.h
===================================================================
--- /issm/trunk/src/c/objects/Params/IntParam.h	(revision 3841)
+++ /issm/trunk/src/c/objects/Params/IntParam.h	(revision 3842)
@@ -63,13 +63,13 @@
 		/*Param methods: {{{1*/
 		int   EnumType(){return enum_type;}
-		void  GetParameterValue(bool* pbool){ISSMERROR("Int param cannot return a bool");}
+		void  GetParameterValue(bool* pbool){ISSMERROR("Int param of enum %i (%s) cannot return a bool",enum_type,EnumAsString(enum_type));}
 		void  GetParameterValue(int* pinteger){*pinteger=value;}
-		void  GetParameterValue(double* pdouble){ISSMERROR("Int param cannot return a double");}
-		void  GetParameterValue(char** pstring){ISSMERROR("Int param cannot return a string");}
-		void  GetParameterValue(char*** pstringarray,int* pM){ISSMERROR("Int param cannot return a string arrayl");}
-		void  GetParameterValue(double** pdoublearray,int* pM){ISSMERROR("Int param cannot return a double array");}
-		void  GetParameterValue(double** pdoublearray,int* pM, int* pN){ISSMERROR("Int param cannot return a double array");}
-		void  GetParameterValue(Vec* pvec){ISSMERROR("Int param cannot return a Vec");}
-		void  GetParameterValue(Mat* pmat){ISSMERROR("Int param cannot return a Mat");}
+		void  GetParameterValue(double* pdouble){ISSMERROR("Int param of enum %i (%s) cannot return a double",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(char** pstring){ISSMERROR("Int param of enum %i (%s) cannot return a string",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(char*** pstringarray,int* pM){ISSMERROR("Int param of enum %i (%s) cannot return a string arrayl",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(double** pdoublearray,int* pM){ISSMERROR("Int param of enum %i (%s) cannot return a double array",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(double** pdoublearray,int* pM, int* pN){ISSMERROR("Int param of enum %i (%s) cannot return a double array",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(Vec* pvec){ISSMERROR("Int param of enum %i (%s) cannot return a Vec",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(Mat* pmat){ISSMERROR("Int param of enum %i (%s) cannot return a Mat",enum_type,EnumAsString(enum_type));}
 		char* GetParameterName(void);
 		void  Process(double* partition,int numberofvertices);
Index: /issm/trunk/src/c/objects/Params/PetscMatParam.h
===================================================================
--- /issm/trunk/src/c/objects/Params/PetscMatParam.h	(revision 3841)
+++ /issm/trunk/src/c/objects/Params/PetscMatParam.h	(revision 3842)
@@ -63,12 +63,12 @@
 		/*Param methods: {{{1*/
 		int   EnumType(){return enum_type;}
-		void  GetParameterValue(bool* pbool){ISSMERROR("PetscMat param cannot return a bool");}
-		void  GetParameterValue(int* pinteger){ISSMERROR("PetscMat param cannot return an integer");}
-		void  GetParameterValue(double* pdouble){ISSMERROR("PetscMat param cannot return a double");}
-		void  GetParameterValue(char** pstring){ISSMERROR("PetscMat param cannot return a string");}
-		void  GetParameterValue(char*** pstringarray,int* pM){ISSMERROR("PetscMat param cannot return a string arrayl");}
-		void  GetParameterValue(double** pdoublearray,int* pM){ISSMERROR("PetscMat param cannot return a double array");}
-		void  GetParameterValue(double** pdoublearray,int* pM, int* pN){ISSMERROR("PetscMat param cannot return a double array");}
-		void  GetParameterValue(Vec* pvec){ISSMERROR("PetscMat param cannot return a vec");}
+		void  GetParameterValue(bool* pbool){ISSMERROR("PetscMat param of enum %i (%s) cannot return a bool",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(int* pinteger){ISSMERROR("PetscMat param of enum %i (%s) cannot return an integer",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(double* pdouble){ISSMERROR("PetscMat param of enum %i (%s) cannot return a double",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(char** pstring){ISSMERROR("PetscMat param of enum %i (%s) cannot return a string",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(char*** pstringarray,int* pM){ISSMERROR("PetscMat param of enum %i (%s) cannot return a string arrayl",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(double** pdoublearray,int* pM){ISSMERROR("PetscMat param of enum %i (%s) cannot return a double array",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(double** pdoublearray,int* pM, int* pN){ISSMERROR("PetscMat param of enum %i (%s) cannot return a double array",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(Vec* pvec){ISSMERROR("PetscMat param of enum %i (%s) cannot return a vec",enum_type,EnumAsString(enum_type));}
 		void  GetParameterValue(Mat* poutput);
 		char* GetParameterName(void);
Index: /issm/trunk/src/c/objects/Params/PetscVecParam.h
===================================================================
--- /issm/trunk/src/c/objects/Params/PetscVecParam.h	(revision 3841)
+++ /issm/trunk/src/c/objects/Params/PetscVecParam.h	(revision 3842)
@@ -63,12 +63,12 @@
 		/*Param methods: {{{1*/
 		int   EnumType(){return enum_type;}
-		void  GetParameterValue(bool* pbool){ISSMERROR("PetscVec param cannot return a bool");}
-		void  GetParameterValue(int* pinteger){ISSMERROR("PetscVec param cannot return an integer");}
-		void  GetParameterValue(double* pdouble){ISSMERROR("PetscVec param cannot return a double");}
-		void  GetParameterValue(char** pstring){ISSMERROR("PetscVec param cannot return a string");}
-		void  GetParameterValue(char*** pstringarray,int* pM){ISSMERROR("PetscVec param cannot return a string arrayl");}
-		void  GetParameterValue(double** pdoublearray,int* pM){ISSMERROR("PetscVec param cannot return a double array");}
-		void  GetParameterValue(double** pdoublearray,int* pM, int* pN){ISSMERROR("PetscVec param cannot return a double array");}
-		void  GetParameterValue(Mat* pmat){ISSMERROR("PetscVec param cannot return a Mat");}
+		void  GetParameterValue(bool* pbool){ISSMERROR("PetscVec param of enum %i (%s) cannot return a bool",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(int* pinteger){ISSMERROR("PetscVec param of enum %i (%s) cannot return an integer",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(double* pdouble){ISSMERROR("PetscVec param of enum %i (%s) cannot return a double",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(char** pstring){ISSMERROR("PetscVec param of enum %i (%s) cannot return a string",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(char*** pstringarray,int* pM){ISSMERROR("PetscVec param of enum %i (%s) cannot return a string arrayl",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(double** pdoublearray,int* pM){ISSMERROR("PetscVec param of enum %i (%s) cannot return a double array",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(double** pdoublearray,int* pM, int* pN){ISSMERROR("PetscVec param of enum %i (%s) cannot return a double array",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(Mat* pmat){ISSMERROR("PetscVec param of enum %i (%s) cannot return a Mat",enum_type,EnumAsString(enum_type));}
 		void  GetParameterValue(Vec* poutput);
 		char* GetParameterName(void);
Index: /issm/trunk/src/c/objects/Params/StringArrayParam.h
===================================================================
--- /issm/trunk/src/c/objects/Params/StringArrayParam.h	(revision 3841)
+++ /issm/trunk/src/c/objects/Params/StringArrayParam.h	(revision 3842)
@@ -65,13 +65,13 @@
 		/*Param methods: {{{1*/
 		int   EnumType(){return enum_type;}
-		void  GetParameterValue(bool* pbool){ISSMERROR("StringArray param cannot return a bool");}
-		void  GetParameterValue(int* pinteger){ISSMERROR("StringArray param cannot return an integer");}
-		void  GetParameterValue(double* pdouble){ISSMERROR("StringArray param cannot return a double");}
-		void  GetParameterValue(char** pstring){ISSMERROR("StringArray param cannot return a string");}
+		void  GetParameterValue(bool* pbool){ISSMERROR("StringArray param of enum %i (%s) cannot return a bool",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(int* pinteger){ISSMERROR("StringArray param of enum %i (%s) cannot return an integer",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(double* pdouble){ISSMERROR("StringArray param of enum %i (%s) cannot return a double",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(char** pstring){ISSMERROR("StringArray param of enum %i (%s) cannot return a string",enum_type,EnumAsString(enum_type));}
 		void  GetParameterValue(char*** pstringarray,int* pM);
-		void  GetParameterValue(double** pdoublearray,int* pM){ISSMERROR("StringArray param cannot return a double array");}
-		void  GetParameterValue(double** pdoublearray,int* pM, int* pN){ISSMERROR("StringArray param cannot return a double array");}
-		void  GetParameterValue(Vec* pvec){ISSMERROR("StringArray param cannot return a Vec");}
-		void  GetParameterValue(Mat* pmat){ISSMERROR("StringArray param cannot return a Mat");}
+		void  GetParameterValue(double** pdoublearray,int* pM){ISSMERROR("StringArray param of enum %i (%s) cannot return a double array",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(double** pdoublearray,int* pM, int* pN){ISSMERROR("StringArray param of enum %i (%s) cannot return a double array",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(Vec* pvec){ISSMERROR("StringArray param of enum %i (%s) cannot return a Vec",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(Mat* pmat){ISSMERROR("StringArray param of enum %i (%s) cannot return a Mat",enum_type,EnumAsString(enum_type));}
 		char* GetParameterName(void);
 		void  Process(double* partition,int numberofvertices);
Index: /issm/trunk/src/c/objects/Params/StringParam.h
===================================================================
--- /issm/trunk/src/c/objects/Params/StringParam.h	(revision 3841)
+++ /issm/trunk/src/c/objects/Params/StringParam.h	(revision 3842)
@@ -63,13 +63,13 @@
 		/*Param methods: {{{1*/
 		int   EnumType(){return enum_type;}
-		void  GetParameterValue(bool* pbool){ISSMERROR("String param cannot return a bool");}
-		void  GetParameterValue(int* pinteger){ISSMERROR("String param cannot return an integer");}
-		void  GetParameterValue(double* pdouble){ISSMERROR("String param cannot return a double");}
+		void  GetParameterValue(bool* pbool){ISSMERROR("String param of enum %i (%s) cannot return a bool",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(int* pinteger){ISSMERROR("String param of enum %i (%s) cannot return an integer",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(double* pdouble){ISSMERROR("String param of enum %i (%s) cannot return a double",enum_type,EnumAsString(enum_type));}
 		void  GetParameterValue(char** pstring);
-		void  GetParameterValue(char*** pstringarray,int* pM){ISSMERROR("String param cannot return a string arrayl");}
-		void  GetParameterValue(double** pdoublearray,int* pM){ISSMERROR("String param cannot return a double array");}
-		void  GetParameterValue(double** pdoublearray,int* pM, int* pN){ISSMERROR("String param cannot return a double array");}
-		void  GetParameterValue(Vec* pvec){ISSMERROR("String param cannot return a Vec");}
-		void  GetParameterValue(Mat* pmat){ISSMERROR("String param cannot return a Mat");}
+		void  GetParameterValue(char*** pstringarray,int* pM){ISSMERROR("String param of enum %i (%s) cannot return a string arrayl",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(double** pdoublearray,int* pM){ISSMERROR("String param of enum %i (%s) cannot return a double array",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(double** pdoublearray,int* pM, int* pN){ISSMERROR("String param of enum %i (%s) cannot return a double array",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(Vec* pvec){ISSMERROR("String param of enum %i (%s) cannot return a Vec",enum_type,EnumAsString(enum_type));}
+		void  GetParameterValue(Mat* pmat){ISSMERROR("String param of enum %i (%s) cannot return a Mat",enum_type,EnumAsString(enum_type));}
 		char* GetParameterName(void);
 		void  Process(double* partition,int numberofvertices);
