Index: ../trunk-jpl/src/c/Container/Parameters.cpp
===================================================================
--- ../trunk-jpl/src/c/Container/Parameters.cpp	(revision 13424)
+++ ../trunk-jpl/src/c/Container/Parameters.cpp	(revision 13425)
@@ -296,7 +296,25 @@
 	_error_("could not find parameter " << EnumToStringx(enum_type));
 }
 /*}}}*/
+/*FUNCTION Parameters::FindParam(DataSet** pdataset,int enum_type){{{*/
+void Parameters::FindParam(DataSet** pdataset,int enum_type){ 
+	_assert_(this);
 
+	vector<Object*>::iterator object;
+	Param* param=NULL;
+
+	for ( object=objects.begin() ; object < objects.end(); object++ ){
+
+		param=(Param*)(*object);
+		if(param->InstanceEnum()==enum_type){
+			param->GetParameterValue(pdataset);
+			return;
+		}
+	}
+	_error_("could not find parameter " << EnumToStringx(enum_type));
+}
+/*}}}*/
+
 /*FUNCTION Parameters::SetParam(bool boolean,int enum_type);{{{*/
 void   Parameters::SetParam(bool boolean,int enum_type){
 
Index: ../trunk-jpl/src/c/Container/Parameters.h
===================================================================
--- ../trunk-jpl/src/c/Container/Parameters.h	(revision 13424)
+++ ../trunk-jpl/src/c/Container/Parameters.h	(revision 13425)
@@ -43,6 +43,7 @@
 		void  FindParam(Vector<IssmDouble>** pvec,int enum_type);
 		void  FindParam(Matrix<IssmDouble>** pmat,int enum_type);
 		void  FindParam(FILE** pfid,int enum_type);
+		void  FindParam(DataSet** pdataset, int enum_type);
 		
 		void  SetParam(bool boolean,int enum_type);
 		void  SetParam(int integer,int enum_type);
Index: ../trunk-jpl/src/c/classes/objects/Params/DoubleVecParam.h
===================================================================
--- ../trunk-jpl/src/c/classes/objects/Params/DoubleVecParam.h	(revision 13424)
+++ ../trunk-jpl/src/c/classes/objects/Params/DoubleVecParam.h	(revision 13425)
@@ -55,6 +55,7 @@
 		void  GetParameterValue(Vector<IssmDouble>** pvec){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Vec");}
 		void  GetParameterValue(Matrix<IssmDouble>** pmat){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Mat");}
 		void  GetParameterValue(FILE** pfid){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a FILE");}
+		void  GetParameterValue(DataSet** pdataset){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a DataSet");}
 
 		void  SetValue(bool boolean){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a boolean");}
 		void  SetValue(int integer){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold an integer");}
Index: ../trunk-jpl/src/c/classes/objects/Params/GenericParam.h
===================================================================
--- ../trunk-jpl/src/c/classes/objects/Params/GenericParam.h	(revision 13424)
+++ ../trunk-jpl/src/c/classes/objects/Params/GenericParam.h	(revision 13425)
@@ -78,6 +78,7 @@
                 void  GetParameterValue(Vector<IssmDouble>** pvec){_error_("Param "<< EnumToStringx(myEnumVal) << " cannot return a Vec");}
                 void  GetParameterValue(Matrix<IssmDouble>** pmat){_error_("Param "<< EnumToStringx(myEnumVal) << " cannot return a Mat");}
                 void  GetParameterValue(FILE** pfid){_error_("Param "<< EnumToStringx(myEnumVal) << " cannot return a FILE");}
+				void  GetParameterValue(DataSet** pdataset){_error_("Param "<< EnumToStringx(myEnumVal) << " cannot return a DataSet");}
 
                 void  SetValue(bool boolean){_error_("Param "<< EnumToStringx(myEnumVal) << " cannot hold a bool");}
                 void  SetValue(int integer){_error_("Param "<< EnumToStringx(myEnumVal) << " cannot hold an integer");}
Index: ../trunk-jpl/src/c/classes/objects/Params/DoubleMatParam.h
===================================================================
--- ../trunk-jpl/src/c/classes/objects/Params/DoubleMatParam.h	(revision 13424)
+++ ../trunk-jpl/src/c/classes/objects/Params/DoubleMatParam.h	(revision 13425)
@@ -56,6 +56,7 @@
 		void  GetParameterValue(Vector<IssmDouble>** pvec){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Vec");}
 		void  GetParameterValue(Matrix<IssmDouble>** pmat){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Mat");}
 		void  GetParameterValue(FILE** pfid){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a FILE");}
+		void  GetParameterValue(DataSet** pdataset){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a DataSet");}
 
 		void  SetValue(bool boolean){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a boolean");}
 		void  SetValue(int integer){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold an integer");}
Index: ../trunk-jpl/src/c/classes/objects/Params/Param.h
===================================================================
--- ../trunk-jpl/src/c/classes/objects/Params/Param.h	(revision 13424)
+++ ../trunk-jpl/src/c/classes/objects/Params/Param.h	(revision 13425)
@@ -40,6 +40,7 @@
 		virtual void  GetParameterValue(Vector<IssmDouble>** pvec)=0;
 		virtual void  GetParameterValue(Matrix<IssmDouble>** pmat)=0;
 		virtual void  GetParameterValue(FILE** pfid)=0;
+		virtual void  GetParameterValue(DataSet** pdataset)=0;
 		
 		virtual void  SetValue(bool boolean)=0;
 		virtual void  SetValue(int integer)=0;
Index: ../trunk-jpl/src/c/classes/objects/Params/FileParam.h
===================================================================
--- ../trunk-jpl/src/c/classes/objects/Params/FileParam.h	(revision 13424)
+++ ../trunk-jpl/src/c/classes/objects/Params/FileParam.h	(revision 13425)
@@ -54,6 +54,7 @@
 		void  GetParameterValue(Vector<IssmDouble>** pvec){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Vec");}
 		void  GetParameterValue(Matrix<IssmDouble>** pmat){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Mat");}
 		void  GetParameterValue(FILE** pfid){*pfid=value;};
+		void  GetParameterValue(DataSet** pdataset){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a DataSet");}
 
 		void  SetValue(bool boolean){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a string");}
 		void  SetValue(int integer){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a string");}
Index: ../trunk-jpl/src/c/classes/objects/Params/DataSetParam.h
===================================================================
--- ../trunk-jpl/src/c/classes/objects/Params/DataSetParam.h	(revision 0)
+++ ../trunk-jpl/src/c/classes/objects/Params/DataSetParam.h	(revision 13425)
@@ -0,0 +1,80 @@
+/*! \file DataSetParam.h 
+ *  \brief: header file for triavertexinput object
+ */
+
+
+#ifndef _DATASETPARAM_H_
+#define _DATASETPARAM_H_
+
+/*Headers:*/
+/*{{{*/
+#ifdef HAVE_CONFIG_H
+	#include <config.h>
+#else
+#error "Cannot compile with HAVE_CONFIG_H symbol! run configure first!"
+#endif
+
+#include "./Param.h"
+#include "../../../include/include.h"
+#include "../../../shared/shared.h"
+/*}}}*/
+
+class DataSetParam: public Param{
+
+	private: 
+		int   enum_type;
+		DataSet* value;
+
+	public:
+		/*DataSetParam constructors, destructors: {{{*/
+		DataSetParam();
+		DataSetParam(int enum_type,DataSet* dataset);
+		~DataSetParam();
+		/*}}}*/
+		/*Object virtual functions definitions:{{{ */
+		void  Echo();
+		void  DeepEcho();
+		int   Id(); 
+		int   MyRank();
+		int   ObjectEnum();
+		Object* copy();
+		/*}}}*/
+		/*Param vritual function definitions: {{{*/
+		int   InstanceEnum(){return enum_type;}
+		void  GetParameterValue(bool* pbool){  _error_("Param "<< EnumToStringx(enum_type) << " cannot return a bool");}
+		void  GetParameterValue(int* pinteger){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a IssmDouble");}
+		void  GetParameterValue(int** pintarray,int* pM){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a IssmDouble");}
+		void  GetParameterValue(int** pintarray,int* pM,int* pN){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a IssmDouble");}
+		void  GetParameterValue(IssmDouble* pIssmDouble){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a IssmDouble");}
+		void  GetParameterValue(IssmDouble* pdouble,IssmDouble time){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a IssmDouble for a given time");}
+		void  GetParameterValue(FILE** pfile){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a file pointer");}
+		void  GetParameterValue(char** pstring){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a string");}
+		void  GetParameterValue(char*** pstringarray,int* pM){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a string array");}
+		void  GetParameterValue(IssmDouble** pIssmDoublearray,int* pM){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a IssmDouble array");}
+		void  GetParameterValue(IssmDouble** pIssmDoublearray,int* pM, int* pN){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a IssmDouble array");}
+		void  GetParameterValue(IssmDouble*** parray, int* pM,int** pmdims, int** pndims){_error_("DataSet param of enum " << enum_type << " (" << EnumToStringx(enum_type) << ") cannot return a matrix array");}
+		void  GetParameterValue(Vector<IssmDouble>** pvec){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Vec");}
+		void  GetParameterValue(Matrix<IssmDouble>** pmat){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Mat");}
+		void  GetParameterValue(DataSet** pdataset);
+
+		void  SetValue(bool boolean){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a string");}
+		void  SetValue(int integer){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a string");}
+		void  SetValue(IssmDouble scalar){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a string");}
+		void  SetValue(char* string){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a string");}
+		void  SetValue(FILE* fid){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a file pointer");}
+		void  SetValue(char** stringarray,int M){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a string array");}
+		void  SetValue(IssmDouble* IssmDoublearray,int M){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a IssmDouble array");}
+		void  SetValue(IssmDouble* pIssmDoublearray,int M,int N){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a IssmDouble array");}
+		void  SetValue(int* intarray,int M){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a int array");}
+		void  SetValue(int* pintarray,int M,int N){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a int array");}
+		void  SetValue(Vector<IssmDouble>* vec){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a Vec");}
+		void  SetValue(Matrix<IssmDouble>* mat){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a Mat");}
+		void  SetValue(DataSet* dataset){_error_("DataSet param of enum " << enum_type << " (" << EnumToStringx(enum_type) << ") cannot hold a DataSet yet");}
+		void  SetValue(IssmDouble** array, int M, int* mdim_array, int* ndim_array){_error_("DataSet param of enum " << enum_type << " (" << EnumToStringx(enum_type) << ") cannot hold an array of matrices");}
+		void  UnitConversion(int direction_enum);
+
+		void GetParameterName(char**pname);
+
+		/*}}}*/
+};
+#endif  /* _INTPARAM_H */
Index: ../trunk-jpl/src/c/classes/objects/Params/IntParam.h
===================================================================
--- ../trunk-jpl/src/c/classes/objects/Params/IntParam.h	(revision 13424)
+++ ../trunk-jpl/src/c/classes/objects/Params/IntParam.h	(revision 13425)
@@ -55,6 +55,7 @@
 		void  GetParameterValue(Vector<IssmDouble>** pvec){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Vec");}
 		void  GetParameterValue(Matrix<IssmDouble>** pmat){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Mat");}
 		void  GetParameterValue(FILE** pfid){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a FILE");}
+		void  GetParameterValue(DataSet** pdataset){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a DataSet");}
 
 		void  SetValue(bool boolean){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a bool");}
 		void  SetValue(int integer){this->value=integer;}
Index: ../trunk-jpl/src/c/classes/objects/Params/VectorParam.h
===================================================================
--- ../trunk-jpl/src/c/classes/objects/Params/VectorParam.h	(revision 13424)
+++ ../trunk-jpl/src/c/classes/objects/Params/VectorParam.h	(revision 13425)
@@ -55,6 +55,7 @@
 		void  GetParameterValue(Matrix<IssmDouble>** pmat){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Mat");}
 		void  GetParameterValue(Vector<IssmDouble>** poutput);
 		void  GetParameterValue(FILE** pfid){_error_("Vector of enum " << enum_type << " (" << EnumToStringx(enum_type) << ") cannot return a FILE");}
+		void  GetParameterValue(DataSet** pdataset){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a DataSet");}
 
 		void  SetValue(bool boolean){_error_("Vector of enum " << enum_type << " (" << EnumToStringx(enum_type) << ") cannot hold a boolean");}
 		void  SetValue(int integer){_error_("Vector of enum " << enum_type << " (" << EnumToStringx(enum_type) << ") cannot hold an integer");}
Index: ../trunk-jpl/src/c/classes/objects/Params/MatrixParam.h
===================================================================
--- ../trunk-jpl/src/c/classes/objects/Params/MatrixParam.h	(revision 13424)
+++ ../trunk-jpl/src/c/classes/objects/Params/MatrixParam.h	(revision 13425)
@@ -55,6 +55,7 @@
 		void  GetParameterValue(Vector<IssmDouble>** pvec){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a vec");}
 		void  GetParameterValue(Matrix<IssmDouble>** poutput);
 		void  GetParameterValue(FILE** pfid){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a FILE");}
+		void  GetParameterValue(DataSet** pdataset){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a DataSet");}
 
 		void  SetValue(bool boolean){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a boolean");}
 		void  SetValue(int integer){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold an integer");}
Index: ../trunk-jpl/src/c/classes/objects/Params/StringArrayParam.h
===================================================================
--- ../trunk-jpl/src/c/classes/objects/Params/StringArrayParam.h	(revision 13424)
+++ ../trunk-jpl/src/c/classes/objects/Params/StringArrayParam.h	(revision 13425)
@@ -57,6 +57,7 @@
 		void  GetParameterValue(Vector<IssmDouble>** pvec){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Vec");}
 		void  GetParameterValue(Matrix<IssmDouble>** pmat){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Mat");}
 		void  GetParameterValue(FILE** pfid){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a FILE");}
+		void  GetParameterValue(DataSet** pdataset){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a DataSet");}
 
 		void  SetValue(bool boolean){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a boolean");}
 		void  SetValue(int integer){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold an integer");}
Index: ../trunk-jpl/src/c/classes/objects/Params/TransientParam.h
===================================================================
--- ../trunk-jpl/src/c/classes/objects/Params/TransientParam.h	(revision 13424)
+++ ../trunk-jpl/src/c/classes/objects/Params/TransientParam.h	(revision 13425)
@@ -55,6 +55,7 @@
 		void  GetParameterValue(Vector<IssmDouble>** pvec){_error_("Parameter " <<EnumToStringx(enum_type) << " cannot return a Vec");}
 		void  GetParameterValue(Matrix<IssmDouble>** pmat){_error_("Parameter " <<EnumToStringx(enum_type) << " cannot return a Mat");}
 		void  GetParameterValue(FILE** pfid){_error_("Parameter " <<EnumToStringx(enum_type) << " cannot return a FILE");}
+		void  GetParameterValue(DataSet** pdataset){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a DataSet");}
 
 		void  SetValue(bool boolean){_error_("Parameter " <<EnumToStringx(enum_type) << " cannot hold a boolean");}
 		void  SetValue(int integer){_error_("Parameter " <<EnumToStringx(enum_type) << " cannot hold an integer");}
Index: ../trunk-jpl/src/c/classes/objects/Params/DoubleParam.h
===================================================================
--- ../trunk-jpl/src/c/classes/objects/Params/DoubleParam.h	(revision 13424)
+++ ../trunk-jpl/src/c/classes/objects/Params/DoubleParam.h	(revision 13425)
@@ -55,6 +55,7 @@
 		void  GetParameterValue(Vector<IssmDouble>** pvec){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Vec");}
 		void  GetParameterValue(Matrix<IssmDouble>** pmat){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Mat");}
 		void  GetParameterValue(FILE** pfid){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a FILE");}
+		void  GetParameterValue(DataSet** pdataset){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a DataSet");}
 
 		void  SetValue(bool boolean){this->value=(IssmDouble)boolean;}
 		void  SetValue(int integer){this->value=(IssmDouble)integer;}
Index: ../trunk-jpl/src/c/classes/objects/Params/DoubleMatArrayParam.h
===================================================================
--- ../trunk-jpl/src/c/classes/objects/Params/DoubleMatArrayParam.h	(revision 13424)
+++ ../trunk-jpl/src/c/classes/objects/Params/DoubleMatArrayParam.h	(revision 13425)
@@ -57,6 +57,7 @@
 		void  GetParameterValue(Vector<IssmDouble>** pvec){_error_("Param "<< EnumToStringx(enum_type) << "cannot return a Vec");}
 		void  GetParameterValue(Matrix<IssmDouble>** pmat){_error_("Param "<< EnumToStringx(enum_type) << "cannot return a Mat");}
 		void  GetParameterValue(FILE** pfid){_error_("Param "<< EnumToStringx(enum_type) << "cannot return a FILE");}
+		void  GetParameterValue(DataSet** pdataset){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a DataSet");}
 
 		void  SetValue(bool boolean){_error_("Param "<< EnumToStringx(enum_type) << "cannot hold a boolean");}
 		void  SetValue(int integer){_error_("Param "<< EnumToStringx(enum_type) << "cannot hold an integer");}
Index: ../trunk-jpl/src/c/classes/objects/Params/DataSetParam.cpp
===================================================================
--- ../trunk-jpl/src/c/classes/objects/Params/DataSetParam.cpp	(revision 0)
+++ ../trunk-jpl/src/c/classes/objects/Params/DataSetParam.cpp	(revision 13425)
@@ -0,0 +1,95 @@
+/*!\file DataSetParam.c
+ * \brief: implementation of the DataSetParam object
+ */
+
+/*header files: */
+/*{{{*/
+#ifdef HAVE_CONFIG_H
+	#include <config.h>
+#else
+#error "Cannot compile with HAVE_CONFIG_H symbol! run configure first!"
+#endif
+
+#include <stdio.h>
+#include <string.h>
+#include "../objects.h"
+#include "../../../EnumDefinitions/EnumDefinitions.h"
+#include "../../../shared/shared.h"
+#include "../../../Container/Container.h"
+#include "../../../include/include.h"
+/*}}}*/
+
+/*DataSetParam constructors and destructor*/
+/*FUNCTION DataSetParam::DataSetParam(){{{*/
+DataSetParam::DataSetParam(){
+	value=NULL;
+	return;
+}
+/*}}}*/
+/*FUNCTION DataSetParam::DataSetParam(int enum_type,DataSet *value){{{*/
+DataSetParam::DataSetParam(int in_enum_type,DataSet* in_value){
+
+	enum_type=in_enum_type;
+	value=in_value->Copy();;
+}
+/*}}}*/
+/*FUNCTION DataSetParam::~DataSetParam(){{{*/
+DataSetParam::~DataSetParam(){
+	delete value;
+}
+/*}}}*/
+
+/*Object virtual functions definitions:*/
+/*FUNCTION DataSetParam::Echo {{{*/
+void DataSetParam::Echo(void){
+	this->DeepEcho();
+}
+/*}}}*/
+/*FUNCTION DataSetParam::DeepEcho{{{*/
+void DataSetParam::DeepEcho(void){
+
+	_printLine_("DataSetParam:");
+	_printLine_("   enum:  " << this->enum_type << " (" << EnumToStringx(this->enum_type) << ")");
+	this->value->Echo();
+}
+/*}}}*/
+/*FUNCTION DataSetParam::Id{{{*/
+int    DataSetParam::Id(void){ return -1; }
+/*}}}*/
+/*FUNCTION DataSetParam::MyRank{{{*/
+int    DataSetParam::MyRank(void){ 
+	extern int my_rank;
+	return my_rank; 
+}
+/*}}}*/
+/*FUNCTION DataSetParam::ObjectEnum{{{*/
+int DataSetParam::ObjectEnum(void){
+
+	return DataSetParamEnum;
+
+}
+/*}}}*/
+/*FUNCTION DataSetParam::copy{{{*/
+Object* DataSetParam::copy() {
+	
+	return new DataSetParam(this->enum_type,this->value);
+
+}
+/*}}}*/
+
+/*DataSetParam virtual functions definitions: */
+/*FUNCTION DataSetParam::GetParameterName{{{*/
+void DataSetParam::GetParameterName(char**pname){
+	EnumToStringx(pname,this->enum_type);
+}
+/*}}}*/
+/*FUNCTION DataSetParam::UnitConversion{{{*/
+void  DataSetParam::UnitConversion(int direction_enum){
+	/*do nothing, no unit conversion*/
+}
+/*}}}*/
+/*FUNCTION DataSetParam::GetParameterValue{{{*/
+void DataSetParam::GetParameterValue(DataSet** pdataset){
+	*pdataset=value->Copy();
+}
+/*}}}*/
Index: ../trunk-jpl/src/c/classes/objects/Params/IntVecParam.h
===================================================================
--- ../trunk-jpl/src/c/classes/objects/Params/IntVecParam.h	(revision 13424)
+++ ../trunk-jpl/src/c/classes/objects/Params/IntVecParam.h	(revision 13425)
@@ -56,6 +56,7 @@
 		void  GetParameterValue(Vector<IssmDouble>** pvec){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Vec");}
 		void  GetParameterValue(Matrix<IssmDouble>** pmat){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Mat");}
 		void  GetParameterValue(FILE** pfid){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a FILE");}
+		void  GetParameterValue(DataSet** pdataset){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a DataSet");}
 
 		void  SetValue(bool boolean){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a boolean");}
 		void  SetValue(int integer){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold an integer");}
Index: ../trunk-jpl/src/c/classes/objects/Params/BoolParam.h
===================================================================
--- ../trunk-jpl/src/c/classes/objects/Params/BoolParam.h	(revision 13424)
+++ ../trunk-jpl/src/c/classes/objects/Params/BoolParam.h	(revision 13425)
@@ -54,6 +54,7 @@
 		void  GetParameterValue(Vector<IssmDouble>** pvec){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Vec");}
 		void  GetParameterValue(Matrix<IssmDouble>** pmat){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Mat");}
 		void  GetParameterValue(FILE** pfid){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a FILE");}
+		void  GetParameterValue(DataSet** pdataset){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a DataSet");}
 
 		void  SetValue(bool boolean){this->value=boolean;}
 		void  SetValue(int integer){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold an int");}
Index: ../trunk-jpl/src/c/classes/objects/Params/IntMatParam.h
===================================================================
--- ../trunk-jpl/src/c/classes/objects/Params/IntMatParam.h	(revision 13424)
+++ ../trunk-jpl/src/c/classes/objects/Params/IntMatParam.h	(revision 13425)
@@ -56,6 +56,7 @@
 		void  GetParameterValue(Vector<IssmDouble>** pvec){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Vec");}
 		void  GetParameterValue(Matrix<IssmDouble>** pmat){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Mat");}
 		void  GetParameterValue(FILE** pfid){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a FILE");}
+		void  GetParameterValue(DataSet** pdataset){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a DataSet");}
 
 		void  SetValue(bool boolean){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a boolean");}
 		void  SetValue(int integer){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold an integer");}
Index: ../trunk-jpl/src/c/classes/objects/Params/StringParam.h
===================================================================
--- ../trunk-jpl/src/c/classes/objects/Params/StringParam.h	(revision 13424)
+++ ../trunk-jpl/src/c/classes/objects/Params/StringParam.h	(revision 13425)
@@ -55,6 +55,7 @@
 		void  GetParameterValue(Vector<IssmDouble>** pvec){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Vec");}
 		void  GetParameterValue(Matrix<IssmDouble>** pmat){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a Mat");}
 		void  GetParameterValue(FILE** pfid){_error_("Bool param of enum " << enum_type << " (" << EnumToStringx(enum_type) << ") cannot return a FILE");}
+		void  GetParameterValue(DataSet** pdataset){_error_("Param "<< EnumToStringx(enum_type) << " cannot return a DataSet");}
 
 		void  SetValue(bool boolean){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold a boolean");}
 		void  SetValue(int integer){_error_("Param "<< EnumToStringx(enum_type) << " cannot hold an integer");}
