MEDfichEntete.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 #include <med.h>
00019 #include <med_config.h>
00020 #include <med_outils.h>
00021
00022 #include <string.h>
00023
00024 med_err
00025 MEDfichEntete(med_idt fid, med_fich_info quoi, char str[])
00026 {
00027 med_idt atid, root;
00028 med_err ret;
00029 char locale[MED_TAILLE_DESC+1];
00030 char chemin[MED_TAILLE_MAA+1];
00031
00032 switch (quoi)
00033 {
00034 case MED_HDF_VERSION :
00035 strcpy(str,HDF_VERSION_ACTUELLE);
00036 break;
00037
00038 case MED_VERSION :
00039 strcpy(str,PACKAGE_VERSION);
00040 break;
00041
00042 case MED_FICH_DES :
00043
00044
00045
00046 _MEDmodeErreurVerrouiller();
00047 if (MEDcheckVersion(fid) < 0) return -1;
00048
00049
00050
00051
00052 strncpy(chemin,MED_MAA,strlen(MED_MAA)-1);
00053 chemin[MED_TAILLE_MAA-1] = '\0';
00054 if ((root = _MEDdatagroupOuvrir(fid,chemin)) < 0)
00055 return -1;
00056
00057
00058
00059
00060
00061
00062 if ((ret = _MEDattrStringLire(root,MED_NOM_DESCRIPTEUR,
00063 MED_TAILLE_DESC,locale)) < 0) {
00064 _MEDdatagroupFermer(root);
00065 return -1;
00066 }
00067
00068 strcpy(str,locale);
00069
00070 if ( _MEDdatagroupFermer(root) < 0)
00071 return -1;
00072
00073 break;
00074
00075 default :
00076 return -1;
00077 }
00078 return 0;
00079 }