9 // UTILE AUX DEUX NAMESPACES
15 # include <med_proto.h>
23 #define MED_NULL (void *) NULL
24 #define MED_MAX_PARA 20
26 #define MED_TAILLE_DESC 200
27 #define MED_TAILLE_IDENT 8
28 #define MED_TAILLE_NOM 32
29 #define MED_TAILLE_LNOM 80
30 #define MED_TAILLE_PNOM 8
33 typedef long medGeometryElement;
34 const medGeometryElement MED_NONE = 0;
35 const medGeometryElement MED_POINT1 = 1;
36 const medGeometryElement MED_SEG2 = 102;
37 const medGeometryElement MED_SEG3 = 103;
38 const medGeometryElement MED_TRIA3 = 203;
39 const medGeometryElement MED_QUAD4 = 204;
40 const medGeometryElement MED_TRIA6 = 206;
41 const medGeometryElement MED_QUAD8 = 208;
42 const medGeometryElement MED_TETRA4 = 304;
43 const medGeometryElement MED_PYRA5 = 305;
44 const medGeometryElement MED_PENTA6 = 306;
45 const medGeometryElement MED_HEXA8 = 308;
46 const medGeometryElement MED_TETRA10 = 310;
47 const medGeometryElement MED_PYRA13 = 313;
48 const medGeometryElement MED_PENTA15 = 315;
49 const medGeometryElement MED_HEXA20 = 320;
50 const medGeometryElement MED_ALL_ELEMENTS = 999;
52 typedef long medEntityMesh;
53 const medEntityMesh MED_CELL = 0;
54 const medEntityMesh MED_FACE = 1;
55 const medEntityMesh MED_EDGE = 2;
56 const medEntityMesh MED_NODE = 3;
57 const medEntityMesh MED_ALL_ENTITIES = 4;
59 typedef long medModeSwitch;
60 const medModeSwitch MED_FULL_INTERLACE = 0;
61 const medModeSwitch MED_NO_INTERLACE = 1;
63 typedef long medConnectivity;
64 const medConnectivity MED_NODAL = 0;
65 const medConnectivity MED_DESCENDING = 1;
67 typedef enum {MED_CARTESIAN, MED_POLAR, MED_BODY_FITTED} med_grid_type;
69 typedef enum {MED_LECT,MED_ECRI,MED_REMP} med_mode_acces;
71 typedef enum {MED_COOR, MED_CONN, MED_NOM, MED_NUM, MED_FAM} med_table;
73 typedef enum {MED_REEL64=6, MED_INT32=24,MED_INT64=26, MED_INT} med_type_champ;
75 #define MED_NBR_GEOMETRIE_MAILLE 15
76 #define MED_NBR_GEOMETRIE_FACE 4
77 #define MED_NBR_GEOMETRIE_ARETE 2
79 typedef enum {MED_CART, MED_CYL, MED_SPHER} med_repere;
81 typedef enum {MED_FAUX, MED_VRAI} med_booleen ;
83 typedef enum {MED_GROUPE, MED_ATTR, MED_FAMILLE} med_dim_famille;
85 typedef enum {MED_COMP, MED_DTYPE} med_dim_champ;
87 typedef enum {MED_HDF_VERSION, MED_VERSION, MED_FICH_DES} med_fich_info;
89 #define MED_NOPG 1 /* -> pas de point de Gauss */
90 #define MED_NOPFL "" /* -> pas de profils utilisateur */
91 #define MED_NOPFLi " " /* Variable Interne */
92 #define MED_NOPF 0 /* -> pas de profils pour _MEDdataseNnumEcrire */
93 #define MED_NOPDT -1 /* rem: pas de pas de temps negatifs */
94 #define MED_NONOR -1 /* rem: pas de n°ordre negatif */
95 #define MED_DIM1 1 /* PAS */
96 //#define MED_ALL 0 !!!!! NB: WARNING MED_ALL deja utilise dans l'enum medGeometryElement !!!!!!!!
99 #if defined(SUN4SOL2) || defined(PCLINUX) || defined(OSF1) || defined(IRIX64_32) || defined(RS6000)
100 /* interface C/FORTRAN */
101 /* 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 ! */
102 #define NOMF_POST_UNDERSCORE
104 /* correspondance des types avec HDF 5 */
105 typedef hsize_t med_size;
106 typedef hssize_t med_ssize;
107 typedef hid_t med_idt;
108 typedef herr_t med_err;
110 /* types elementaires */
112 typedef double med_float;
116 /* correspondance des types avec HDF 5 */
117 typedef hsize_t med_size;
118 typedef hssize_t med_ssize;
119 typedef hid_t med_idt;
120 typedef herr_t med_err;
122 /* types elementaires */
124 typedef double med_float;
128 #define NOMF_POST_UNDERSCORE
130 /* correspondance des types avec HDF 5 */
131 typedef hsize_t med_size;
132 typedef hssize_t med_ssize;
133 typedef hid_t med_idt;
134 typedef herr_t med_err;
136 /* types elementaires */
137 typedef long med_int;
138 typedef double med_float;
143 /* correspondance des types avec HDF 5 */
144 typedef hsize_t med_size;
145 typedef hssize_t med_ssize;
146 typedef hid_t med_idt;
147 typedef herr_t med_err;
149 /* types elementaires */
151 typedef double med_float;
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##_
164 #if !defined(NOMF_PRE_UNDERSCORE) && !defined(NOMF_POST_UNDERSCORE)
168 //#include "med_proto.h"
172 // valeurs des algos de connexites
173 #define FRACT_ALGO 10
184 #define MED_INVALID -1
187 //#define MED_NULL NULL
189 #define MED_RDONLY MED_LECT
190 // rem: MED_WRONLY=MED_ECR n'empêche malheureusement pas de lire le fichier
191 // mais permet de conserver l'existant. Attention à la création d'objet
192 // ne prenant pas de paramètre de type mode d'accès il faut tester si il
193 // est déjà présent dans le fichier. Si MED_WRONLY=MED_REMP le fichier est
194 // réinitialisé. Cf une évolution de MED.
195 #define MED_WRONLY MED_ECRI
196 #define MED_RDWR MED_ECRI
201 #define longueur_string 100
202 #define PRECISION 0.0000001
203 // #define undefined -1
206 // type des connectivites
208 //#define CONN_DESC_PART 1
209 //#define CONN_DESC_TOT 2
211 // valeurs de type_interpolation
214 #define trilineaire 2
216 #define VF_conservatif 4
217 #define VF_non_conservatif 5
218 // valeurs de type_mapping
220 #define conn_octree 1
222 // valeurs des type_support
223 #define support_noeud 0
224 #define support_maille 1
225 // retour des fonctions
231 // End Of NameSpace MED_EN
234 #endif /* DEFINE_HXX */