+// Driver_Mesh::Status DriverGMF_Write::PerformSizeMap()
+// {
+// // const int dim = 3, version = sizeof(long) == 4 ? 2 : 3;
+// const int dim = 3, version = 2; // Version 3 not supported by mg-hexa
+// std::string aVerticesFile = mySizeMapPrefix + ".mesh";
+// std::string aSolFile = mySizeMapPrefix + ".sol";
+//
+// // Open files
+// int verticesFileID = GmfOpenMesh( aVerticesFile.c_str(), GmfWrite, version, dim );
+// int solFileID = GmfOpenMesh( aSolFile.c_str(), GmfWrite, version, dim );
+//
+// // Vertices Keyword
+// GmfSetKwd( verticesFileID, GmfVertices, mySizeMapVerticesNumber );
+// double xyz[3];
+// std::vector<SMESHDS_Mesh*>::iterator meshes_it;
+// SMESHDS_Mesh* aMesh;
+//
+// // Iterate on size map meshes
+// for (meshes_it = mySizeMapMeshes.begin(); meshes_it != mySizeMapMeshes.end(); meshes_it++ )
+// {
+// aMesh= *meshes_it;
+// SMDS_NodeIteratorPtr nodeIt = aMesh->nodesIterator();
+//
+// // Iterate on the nodes of the mesh and write their coordinates under the GmfVertices keyword
+// while ( nodeIt->more() )
+// {
+// const SMDS_MeshNode* n = nodeIt->next();
+// n->GetXYZ( xyz );
+// GmfSetLin( verticesFileID, GmfVertices, xyz[0], xyz[1], xyz[2], n->getshapeId() );
+// }
+// }
+//
+// // SolAtVertices Keyword
+// int TypTab[] = {GmfSca};
+// GmfSetKwd(solFileID, GmfSolAtVertices, mySizeMapVerticesNumber, 1, TypTab);
+//
+// std::vector<TLocalSize>::iterator sizes_it;
+// for ( sizes_it = myLocalSizes.begin(); sizes_it != myLocalSizes.end(); sizes_it++ )
+// {
+// for ( int i = 1; i <= sizes_it->nbNodes; i++ )
+// {
+// double ValTab[] = {sizes_it->size};
+// GmfSetLin( solFileID, GmfSolAtVertices, ValTab);
+// }
+// }
+//
+// // Close Files
+// GmfCloseMesh( verticesFileID );
+// GmfCloseMesh( solFileID );
+// }
+