#include "sectionToExecute.h" #include "softwareUnknown.h" #include "softwareParmela.h" #include "softwareTransport.h" #include "softwareGenerator.h" #include "softwareGenerator.h" #include "softwareUsersprogram.h" #include "softwareTest.h" #include "softwareMadx.h" //xx sectionToExecute::sectionToExecute(abstractElement* f, abstractSoftware* s) { elements_.push_back(f); if (s == NULL) { software_ = new softwareUnknown(); } else { software_ = s; } } bool sectionToExecute::insertAfter(abstractElement* previousElement,abstractElement* currentElement) { std::vector::iterator it; for (it = elements_.begin(); it < elements_.end(); it++) { if (*it == previousElement ) { elements_.insert (it+1,currentElement); return true; } } return false; } void sectionToExecute::setSoftware(std::string logiciel) { abstractSoftware* prog; string inputFileName; if(logiciel == "parmela") { inputFileName = "parmin"; prog = new softwareParmela(inputFileName, this); } else if (logiciel == "transport") { inputFileName = "transport.input"; prog = new softwareTransport(inputFileName, this); } else if (logiciel == "generator") { inputFileName = "generator.in"; prog = new softwareGenerator(inputFileName, this); } else if (logiciel == "madx") { inputFileName = "madx.input"; prog = new softwareMadx(inputFileName,this); } else if (logiciel == "usersprogram") { inputFileName = "dummy"; prog = new softwareUsersprogram(inputFileName, this); } else if (logiciel == "test") { prog = new softwareTest(inputFileName, this); } else { prog = new softwareUnknown(); } setSoftware(prog); }