2 #include "DriverDAT_W_SMESHDS_Document.h"
3 #include "DriverDAT_W_SMESHDS_Mesh.h"
9 Document_Writer* Wmaker() {
10 return new DriverDAT_W_SMESHDS_Document;
14 DriverDAT_W_SMESHDS_Document::DriverDAT_W_SMESHDS_Document() {
18 DriverDAT_W_SMESHDS_Document::~DriverDAT_W_SMESHDS_Document() {
22 //void DriverDAT_W_SMESHDS_Document::SetFile(string aFile) {
26 //void DriverDAT_W_SMESHDS_Document::SetDocument(Handle(SMESHDS_Document)& aDocument) {
27 //myDocument = aDocument;
30 void DriverDAT_W_SMESHDS_Document::Write() {
32 Handle(SMESHDS_Mesh) myMesh;
34 /****************************************************************************
35 * OUVERTURE DU FICHIER EN ECRITURE *
36 ****************************************************************************/
37 char* file2Write = (char*)myFile.c_str();
38 FILE* fid = fopen(file2Write,"w+");
41 fprintf(stderr,">> ERREUR : ouverture du fichier %s \n",file2Write);
45 /****************************************************************************
46 * FERMETURE DU FICHIER *
47 ****************************************************************************/
51 /******** Nombre de maillages ********/
52 int nb_of_meshes = myDocument->NbMeshes(); //voir avec Yves
56 string myClass = string("SMESHDS_Mesh");
57 string myExtension = string("DAT");
59 //while (numero<nb_of_meshes) {
61 //myMesh = myDocument->GetMesh(numero);
62 myDocument->InitMeshesIterator();
63 for (;myDocument->MoreMesh();myDocument->NextMesh()) {
65 myMesh = myDocument->CurrentMesh();
67 DriverDAT_W_SMESHDS_Mesh* myWriter = new DriverDAT_W_SMESHDS_Mesh;
68 //Mesh_Writer* myWriter = Driver::GetMeshWriter(myExtension, myClass);
70 myWriter->SetMesh(myMesh);
71 myWriter->SetFile(myFile);
73 //myWriter->SetFileId(fid);
74 myWriter->SetMeshId(numero);