Algorithm for Calorimeter Shower reconstruction starting from a given Axis Direction.
More...
#include <algorithms/reconstruction/CaloTwoThreshShowerAlgo.h>
|
| struct | UsedObjects |
| | Helper struct to keep track of the object used in the shower reconstruction. More...
|
| |
Algorithm for Calorimeter Shower reconstruction starting from a given Axis Direction.
This algorithm builds CaloShower objects starting from CALO hits and a line defining the longitudinal direction. The line can be either a CALO axis or the MC true trajectory. The shower start point is reconstructed by means of a two-thresholds algorithm, currently provided by the Reconstruction::CaloTwoThreshShowerStartingPoint function.
Needed event objects:
| name | type | store | required | description |
| caloGeoParams | CaloGeoParams | globStore | | Calorimeter geometrical parameters. |
| caloClusters | CaloClusters | evStore | if processCalo=false | Calorimeter clusters. |
| <caloHitsName> | CaloHits | evStore | if processCalo=true | Calorimeter hit collection. |
| caloAxes | CaloAxes | evStore | if trackAxisType=caloAxis | The CALO axes object. |
| mcTruth | MCTruth | evStore | if trackAxisType=mcTrack | Montecarlo truth. |
| tracks3D | std::vector<Track> | evStore | if trackAxisType=track | Track from subdetectors tracking algorithms. |
Produced event objects:
| name | -type- | alias | store | description |
| caloShowers{MC,CA}(_Inv) | CaloShowers | caloShowers | evStore | The collection of CaloShower objects. |
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.020 | Energy deposit threshold (in GeV) for CaloHits to enter the reconstruction algorithm |
| caloHitsName | string | caloHitsGeV | Name of the CaloHits collection used for reconstruction. Possible suggested solutions are: caloHitsGeV; caloHitsGGS. |
| trackAxisType | string | caloAxis | Type of existing track used for Shower reconstruction. Possible values are: caloAxis; mcTrack; track3D |
| axisInversion | bool | false | If true, the versus of the track used for Shower reconstruction is inverted |
◆ CaloTwoThreshShowerAlgo()
| Herd::CaloTwoThreshShowerAlgo::CaloTwoThreshShowerAlgo |
( |
const std::string & |
name | ) |
|
Constructor.
- Parameters
-
| name | The name of the algorithm |
◆ BuildShower()
| bool Herd::CaloTwoThreshShowerAlgo::BuildShower |
( |
const CaloHits & |
calohits, |
|
|
Line |
showeraxis, |
|
|
const UsedObjects & |
usedObjects |
|
) |
| |
|
private |
◆ Finalize()
| bool Herd::CaloTwoThreshShowerAlgo::Finalize |
( |
| ) |
|
|
override |
Post processing part.
- Returns
- If post-processing is successful.
◆ Initialize()
| bool Herd::CaloTwoThreshShowerAlgo::Initialize |
( |
| ) |
|
|
override |
Initialization of the algorithm.
- Returns
- true if the initialization procedure is successful.
◆ Process()
| bool Herd::CaloTwoThreshShowerAlgo::Process |
( |
| ) |
|
|
override |
Process a single event.
- Returns
- If event processing is successful.
◆ m_axisInversion
| bool Herd::CaloTwoThreshShowerAlgo::m_axisInversion |
|
private |
Flag variable to Invert the direction of the selected trackAxisType.
◆ m_caloHitsName
| std::string Herd::CaloTwoThreshShowerAlgo::m_caloHitsName |
|
private |
Name of the CaloHits collections to be used for reconstruction.
◆ m_caloShowers
| std::shared_ptr<CaloShowers> Herd::CaloTwoThreshShowerAlgo::m_caloShowers |
|
private |
◆ m_edepThreshold
| float Herd::CaloTwoThreshShowerAlgo::m_edepThreshold |
|
private |
Threshold (in GeV) for energy deposit in CALO hits. Only hits above threshold are used to build the CaloShower.
◆ m_evStore
| EA::observer_ptr<EA::EventDataStore> Herd::CaloTwoThreshShowerAlgo::m_evStore |
|
private |
◆ m_globStore
| EA::observer_ptr<EA::GlobalDataStore> Herd::CaloTwoThreshShowerAlgo::m_globStore |
|
private |
◆ m_objName
| std::string Herd::CaloTwoThreshShowerAlgo::m_objName {"caloShowers"} |
|
private |
◆ m_processCalo
| bool Herd::CaloTwoThreshShowerAlgo::m_processCalo |
|
private |
Flag variable to instruct the algorithm to process the whole calo hit collection instead of separate CaloClusters.
◆ m_trackAxisType
| std::string Herd::CaloTwoThreshShowerAlgo::m_trackAxisType |
|
private |
Type of existing track used for Shower reconstruction.
The documentation for this class was generated from the following files: