FairRoot/PandaRoot
PndEmcContFact.cxx
Go to the documentation of this file.
1 //
3 // PndEmcContFact
4 //
5 // Factory for the parameter containers in libEmc
6 //
7 // Created 14/08/06 by S.Spataro
8 //
10 
11 #include "PndEmcContFact.h"
12 #include "FairRuntimeDb.h"
13 #include "PndEmcGeoPar.h"
14 #include "PndEmcDigiPar.h"
15 #include "PndEmcFWEndcapDigiPar.h"
16 #include "PndEmcFpgaPar.h"
17 #include "PndEmcRecoPar.h"
19 #include "PndEmcErrorMatrixPar.h"
20 #include "FairParAsciiFileIo.h"
21 #include "TClass.h"
22 #include <iostream>
23 #include <iomanip>
24 
26 
28 
30  // Constructor (called when the library is loaded)
31  fName="PndEmcContFact";
32  fTitle="Factory for parameter containers in libEmc";
33  setAllContainers();
34  FairRuntimeDb::instance()->addContFactory(this);
35 }
36 
41  FairContainer* p1= new FairContainer("PndEmcDigiPar",
42  "Emc Digitalization Parameters",
43  "TestDefaultContext");
44  p1->addContext("TestNonDefaultContext");
45 
46  FairContainer* p2= new FairContainer("PndEmcRecoPar",
47  "Emc Reconstruction Parameters",
48  "TestDefaultContext");
49  p2->addContext("TestNonDefaultContext");
50 
51  FairContainer* p3= new FairContainer("PndEmcGeoPar",
52  "Emc Geometry Parameters",
53  "TestDefaultContext");
54  p3->addContext("TestNonDefaultContext");
55 
56  FairContainer* p4= new FairContainer("PndEmcDigiNonuniformityPar",
57  "Emc Nonuniformity Parameters",
58  "TestDefaultContext");
59  p4->addContext("TestNonDefaultContext");
60 
61  FairContainer* p5= new FairContainer("PndEmcErrorMatrixPar",
62  "Emc Error matrix Parameters",
63  "TestDefaultContext");
64  p5->addContext("TestNonDefaultContext");
65 
66  FairContainer* p6= new FairContainer("PndEmcFpgaPar",
67  "Emc FPGA Parameters",
68  "TestDefaultContext");
69  p6->addContext("TestNonDefaultContext");
70 
71  FairContainer* p7= new FairContainer("PndEmcFWEndcapDigiPar",
72  "Emc Parameters for forward endcap",
73  "TestDefaultContext");
74  p7->addContext("TestNonDefaultContext");
75 
76  containers->Add(p1);
77  containers->Add(p2);
78  containers->Add(p3);
79  containers->Add(p4);
80  containers->Add(p5);
81  containers->Add(p6);
82  containers->Add(p7);
83 }
84 
85 FairParSet* PndEmcContFact::createContainer(FairContainer* c) {
89  const char* name=c->GetName();
90  std::cout << " -I container name " << name << std::endl;
91  FairParSet* p=NULL;
92 
93  if (strcmp(name,"PndEmcDigiPar")==0) {
94  p=new PndEmcDigiPar(c->getConcatName().Data(),c->GetTitle(),c->getContext());
95  }
96 
97  if (strcmp(name,"PndEmcRecoPar")==0) {
98  p=new PndEmcRecoPar(c->getConcatName().Data(),c->GetTitle(),c->getContext());
99  }
100 
101  if (strcmp(name,"PndEmcGeoPar")==0) {
102  p=new PndEmcGeoPar(c->getConcatName().Data(),c->GetTitle(),c->getContext());
103  }
104 
105  if (strcmp(name,"PndEmcDigiNonuniformityPar")==0) {
106  p=new PndEmcDigiNonuniformityPar(c->getConcatName().Data(),c->GetTitle(),c->getContext());
107  }
108 
109  if (strcmp(name,"PndEmcErrorMatrixPar")==0) {
110  p=new PndEmcErrorMatrixPar(c->getConcatName().Data(),c->GetTitle(),c->getContext());
111  }
112  if (strcmp(name,"PndEmcFpgaPar")==0) {
113  p=new PndEmcFpgaPar(c->getConcatName().Data(),c->GetTitle(),c->getContext());
114  }
115  if (strcmp(name,"PndEmcFWEndcapDigiPar")==0) {
116  p=new PndEmcFWEndcapDigiPar(c->getConcatName().Data(),c->GetTitle(),c->getContext());
117  }
118  return p;
119 }
120 
Double_t p
Definition: anasim.C:58
parameter set for the FWEndcap variant of waveform simulation
FairParSet * createContainer(FairContainer *)
parameter set of Emc digitisation
Definition: PndEmcDigiPar.h:12
TString name
static PndEmcContFact gPndEmcContFact
TPad * p2
Definition: hist-t7.C:117
ClassImp(PndAnaContFact)
TPad * p1
Definition: hist-t7.C:116
Parameter set for Emc Reco.
Definition: PndEmcRecoPar.h:12