_MEDfileCommentRd30.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 void _MEDfileCommentRd30(int dummy, ...) {
00025
00026 va_list params;
00027 va_start(params,dummy);
00028
00029 const med_idt fid = va_arg(params,const med_idt);
00030 char* const comment = va_arg(params,char* const );
00031 med_err * fret = va_arg(params,med_err *);
00032
00033 med_idt _rootId=0;
00034 med_err _ret=-1;
00035
00036 med_bool attributeexist=MED_FALSE;
00037
00038 _MEDmodeErreurVerrouiller();
00039
00040 if ( _MEDattributeExist(fid, "/",MED_COMMENT_NAME, &attributeexist ) < 0 ) {
00041 MED_ERR_(_ret,MED_ERR_CALL,MED_ERR_API,"_MEDattributeExist");
00042 }
00043
00044 if ( !attributeexist ) { _ret=MED_ERR_DOESNTEXIST;goto ERROR;}
00045
00046
00047
00048 if ((_rootId = _MEDdatagroupOuvrir(fid,"/")) < 0) {
00049 MED_ERR_(_ret,MED_ERR_OPEN,MED_ERR_DATAGROUP," : '/'");
00050 goto ERROR;
00051 }
00052
00053 if (_MEDattrStringLire(_rootId,MED_COMMENT_NAME,
00054 MED_COMMENT_SIZE,(char*)comment) < 0) {
00055 MED_ERR_(_ret,MED_ERR_READ,MED_ERR_ATTRIBUTE," : '/'");
00056 goto ERROR;
00057 }
00058
00059 _ret=0;
00060 ERROR :
00061 if (_rootId > 0)
00062 if (_MEDdatagroupFermer(_rootId) < 0) {
00063 MED_ERR_(_ret,MED_ERR_CLOSE,MED_ERR_DATAGROUP," : '/'");
00064 _ret = -1;
00065 }
00066
00067 va_end(params);
00068 *fret = _ret;
00069 return;
00070 }