Index: /issm/trunk/src/c/Makefile.am
===================================================================
--- /issm/trunk/src/c/Makefile.am	(revision 3211)
+++ /issm/trunk/src/c/Makefile.am	(revision 3212)
@@ -23,4 +23,10 @@
 libISSM_a_SOURCES = ./objects/objects.h\
 					./objects/Object.h\
+					./objects/BamgGeom.h\
+					./objects/BamgGeom.cpp\
+					./objects/BamgMesh.h\
+					./objects/BamgMesh.cpp\
+					./objects/BamgOpts.h\
+					./objects/BamgOpts.cpp\
 					./objects/Element.h\
 					./objects/Element.cpp\
Index: /issm/trunk/src/c/objects/BamgGeom.cpp
===================================================================
--- /issm/trunk/src/c/objects/BamgGeom.cpp	(revision 3212)
+++ /issm/trunk/src/c/objects/BamgGeom.cpp	(revision 3212)
@@ -0,0 +1,26 @@
+#include "stdio.h"
+#include "./BamgGeom.h"
+
+void BamgGeomInit(BamgGeom* bamggeom){
+
+	bamggeom->NumVertices=0;
+	bamggeom->Vertices=NULL;
+	bamggeom->NumEdges=0;
+	bamggeom->Edges=NULL;
+	bamggeom->hVertices=NULL;
+	bamggeom->MetricVertices=NULL;
+	bamggeom->h1h2VpVertices=NULL;
+	bamggeom->NumTangentAtEdges=0;
+	bamggeom->TangentAtEdges=NULL;
+	bamggeom->NumCorners=0;
+	bamggeom->Corners=NULL;
+	bamggeom->NumRequiredVertices=0;
+	bamggeom->RequiredVertices=NULL;
+	bamggeom->NumRequiredEdges=0;
+	bamggeom->RequiredEdges=NULL;
+	bamggeom->NumCrackedEdges=0;
+	bamggeom->CrackedEdges=NULL;
+	bamggeom->NumSubDomains=0;
+	bamggeom->SubDomains=NULL;
+
+}
Index: /issm/trunk/src/c/objects/BamgGeom.h
===================================================================
--- /issm/trunk/src/c/objects/BamgGeom.h	(revision 3211)
+++ /issm/trunk/src/c/objects/BamgGeom.h	(revision 3212)
@@ -1,4 +1,3 @@
 /*!\file:  BamgGeom.h
- * \brief place holder for optimization function arguments
  */ 
 
@@ -36,3 +35,6 @@
 	double* SubDomains;
 };
+
+void BamgGeomInit(BamgGeom* bamggeom);
+
 #endif
Index: /issm/trunk/src/c/objects/BamgMesh.cpp
===================================================================
--- /issm/trunk/src/c/objects/BamgMesh.cpp	(revision 3212)
+++ /issm/trunk/src/c/objects/BamgMesh.cpp	(revision 3212)
@@ -0,0 +1,31 @@
+#include "stdio.h"
+#include "./BamgMesh.h"
+
+void BamgMeshInit(BamgMesh* bamgmesh){
+
+	bamgmesh->NumTriangles=0;
+	bamgmesh->Triangles=NULL;
+	bamgmesh->NumVertices=0;
+	bamgmesh->Vertices=NULL;
+	bamgmesh->NumEdges=0;
+	bamgmesh->Edges=NULL;
+	bamgmesh->NumSegments=0;
+	bamgmesh->Segments=NULL;
+	bamgmesh->SegmentsMarkers=NULL;
+	bamgmesh->NumCrackedEdges=0;
+	bamgmesh->CrackedEdges=NULL;
+	bamgmesh->NumQuadrilaterals=0;
+	bamgmesh->Quadrilaterals=NULL;
+	bamgmesh->NumVerticesOnGeometricVertex=0;
+	bamgmesh->VerticesOnGeometricVertex=NULL;
+	bamgmesh->NumVerticesOnGeometricEdge=0;
+	bamgmesh->VerticesOnGeometricEdge=NULL;
+	bamgmesh->NumEdgesOnGeometricEdge=0;
+	bamgmesh->EdgesOnGeometricEdge=NULL;
+	bamgmesh->NumSubDomains=0;
+	bamgmesh->SubDomains=NULL;
+	bamgmesh->NumSubDomainsFromGeom=0;
+	bamgmesh->SubDomainsFromGeom=NULL;
+	bamgmesh->hVertices=NULL;
+
+}
Index: /issm/trunk/src/c/objects/BamgMesh.h
===================================================================
--- /issm/trunk/src/c/objects/BamgMesh.h	(revision 3211)
+++ /issm/trunk/src/c/objects/BamgMesh.h	(revision 3212)
@@ -1,4 +1,3 @@
 /*!\file:  BamgMesh.h
- * \brief place holder for optimization function arguments
  */ 
 
@@ -44,3 +43,6 @@
 	double* hVertices;
 };
+
+void BamgMeshInit(BamgMesh* bamgmesh);
+
 #endif
Index: /issm/trunk/src/c/objects/BamgOpts.cpp
===================================================================
--- /issm/trunk/src/c/objects/BamgOpts.cpp	(revision 3212)
+++ /issm/trunk/src/c/objects/BamgOpts.cpp	(revision 3212)
@@ -0,0 +1,32 @@
+#include "stdio.h"
+#include "./BamgOpts.h"
+
+void BamgOptsInit(BamgOpts* bamgopts){
+
+	bamgopts->iso=0;
+	bamgopts->maxnbv=0;
+	bamgopts->MaximalAngleOfCorner=0;
+	bamgopts->Hessiantype=0;
+	bamgopts->Metrictype=0;
+	bamgopts->KeepVertices=0;
+	bamgopts->renumber=0;
+	bamgopts->maxsubdiv=0;
+	bamgopts->power=0;
+	bamgopts->anisomax=0;
+	bamgopts->NbSmooth=0;
+	bamgopts->nbjacobi=0;
+	bamgopts->omega=0;
+	bamgopts->hmin=0;
+	bamgopts->hmax=0;
+	bamgopts->gradation=0;
+	bamgopts->cutoff=0;
+	bamgopts->splitcorners=0;
+	bamgopts->verbose=0;
+	bamgopts->err=NULL;
+	bamgopts->errg=0;
+	bamgopts->coef=0;
+	bamgopts->metric=NULL;
+	bamgopts->field=NULL;
+	bamgopts->numfields=0;
+
+}
Index: /issm/trunk/src/c/objects/BamgOpts.h
===================================================================
--- /issm/trunk/src/c/objects/BamgOpts.h	(revision 3211)
+++ /issm/trunk/src/c/objects/BamgOpts.h	(revision 3212)
@@ -35,3 +35,6 @@
 
 };
+
+void BamgOptsInit(BamgOpts* bamgopts);
+
 #endif
