int main (int argc, char **argv) { med_err _ret=0; med_idt _fid=0; char _fieldname1[MED_NAME_SIZE+1] = "champ reel"; char _interpname[MED_NAME_SIZE+1] = ""; med_int _ninterp = 0; int _interpit=0; /* Ouverture en mode creation du fichier "current.med" */ _fid = MEDfileOpen("current.med",MED_ACC_RDONLY); if (_fid < 0) { MESSAGE("Erreur a la creation du fichier current.med"); return -1; } if ( (_ninterp = MEDfieldnInterp(_fid, _fieldname1 ) ) < 0 ) { MESSAGE("Erreur à la lecture du nombre de fonctions d'interpolation sur le champ : "); SSCRUTE(_fieldname1);_ret=_ninterp; goto ERROR; } for (_interpit=0;_interpit < _ninterp; ++_interpit ) { if ( (_ret = MEDfieldInterpInfo(_fid, _fieldname1, _interpit+1, _interpname ) <0) ) { MESSAGE("Erreur à la lecture des informations de la fonction d'interpolation n° :"); ISCRUTE(_interpit);SSCRUTE("sur le champ : ");SSCRUTE(_fieldname1); goto ERROR; } else fprintf(stdout,"Le nom de la fonction d'interpolation n°%d du champ %s est %s\n", _interpit+1,_fieldname1,_interpname); } ERROR: if (MEDfileClose(_fid) < 0) { MESSAGE("ERROR : file closing"); return -1; } return _ret; }
med_int nmfdfnin(med_int *fid,char *fname, med_int *fnamelen) #endif { med_int _ret; char *_fn1; _fn1 = _MED2cstring((char *) fname, (int) *fnamelen); if (!_fn1) return(-1); _ret = (med_int) MEDfieldnInterp((const med_idt) *fid,_fn1); _MEDcstringFree(_fn1); return(_ret); }