MpdEtofContFact.cxx 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. //------------------------------------------------------------------------------------------------------------------------
  2. #include <iostream>
  3. #include <iomanip>
  4. #include "MpdEtofContFact.h"
  5. #include "FairRuntimeDb.h"
  6. #include "MpdEtofGeoPar.h"
  7. using namespace std;
  8. static MpdEtofContFact gMpdEtofContFact;
  9. //------------------------------------------------------------------------------------------------------------------------
  10. MpdEtofContFact::MpdEtofContFact()
  11. {
  12. fName = "MpdEtofContFact";
  13. fTitle = "Factory for parameter containers in libEtof";
  14. setAllContainers();
  15. FairRuntimeDb::instance()->addContFactory(this);
  16. }
  17. //------------------------------------------------------------------------------------------------------------------------
  18. void MpdEtofContFact::setAllContainers()
  19. {
  20. FairContainer* p = new FairContainer("MpdEtofGeoPar", "Etof Geometry Parameters", "TestDefaultContext");
  21. p->addContext("TestNonDefaultContext");
  22. containers->Add(p);
  23. }
  24. //------------------------------------------------------------------------------------------------------------------------
  25. FairParSet* MpdEtofContFact::createContainer(FairContainer* c)
  26. {
  27. const char* name = c->GetName();
  28. cout << "-I- container name: " << name << endl;
  29. FairParSet* p = NULL;
  30. if (strcmp(name,"MpdEtofGeoPar")==0) p = new MpdEtofGeoPar(c->getConcatName().Data(),c->GetTitle(),c->getContext());
  31. return p;
  32. }
  33. //------------------------------------------------------------------------------------------------------------------------
  34. ClassImp(MpdEtofContFact)