16#ifndef CBMTRDCLUSTERFINDER_H
17#define CBMTRDCLUSTERFINDER_H
22#include <RtypesCore.h>
37class TGeoPhysicalNode;
105 virtual InitStatus
Init();
109 virtual void Exec(Option_t* option);
Class characterising one event by a collection of links (indices) to data objects,...
static void SetUseOnlyEventDigis(Bool_t set=kTRUE)
Set the Use Only Event Digis Per default this is activated on construction, such that the user can tu...
static void SetTimeBased(Bool_t set=kTRUE)
TClonesArray * fEvents
Array connected to the CbmEvent branch.
std::map< Int_t, CbmTrdModuleRec * > fModules
list of modules being processed
CbmTrdParSetGas * fGasPar
parameter list for HV status
static Bool_t HasDumpClusters()
static Int_t fgConfig
Configuration map for the clusterizer. See CbmTrdRecDef for details.
UInt_t fNrDigis
Number of digis as input for the hit production.
virtual void SetParContainers()
static void SetRowMerger(Bool_t set=kTRUE)
virtual InitStatus Init()
static void SetUseRecoHelpers(Bool_t set=kTRUE)
Steer usage of TGraph support in TRD-2D for improved performance. The cost in terms of CPU has to be ...
static void SetMultiHit(Bool_t set=kTRUE)
ClassDef(CbmTrdClusterFinder, 2)
static void SetMinimumChargeTH(Float_t th)
@ kUseRecoHelpers
use graph helpers in hit reco for improving performance
@ kDumpClusters
write clustered digis to output
@ kDebugStatements
print out debug statements with LOG(info)
@ kFASP
use FASP ASIC for triangular pad plane geometry
@ kOnlyEventDigis
use only digis connected to a CbmEvent
@ kNeighbourCol
use neighbor trigger; column wise
@ kRowMerger
merge clusters over neighbor rows
@ kMultiHit
multi hit detection
@ kNeighbourRow
use neighbor trigger; row wise
@ kTime
select Time based/Event by event simulation (see CbmTrdDigitizer::kTime)
static Bool_t HasNeighbourCol()
static Bool_t UseRecoHelpers()
Bool_t AddCluster(CbmTrdCluster *c)
Save one finished cluster to the output.
CbmTrdParSetDigi * fDigiPar
parameter list for read-out geometry
CbmTrdClusterFinder()
Default constructor.
static void SetDumpClusters(Bool_t set=kTRUE)
CbmTrdClusterFinder(const CbmTrdClusterFinder &)
static Bool_t HasRowMerger()
UInt_t fNrTs
Number of processed time slices.
~CbmTrdClusterFinder()
Default destructor.
CbmTrdModuleRec * AddModule(const CbmTrdDigi *digi)
Adds the module corresponding to the address of the passed digi to the ModuleMap (fModules)
virtual void Exec(Option_t *option)
Executed task.
UInt_t fNrClusters
Number of produced clusters.
static void SetNeighbourEnable(Bool_t col=kTRUE, Bool_t row=kFALSE)
CbmTrdClusterFinder & operator=(const CbmTrdClusterFinder &)
CbmTrdParSetGeo * fGeoPar
parameter list for modules geometry
static Bool_t HasNeighbourRow()
static Bool_t UseOnlyEventDigis()
If true only digis connected ro a CbmEvent are processed Per default this is activated on constructio...
CbmTrdParSetGain * fGainPar
parameter list for keV->ADC gain conversion
void processDigisInModules(UInt_t ndigis, CbmEvent *event=nullptr, bool clr=true)
Call the clusterizer function of each module.
static Bool_t HasMultiHit()
static Bool_t IsTimeBased()
UInt_t addDigisToModules()
Add all digis available from CbmDigiManager to the corresponding modules.
static Float_t fgMinimumChargeTH
Int_t AddClusters(TClonesArray *clusters, CbmEvent *event, Bool_t moveOwner=kTRUE)
void addDigiToModule(UInt_t digiIdx)
Add the digi in the TrdDigi branch at the passed digiIdx to its corresponding module.
static Float_t GetMinimumChargeTH()
CbmTrdParSetAsic * fAsicPar
parameter list for ASIC characterization
UInt_t fNrEvents
Number of processed events (without CbmEvent corresponds to nr of exec calls)
Float_t fProcessTime
Total processing time [RealTime].
static Bool_t DoDebugPrintouts()
static void SetDoDebugPrintouts(Bool_t set=kTRUE)
Data Container for TRD clusters.
Cluster finding and hit reconstruction algorithms for the TRD(2D) module.
Rectangular pad module; Cluster finding and hit reconstruction algorithms.
Abstract class for module wise cluster finding and hit reconstruction.
Describe TRD module ASIC settings (electronic gain, delays, etc)
Describe TRD module working settings (HV, etc)