Salome HOME
NRI : First integration.
[modules/smesh.git] / src / DriverMED / DriverMED_W_SMESHDS_Document.cxx
1 using namespace std;
2 #include "DriverMED_W_SMESHDS_Document.h"
3 #include "DriverMED_W_SMESHDS_Mesh.h"
4 #include "utilities.h"
5
6 #include <stdio.h>
7
8 extern "C" 
9 {
10   Document_Writer* Wmaker() {
11     return new DriverMED_W_SMESHDS_Document;
12   }
13 }
14
15 DriverMED_W_SMESHDS_Document::DriverMED_W_SMESHDS_Document() {
16 ;
17 }
18
19 DriverMED_W_SMESHDS_Document::~DriverMED_W_SMESHDS_Document() {
20 ;
21 }
22
23 //void DriverMED_W_SMESHDS_Document::SetFile(string aFile) {
24 //myFile = aFile;
25 //}
26
27 //void DriverMED_W_SMESHDS_Document::SetDocument(Handle(SMESHDS_Document)& aDocument) {
28 //myDocument = aDocument;
29 //}
30
31 void DriverMED_W_SMESHDS_Document::Write() {
32
33   med_err ret = 0;
34   med_idt fid;
35   med_int nmaa,numero,nb_of_meshes;
36   med_mode_switch mode_coo;
37   med_connectivite typ_con;
38
39   SCRUTE(myFile);
40   Handle(SMESHDS_Mesh) myMesh;
41
42   /******** Nombre de maillages ********/
43   nb_of_meshes = myDocument->NbMeshes(); //voir avec Yves
44   MESSAGE("nb_of_meshes = "<<nb_of_meshes<<"\n");
45   SCRUTE(nb_of_meshes);
46   //nb_of_meshes = 1;
47   numero = 0;
48
49   string myClass = string("SMESHDS_Mesh");
50   string myExtension = string("MED");
51
52   //while (numero<nb_of_meshes) {
53   //numero++;
54   //myMesh = myDocument->GetMesh(numero);
55
56   myDocument->InitMeshesIterator();
57   if (nb_of_meshes!=0)
58   for (;myDocument->MoreMesh();myDocument->NextMesh()) {
59     numero++;
60     myMesh = myDocument->CurrentMesh();
61
62     DriverMED_W_SMESHDS_Mesh* myWriter = new DriverMED_W_SMESHDS_Mesh;
63
64     myWriter->SetMesh(myMesh);
65     myWriter->SetFile(myFile);
66     //myWriter->SetFileId(fid);
67     myWriter->SetMeshId(numero);
68
69     //myWriter->Write();
70     myWriter->Add();
71   }
72
73
74 }