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