X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2FMEDLoader%2FMEDFileParameter.cxx;h=0a04d8b04097da8f7f3b85e096d3a36fcb76d481;hb=693d8fb6ff12c9bef7e505b7d8791c93acbc96dc;hp=09536b60c73550070791607521c297da40b07f37;hpb=f1a947b32a36d8dc8e3079b25305bb50e8cb59a0;p=tools%2Fmedcoupling.git diff --git a/src/MEDLoader/MEDFileParameter.cxx b/src/MEDLoader/MEDFileParameter.cxx index 09536b60c..0a04d8b04 100644 --- a/src/MEDLoader/MEDFileParameter.cxx +++ b/src/MEDLoader/MEDFileParameter.cxx @@ -50,7 +50,7 @@ bool MEDFileParameter1TS::isEqual(const MEDFileParameter1TS *other, double eps, return true; } -MEDFileParameter1TS *MEDFileParameterDouble1TSWTI::deepCpy() const throw(INTERP_KERNEL::Exception) +MEDFileParameter1TS *MEDFileParameterDouble1TSWTI::deepCpy() const { return new MEDFileParameterDouble1TSWTI(*this); } @@ -67,11 +67,16 @@ bool MEDFileParameterDouble1TSWTI::isEqual(const MEDFileParameter1TS *other, dou return true; } -std::size_t MEDFileParameterDouble1TSWTI::getHeapMemorySize() const +std::size_t MEDFileParameterDouble1TSWTI::getHeapMemorySizeWithoutChildren() const { return sizeof(MEDFileParameterDouble1TSWTI); } +std::vector MEDFileParameterDouble1TSWTI::getDirectChildren() const +{ + return std::vector(); +} + std::string MEDFileParameterDouble1TSWTI::simpleRepr() const { std::ostringstream oss; @@ -100,7 +105,7 @@ MEDFileParameterDouble1TSWTI::MEDFileParameterDouble1TSWTI(int iteration, int or { } -void MEDFileParameterDouble1TSWTI::finishLoading(med_idt fid, const std::string& name, int dt, int it, int nbOfSteps) throw(INTERP_KERNEL::Exception) +void MEDFileParameterDouble1TSWTI::finishLoading(med_idt fid, const std::string& name, int dt, int it, int nbOfSteps) { std::ostringstream oss; oss << "MEDFileParameterDouble1TS::finishLoading : no specified time step (" << dt << "," << it << ") ! Time steps available : "; for(int i=0;i(&_arr)); } -void MEDFileParameterDouble1TSWTI::finishLoading(med_idt fid, const std::string& name, int timeStepId) throw(INTERP_KERNEL::Exception) +void MEDFileParameterDouble1TSWTI::finishLoading(med_idt fid, const std::string& name, int timeStepId) { int locDt,locIt; double dt; @@ -138,7 +143,7 @@ void MEDFileParameterDouble1TSWTI::finishLoading(med_idt fid, const std::string& MEDparameterValueRd(fid,name.c_str(),_iteration,_order,reinterpret_cast(&_arr)); } -void MEDFileParameterDouble1TSWTI::writeLL(med_idt fid, const std::string& name, const MEDFileWritable& mw) const throw(INTERP_KERNEL::Exception) +void MEDFileParameterDouble1TSWTI::writeLL(med_idt fid, const std::string& name, const MEDFileWritable& mw) const { char nameW[MED_NAME_SIZE+1]; MEDLoaderBase::safeStrCpy(name.c_str(),MED_NAME_SIZE,nameW,mw.getTooLongStrPolicy()); @@ -162,7 +167,7 @@ bool MEDFileParameterTinyInfo::isEqualStrings(const MEDFileParameterTinyInfo& ot return true; } -void MEDFileParameterTinyInfo::writeLLHeader(med_idt fid, med_parameter_type typ) const throw(INTERP_KERNEL::Exception) +void MEDFileParameterTinyInfo::writeLLHeader(med_idt fid, med_parameter_type typ) const { char nameW[MED_NAME_SIZE+1],descW[MED_COMMENT_SIZE+1],dtunitW[MED_SNAME_SIZE+1]; MEDLoaderBase::safeStrCpy(_name.c_str(),MED_NAME_SIZE,nameW,getTooLongStrPolicy()); @@ -184,17 +189,17 @@ MEDFileParameterDouble1TS *MEDFileParameterDouble1TS::New() return new MEDFileParameterDouble1TS; } -MEDFileParameterDouble1TS *MEDFileParameterDouble1TS::New(const char *fileName) throw(INTERP_KERNEL::Exception) +MEDFileParameterDouble1TS *MEDFileParameterDouble1TS::New(const char *fileName) { return new MEDFileParameterDouble1TS(fileName); } -MEDFileParameterDouble1TS *MEDFileParameterDouble1TS::New(const char *fileName, const char *paramName) throw(INTERP_KERNEL::Exception) +MEDFileParameterDouble1TS *MEDFileParameterDouble1TS::New(const char *fileName, const char *paramName) { return new MEDFileParameterDouble1TS(fileName,paramName); } -MEDFileParameterDouble1TS *MEDFileParameterDouble1TS::New(const char *fileName, const char *paramName, int dt, int it) throw(INTERP_KERNEL::Exception) +MEDFileParameterDouble1TS *MEDFileParameterDouble1TS::New(const char *fileName, const char *paramName, int dt, int it) { return new MEDFileParameterDouble1TS(fileName,paramName,dt,it); } @@ -203,7 +208,7 @@ MEDFileParameterDouble1TS::MEDFileParameterDouble1TS() { } -MEDFileParameterDouble1TS::MEDFileParameterDouble1TS(const char *fileName, const char *paramName, int dt, int it) throw(INTERP_KERNEL::Exception) +MEDFileParameterDouble1TS::MEDFileParameterDouble1TS(const char *fileName, const char *paramName, int dt, int it) { MEDFileUtilities::CheckFileForRead(fileName); MEDFileUtilities::AutoFid fid=MEDfileOpen(fileName,MED_ACC_RDONLY); @@ -235,7 +240,7 @@ MEDFileParameterDouble1TS::MEDFileParameterDouble1TS(const char *fileName, const throw INTERP_KERNEL::Exception(oss.str().c_str()); } -MEDFileParameterDouble1TS::MEDFileParameterDouble1TS(const char *fileName, const char *paramName) throw(INTERP_KERNEL::Exception) +MEDFileParameterDouble1TS::MEDFileParameterDouble1TS(const char *fileName, const char *paramName) { MEDFileUtilities::CheckFileForRead(fileName); MEDFileUtilities::AutoFid fid=MEDfileOpen(fileName,MED_ACC_RDONLY); @@ -275,7 +280,7 @@ MEDFileParameterDouble1TS::MEDFileParameterDouble1TS(const char *fileName, const throw INTERP_KERNEL::Exception(oss.str().c_str()); } -MEDFileParameterDouble1TS::MEDFileParameterDouble1TS(const char *fileName) throw(INTERP_KERNEL::Exception) +MEDFileParameterDouble1TS::MEDFileParameterDouble1TS(const char *fileName) { MEDFileUtilities::CheckFileForRead(fileName); MEDFileUtilities::AutoFid fid=MEDfileOpen(fileName,MED_ACC_RDONLY); @@ -327,7 +332,7 @@ bool MEDFileParameterDouble1TS::isEqual(const MEDFileParameter1TS *other, double return true; } -MEDFileParameter1TS *MEDFileParameterDouble1TS::deepCpy() const throw(INTERP_KERNEL::Exception) +MEDFileParameter1TS *MEDFileParameterDouble1TS::deepCpy() const { return new MEDFileParameterDouble1TS(*this); } @@ -340,12 +345,17 @@ std::string MEDFileParameterDouble1TS::simpleRepr() const return oss.str(); } -std::size_t MEDFileParameterDouble1TS::getHeapMemorySize() const +std::size_t MEDFileParameterDouble1TS::getHeapMemorySizeWithoutChildren() const { return getHeapMemSizeOfStrings()+sizeof(MEDFileParameterDouble1TS); } -void MEDFileParameterDouble1TS::write(const char *fileName, int mode) const throw(INTERP_KERNEL::Exception) +std::vector MEDFileParameterDouble1TS::getDirectChildren() const +{ + return std::vector(); +} + +void MEDFileParameterDouble1TS::write(const char *fileName, int mode) const { med_access_mode medmod=MEDFileUtilities::TraduceWriteMode(mode); MEDFileUtilities::AutoFid fid=MEDfileOpen(fileName,medmod); @@ -358,12 +368,12 @@ MEDFileParameterMultiTS *MEDFileParameterMultiTS::New() return new MEDFileParameterMultiTS; } -MEDFileParameterMultiTS *MEDFileParameterMultiTS::New(const char *fileName) throw(INTERP_KERNEL::Exception) +MEDFileParameterMultiTS *MEDFileParameterMultiTS::New(const char *fileName) { return new MEDFileParameterMultiTS(fileName); } -MEDFileParameterMultiTS *MEDFileParameterMultiTS::New(const char *fileName, const char *paramName) throw(INTERP_KERNEL::Exception) +MEDFileParameterMultiTS *MEDFileParameterMultiTS::New(const char *fileName, const char *paramName) { return new MEDFileParameterMultiTS(fileName,paramName); } @@ -383,7 +393,7 @@ MEDFileParameterMultiTS::MEDFileParameterMultiTS(const MEDFileParameterMultiTS& } } -MEDFileParameterMultiTS::MEDFileParameterMultiTS(const char *fileName) throw(INTERP_KERNEL::Exception) +MEDFileParameterMultiTS::MEDFileParameterMultiTS(const char *fileName) { MEDFileUtilities::CheckFileForRead(fileName); MEDFileUtilities::AutoFid fid=MEDfileOpen(fileName,MED_ACC_RDONLY); @@ -406,7 +416,7 @@ MEDFileParameterMultiTS::MEDFileParameterMultiTS(const char *fileName) throw(INT finishLoading(fid,paramType,nbOfSteps); } -MEDFileParameterMultiTS::MEDFileParameterMultiTS(const char *fileName, const char *paramName) throw(INTERP_KERNEL::Exception) +MEDFileParameterMultiTS::MEDFileParameterMultiTS(const char *fileName, const char *paramName) { MEDFileUtilities::CheckFileForRead(fileName); MEDFileUtilities::AutoFid fid=MEDfileOpen(fileName,MED_ACC_RDONLY); @@ -446,7 +456,7 @@ MEDFileParameterMultiTS::MEDFileParameterMultiTS(const char *fileName, const cha throw INTERP_KERNEL::Exception(oss.str().c_str()); } -void MEDFileParameterMultiTS::finishLoading(med_idt fid, med_parameter_type typ, int nbOfSteps) throw(INTERP_KERNEL::Exception) +void MEDFileParameterMultiTS::finishLoading(med_idt fid, med_parameter_type typ, int nbOfSteps) { _param_per_ts.resize(nbOfSteps); for(int i=0;i)*_param_per_ts.capacity(); - for(std::size_t i=0;i<_param_per_ts.size();i++) + std::size_t ret(sizeof(MEDFileParameterMultiTS)); + ret+=sizeof(MEDCouplingAutoRefCountObjectPtr)*_param_per_ts.capacity(); + return ret; +} + +std::vector MEDFileParameterMultiTS::getDirectChildren() const +{ + std::vector ret; + for(std::vector< MEDCouplingAutoRefCountObjectPtr >::const_iterator it=_param_per_ts.begin();it!=_param_per_ts.end();it++) { - const MEDFileParameter1TS *pt(_param_per_ts[i]); - if(pt) - ret2+=pt->getHeapMemorySize(); + const MEDFileParameter1TS *elt(*it); + if(elt) + ret.push_back(elt); } - return ret2+ret; + return ret; } -MEDFileParameterMultiTS *MEDFileParameterMultiTS::deepCpy() const throw(INTERP_KERNEL::Exception) +MEDFileParameterMultiTS *MEDFileParameterMultiTS::deepCpy() const { return new MEDFileParameterMultiTS(*this,true); } @@ -506,14 +522,14 @@ bool MEDFileParameterMultiTS::isEqual(const MEDFileParameterMultiTS *other, doub return true; } -void MEDFileParameterMultiTS::write(const char *fileName, int mode) const throw(INTERP_KERNEL::Exception) +void MEDFileParameterMultiTS::write(const char *fileName, int mode) const { med_access_mode medmod=MEDFileUtilities::TraduceWriteMode(mode); MEDFileUtilities::AutoFid fid=MEDfileOpen(fileName,medmod); writeLL(fid,*this); } -void MEDFileParameterMultiTS::writeLL(med_idt fid, const MEDFileWritable& mw) const throw(INTERP_KERNEL::Exception) +void MEDFileParameterMultiTS::writeLL(med_idt fid, const MEDFileWritable& mw) const { std::set diffType; for(std::vector< MEDCouplingAutoRefCountObjectPtr >::const_iterator it=_param_per_ts.begin();it!=_param_per_ts.end();it++) @@ -554,7 +570,7 @@ void MEDFileParameterMultiTS::simpleRepr2(int bkOffset, std::ostream& oss) const } } -void MEDFileParameterMultiTS::appendValue(int dt, int it, double time, double val) throw(INTERP_KERNEL::Exception) +void MEDFileParameterMultiTS::appendValue(int dt, int it, double time, double val) { MEDCouplingAutoRefCountObjectPtr elt=MEDFileParameterDouble1TSWTI::New(dt,it,time); elt->setValue(val); @@ -562,7 +578,7 @@ void MEDFileParameterMultiTS::appendValue(int dt, int it, double time, double va _param_per_ts.push_back(elt2); } -double MEDFileParameterMultiTS::getDoubleValue(int iteration, int order) const throw(INTERP_KERNEL::Exception) +double MEDFileParameterMultiTS::getDoubleValue(int iteration, int order) const { int pos=getPosOfTimeStep(iteration,order); const MEDFileParameter1TS *elt=_param_per_ts[pos]; @@ -581,7 +597,7 @@ double MEDFileParameterMultiTS::getDoubleValue(int iteration, int order) const t return eltC->getValue(); } -int MEDFileParameterMultiTS::getPosOfTimeStep(int iteration, int order) const throw(INTERP_KERNEL::Exception) +int MEDFileParameterMultiTS::getPosOfTimeStep(int iteration, int order) const { int ret=0; std::ostringstream oss; oss << "MEDFileParameterMultiTS::getPosOfTimeStep : no such iteration=" << iteration << " order=" << order << " ! Possibilities are :"; @@ -599,7 +615,7 @@ int MEDFileParameterMultiTS::getPosOfTimeStep(int iteration, int order) const th throw INTERP_KERNEL::Exception(oss.str().c_str()); } -int MEDFileParameterMultiTS::getPosGivenTime(double time, double eps) const throw(INTERP_KERNEL::Exception) +int MEDFileParameterMultiTS::getPosGivenTime(double time, double eps) const { int ret=0; std::ostringstream oss; oss << "MEDFileParameterMultiTS::getPosGivenTime : no such time=" << time << " ! Possibilities are :"; @@ -620,7 +636,7 @@ int MEDFileParameterMultiTS::getPosGivenTime(double time, double eps) const thro /*! * \return an internal pointer that can be null. Warning the caller is \b not responsible of the returned pointer. */ -MEDFileParameter1TS *MEDFileParameterMultiTS::getTimeStepAtPos(int posId) const throw(INTERP_KERNEL::Exception) +MEDFileParameter1TS *MEDFileParameterMultiTS::getTimeStepAtPos(int posId) const { if(posId<0 || posId>=(int)_param_per_ts.size()) { @@ -630,7 +646,7 @@ MEDFileParameter1TS *MEDFileParameterMultiTS::getTimeStepAtPos(int posId) const return const_cast(static_cast(_param_per_ts[posId])); } -void MEDFileParameterMultiTS::eraseTimeStepIds(const int *startIds, const int *endIds) throw(INTERP_KERNEL::Exception) +void MEDFileParameterMultiTS::eraseTimeStepIds(const int *startIds, const int *endIds) { std::vector b(_param_per_ts.size(),true); int len=(int)_param_per_ts.size(); @@ -650,7 +666,7 @@ void MEDFileParameterMultiTS::eraseTimeStepIds(const int *startIds, const int *e _param_per_ts=paramPerTs; } -std::vector< std::pair > MEDFileParameterMultiTS::getIterations() const throw(INTERP_KERNEL::Exception) +std::vector< std::pair > MEDFileParameterMultiTS::getIterations() const { std::vector< std::pair > ret; for(std::vector< MEDCouplingAutoRefCountObjectPtr >::const_iterator it=_param_per_ts.begin();it!=_param_per_ts.end();it++) @@ -665,7 +681,7 @@ std::vector< std::pair > MEDFileParameterMultiTS::getIterations() const /*! * \param [out] ret1 */ -std::vector< std::pair > MEDFileParameterMultiTS::getTimeSteps(std::vector& ret1) const throw(INTERP_KERNEL::Exception) +std::vector< std::pair > MEDFileParameterMultiTS::getTimeSteps(std::vector& ret1) const { std::vector< std::pair > ret0; ret1.clear(); @@ -686,12 +702,12 @@ MEDFileParameters *MEDFileParameters::New() return new MEDFileParameters; } -MEDFileParameters *MEDFileParameters::New(const char *fileName) throw(INTERP_KERNEL::Exception) +MEDFileParameters *MEDFileParameters::New(const char *fileName) { return new MEDFileParameters(fileName); } -MEDFileParameters::MEDFileParameters(const char *fileName) throw(INTERP_KERNEL::Exception) +MEDFileParameters::MEDFileParameters(const char *fileName) { MEDFileUtilities::CheckFileForRead(fileName); MEDFileUtilities::AutoFid fid=MEDfileOpen(fileName,MED_ACC_RDONLY); @@ -714,20 +730,26 @@ MEDFileParameters::MEDFileParameters() { } -std::size_t MEDFileParameters::getHeapMemorySize() const +std::size_t MEDFileParameters::getHeapMemorySizeWithoutChildren() const { - std::size_t ret=sizeof(MEDFileParameters); - std::size_t ret2=sizeof(MEDCouplingAutoRefCountObjectPtr)*_params.capacity(); - for(std::size_t i=0;i<_params.size();i++) + std::size_t ret(sizeof(MEDFileParameters)); + ret+=sizeof(MEDCouplingAutoRefCountObjectPtr)*_params.capacity(); + return ret; +} + +std::vector MEDFileParameters::getDirectChildren() const +{ + std::vector ret; + for(std::vector< MEDCouplingAutoRefCountObjectPtr >::const_iterator it=_params.begin();it!=_params.end();it++) { - const MEDFileParameterMultiTS *pt(_params[i]); - if(pt) - ret2+=pt->getHeapMemorySize(); + const MEDFileParameterMultiTS *elt(*it); + if(elt) + ret.push_back(elt); } - return ret2+ret; + return ret; } -MEDFileParameters *MEDFileParameters::deepCpy() const throw(INTERP_KERNEL::Exception) +MEDFileParameters *MEDFileParameters::deepCpy() const { return new MEDFileParameters(*this,true); } @@ -762,14 +784,14 @@ MEDFileParameters::MEDFileParameters(const MEDFileParameters& other, bool deepCo } } -void MEDFileParameters::write(const char *fileName, int mode) const throw(INTERP_KERNEL::Exception) +void MEDFileParameters::write(const char *fileName, int mode) const { med_access_mode medmod=MEDFileUtilities::TraduceWriteMode(mode); MEDFileUtilities::AutoFid fid=MEDfileOpen(fileName,medmod); writeLL(fid); } -void MEDFileParameters::writeLL(med_idt fid) const throw(INTERP_KERNEL::Exception) +void MEDFileParameters::writeLL(med_idt fid) const { for(std::vector< MEDCouplingAutoRefCountObjectPtr >::const_iterator it=_params.begin();it!=_params.end();it++) { @@ -779,7 +801,7 @@ void MEDFileParameters::writeLL(med_idt fid) const throw(INTERP_KERNEL::Exceptio } } -std::vector MEDFileParameters::getParamsNames() const throw(INTERP_KERNEL::Exception) +std::vector MEDFileParameters::getParamsNames() const { std::vector ret(_params.size()); int i=0; @@ -816,14 +838,14 @@ void MEDFileParameters::simpleReprWithoutHeader(std::ostream& oss) const } } -void MEDFileParameters::resize(int newSize) throw(INTERP_KERNEL::Exception) +void MEDFileParameters::resize(int newSize) { if(newSize<0) throw INTERP_KERNEL::Exception("MEDFileParameters::resize : should be positive !"); _params.resize(newSize); } -void MEDFileParameters::pushParam(MEDFileParameterMultiTS *param) throw(INTERP_KERNEL::Exception) +void MEDFileParameters::pushParam(MEDFileParameterMultiTS *param) { if(param) param->incrRef(); @@ -831,7 +853,7 @@ void MEDFileParameters::pushParam(MEDFileParameterMultiTS *param) throw(INTERP_K _params.push_back(elt); } -void MEDFileParameters::setParamAtPos(int i, MEDFileParameterMultiTS *param) throw(INTERP_KERNEL::Exception) +void MEDFileParameters::setParamAtPos(int i, MEDFileParameterMultiTS *param) { if(i<0) throw INTERP_KERNEL::Exception("MEDFileParameters::setParamAtPos : should be positive !"); @@ -846,7 +868,7 @@ void MEDFileParameters::setParamAtPos(int i, MEDFileParameterMultiTS *param) thr /*! * \return an internal pointer that can be null. Warning the caller is \b not responsible of the returned pointer. */ -MEDFileParameterMultiTS *MEDFileParameters::getParamAtPos(int i) const throw(INTERP_KERNEL::Exception) +MEDFileParameterMultiTS *MEDFileParameters::getParamAtPos(int i) const { if(i<0 || i>=(int)_params.size()) { @@ -860,13 +882,13 @@ MEDFileParameterMultiTS *MEDFileParameters::getParamAtPos(int i) const throw(INT /*! * \return an internal pointer that can be null. Warning the caller is \b not responsible of the returned pointer. */ -MEDFileParameterMultiTS *MEDFileParameters::getParamWithName(const char *paramName) const throw(INTERP_KERNEL::Exception) +MEDFileParameterMultiTS *MEDFileParameters::getParamWithName(const char *paramName) const { int pos=getPosFromParamName(paramName); return getParamAtPos(pos); } -void MEDFileParameters::destroyParamAtPos(int i) throw(INTERP_KERNEL::Exception) +void MEDFileParameters::destroyParamAtPos(int i) { if(i<0 || i>=(int)_params.size()) { @@ -876,7 +898,7 @@ void MEDFileParameters::destroyParamAtPos(int i) throw(INTERP_KERNEL::Exception) _params[i]=MEDCouplingAutoRefCountObjectPtr(0); } -int MEDFileParameters::getPosFromParamName(const char *paramName) const throw(INTERP_KERNEL::Exception) +int MEDFileParameters::getPosFromParamName(const char *paramName) const { std::ostringstream oss; oss << "MEDFileParameters::getPosFromParamName : no such name=" << paramName << " ! Possibilities are :"; int ret=0; @@ -894,7 +916,7 @@ int MEDFileParameters::getPosFromParamName(const char *paramName) const throw(IN throw INTERP_KERNEL::Exception(oss.str().c_str()); } -int MEDFileParameters::getNumberOfParams() const throw(INTERP_KERNEL::Exception) +int MEDFileParameters::getNumberOfParams() const { return (int)_params.size(); }