TRUST 1.9.8
HPC thermohydraulic platform
Loading...
Searching...
No Matches
med_nul.h
1/****************************************************************************
2* Copyright (c) 2024, CEA
3* All rights reserved.
4*
5* Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
6* 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
7* 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
8* 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
9*
10* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
11* IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
12* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
13*
14*****************************************************************************/
15#ifndef MED_H
16#define MED_H
17
18#define PCLINUX
19
20#define MED_NULL (void *) nullptr
21#define MED_MAX_PARA 20
22
23#define MED_TAILLE_DESC 200
24#define MED_TAILLE_IDENT 8
25#define MED_TAILLE_NOM 32
26#define MED_TAILLE_LNOM 80
27#define MED_TAILLE_PNOM 8
28
29typedef enum {MED_FULL_INTERLACE,
30 MED_NO_INTERLACE
31 } med_mode_switch;
32
33typedef enum {MED_LECT,MED_ECRI,MED_REMP} med_mode_acces;
34
35typedef enum {MED_MAILLE, MED_FACE, MED_ARETE, MED_NOEUD} med_entite_maillage;
36
37typedef enum {MED_COOR, MED_CONN, MED_NOM, MED_NUM, MED_FAM} med_table;
38
39typedef enum {MED_REEL64=6, MED_INT32=24,MED_INT64=26, MED_INT} med_type_champ;
40
41#define MED_NBR_GEOMETRIE_MAILLE 15
42#define MED_NBR_GEOMETRIE_FACE 4
43#define MED_NBR_GEOMETRIE_ARETE 2
44typedef enum {MED_POINT1=1, MED_SEG2=102, MED_SEG3=103, MED_TRIA3=203,
45 MED_QUAD4=204, MED_TRIA6=206,MED_QUAD8=208, MED_TETRA4=304,
46 MED_PYRA5=305, MED_PENTA6=306, MED_HEXA8=308, MED_TETRA10=310,
47 MED_PYRA13=313, MED_PENTA15=315, MED_HEXA20=320, MED_POLYGONE=400, MED_POLYEDRE=500, MED_NONE=0
48 }
49med_geometrie_element;
50
51typedef enum {MED_NOD, MED_DESC} med_connectivite ;
52
53typedef enum {MED_CART, MED_CYL, MED_SPHER} med_repere;
54
55typedef enum {MED_FAUX, MED_VRAI} med_booleen ;
56
57typedef enum {MED_GROUPE, MED_ATTR, MED_FAMILLE} med_dim_famille;
58
59typedef enum {MED_COMP, MED_DTYPE} med_dim_champ;
60
61typedef enum {MED_HDF_VERSION, MED_VERSION, MED_FICH_DES} med_fich_info;
62
63#define MED_NOPG 1 /* -> pas de point de Gauss */
64#define MED_NOPFL "" /* -> pas de profils utilisateur */
65#define MED_NOPFLi " " /* Variable Interne */
66#define MED_NOPF 0 /* -> pas de profils pour _MEDdataseNnumEcrire */
67#define MED_NOPDT -1 /* rem: pas de pas de temps negatifs */
68#define MED_NONOR -1 /* rem: pas de numero ordre negatif */
69#define MED_DIM1 1 /* PAS */
70#define MED_ALL 0
71
72#if defined(SUN4SOL2) || defined(PCLINUX) || defined(OSF1) || defined(IRIX64_32) || defined(RS6000)
73/* interface C/FORTRAN */
74/* 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 ! */
75#define NOMF_POST_UNDERSCORE
76/*
77 piratage typedef hdf
78*/
79typedef unsigned long hsize_t;
80typedef signed long hssize_t;
81typedef int hid_t;
82typedef int herr_t;
83
84
85
86/* correspondance des types avec HDF 5 */
87typedef hsize_t med_size;
88typedef hssize_t med_ssize;
89typedef hid_t med_idt;
90typedef herr_t med_err;
91
92/* types elementaires */
93typedef int med_int;
94typedef double med_float;
95#endif
96
97#if defined(HP9000)
98/* correspondance des types avec HDF 5 */
99typedef hsize_t med_size;
100typedef hssize_t med_ssize;
101typedef hid_t med_idt;
102typedef herr_t med_err;
103
104/* types elementaires */
105typedef int med_int;
106typedef double med_float;
107#endif
108
109#if defined(IRIX64)
110#define NOMF_POST_UNDERSCORE
111
112/* correspondance des types avec HDF 5 */
113typedef hsize_t med_size;
114typedef hssize_t med_ssize;
115typedef hid_t med_idt;
116typedef herr_t med_err;
117
118/* types elementaires */
119typedef long med_int;
120typedef double med_float;
121#endif
122
123
124#if defined(PPRO_NT)
125/* correspondance des types avec HDF 5 */
126typedef hsize_t med_size;
127typedef hssize_t med_ssize;
128typedef hid_t med_idt;
129typedef herr_t med_err;
130
131/* types elementaires */
132typedef int med_int;
133typedef double med_float;
134#endif
135
136
137#if defined(NOMF_PRE_UNDERSCORE) && defined(NOMF_POST_UNDERSCORE)
138# define NOMF(x) _##x##_
139#endif
140#if defined(NOMF_PRE_UNDERSCORE) && !defined(NOMF_POST_UNDERSCORE)
141# define NOMF(x) _##x
142#endif
143#if !defined(NOMF_PRE_UNDERSCORE) && defined(NOMF_POST_UNDERSCORE)
144# define NOMF(x) x##_
145#endif
146#if !defined(NOMF_PRE_UNDERSCORE) && !defined(NOMF_POST_UNDERSCORE)
147# define NOMF(x) x
148#endif
149
150#include <med_proto_nul.h>
151
152#endif /* MED_H */