HerdSoftware  0.4.0
Public Member Functions | Private Member Functions | Private Attributes | List of all members
Herd::TimingCaloAxisTrackingAlgo Class Reference

Algorithm for Calorimeter Shower Axis reconstruction based on the interpolation of Shower COG and entrace tile center. More...

#include <algorithms/tracking/CaloAxis/TimingCaloAxisTrackingAlgo.h>

Inheritance diagram for Herd::TimingCaloAxisTrackingAlgo:

Public Member Functions

 TimingCaloAxisTrackingAlgo (const std::string &name)
 Constructor. More...
 
bool Initialize () override
 Initialization of the algorithm. More...
 
bool Process () override
 Process a single event. More...
 
bool Finalize () override
 Post processing part. More...
 

Private Member Functions

bool BuildAxis (const CaloHits &caloHits, std::string &hitsObjName, size_t clusterIndex)
 Build Shower Axis. More...
 

Private Attributes

bool m_processCalo
 Flag variable to instruct the algorithm to process the whole calo hit collection instead of separate CaloClusters. More...
 
float m_eDepThreshold
 Threshold (in GeV) for energy deposit in CALO hits. Only hits above threshold are used to build the CALO axis. More...
 
unsigned short m_minHits
 Minimum number of hits above threshold to reconstruct the axis. More...
 
std::string m_caloHitsName
 Name of the CaloHits collections to be used for reconstruction. More...
 
std::string m_caloClustersName
 Name of the CaloClusters collections to be used for reconstruction. More...
 
Tracks m_caloAxes
 Pointer to tracks objects. More...
 
EntranceInfo m_entranceInfo
 
EA::observer_ptr< EA::EventDataStore > m_evStore
 
EA::observer_ptr< EA::GlobalDataStore > m_globStore
 

Detailed Description

Algorithm for Calorimeter Shower Axis reconstruction based on the interpolation of Shower COG and entrace tile center.

name type store required description
caloClusters CaloClusters evStore if processCalo=false Calorimeter clusters
caloHits<X> CaloHits evStore if processCalo=true Calorimeter hit collection
entranceTile entranceTile evStore yes Entrance Tile information

Needed global objects:

name type store required description
caloGeoParams CaloGeoParams globStore if processCalo=false Calorimeter Geometrical Parameters
psdGeoParamsColl psdGeoParamsColl globStore yes PSD Geometrical Parameters

Produced event objects:

name -type- alias store description
caloAxes_timing Tracks caloAxes evStore The collection of CALO axes.

Parameters:

name type default value description
processCalo bool false If true, neglect CaloClusters and process the collection of CaloHits of the whole Calo
edepThreshold float 0.20 Energy deposit threshold (in GeV) for CaloHits to enter the reconstruction algorithm
minHits int 4 Minimum number of hit above threshold to reconstruct CaloAxis
caloHitsName string caloHitsGeV Name of the CaloHits collection used for reconstruction. Possible suggested solutions are: caloHitsGeV; caloHitsGGS.
caloclustersName string caloClusters Name of the CaloClusters collection used for reconstruction.

Constructor & Destructor Documentation

◆ TimingCaloAxisTrackingAlgo()

Herd::TimingCaloAxisTrackingAlgo::TimingCaloAxisTrackingAlgo ( const std::string &  name)

Constructor.

Parameters
nameThe name of the algorithm

Member Function Documentation

◆ BuildAxis()

bool Herd::TimingCaloAxisTrackingAlgo::BuildAxis ( const CaloHits caloHits,
std::string &  hitsObjName,
size_t  clusterIndex 
)
private

Build Shower Axis.

Combine the position of the entrance tile in PSD with the distribution of the CALO shower to reconstruct the shower axis

Parameters
caloHitsCollection of the hits associated to the shower
hitsObjNameThe name of the caloHits object to be consumed
clusterIndexIndex of the shower to linked to the reconstracted caloAxis
Returns
True if the process succed or false otherwise

◆ Finalize()

bool Herd::TimingCaloAxisTrackingAlgo::Finalize ( )
override

Post processing part.

Returns
If post-processing is successful.

◆ Initialize()

bool Herd::TimingCaloAxisTrackingAlgo::Initialize ( )
override

Initialization of the algorithm.

Returns
true if the initialization procedure is successful.

◆ Process()

bool Herd::TimingCaloAxisTrackingAlgo::Process ( )
override

Process a single event.

Returns
If event processing is successful.

Member Data Documentation

◆ m_caloAxes

Tracks Herd::TimingCaloAxisTrackingAlgo::m_caloAxes
private

Pointer to tracks objects.

◆ m_caloClustersName

std::string Herd::TimingCaloAxisTrackingAlgo::m_caloClustersName
private

Name of the CaloClusters collections to be used for reconstruction.

◆ m_caloHitsName

std::string Herd::TimingCaloAxisTrackingAlgo::m_caloHitsName
private

Name of the CaloHits collections to be used for reconstruction.

◆ m_eDepThreshold

float Herd::TimingCaloAxisTrackingAlgo::m_eDepThreshold
private

Threshold (in GeV) for energy deposit in CALO hits. Only hits above threshold are used to build the CALO axis.

◆ m_entranceInfo

EntranceInfo Herd::TimingCaloAxisTrackingAlgo::m_entranceInfo
private

◆ m_evStore

EA::observer_ptr<EA::EventDataStore> Herd::TimingCaloAxisTrackingAlgo::m_evStore
private

◆ m_globStore

EA::observer_ptr<EA::GlobalDataStore> Herd::TimingCaloAxisTrackingAlgo::m_globStore
private

◆ m_minHits

unsigned short Herd::TimingCaloAxisTrackingAlgo::m_minHits
private

Minimum number of hits above threshold to reconstruct the axis.

If below, reconstruction is not completed and no CaloAxis object is added to the collection

◆ m_processCalo

bool Herd::TimingCaloAxisTrackingAlgo::m_processCalo
private

Flag variable to instruct the algorithm to process the whole calo hit collection instead of separate CaloClusters.


The documentation for this class was generated from the following files: