Salome HOME
6d877695c0dff2e3312f1a6ba6d5c6439a0a2dfe
[modules/med.git] / src / MEDMEM / test_gibi_driver.cxx
1 #include "MEDMEM_GibiMeshDriver.hxx"
2 #include "MEDMEM_Mesh.hxx"
3
4 #ifdef _DEBUG_
5 #include "LocalTraceCollector.hxx"
6 #endif /* ifdef _DEBUG_*/
7
8 using namespace std;
9 using namespace MEDMEM;
10 int main (int argc, char ** argv)
11 {
12     /* process the arguments */
13     if (argc != 2) 
14     {
15         cerr << "Usage : " << argv[0] 
16         << "Gibifilename" << endl << endl
17         << "-> lit le fichier gibi filename ,crée 2 fichiers : MED et VTK" << endl;
18         exit(-1);
19     }
20
21 #ifdef _DEBUG_
22   LocalTraceCollector::instance();
23 #endif /* ifdef _DEBUG_*/
24
25     string gibifilename  = argv[1];
26
27     // Construction des noms de fichier
28     const string ext=".sauve";
29     string::size_type pos=gibifilename.find(ext,0);
30     string basename (gibifilename, 0, pos); // nom sans extension
31     string medfile=basename+".med"; // nom fichier med à creer
32     string vtkfile=basename+".vtk"; // nom fichier vtk à creer
33     string::size_type pos1=gibifilename.rfind('/');
34     string meshName (gibifilename,pos1+1,pos-pos1-1); // get rid of directory & extension
35     cout << meshName << endl;
36
37     // lecture du fichier gibi
38     // MESH * myMesh= new MESH(GIBI_DRIVER,gibifilename);
39     MESH * myMesh= new MESH() ; 
40     GIBI_MESH_RDONLY_DRIVER myGibiMeshDriver(gibifilename, myMesh) ;
41     myGibiMeshDriver.open() ;
42     myGibiMeshDriver.read() ;
43     myGibiMeshDriver.close() ;
44
45     cout << "Impression de MESH : " << endl;
46     cout << *myMesh;
47
48     // creation d'un fichier med
49     cout << "creation d'un fichier med : " << endl;
50     int idMed = myMesh->addDriver(MED_DRIVER, medfile, meshName);
51     myMesh->write(idMed) ;
52
53     // creation d'un fichier vtk
54     cout << "creation d'un fichier vtk : " << endl;
55     int idVtk = myMesh->addDriver(VTK_DRIVER, vtkfile, meshName);
56     myMesh->write(idVtk) ;
57     delete myMesh;
58
59     // remontée mémoire du fichier med
60     myMesh= new MESH(MED_DRIVER,medfile,meshName);
61     //myMesh= new MESH() ;
62     //myMesh->setName(meshName);
63     //MED_MESH_RDONLY_DRIVER myMeshDriver(medfile,myMesh) ;
64     //myMeshDriver.setMeshName(meshName);
65     //myMeshDriver.open() ;
66     //myMeshDriver.read() ;
67     //myMeshDriver.close() ;
68     //cout << "Impression 2 de MESH : " << endl;
69     //cout << *myMesh;
70     delete myMesh;
71
72
73 }