1 /* This file is part of MED.
2 *
3 * COPYRIGHT (C) 1999 - 2019 EDF R&D, CEA/DEN
4 * MED is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU Lesser General Public License as published by
6 * the Free Software Foundation, either version 3 of the License, or
7 * (at your option) any later version.
8 *
9 * MED is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public License
15 * along with MED. If not, see <http://www.gnu.org/licenses/>.
16 */
17
18
19 #include <med.h>
20 #include <med_config.h>
21 #include <med_outils.h>
22
23 #include <string.h>
24 #include <stdlib.h>
25
26 med_err
MEDnbnosoEcr(med_idt fid,char * nom_maillage,med_int n)27 MEDnbnosoEcr(med_idt fid, char *nom_maillage,med_int n)
28 {
29 med_idt maaid;
30 char chemin[MED_TAILLE_MAA+MED_TAILLE_NOM+1];
31 med_err ret;
32
33 /*
34 * On inhibe le gestionnaire d'erreur HDF
35 */
36 _MEDmodeErreurVerrouiller();
37 if (MEDcheckVersion(fid) < 0) return -1;
38
39
40 /*
41 * Si le maillage n'existe pas => erreur
42 */
43 strcpy(chemin,MED_MAA);
44 strcat(chemin,nom_maillage);
45 if ((maaid = _MEDdatagroupOuvrir(fid,chemin)) < 0)
46 return -1;
47
48 /*
49 * Creation de l'attribut "Nombre de Noeuds Sommets"
50 */
51 if ((ret = _MEDattrEntierEcrire(maaid,MED_NOM_NNS,&n)) < 0)
52 return -1;
53
54 /*
55 * Fermetures
56 */
57 if ((ret = _MEDdatagroupFermer(maaid)) < 0)
58 return -1;
59
60 return 0;
61 }
62
63
64
65