Index: /issm/trunk/src/c/UpdateInputsFromSolutionx/UpdateInputsx.cpp
===================================================================
--- /issm/trunk/src/c/UpdateInputsFromSolutionx/UpdateInputsx.cpp	(revision 3688)
+++ /issm/trunk/src/c/UpdateInputsFromSolutionx/UpdateInputsx.cpp	(revision 3688)
@@ -0,0 +1,38 @@
+/*!\file UpdateInputsx
+ * \brief: update datasets using  parameter inputs
+ */
+
+#include "./UpdateInputsx.h"
+#include "../shared/shared.h"
+#include "../include/macros.h"
+#include "../toolkits/toolkits.h"
+#include "../EnumDefinitions/EnumDefinitions.h"
+
+int UpdateInputsx( DataSet* elements,DataSet* nodes, DataSet* vertices, DataSet* loads, DataSet* materials, Parameters* parameters,Vec solution, int analysis_type, int sub_analysis_type){
+
+	int noerr=1;
+	int i;
+
+	int  found=0;
+	extern int num_procs;
+	extern int my_rank;
+	double* serial_solution=NULL;
+
+	/*First, get elements and loads configured: */
+	elements->Configure(elements,loads, nodes,vertices, materials,parameters);
+	loads->Configure(elements, loads, nodes,vertices, materials,parameters);
+	nodes->Configure(elements, loads, nodes,vertices, materials,parameters);
+	parameters->Configure(elements,loads, nodes,vertices, materials,parameters);
+
+	/*Serialize solution, so that elements can index into it on every CPU: */
+	VecToMPISerial(&serial_solution,solution);
+
+	/*Update elements, nodes, loads and materials from inputs: */
+	elements->UpdateInputs(serial_solution,analysis_type,sub_analysis_type);
+
+	/*Free ressources:*/
+	xfree((void**)&serial_solution);
+
+	return noerr;
+
+}
Index: /issm/trunk/src/c/UpdateInputsFromSolutionx/UpdateInputsx.h
===================================================================
--- /issm/trunk/src/c/UpdateInputsFromSolutionx/UpdateInputsx.h	(revision 3688)
+++ /issm/trunk/src/c/UpdateInputsFromSolutionx/UpdateInputsx.h	(revision 3688)
@@ -0,0 +1,15 @@
+/*!\file:  UpdateInputsx.h
+ * \brief header file for updating datasets from inputs
+ */ 
+
+#ifndef _UPDATEINPUTSXX_H
+#define _UPDATEINPUTSXX_H
+
+#include "../objects/objects.h"
+#include "../DataSet/DataSet.h"
+
+/* local prototypes: */
+int		UpdateInputsx( DataSet* elements,DataSet* nodes, DataSet* vertices,DataSet* loads, DataSet* materials,  Parameters* parameters,Vec solution, int analysis_type, int sub_analysis_type);
+
+#endif  /* _UPDATEINPUTSXX_H */
+
