_MEDsubdomainComputingStepInfo236.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 #include <stdlib.h>
00024
00025 #include <2.3.6/med23v30.h>
00026 #include <2.3.6/med23v30_proto.h>
00027 #include "2.3.6/med23v30_misc.h"
00028
00029 void _MEDsubdomainComputingStepInfo236(int dummy, ...) {
00030
00031 va_list params;
00032 va_start(params,dummy);
00033
00034 const med_idt fid = va_arg(params,const med_idt );
00035 const char * const meshname = va_arg(params,const char * const );
00036 const char * const jointname = va_arg(params,const char * const );
00037 const int csit = va_arg(params,const int );
00038 med_int * const numdt = va_arg(params,med_int * const );
00039 med_int * const numit = va_arg(params,med_int * const );
00040 med_int * const ncorrespondence = va_arg(params,med_int * const );
00041 med_err * fret = va_arg(params,med_err *);
00042
00043
00044 med_idt _jntid=0;
00045 med_err _ret=-1,_err=-1;
00046 char _path[MED_TAILLE_MAA+MED_TAILLE_NOM+MED_TAILLE_JNT+MED_TAILLE_NOM+1]=MED_MAA;
00047 int _num=csit-1;
00048 med_size _nocstpncorrespondence=0;
00049
00050
00051
00052
00053 _MEDmodeErreurVerrouiller();
00054
00055 if ( csit !=1 ) {
00056 MED_ERR_(_ret,MED_ERR_INVALID,MED_ERR_PARAMETER,"");ISCRUTE_int(csit);
00057 goto ERROR;
00058 }
00059
00060
00061
00062
00063 strcat(_path,meshname);
00064 strcat(_path,MED_JNT);
00065 strcat(_path,jointname);
00066
00067 if ((_jntid = _MEDdatagroupOuvrir(fid,_path)) < 0) {
00068 MED_ERR_(_ret,MED_ERR_OPEN,MED_ERR_DATAGROUP,MED_ERR_SUBDOMAINJOINT_MSG);
00069 SSCRUTE(_path);*ncorrespondence=0;
00070 goto ERROR;
00071 }
00072
00073
00074
00075
00076
00077 if ((_err=_MEDnObjects(_jntid, _path, &_nocstpncorrespondence)) < 0 )
00078 if ( _err == (MED_ERR_COUNT + MED_ERR_DATAGROUP) ) {
00079 MED_ERR_(_ret,MED_ERR_COUNT,MED_ERR_DATAGROUP,_path);
00080 goto ERROR;
00081 } else
00082 _nocstpncorrespondence = 0;
00083
00084 *ncorrespondence = (med_int) _nocstpncorrespondence;
00085
00086
00087 *numdt=MED_NOPDT;
00088 *numit=MED_NONOR;
00089
00090 _ret = 0;
00091
00092 ERROR:
00093
00094 if (_jntid>0) if (_MEDdatagroupFermer(_jntid) < 0) {
00095 MED_ERR_(_ret,MED_ERR_CLOSE,MED_ERR_DATAGROUP,_path);
00096 ISCRUTE_id(_jntid);
00097 }
00098
00099 va_end(params);
00100 *fret = _ret;
00101 return;
00102 }