9 // UTILE AUX DEUX NAMESPACES
16 extern "C" { // on est la
18 // #define MED_NULL (void *) NULL
19 // #define MED_MAX_PARA 20
21 // #define MED_TAILLE_DESC 200
22 // #define MED_TAILLE_IDENT 8
23 // #define MED_TAILLE_NOM 32
24 // #define MED_TAILLE_LNOM 80
25 // #define MED_TAILLE_PNOM 8
28 typedef long medGeometryElement;
29 const medGeometryElement MED_NONE = 0;
30 const medGeometryElement MED_POINT1 = 1;
31 const medGeometryElement MED_SEG2 = 102;
32 const medGeometryElement MED_SEG3 = 103;
33 const medGeometryElement MED_TRIA3 = 203;
34 const medGeometryElement MED_QUAD4 = 204;
35 const medGeometryElement MED_TRIA6 = 206;
36 const medGeometryElement MED_QUAD8 = 208;
37 const medGeometryElement MED_TETRA4 = 304;
38 const medGeometryElement MED_PYRA5 = 305;
39 const medGeometryElement MED_PENTA6 = 306;
40 const medGeometryElement MED_HEXA8 = 308;
41 const medGeometryElement MED_TETRA10 = 310;
42 const medGeometryElement MED_PYRA13 = 313;
43 const medGeometryElement MED_PENTA15 = 315;
44 const medGeometryElement MED_HEXA20 = 320;
45 const medGeometryElement MED_POLYGON = 400;
46 const medGeometryElement MED_POLYHEDRA = 500;
47 const medGeometryElement MED_ALL_ELEMENTS = 999;
49 typedef long medEntityMesh;
50 const medEntityMesh MED_CELL = 0;
51 const medEntityMesh MED_FACE = 1;
52 const medEntityMesh MED_EDGE = 2;
53 const medEntityMesh MED_NODE = 3;
54 const medEntityMesh MED_ALL_ENTITIES = 4;
56 typedef long medModeSwitch;
57 const medModeSwitch MED_FULL_INTERLACE = 0;
58 const medModeSwitch MED_NO_INTERLACE = 1;
60 typedef long medConnectivity;
61 const medConnectivity MED_NODAL = 0;
62 const medConnectivity MED_DESCENDING = 1;
64 typedef enum {MED_CARTESIAN, MED_POLAR, MED_BODY_FITTED} med_grid_type;
66 typedef enum {MED_LECT,MED_ECRI,MED_REMP} med_mode_acces;
68 typedef enum {ASCENDING=7,DESCENDING=77} med_sort_direc;
70 typedef enum {MED_REEL64=6, MED_INT32=24,MED_INT64=26} med_type_champ;
72 // #define MED_NBR_GEOMETRIE_MAILLE 15
73 // #define MED_NBR_GEOMETRIE_FACE 4
74 // #define MED_NBR_GEOMETRIE_ARETE 2
76 typedef enum {MED_CART, MED_CYL, MED_SPHER} med_repere;
78 typedef enum {MED_FAUX, MED_VRAI} med_booleen ;
80 typedef enum {MED_GROUPE, MED_ATTR, MED_FAMILLE} med_dim_famille;
82 typedef enum {MED_COMP, MED_DTYPE} med_dim_champ;
84 typedef enum {MED_HDF_VERSION, MED_VERSION, MED_FICH_DES} med_fich_info;
86 // #define MED_NOPG 1 /* -> pas de point de Gauss */
87 // #define MED_NOPFL "" /* -> pas de profils utilisateur */
88 // #define MED_NOPFLi " " /* Variable Interne */
89 // #define MED_NOPF 0 /* -> pas de profils pour _MEDdataseNnumEcrire */
90 // #define MED_NOPDT -1 /* rem: pas de pas de temps negatifs */
91 // #define MED_NONOR -1 /* rem: pas de n°ordre negatif */
92 // #define MED_DIM1 1 /* PAS */
93 // //#define MED_ALL 0 !!!!! NB: WARNING MED_ALL deja utilise dans l'enum medGeometryElement !!!!!!!!
96 #if defined(SUN4SOL2) || defined(PCLINUX) || defined(OSF1_32) || defined(IRIX64_32) || defined(RS6000)
97 /* interface C/FORTRAN */
98 /* this true only with g77 and gcc : we must change it to use directly NOMF_... and INT32 or INT64 - it will be more simple to understand and to use ! */
99 // #define NOMF_POST_UNDERSCORE
101 /* correspondance des types avec HDF 5 */
102 typedef hsize_t med_size;
103 typedef hssize_t med_ssize;
104 //typedef hid_t med_idt;
105 typedef herr_t med_err;
107 /* types elementaires */
109 typedef double med_float;
113 /* correspondance des types avec HDF 5 */
114 typedef hsize_t med_size;
115 typedef hssize_t med_ssize;
116 //typedef hid_t med_idt;
117 typedef herr_t med_err;
119 /* types elementaires */
121 typedef double med_float;
124 #if defined(IRIX64) || defined(OSF1) || defined(VPP5000)
125 // #define NOMF_POST_UNDERSCORE
127 /* correspondance des types avec HDF 5 */
128 typedef hsize_t med_size;
129 typedef hssize_t med_ssize;
130 //typedef hid_t med_idt;
131 typedef herr_t med_err;
133 /* types elementaires */
134 typedef long med_int;
135 typedef double med_float;
140 /* correspondance des types avec HDF 5 */
141 typedef hsize_t med_size;
142 typedef hssize_t med_ssize;
143 //typedef hid_t med_idt;
144 typedef herr_t med_err;
146 /* types elementaires */
148 typedef double med_float;
152 // #if defined(NOMF_PRE_UNDERSCORE) && defined(NOMF_POST_UNDERSCORE)
153 // # define NOMF(x) _##x##_
155 // #if defined(NOMF_PRE_UNDERSCORE) && !defined(NOMF_POST_UNDERSCORE)
156 // # define NOMF(x) _##x
158 // #if !defined(NOMF_PRE_UNDERSCORE) && defined(NOMF_POST_UNDERSCORE)
159 // # define NOMF(x) x##_
161 // #if !defined(NOMF_PRE_UNDERSCORE) && !defined(NOMF_POST_UNDERSCORE)
162 // # define NOMF(x) x
165 //#include "med_proto.h"
169 // valeurs des algos de connexites
170 #define FRACT_ALGO 10
181 #define MED_INVALID -1
184 //#define MED_NULL NULL
186 #define MED_RDONLY MED_LECT
187 // rem: MED_WRONLY=MED_ECR n'empêche malheureusement pas de lire le fichier
188 // mais permet de conserver l'existant. Attention à la création d'objet
189 // ne prenant pas de paramètre de type mode d'accès il faut tester si il
190 // est déjà présent dans le fichier. Si MED_WRONLY=MED_REMP le fichier est
191 // réinitialisé. Cf une évolution de MED.
192 #define MED_WRONLY MED_ECRI
193 #define MED_RDWR MED_ECRI
198 #define longueur_string 100
199 #define PRECISION 0.0000001
200 // #define undefined -1
203 // type des connectivites
205 //#define CONN_DESC_PART 1
206 //#define CONN_DESC_TOT 2
208 // valeurs de type_interpolation
211 #define trilineaire 2
213 #define VF_conservatif 4
214 #define VF_non_conservatif 5
215 // valeurs de type_mapping
217 #define conn_octree 1
219 // valeurs des type_support
220 #define support_noeud 0
221 #define support_maille 1
222 // retour des fonctions
227 enum definition for the used Med File version V2.1 or V2.2
228 because of incompatibility between them.
231 typedef enum {V21 = 26, V22 = 75} medFileVersion;
235 // End Of NameSpace MED_EN
237 #endif /* DEFINE_HXX */