Salome HOME
Update to match the changes in SMDS
[modules/smesh.git] / src / DriverMED / DriverMED_W_SMESHDS_Document.cxx
index 8bfda5b31dc3d361364642f95154523291de36a0..e04bac2185397f93ac069be6a2a077d1abde28cb 100644 (file)
@@ -1,3 +1,29 @@
+//  SMESH DriverMED : driver to read and write 'med' files
+//
+//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
+// 
+//  This library is free software; you can redistribute it and/or 
+//  modify it under the terms of the GNU Lesser General Public 
+//  License as published by the Free Software Foundation; either 
+//  version 2.1 of the License. 
+// 
+//  This library is distributed in the hope that it will be useful, 
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+//  Lesser General Public License for more details. 
+// 
+//  You should have received a copy of the GNU Lesser General Public 
+//  License along with this library; if not, write to the Free Software 
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
+// 
+//  See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org 
+//
+//
+//
+//  File   : DriverMED_W_SMESHDS_Document.cxx
+//  Module : SMESH
+
 using namespace std;
 #include "DriverMED_W_SMESHDS_Document.h"
 #include "DriverMED_W_SMESHDS_Mesh.h"
@@ -5,19 +31,22 @@ using namespace std;
 
 #include <stdio.h>
 
-extern "C" 
+extern "C"
 {
-  Document_Writer* Wmaker() {
-    return new DriverMED_W_SMESHDS_Document;
-  }
+       Document_Writer *Wmaker()
+       {
+               return new DriverMED_W_SMESHDS_Document;
+       }
 }
 
-DriverMED_W_SMESHDS_Document::DriverMED_W_SMESHDS_Document() {
-;
+DriverMED_W_SMESHDS_Document::DriverMED_W_SMESHDS_Document()
+{
+       ;
 }
 
-DriverMED_W_SMESHDS_Document::~DriverMED_W_SMESHDS_Document() {
-;
+DriverMED_W_SMESHDS_Document::~DriverMED_W_SMESHDS_Document()
+{
+       ;
 }
 
 //void DriverMED_W_SMESHDS_Document::SetFile(string aFile) {
@@ -28,47 +57,47 @@ DriverMED_W_SMESHDS_Document::~DriverMED_W_SMESHDS_Document() {
 //myDocument = aDocument;
 //}
 
-void DriverMED_W_SMESHDS_Document::Write() {
+void DriverMED_W_SMESHDS_Document::Write()
+{
 
-  med_err ret = 0;
-  med_idt fid;
-  med_int nmaa,numero,nb_of_meshes;
-  med_mode_switch mode_coo;
-  med_connectivite typ_con;
+       med_err ret = 0;
+       med_idt fid;
+       med_int nmaa, numero, nb_of_meshes;
+       med_mode_switch mode_coo;
+       med_connectivite typ_con;
 
-  SCRUTE(myFile);
-  Handle(SMESHDS_Mesh) myMesh;
+       SCRUTE(myFile);
+       SMESHDS_Mesh * myMesh;
 
   /******** Nombre de maillages ********/
-  nb_of_meshes = myDocument->NbMeshes(); //voir avec Yves
-  MESSAGE("nb_of_meshes = "<<nb_of_meshes<<"\n");
-  SCRUTE(nb_of_meshes);
-  //nb_of_meshes = 1;
-  numero = 0;
-
-  string myClass = string("SMESHDS_Mesh");
-  string myExtension = string("MED");
-
-  //while (numero<nb_of_meshes) {
-  //numero++;
-  //myMesh = myDocument->GetMesh(numero);
-
-  myDocument->InitMeshesIterator();
-  if (nb_of_meshes!=0)
-  for (;myDocument->MoreMesh();myDocument->NextMesh()) {
-    numero++;
-    myMesh = myDocument->CurrentMesh();
-
-    DriverMED_W_SMESHDS_Mesh* myWriter = new DriverMED_W_SMESHDS_Mesh;
-
-    myWriter->SetMesh(myMesh);
-    myWriter->SetFile(myFile);
-    //myWriter->SetFileId(fid);
-    myWriter->SetMeshId(numero);
-
-    //myWriter->Write();
-    myWriter->Add();
-  }
-
-
+       nb_of_meshes = myDocument->NbMeshes();  //voir avec Yves
+       MESSAGE("nb_of_meshes = " << nb_of_meshes << "\n");
+       SCRUTE(nb_of_meshes);
+       //nb_of_meshes = 1;
+       numero = 0;
+
+       string myClass = string("SMESHDS_Mesh");
+       string myExtension = string("MED");
+
+       //while (numero<nb_of_meshes) {
+       //numero++;
+       //myMesh = myDocument->GetMesh(numero);
+
+       myDocument->InitMeshesIterator();
+       if (nb_of_meshes != 0)
+               while(myDocument->MoreMesh())
+               {
+                       numero++;
+                       myMesh = myDocument->NextMesh();
+
+                       DriverMED_W_SMESHDS_Mesh *myWriter = new DriverMED_W_SMESHDS_Mesh;
+
+                       myWriter->SetMesh(myMesh);
+                       myWriter->SetFile(myFile);
+                       //myWriter->SetFileId(fid);
+                       myWriter->SetMeshId(numero);
+
+                       //myWriter->Write();
+                       myWriter->Add();
+               }
 }