Code_Saturne
CFD tool
ecs_descr.h
Go to the documentation of this file.
1 #ifndef _ECS_DESCR_H_
2 #define _ECS_DESCR_H_
3 
4 /*============================================================================
5  * Prototypes des fonctions de base
6  * associées à la structure `ecs_descr_t' décrivant un descripteur de table
7  *============================================================================*/
8 
9 /*
10  This file is part of Code_Saturne, a general-purpose CFD tool.
11 
12  Copyright (C) 1998-2012 EDF S.A.
13 
14  This program is free software; you can redistribute it and/or modify it under
15  the terms of the GNU General Public License as published by the Free Software
16  Foundation; either version 2 of the License, or (at your option) any later
17  version.
18 
19  This program is distributed in the hope that it will be useful, but WITHOUT
20  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
21  FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
22  details.
23 
24  You should have received a copy of the GNU General Public License along with
25  this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
26  Street, Fifth Floor, Boston, MA 02110-1301, USA.
27 */
28 
29 /*----------------------------------------------------------------------------*/
30 
31 
32 /*============================================================================
33  * Visibilité
34  *============================================================================*/
35 
36 /*----------------------------------------------------------------------------
37  * Fichiers `include' librairie standard C ou BFT
38  *----------------------------------------------------------------------------*/
39 
40 #include <stdio.h>
41 
42 
43 /*----------------------------------------------------------------------------
44  * Fichiers `include' publics du paquetage global "Utilitaire"
45  *----------------------------------------------------------------------------*/
46 
47 #include "ecs_def.h"
48 #include "ecs_tab.h"
49 
50 
51 /*----------------------------------------------------------------------------
52  * Fichiers `include' publics des paquetages visibles
53  *----------------------------------------------------------------------------*/
54 
55 
56 /*----------------------------------------------------------------------------
57  * Fichiers `include' publics du paquetage courant
58  *----------------------------------------------------------------------------*/
59 
60 
61 /*============================================================================
62  * Déclaration de la structure
63  *============================================================================*/
64 
65 typedef struct _ecs_descr_t ecs_descr_t;
66 
67 
68 /*============================================================================
69  * Définition de macros
70  *============================================================================*/
71 
72 #define ECS_DESCR_NUM_NUL -1
73 
74 #define ECS_DESCR_ID_EXT_NUL -1
75 #define ECS_DESCR_IDE_NUL -1
76 
77 
78 /*============================================================================
79  * Prototypes de fonctions publiques
80  *============================================================================*/
81 
82 /*----------------------------------------------------------------------------
83  * Fonction de création d'une structure de descripteur de table
84  *----------------------------------------------------------------------------*/
85 
87 ecs_descr__cree(int ide,
88  const char *nom);
89 
90 /*----------------------------------------------------------------------------
91  * Fonction libérant la structure `ecs_descr_t' donnée en argument.
92  * Elle renvoie un pointeur NULL
93  *----------------------------------------------------------------------------*/
94 
96 ecs_descr__detruit(ecs_descr_t *this_descr);
97 
98 /*----------------------------------------------------------------------------
99  * Fonction imprimant le contenu d'une structure `ecs_descr_t' donnée
100  * sur le flux décrit par la structure `ecs_file_t'
101  *----------------------------------------------------------------------------*/
102 
103 void
104 ecs_descr__imprime(const ecs_descr_t *this_descr,
105  ecs_int_t imp_col,
106  FILE *fic_imp);
107 
108 /*----------------------------------------------------------------------------
109  * Fonction qui renvoie la taille en octets d'une structure `ecs_descr_t'
110  *----------------------------------------------------------------------------*/
111 
112 float
113 ecs_descr__ret_taille(const ecs_descr_t *this_descr);
114 
115 /*----------------------------------------------------------------------------
116  * Fonction qui alloue une structure `ecs_descr_t' et qui remplit
117  * son contenu en copiant le contenu de la structure donnée en argument
118  *----------------------------------------------------------------------------*/
119 
120 ecs_descr_t *
121 ecs_descr__copie(ecs_descr_t *this_descr);
122 
123 /*----------------------------------------------------------------------------
124  * Fonction qui compare 2 descripteurs
125  *
126  * La fonction renvoie :
127  * - `true' si les deux descripteurs sont identiques
128  * - `false' sinon
129  *----------------------------------------------------------------------------*/
130 
131 bool
132 ecs_descr__compare(const ecs_descr_t *descr_1,
133  const ecs_descr_t *descr_2);
134 
135 /*----------------------------------------------------------------------------
136  * Fonction qui affiche le nom d'un descripteur
137  *----------------------------------------------------------------------------*/
138 
139 void
140 ecs_descr__affiche(const ecs_descr_t *descr,
141  int decal);
142 
143 /*----------------------------------------------------------------------------
144  * Fonction qui renvoie le nom du descripteur donné en argument
145  *----------------------------------------------------------------------------*/
146 
147 const char *
148 ecs_descr__ret_nom(const ecs_descr_t *descr);
149 
150 /*----------------------------------------------------------------------------*/
151 
152 #endif /* _ECS_DESCR_H_ */
bool ecs_descr__compare(const ecs_descr_t *descr_1, const ecs_descr_t *descr_2)
Definition: ecs_descr.c:227
char * nom
Definition: ecs_descr_priv.h:61
int ecs_int_t
Definition: ecs_def.h:131
Definition: ecs_descr_priv.h:58
float ecs_descr__ret_taille(const ecs_descr_t *this_descr)
Definition: ecs_descr.c:183
void ecs_descr__affiche(const ecs_descr_t *descr, int decal)
Definition: ecs_descr.c:256
ecs_descr_t * ecs_descr__cree(int ide, const char *nom)
Definition: ecs_descr.c:82
ecs_descr_t * ecs_descr__copie(ecs_descr_t *this_descr)
Definition: ecs_descr.c:204
ecs_descr_t * ecs_descr__detruit(ecs_descr_t *this_descr)
Definition: ecs_descr.c:129
void ecs_descr__imprime(const ecs_descr_t *this_descr, ecs_int_t imp_col, FILE *fic_imp)
Definition: ecs_descr.c:151
const char * ecs_descr__ret_nom(const ecs_descr_t *descr)
Definition: ecs_descr.c:273