Index: /issm/trunk/src/mex/InputDepthAverage/DepthAverageInput.cpp
===================================================================
--- /issm/trunk/src/mex/InputDepthAverage/DepthAverageInput.cpp	(revision 4093)
+++ /issm/trunk/src/mex/InputDepthAverage/DepthAverageInput.cpp	(revision 4093)
@@ -0,0 +1,64 @@
+/*\file DepthAverageInput.c
+*\brief: update elements properties using an input  vector
+*/
+
+#include "./DepthAverageInput.h"
+
+void mexFunction( int nlhs, mxArray* plhs[], int nrhs, const mxArray* prhs[]){
+
+/*diverse: */
+int   noerr=1;
+
+/*input datasets: */
+DataSet* elements=NULL;
+DataSet* nodes=NULL;
+DataSet* vertices=NULL;
+DataSet* loads=NULL;
+DataSet* materials=NULL;
+Parameters* parameters=NULL;
+int      NameEnum;
+
+/*Boot module: */
+MODULEBOOT();
+
+/*checks on arguments on the matlab side: */
+CheckNumMatlabArguments(nlhs,NLHS,nrhs,NRHS,__FUNCT__,&DepthAverageInputUsage);
+
+/*Input datasets: */
+FetchData(&elements,ELEMENTSIN);
+FetchData(&nodes,NODESIN);
+FetchData(&vertices,VERTICESIN);
+FetchData(&loads,LOADSIN);
+FetchData(&materials,MATERIALSIN);
+FetchParams(&parameters,PARAMETERSIN);
+FetchData(&NameEnum,NAME);
+
+/*!Generate internal degree of freedom numbers: */
+DepthAverageInputx(elements,nodes,vertices,loads, materials,parameters,NameEnum);
+
+/*write output datasets: */
+WriteData(ELEMENTS,elements);
+WriteData(NODES,nodes);
+WriteData(VERTICES,vertices);
+WriteData(LOADS,loads);
+WriteData(MATERIALS,materials);
+WriteParams(PARAMETERS,parameters);
+
+/*Free ressources: */
+delete elements;
+delete nodes;
+delete vertices;
+delete loads;
+delete materials;
+delete parameters;
+
+/*end module: */
+MODULEEND();
+}
+
+void DepthAverageInputUsage(void)
+{
+	_printf_("\n");
+	_printf_("   usage: [elements,nodes,vertices,loads,materials,parameters] = %s(elements,nodes,vertices,loads,materials,parameters,name_enum);\n",__FUNCT__);
+	_printf_("\n");
+}
Index: /issm/trunk/src/mex/InputDepthAverage/DepthAverageInput.h
===================================================================
--- /issm/trunk/src/mex/InputDepthAverage/DepthAverageInput.h	(revision 4093)
+++ /issm/trunk/src/mex/InputDepthAverage/DepthAverageInput.h	(revision 4093)
@@ -0,0 +1,43 @@
+/*
+	DepthAverageInput.h
+*/
+
+#ifndef _DEPTHAVERAGEINPUT_H
+#define _DEPTHAVERAGEINPUT_H
+
+/* local prototypes: */
+void DepthAverageInputUsage(void);
+
+#include "../../c/modules/modules.h"
+#include "../../c/DataSet/DataSet.h"
+#include "../../c/shared/shared.h"
+#include "../../c/EnumDefinitions/EnumDefinitions.h"
+
+#undef __FUNCT__ 
+#define __FUNCT__  "DepthAverageInput"
+
+/* serial input macros: */
+#define ELEMENTSIN (mxArray*)prhs[0]
+#define NODESIN (mxArray*)prhs[1]
+#define VERTICESIN (mxArray*)prhs[2]
+#define LOADSIN (mxArray*)prhs[3]
+#define MATERIALSIN (mxArray*)prhs[4]
+#define PARAMETERSIN (mxArray*)prhs[5]
+#define NAME (mxArray*)prhs[6]
+
+/* serial output macros: */
+#define ELEMENTS (mxArray**)&plhs[0]
+#define NODES (mxArray**)&plhs[1]
+#define VERTICES (mxArray**)&plhs[2]
+#define LOADS (mxArray**)&plhs[3]
+#define MATERIALS (mxArray**)&plhs[4]
+#define PARAMETERS (mxArray**)&plhs[5]
+
+/* serial arg counts: */
+#undef NLHS
+#define NLHS  6
+#undef NRHS
+#define NRHS  7
+
+#endif  /* _DEPTHAVERAGEINPUT_H */
+
