Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef GENDRIVER_HXX
00024 #define GENDRIVER_HXX
00025
00026 #include <MEDMEM.hxx>
00027
00028 #include <string>
00029
00030 #include "MEDMEM_define.hxx"
00031 #include "MEDMEM_Utilities.hxx"
00032
00033
00034
00035 using namespace std;
00036
00042 namespace MEDMEM {
00043
00044
00045 typedef enum { MED_DRIVER = 0, GIBI_DRIVER = 1, PORFLOW_DRIVER = 2,
00046 ENSIGHT_DRIVER = 250, VTK_DRIVER = 254, ASCII_DRIVER = 3,
00047 NO_DRIVER = 255 } driverTypes;
00048
00049 class GENDRIVER;
00050 MEDMEM_EXPORT ostream & operator<<(ostream &os,const GENDRIVER &genDriver);
00051
00052 class MEDMEM_EXPORT GENDRIVER {
00053
00054 protected :
00055
00056 int _id;
00057
00058
00059 string _fileName;
00060 MED_EN::med_mode_acces _accessMode;
00061 int _status;
00062 driverTypes _driverType;
00063
00064
00065 public:
00069 GENDRIVER(driverTypes driverType);
00073 GENDRIVER(const string & fileName, MED_EN::med_mode_acces accessMode,
00074 driverTypes driverType);
00078 GENDRIVER(const GENDRIVER & genDriver);
00079
00083 virtual ~GENDRIVER();
00084
00088 GENDRIVER & operator=(const GENDRIVER & genDriver);
00089
00093 friend ostream & operator<<(ostream &os,const GENDRIVER &genDriver);
00094
00095 bool operator ==(const GENDRIVER &genDriver) const;
00099 virtual void open ( void ) = 0;
00104 virtual void openAppend ( void );
00108 virtual void close( void ) = 0;
00112 virtual void write( void ) const = 0;
00117 virtual void writeAppend( void ) const;
00121 virtual void read ( void ) = 0;
00122
00123
00124 virtual GENDRIVER * copy ( void ) const = 0 ;
00125
00126
00127
00128
00129
00130
00131
00132 virtual void merge ( const GENDRIVER &genDriver );
00133
00134
00135 virtual void writeFrom ( void ) const;
00136 virtual void readFileStruct ( void );
00137
00138 virtual void setMeshName ( const string & meshName);
00139 virtual string getMeshName() const;
00140
00141 virtual void setFieldName ( const string & fieldName);
00142 virtual string getFieldName() const;
00143
00144 void setId ( int id = MED_EN::MED_INVALID );
00145 int getId ( void ) const ;
00146 string getFileName () const;
00147 virtual void setFileName ( const string & fileName);
00148 virtual MED_EN::med_mode_acces getAccessMode() const;
00149 virtual void setAccessMode(MED_EN::med_mode_acces mode);
00150 driverTypes getDriverType() const { return _driverType; }
00151 };
00152 }
00153
00154
00155 #endif