MpdMcordContFact.cxx 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. /*
  2. * MpdMcordContFact.cxx
  3. *
  4. * Created on: 21 maj 2019
  5. * Author: Daniel Wielanek
  6. * E-mail: daniel.wielanek@gmail.com
  7. * Warsaw University of Technology, Faculty of Physics
  8. */
  9. #include "MpdMcordContFact.h"
  10. #include "FairRuntimeDb.h"
  11. #include "MpdMcordGeoPar.h"
  12. #include <iostream>
  13. using namespace std;
  14. static MpdMcordContFact gMpdMcordContFact;
  15. MpdMcordContFact::MpdMcordContFact() {
  16. fName = "MpdMcordContFact";
  17. fTitle = "Factory for parameter containers in libMcord";
  18. setAllContainers();
  19. FairRuntimeDb::instance()->addContFactory(this);
  20. }
  21. void MpdMcordContFact::setAllContainers() {
  22. FairContainer* p = new FairContainer("MpdMcordGeoPar", "Mcord Geometry Parameters", "TestDefaultContext");
  23. p->addContext("TestNonDefaultContext");
  24. containers->Add(p);
  25. }
  26. MpdMcordContFact::~MpdMcordContFact() {
  27. // TODO Auto-generated destructor stub
  28. }
  29. FairParSet* MpdMcordContFact::createContainer(FairContainer* c) {
  30. const char* name = c->GetName();
  31. cout << "-I- container name: " << name << endl;
  32. FairParSet* p = NULL;
  33. if(strcmp(name,"MpdMcordGeoPar")==0) p = new MpdMcordGeoPar(c->getConcatName().Data(),c->GetTitle(),c->getContext());
  34. return p;
  35. }