MED fichier
MEDdatagroupLienCreer.c
Aller à la documentation de ce fichier.
1 /* This file is part of MED.
2  *
3  * COPYRIGHT (C) 1999 - 2016 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 
20 #include <med.h>
21 #include <med_config.h>
22 #include <med_outils.h>
23 #include <hdf5.h>
24 
25 /*
26  * - Nom de la fonction : _MEDdatagroupLienCreer
27  * - Description : création d'un lien SOFT HDF dans un datagroup
28  * - Parametres :
29  * - id (IN) : l'ID du datagroup
30  * - nom (IN) : nom de l'objet source
31  * - nom_lien (IN) : nom du lien a creer
32  * - Resultat : 0 en cas de succes, -1 sinon
33  */
34 
35 med_err
36 _MEDdatagroupLienCreer(med_idt id,const char *nom, const char *nom_lien)
37 {
38  med_err _ret=-1;
39 
40 /* if( (_ret = H5Glink(id,H5G_LINK_SOFT,nom,nom_lien)) < 0 ) { */
41 /* MESSAGE("Impossible de créer le lien : "); */
42 /* SSCRUTE(nom_lien); */
43 /* } */
44 
45  if ( H5Lcreate_soft( nom, id, nom_lien, H5P_DEFAULT, H5P_DEFAULT ) < 0) {
46  MED_ERR_(_ret,MED_ERR_CREATE,MED_ERR_LINK,nom_lien);
47  SSCRUTE(nom);
48  H5Eprint1(stderr);
49  goto ERROR;
50  }
51 
52 /*interfile hard links are not allowed !*/
53 /* if ( H5Lcreate_hard( id, nom, id, nom_lien, H5P_DEFAULT, H5P_DEFAULT ) < 0 ) { */
54 /* MED_ERR_(_ret,MED_ERR_CREATE,MED_ERR_LINK,nom_lien); */
55 /* SSCRUTE(nom); */
56 /* H5Eprint1(stderr); */
57 /* goto ERROR; */
58 /* } */
59 
60  _ret = 0;
61  ERROR:
62  return _ret;
63 }
herr_t med_err
Definition: med.h:310
med_err _MEDdatagroupLienCreer(med_idt id, const char *nom, const char *nom_lien)
#define MED_ERR_CREATE
Definition: med_err.h:24
#define MED_ERR_LINK
Definition: med_err.h:112
hid_t med_idt
Definition: med.h:309
#define SSCRUTE(chaine)
Definition: med_utils.h:315
#define MED_ERR_(rt, r1, r2, r3)
Definition: med_utils.h:158