Go to the documentation of this file.
12 #include <FairEventManager.h>
13 #include <FairLogger.h>
14 #include <FairRootManager.h>
15 #include <FairRunAna.h>
16 #include <FairRuntimeDb.h>
18 #include <TClonesArray.h>
19 #include <TEveBoxSet.h>
20 #include <TEveManager.h>
25 using std::setprecision;
33 , fModuleInfo(nullptr)
34 , fEventManager(nullptr)
47 : FairTask(name, iVerbose)
51 , fModuleInfo(nullptr)
52 , fEventManager(nullptr)
57 for (Int_t
i = 0;
i < 15;
i++) {
63 LOG(debug) <<
" * CbmTrdDigiDraw * :: SetParContainers() ";
67 FairRunAna* ana = FairRunAna::Instance();
68 FairRuntimeDb* rtdb = ana->GetRuntimeDb();
76 LOG(debug) <<
"CbmTrdDigiDraw::Init()";
77 FairRootManager* fManager = FairRootManager::Instance();
78 fPointList = (TClonesArray*) fManager->GetObject(GetName());
80 LOG(warn) <<
"CbmTrdDigiDraw::Init() branch " << GetName()
81 <<
" Not found! Task will be deactivated ";
84 LOG(debug1) <<
"CbmTrdDigiDraw::Init() get track list" <<
fPointList;
86 LOG(debug1) <<
"CbmTrdDigiDraw::Init() get instance of FairEventManager ";
102 TEveBoxSet* q =
new TEveBoxSet(GetName(),
"");
103 q->Reset(TEveBoxSet::kBT_AABox, kTRUE, npoints);
104 q->SetMainColor(kBlue);
114 Int_t refCounter = 0;
116 for (Int_t
i = 0;
i < npoints; ++
i) {
135 TVector3 posHit, padSize;
137 Sector, Col, Row, posHit, padSize);
143 Double_t X = posHit.X() - (padSize.X() / 2);
144 Double_t Y = posHit.Y() - (padSize.Y() / 2);
148 LOG(debug1) <<
"Col: " << Col;
149 LOG(debug1) <<
"Row: " << Row;
150 LOG(debug1) << setprecision(5) <<
"fPadX: " << padSize.X();
151 LOG(debug1) << setprecision(5) <<
"fPadY: " << padSize.Y();
152 LOG(debug1) << setprecision(5) <<
"fPosX: " << posHit.X();
153 LOG(debug1) << setprecision(5) <<
"fPosY: " << posHit.Y();
154 LOG(debug1) << setprecision(5) <<
"fPosZ: " << posHit.Z();
157 q->AddBox(X, Y, posHit.Z(), padSize.X(), padSize.Y(), 0.);
163 gEve->Redraw3D(kFALSE);
static UInt_t GetModuleAddress(UInt_t address)
Return unique module ID from address.
Int_t GetAddress() const
Address getter for module in the format defined by CbmTrdDigi (format of CbmTrdAddress can be accesse...
Helper class to convert unique channel ID back and forth.
virtual void Exec(Option_t *option)
static UInt_t GetSectorId(UInt_t address)
Return sector ID from address.
virtual InitStatus Init()
static UInt_t GetLayerId(UInt_t address)
Return layer ID from address.
TClonesArray * fPointList
Definition of chamber gain conversion for one TRD module.
virtual ~CbmTrdDigiDraw()
virtual const CbmTrdParMod * GetModulePar(Int_t detId) const
ClassImp(CbmConverterManager) InitStatus CbmConverterManager
void GetPosition(Int_t sectorId, Int_t columnId, Int_t rowId, TVector3 &padPos, TVector3 &padSize) const
CbmTrdParModDigi * fModuleInfo
CbmTrdParSetDigi * fDigiPar
FairEventManager * fEventManager
void SetActiveLayer(Bool_t Layer1=kTRUE, Bool_t Layer2=kFALSE, Bool_t Layer3=kFALSE, Bool_t Layer4=kFALSE, Bool_t Layer5=kFALSE, Bool_t Layer6=kFALSE, Bool_t Layer7=kFALSE, Bool_t Layer8=kFALSE, Bool_t Layer9=kFALSE, Bool_t Layer10=kFALSE, Bool_t Layer11=kFALSE, Bool_t Layer12=kFALSE, Bool_t Layer13=kFALSE, Bool_t Layer14=kFALSE, Bool_t Layer15=kFALSE)
static UInt_t GetRowId(UInt_t address)
Return row ID from address.
static UInt_t GetColumnId(UInt_t address)
Return column ID from address.
virtual void SetParContainers()