1 #ifndef MED_MED_DRIVER_HXX
2 #define MED_MED_DRIVER_HXX
5 #include "MEDMEM_STRING.hxx"
7 #include "MEDMEM_Exception.hxx"
9 #include "MEDMEM_GenDriver.hxx"
11 #include "MEDMEM_define.hxx"
13 //using namaspace MED_FR ;
19 // This driver pilots within a MED class read/write accesses of fields/meshes
20 class MED_MED_DRIVER : public GENDRIVER
24 MED * const _ptrMed; // Store 'MED_DRIVER (0..n)----(1) MED' associations
25 med_idt _medIdt; // The _medIdt used to write/read Meshes to ::_filename
33 MED_MED_DRIVER(const string & fileName, MED * const ptrMed);
35 MED_MED_DRIVER(const string & fileName, MED * const ptrMed,
36 MED_EN::med_mode_acces accessMode);
37 // OPERATEUR DE RECOPIE AVEC _medIdt ??
42 virtual void write ( void ) const ;
43 virtual void writeFrom ( void ) const ;
44 virtual void read ( void ) ;
45 virtual void readFileStruct ( void ) ;
49 class MED_MED_RDONLY_DRIVER : public virtual MED_MED_DRIVER
52 MED_MED_RDONLY_DRIVER():MED_MED_DRIVER(){};
54 MED_MED_RDONLY_DRIVER(const string & fileName, MED * const ptrMed);
56 ~MED_MED_RDONLY_DRIVER() {
57 MESSAGE("MED_MED_RDONLY_DRIVER::~MED_MED_RDONLY_DRIVER() has been destroyed");
64 void readFileStruct ( void ) ;
67 class MED_MED_WRONLY_DRIVER : public virtual MED_MED_DRIVER
71 MED_MED_WRONLY_DRIVER():MED_MED_DRIVER(){};
73 MED_MED_WRONLY_DRIVER(const string & fileName, MED * const ptrMed);
75 ~MED_MED_WRONLY_DRIVER() {
76 MESSAGE("MED_MED_WRONLY_DRIVER::~MED_MED_WRONLY_DRIVER() has been destroyed");
82 void write ( void ) const ;
83 void writeFrom ( void ) const ;
86 class MED_MED_RDWR_DRIVER : public virtual MED_MED_RDONLY_DRIVER,
87 public virtual MED_MED_WRONLY_DRIVER,
88 public virtual MED_MED_DRIVER
92 MED_MED_RDWR_DRIVER():MED_MED_DRIVER(){};
94 MED_MED_RDWR_DRIVER(const string & fileName, MED * const ptrMed);
96 ~MED_MED_RDWR_DRIVER() {
97 MESSAGE("MED_MED_RDWR_DRIVER::~MED_MED_RDWR_DRIVER() has been destroyed");
103 void write ( void ) const ;
104 void writeFrom ( void ) const ;
106 void readFileStruct ( void ) ;
109 #endif /* MED_MED_DRIVER_HXX */