#include "sectorParameters.h" #include "mixedTools.h" #define BAVARD 1 sectorParameters::sectorParameters() { geometry_= string("CIRCULAR"); sectors_.push_back(statements("vide",vector())); sectors_.back().second.push_back("xxx"); sectors_.back().second.push_back("xxx"); sectors_.back().second.push_back("Unchecked"); sectors_.back().second.push_back("1"); } // sectorParameters::sectorParameters() : parametersString_(NULL) // { // geometry_= string("CIRCULAR"); // nCells_ = 0; // lCell_ = 0.0; // pc_ = 0.0; // nbParam_ = 4; // parametersString_ = new string[nbParam_+1]; // } // string* sectorParameters::getParametersString() const // { // parametersString_[0] = mixedTools::intToString(nbParam_); // parametersString_[1] = geometry_; // parametersString_[2] = mixedTools::intToString(nCells_); // parametersString_[3] = mixedTools::doubleToString(lCell_); // parametersString_[4] = mixedTools::doubleToString(pc_); // return parametersString_; // } // void sectorParameters::setParametersString(string* param) // { // geometry_ = param[1].c_str(); // nCells_ = atoi(param[2].c_str()); // lCell_ = atof(param[3].c_str()); // pc_ = atof(param[4].c_str()); // } void sectorParameters::raz() { if(!sectors_.empty()) sectors_.clear(); } string sectorParameters::FileOutputFlow() const { ostringstream sortie; sortie << " sectors " << endl; sortie << sectors_.size() << endl; for(int i = 0; i < sectors_.size(); i++) { sortie << sectors_.at(i).first << " " << sectors_.at(i).second.at(0) << " " << sectors_.at(i).second.at(1) << " " << sectors_.at(i).second.at(2) << " " << sectors_.at(i).second.at(3) << endl; } return sortie.str(); } void sectorParameters::FileInput(ifstream& ifs) { int n; ifs >> n; string txt = ""; for(int i = 0; i < n; i++) { ifs >> txt; sectors_.push_back(statements(txt,vector())); for(int j = 0; j < 4; j++) { ifs >> txt; sectors_.back().second.push_back(txt); } } } void sectorParameters::InputRep(UAPNode* root) { // UAPNode* node = root->addChild("lattice"); // node->addAttribute("name","global_lattice"); // node->addChild("geometry")->addAttribute("type",geometry_); // string txt = ""; // txt = mixedTools::doubleToString(pc_); // node->addChild("pc")->addAttribute("design",txt); // node = root->addChild("sector"); // node->addAttribute("name","sect"); // txt = mixedTools::doubleToString(lCell_); // node->addAttribute("length",txt); // txt = mixedTools::intToString(nCells_); // node->addAttribute("repeat",txt); } // int sectorParameters::getNumberOfCells() const { // return nCells_; // } // double sectorParameters::getCellLength() const { // return lCell_; // } // double sectorParameters::getParticleMomentum() const { // return pc_; // } vector sectorParameters::getSectors() const { return sectors_; } void sectorParameters::setSectors(const vector& v) { #if BAVARD > 0 cout << "***********************************" << endl; cout << " sectorParameters::setSectors() " << endl << endl; #endif if(!sectors_.empty()) sectors_.clear(); for(int i = 0; i < v.size(); i++) { sectors_.push_back(statements(v.at(i).first,vector())); for(int j = 0; j < 4; j++) sectors_.back().second.push_back(v.at(i).second.at(j)); } #if BAVARD > 0 cout << "sectors_.size()= " << sectors_.size() << endl; for(int i = 0; i < sectors_.size(); i++) { cout << "name= " << sectors_.at(i).first << ", de " << sectors_.at(i).second.at(0) << ", à " << sectors_.at(i).second.at(1) << ", reflection = " << sectors_.at(i).second.at(2) << ", repeat= " << sectors_.at(i).second.at(3) << endl << endl; } #endif }