MEDlienInfo.c
Aller à la documentation de ce fichier.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #include <med.h>
00020 #include "med_config.h"
00021 #include "med_outils.h"
00022 #include <string.h>
00023
00024 med_err MEDlienInfo(_IN med_idt fid, _IN int indice, _OUT char * maa, _OUT med_int * n)
00025 {
00026
00027 int numero;
00028 med_idt lnid;
00029 char chemin[MED_TAILLE_LIENS+MED_TAILLE_NOM+1];
00030
00031
00032
00033
00034 _MEDmodeErreurVerrouiller();
00035 if (MEDcheckVersion(fid) < 0) return -1;
00036
00037
00038
00039
00040
00041
00042 strcpy(chemin,MED_LIENS);
00043 numero = indice-1;
00044
00045 if ( _MEDobjetIdentifier(fid,chemin,numero,maa) < 0) {
00046 MESSAGE("Impossible d'itérer sur le groupe : ");
00047 SSCRUTE(MED_LIENS); return -1;
00048 }
00049
00050
00051
00052
00053 strcat(chemin,maa);
00054
00055 if ((lnid = _MEDdatagroupOuvrir(fid,chemin)) < 0) {
00056 MESSAGE("Impossible d'ouvrir le datagroup : ");
00057 SSCRUTE(chemin); return -1;
00058 }
00059
00060 if ( _MEDattrEntierLire(lnid,MED_NOM_NBR,n) < 0) {
00061 MESSAGE("Impossible de lire l'attribut : ");
00062 SSCRUTE(chemin);SSCRUTE(MED_NOM_NBR); return -1;
00063 }
00064
00065 if ( _MEDdatagroupFermer(lnid) < 0) {
00066 MESSAGE("Impossible de fermer le groupe : ");
00067 SSCRUTE(chemin);return -1;
00068 }
00069
00070 return 0;
00071
00072 }