#include #include "globalParameters.h" #include "mixedTools.h" #include "AMLtools.h" globalParameters::globalParameters() : parametersString_(NULL) { setDefaultValues(); setDefaults(); nbParam_ = 4; parametersString_ = new string[nbParam_+1]; } string* globalParameters::getParametersString() const { parametersString_[0] = mixedTools::intToString(nbParam_); parametersString_[1] = mixedTools::doubleToString(frequency_); parametersString_[2] = mixedTools::doubleToString(integrationStep_); parametersString_[3] = mixedTools::intToString( nstepsMax_); parametersString_[4] = mixedTools::intToString( nsc_); return parametersString_; } void globalParameters::setParametersString(string* param) { if ( param == NULL ) { cerr << " globalParameters::setParametersString parameters empty parameter set"; return; } int nbparam = atoi(param[0].c_str()); if ( nbparam != 4 ) { cerr << " globalParameters::setParametersString parameters do not match for globalParameters"; return; } frequency_ = atof(param[1].c_str()); integrationStep_ = atof(param[2].c_str()); nstepsMax_ = atoi(param[3].c_str()); nsc_ = atoi(param[4].c_str()); } // string globalParameters::FileOutputFlow() const // { // ostringstream sortie; // sortie << " globals " << endl; // sortie << frequency_ << " " << integrationStep_ << " " << nstepsMax_ << " " << nsc_ << endl; // return sortie.str(); // } // void globalParameters::FileInput(ifstream& ifs) // { // ifs >> frequency_ >> integrationStep_ >> nstepsMax_ >> nsc_; // } void globalParameters::FileAMLInput(UAPNode* entree) { AMLtools::readAMLParameterAttribut(entree, "ref_freq", "design", frequency_); AMLtools::readAMLParameterAttribut(entree, "integrationStep", "value", integrationStep_); AMLtools::readAMLParameterAttribut(entree, "nSteps", "value", nstepsMax_); AMLtools::readAMLParameterAttribut(entree, "nsc", "value", nsc_); // cout << " PARAMETRES GLOBAUX : " << FileOutputFlow() << endl; } void globalParameters::InputRep(UAPNode* root) { UAPNode* node = root->addChild("global"); string txt = ""; txt = mixedTools::doubleToString(frequency_); node->addChild("ref_freq")->addAttribute("design",txt); node->addChild("comment")->addAttribute("text","data specific to Parmela"); txt = mixedTools::doubleToString(integrationStep_); node->addChild("integrationStep")->addAttribute("value",txt); txt = mixedTools::intToString(nstepsMax_); node->addChild("nSteps")->addAttribute("value",txt); txt = mixedTools::intToString(nsc_); node->addChild("nsc")->addAttribute("value",txt); }