FairRoot/PandaRoot
PndLmdContFact.cxx
Go to the documentation of this file.
1 //
3 // PndLmdContFact
4 //
5 // Factory for the parameter containers in libPndLmd
6 //
8 
9 #include "PndLmdContFact.h"
10 #include "FairRuntimeDb.h"
11 //#include "PndMvdGeoPar.h"
12 #include "PndSdsPixelDigiPar.h"
13 #include "PndSdsStripDigiPar.h"
14 #include "PndSdsTotDigiPar.h"
15 #include "PndLmdAlignPar.h"
16 #include "FairParRootFileIo.h"
17 #include "FairParAsciiFileIo.h"
18 #include "TList.h"
19 #include "TObjString.h"
20 #include <iostream>
21 #include <iomanip>
22 
24 
26 
28  // Constructor (called when the library is loaded)
29  fName="PndLmdContFact";
30  fTitle="Factory for parameter containers in libPndLmd";
31  fDigiParNames = new TList();
32  fAlignParNames = new TList();
34  FairRuntimeDb::instance()->addContFactory(this);
35 }
37  if(0!=fDigiParNames)
38  {
39  fDigiParNames->Delete();
40  delete fDigiParNames;
41  }
42  if(0!=fAlignParNames)
43  {
44  fAlignParNames->Delete();
45  delete fAlignParNames;
46  }
47 
48 }
49 
50 
54 // FairContainer* p= new FairContainer("PndMvdGeoPar","PndMvd Geometry Parameters","TestDefaultContext");
55 // p->addContext("TestNonDefaultContext");
56 // fDigiParNames->Add(new TObjString(p->GetName()));
57 // containers->Add(p);
58 
59  FairContainer* p2 = new FairContainer("LMDPixelDigiPar", "PndSds Pixel Digitization Parameters", "TestDefaultContext");
60  p2->addContext("TestNonDefaultContext");
61  fDigiParNames->Add(new TObjString(p2->GetName()));
62  containers->Add(p2);
63 
64  /*
65  FairContainer* p3 = new FairContainer("LMDStripDigiParRect", "PndSds Strip Digitization Parameters (rectangular sensors)", "TestDefaultContext");
66  p3->addContext("TestNonDefaultContext");
67  fDigiParNames->Add(new TObjString(p3->GetName()));
68  containers->Add(p3);
69 
70  FairContainer* p4 = new FairContainer("LMDStripDigiParTrap", "PndSds Strip Digitization Parameters (trapezoid sensors)", "TestDefaultContext");
71  p4->addContext("TestNonDefaultContext");
72  fDigiParNames->Add(new TObjString(p4->GetName()));
73  containers->Add(p4);
74  */
75 
76  FairContainer* p5 = new FairContainer("LMDAlignPar", "PndLmd Alignment Parameters", "TestDefaultContext");
77  p5->addContext("TestNonDefaultContext");
78  fAlignParNames->Add(new TObjString(p5->GetName()));
79  containers->Add(p5);
80 }
81 
82 FairParSet* PndLmdContFact::createContainer(FairContainer* c) {
86  const char* name=c->GetName();
87  FairParSet* p=NULL;
88 // if (strcmp(name,"PndMvdGeoPar")==0) {
89 // p=new PndMvdGeoPar(c->getConcatName().Data(),c->GetTitle(),c->getContext());
90 // }
91 
92  if (strcmp(name,"LMDPixelDigiPar")==0) {
93  p=new PndSdsPixelDigiPar(c->getConcatName().Data(),c->GetTitle(),c->getContext());
94  }
95 
96  /*
97  if (strcmp(name,"LMDStripDigiParRect")==0) {
98  p=new PndSdsStripDigiPar(c->getConcatName().Data(),c->GetTitle(),c->getContext());
99  }
100 
101  if (strcmp(name,"LMDStripDigiParTrap")==0) {
102  p=new PndSdsStripDigiPar(c->getConcatName().Data(),c->GetTitle(),c->getContext());
103  }
104  */
105 
106  if (strcmp(name,"LMDAlignPar")==0) {
107  p=new PndLmdAlignPar(c->getConcatName().Data(),c->GetTitle(),c->getContext());
108  }
109  return p;
110 }
111 
Double_t p
Definition: anasim.C:58
TList * fAlignParNames
TList * fDigiParNames
FairParSet * createContainer(FairContainer *c)
Alignment Parameter Class for LMD.
TString name
TPad * p2
Definition: hist-t7.C:117
static PndLmdContFact gPndLmdContFact
ClassImp(PndAnaContFact)
Digitization Parameter Class for SDS-Pixel part.