1 // Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE
3 // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
6 // This library is free software; you can redistribute it and/or
7 // modify it under the terms of the GNU Lesser General Public
8 // License as published by the Free Software Foundation; either
9 // version 2.1 of the License.
11 // This library is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 // Lesser General Public License for more details.
16 // You should have received a copy of the GNU Lesser General Public
17 // License along with this library; if not, write to the Free Software
18 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
27 #ifndef MED_V2_1_Wrapper_HeaderFile
28 #define MED_V2_1_Wrapper_HeaderFile
31 #if defined MEDWRAPPER_V2_1_EXPORTS
33 #define MED_V21_WRAPPER_EXPORT __declspec( dllexport )
35 #define MED_V21_WRAPPER_EXPORT
39 #define MED_V21_WRAPPER_EXPORT __declspec( dllimport )
41 #define MED_V21_WRAPPER_EXPORT
45 #define MED_V21_WRAPPER_EXPORT
48 #include "MED_TWrapper.hxx"
53 TInt MED_V21_WRAPPER_EXPORT
54 GetDESCLength<eV2_1>();
57 TInt MED_V21_WRAPPER_EXPORT
58 GetIDENTLength<eV2_1>();
61 TInt MED_V21_WRAPPER_EXPORT
62 GetNOMLength<eV2_1>();
65 TInt MED_V21_WRAPPER_EXPORT
66 GetLNOMLength<eV2_1>();
69 TInt MED_V21_WRAPPER_EXPORT
70 GetPNOMLength<eV2_1>();
73 void MED_V21_WRAPPER_EXPORT
74 GetVersionRelease<eV2_1>(TInt& majeur, TInt& mineur, TInt& release);
77 TInt MED_V21_WRAPPER_EXPORT
78 GetNbConn<eV2_1>(EGeometrieElement typmai,
79 EEntiteMaillage typent,
84 //----------------------------------------------------------------------------
86 typedef boost::shared_ptr<TFile> PFile;
88 typedef enum {eLECT, eECRI, eREMP} EModeAcces;
90 //----------------------------------------------------------------------------
91 class MED_V21_WRAPPER_EXPORT TVWrapper: public MED::TTWrapper<eV2_1>
94 TVWrapper(const TVWrapper&);
95 TVWrapper& operator=(const TVWrapper&);
98 TVWrapper(const std::string& theFileName);
101 //----------------------------------------------------------------------------
104 GetNbMeshes(TErr* theErr = NULL);
108 GetMeshInfo(TInt theMeshId, MED::TMeshInfo&,
109 TErr* theErr = NULL);
113 SetMeshInfo(const MED::TMeshInfo& theInfo,
114 TErr* theErr = NULL);
117 SetMeshInfo(const MED::TMeshInfo& theInfo,
119 TErr* theErr = NULL);
122 //----------------------------------------------------------------------------
125 GetNbFamilies(const MED::TMeshInfo& theMeshInfo,
126 TErr* theErr = NULL);
129 GetNbFamAttr(TInt theFamId,
130 const MED::TMeshInfo& theInfo,
131 TErr* theErr = NULL);
134 GetNbFamGroup(TInt theFamId,
135 const MED::TMeshInfo& theInfo,
136 TErr* theErr = NULL);
140 GetFamilyInfo(TInt theFamId,
141 MED::TFamilyInfo& theInfo,
142 TErr* theErr = NULL);
146 SetFamilyInfo(const MED::TFamilyInfo& theInfo,
147 TErr* theErr = NULL);
150 SetFamilyInfo(const MED::TFamilyInfo& theInfo,
152 TErr* theErr = NULL);
155 //----------------------------------------------------------------------------
158 GetNbNodes(const MED::TMeshInfo& theMeshInfo,
159 TErr* theErr = NULL);
163 GetNodeInfo(MED::TNodeInfo& theInfo,
164 TErr* theErr = NULL);
168 SetNodeInfo(const MED::TNodeInfo& theInfo,
169 TErr* theErr = NULL);
172 SetNodeInfo(const MED::TNodeInfo& theInfo,
174 TErr* theErr = NULL);
177 //----------------------------------------------------------------------------
180 GetEntityInfo(const MED::TMeshInfo& theMeshInfo,
181 EConnectivite theConn = eNOD,
182 TErr* theErr = NULL);
186 GetNbCells(const MED::TMeshInfo& theMeshInfo,
189 EConnectivite theConn = eNOD,
190 TErr* theErr = NULL);
194 GetCellInfo(MED::TCellInfo& theInfo,
195 TErr* theErr = NULL);
199 SetCellInfo(const MED::TCellInfo& theInfo,
200 TErr* theErr = NULL);
203 SetCellInfo(const MED::TCellInfo& theInfo,
205 TErr* theErr = NULL);
208 //----------------------------------------------------------------------------
211 GetNbFields(TErr* theErr = NULL);
215 GetNbComp(TInt theFieldId,
216 TErr* theErr = NULL);
220 GetFieldInfo(TInt theFieldId,
221 MED::TFieldInfo& theInfo,
222 TErr* theErr = NULL);
226 SetFieldInfo(const MED::TFieldInfo& theInfo,
227 TErr* theErr = NULL);
230 SetFieldInfo(const MED::TFieldInfo& theInfo,
232 TErr* theErr = NULL);
235 //----------------------------------------------------------------------------
238 GetNbProfiles(TErr* theErr = NULL);
242 GetProfilePreInfo(TInt theId,
243 TErr* theErr = NULL);
247 GetProfileInfo(TInt theId,
248 TProfileInfo& theInfo,
249 TErr* theErr = NULL);
253 SetProfileInfo(const TProfileInfo& theInfo,
254 TErr* theErr = NULL);
257 SetProfileInfo(const TProfileInfo& theInfo,
259 TErr* theErr = NULL);
261 //----------------------------------------------------------------------------
264 GetNbTimeStamps(const MED::TFieldInfo& theInfo,
265 const MED::TEntityInfo& theEntityInfo,
266 EEntiteMaillage& theEntity,
267 TGeom2Size& theGeom2Size,
268 TErr* theErr = NULL);
272 GetTimeStampInfo(TInt theTimeStampId,
273 MED::TTimeStampInfo& theInfo,
274 TErr* theErr = NULL);
278 GetTimeStampValue(const PTimeStampValueBase& theTimeStampValue,
279 const TMKey2Profile& theMKey2Profile,
280 const TKey2Gauss& theKey2Gauss,
281 TErr* theErr = NULL);
285 SetTimeStampValue(const PTimeStampValueBase& theTimeStampValue,
286 TErr* theErr = NULL);
289 SetTimeStampValue(const PTimeStampValueBase& theTimeStampValue,
291 TErr* theErr = NULL);