CbmRoot
|
#include <CbmTrdHitProducer.h>
Public Member Functions | |
CbmTrdHitProducer () | |
Constructor. | |
virtual | ~CbmTrdHitProducer () |
Destructor. | |
virtual InitStatus | Init () |
Inherited form FairTask. | |
virtual void | Exec (Option_t *option="") |
Inherited from FairTask. | |
virtual void | Finish () |
Inherited from FairTask. | |
virtual void | SetParContainers () |
void | SetHitTimeOffset (int dt) |
Correction of hit time in TRD2D due to different processes. | |
Private Member Functions | |
CbmTrdHitProducer (const CbmTrdHitProducer &) | |
CbmTrdHitProducer & | operator= (const CbmTrdHitProducer &) |
CbmTrdModuleRec * | AddModule (Int_t address, const CbmTrdParModGeo *pg) |
UInt_t | processClusters () |
Process all clusters found in the TrdClusters branch. | |
UInt_t | processClusters (CbmEvent *event) |
Process all clusters attached to the given event. | |
void | processCluster (const Int_t clusterIdx) |
Produce a hit from the cluster found at clusterIdx in fClusters. | |
UInt_t | addModuleHits (CbmTrdModuleRec *mod, CbmEvent *event) |
Pass all hits produced by the given module to the TrdHit branch. In case of event not nullptr only the hits conditioned by event are returned. | |
Int_t | addHits (CbmEvent *event=nullptr) |
Loop over all modules in the given geometry and call addModuleHits(imodule) | |
ClassDef (CbmTrdHitProducer, 2) | |
Private Attributes | |
TClonesArray * | fClusters = nullptr |
Input array of CbmTrdCluster. | |
TClonesArray * | fHits = nullptr |
Output array of CbmTrdHit. | |
TClonesArray * | fEvents = nullptr |
Array connected to the CbmEvent branch. | |
std::map< Int_t, CbmTrdModuleRec * > | fModules = {} |
list of modules being processed | |
CbmTrdParSetAsic * | fAsicPar = nullptr |
parameter list for ASIC characterization | |
CbmTrdParSetGas * | fGasPar = nullptr |
parameter list for HV status | |
CbmTrdParSetDigi * | fDigiPar = nullptr |
parameter list for read-out geometry | |
CbmTrdParSetGain * | fGainPar = nullptr |
parameter list for keV->ADC gain conversion | |
CbmTrdParSetGeo * | fGeoPar = nullptr |
parameter list for modules geometry | |
UInt_t | fNrTs = 0 |
Number of processed time slices. | |
UInt_t | fNrEvents = 0 |
Number of processed events (without CbmEvent corresponds to nr of exec calls) | |
UInt_t | fNrClusters = 0 |
Number of clusters as input for the hit production. | |
UInt_t | fNrHits = 0 |
Number of produced hits. | |
UInt_t | fNrHitsCall = 0 |
Number of produced hits per call of Exec, i.e. Event(EbyE) or TimeSlice(TB). | |
Float_t | fProcessTime = 0 |
Total processing time [RealTime]. | |
int | fHitTimeOffset = 0 |
hit time correction for synchronization | |
Definition at line 36 of file CbmTrdHitProducer.h.
CbmTrdHitProducer::CbmTrdHitProducer | ( | ) |
Constructor.
Definition at line 49 of file CbmTrdHitProducer.cxx.
|
virtual |
|
private |
|
private |
Loop over all modules in the given geometry and call addModuleHits(imodule)
event |
Definition at line 223 of file CbmTrdHitProducer.cxx.
References addModuleHits(), and fModules.
Referenced by processClusters(), and processClusters().
|
private |
Definition at line 88 of file CbmTrdHitProducer.cxx.
References fAsicPar, fDigiPar, fGainPar, fGasPar, fHitTimeOffset, CbmTrdAddress::GetLayerId(), CbmTrdGeoHandler::GetModuleAddress(), CbmTrdParSet::GetModulePar(), CbmTrdGeoHandler::GetModuleType(), CbmTrdParModDigi::GetPadPlaneType(), CbmTrdParModDigi::IsPadPlane2D(), and CbmTrdClusterFinder::UseRecoHelpers().
Referenced by Init().
|
private |
Pass all hits produced by the given module to the TrdHit branch. In case of event not nullptr only the hits conditioned by event are returned.
mod | : Trd module being processed |
event | : not nullptr for event based reconstruction |
Absorb the TClonesArrays of the individual modules into the global TClonesArray.
Definition at line 60 of file CbmTrdHitProducer.cxx.
References CbmEvent::AddData(), fHits, fNrHits, fNrHitsCall, CbmTrdModuleRec::GetHits(), hits, and kTrdHit.
Referenced by addHits().
|
private |
|
virtual |
Inherited from FairTask.
Definition at line 292 of file CbmTrdHitProducer.cxx.
References CbmTrdClusterFinder::DoDebugPrintouts(), fClusters, fEvents, fHits, fNrEvents, fNrHitsCall, fNrTs, fProcessTime, processClusters(), and CbmTrdClusterFinder::UseOnlyEventDigis().
|
virtual |
Inherited from FairTask.
Definition at line 354 of file CbmTrdHitProducer.cxx.
References fNrClusters, fNrEvents, fNrHits, and fProcessTime.
|
virtual |
Inherited form FairTask.
Definition at line 239 of file CbmTrdHitProducer.cxx.
References AddModule(), fClusters, fDigiPar, fEvents, fGeoPar, fHits, CbmTrdParSet::GetModuleId(), CbmTrdParSet::GetModulePar(), CbmTrdParSet::GetNrOfModules(), CbmDigiManager::Init(), CbmDigiManager::Instance(), kTrd, CbmTrdParSetGeo::LoadAlignVolumes(), CbmTrdClusterFinder::SetUseOnlyEventDigis(), and CbmTrdClusterFinder::UseOnlyEventDigis().
|
private |
|
private |
Produce a hit from the cluster found at clusterIdx in fClusters.
clusterIdx |
Definition at line 199 of file CbmTrdHitProducer.cxx.
References fClusters, fModules, fNrClusters, CbmDigiManager::Get(), CbmTrdDigi::GetCharge(), CbmTrdDigi::GetType(), CbmDigiManager::Instance(), and CbmTrdDigi::kSPADIC.
Referenced by processClusters(), and processClusters().
|
private |
Process all clusters found in the TrdClusters branch.
Definition at line 160 of file CbmTrdHitProducer.cxx.
References addHits(), CbmTrdClusterFinder::DoDebugPrintouts(), fClusters, and processCluster().
Referenced by Exec().
|
private |
Process all clusters attached to the given event.
event |
Definition at line 178 of file CbmTrdHitProducer.cxx.
References addHits(), CbmTrdClusterFinder::DoDebugPrintouts(), kTrdCluster, and processCluster().
|
inline |
Correction of hit time in TRD2D due to different processes.
Definition at line 64 of file CbmTrdHitProducer.h.
References fHitTimeOffset.
|
virtual |
|
private |
parameter list for ASIC characterization
Definition at line 120 of file CbmTrdHitProducer.h.
Referenced by AddModule(), and SetParContainers().
|
private |
Input array of CbmTrdCluster.
Definition at line 113 of file CbmTrdHitProducer.h.
Referenced by Exec(), Init(), processCluster(), and processClusters().
|
private |
parameter list for read-out geometry
Definition at line 122 of file CbmTrdHitProducer.h.
Referenced by AddModule(), Init(), and SetParContainers().
|
private |
Array connected to the CbmEvent branch.
Definition at line 117 of file CbmTrdHitProducer.h.
|
private |
parameter list for keV->ADC gain conversion
Definition at line 123 of file CbmTrdHitProducer.h.
Referenced by AddModule(), and SetParContainers().
|
private |
parameter list for HV status
Definition at line 121 of file CbmTrdHitProducer.h.
Referenced by AddModule(), and SetParContainers().
|
private |
parameter list for modules geometry
Definition at line 124 of file CbmTrdHitProducer.h.
Referenced by Init(), and SetParContainers().
|
private |
Output array of CbmTrdHit.
Definition at line 115 of file CbmTrdHitProducer.h.
Referenced by addModuleHits(), Exec(), Init(), and ~CbmTrdHitProducer().
|
private |
hit time correction for synchronization
Definition at line 143 of file CbmTrdHitProducer.h.
Referenced by AddModule(), and SetHitTimeOffset().
|
private |
list of modules being processed
Definition at line 119 of file CbmTrdHitProducer.h.
Referenced by addHits(), and processCluster().
|
private |
Number of clusters as input for the hit production.
Definition at line 133 of file CbmTrdHitProducer.h.
Referenced by Finish(), and processCluster().
|
private |
Number of processed events (without CbmEvent corresponds to nr of exec calls)
Definition at line 130 of file CbmTrdHitProducer.h.
|
private |
Number of produced hits.
Definition at line 136 of file CbmTrdHitProducer.h.
Referenced by addModuleHits(), and Finish().
|
private |
Number of produced hits per call of Exec, i.e. Event(EbyE) or TimeSlice(TB).
Definition at line 139 of file CbmTrdHitProducer.h.
Referenced by addModuleHits(), and Exec().
|
private |
Number of processed time slices.
Definition at line 127 of file CbmTrdHitProducer.h.
Referenced by Exec().
|
private |
Total processing time [RealTime].
Definition at line 142 of file CbmTrdHitProducer.h.