source: PSPA/Interface_Web/trunk/pspaWT/sources/controler/src/globalParameters.cc @ 424

Last change on this file since 424 was 424, checked in by touze, 11 years ago

sauvgarde de la configuration sur fichier format AML

File size: 2.1 KB
Line 
1
2#include <cstdlib>
3
4#include "globalParameters.h"
5#include "mixedTools.h"
6
7globalParameters::globalParameters() : parametersString_(NULL)
8{
9  setDefaultValues();
10  setDefaults();
11  nbParam_ = 4;
12  parametersString_ = new string[nbParam_+1];
13}
14
15string* globalParameters::getParametersString() const 
16{
17  parametersString_[0] = mixedTools::intToString(nbParam_);
18  parametersString_[1] = mixedTools::doubleToString(frequency_);
19  parametersString_[2] = mixedTools::doubleToString(integrationStep_);
20  parametersString_[3] = mixedTools::intToString( nstepsMax_);
21  parametersString_[4] = mixedTools::intToString( nsc_);
22  return parametersString_;
23}
24
25void globalParameters::setParametersString(string* param)
26{
27  if ( param == NULL )
28    {
29      cerr << "  globalParameters::setParametersString parameters empty parameter set";
30      return;
31    }
32  int nbparam = atoi(param[0].c_str());
33  if ( nbparam != 4 ) 
34    {
35      cerr << "  globalParameters::setParametersString parameters do not match for globalParameters";
36      return;
37    }
38  frequency_ = atof(param[1].c_str());
39  integrationStep_  = atof(param[2].c_str());
40  nstepsMax_ = atoi(param[3].c_str());
41  nsc_ = atoi(param[4].c_str());
42}
43
44string globalParameters::FileOutputFlow() const
45{
46  ostringstream sortie;
47  sortie<<" globals "<<endl;
48  sortie<<frequency_<<" "<<integrationStep_<<" "<<nstepsMax_<<" "<<nsc_<<endl;
49  return sortie.str(); 
50}
51
52void globalParameters::FileInput(ifstream& ifs)
53{
54  ifs >> frequency_ >> integrationStep_ >> nstepsMax_ >> nsc_;
55}
56
57void globalParameters::InputRep(UAPNode* root)
58{
59  UAPNode* node = root->addChild("global");
60  string txt = "";
61  txt = mixedTools::doubleToString(frequency_);
62  node->addChild("ref_freq")->addAttribute("design",txt);
63
64  node->addChild("comment")->addAttribute("text","data specific to Parmela");
65  txt = mixedTools::doubleToString(integrationStep_);
66  node->addChild("integrationStep")->addAttribute("value",txt);
67  txt = mixedTools::intToString(nstepsMax_);
68  node->addChild("nSteps")->addAttribute("value",txt);
69  txt = mixedTools::intToString(nsc_);
70  node->addChild("nsc")->addAttribute("value",txt);
71}
Note: See TracBrowser for help on using the repository browser.