HerdSoftware  0.3.2
PcaCaloAxisTrackingAlgo.h
Go to the documentation of this file.
1 /*
2  * PcaCaloAxisTrackingAlgo.h
3  *
4  * Created on 27 April 2020
5  * Author: Valerio Vagelli
6  */
7 
10 #ifndef PCACALOAXISTRACKINGALGO_H_
11 #define PCACALOAXISTRACKINGALGO_H_
12 
13 #include "algorithm/Algorithm.h"
14 
15 // HerdSoftware headers
16 #include "dataobjects/Tracks.h"
18 
19 using namespace EA;
20 
21 namespace Herd {
22 // clang-format off
64 // clang-format on
65 class PcaCaloAxisTrackingAlgo : public Algorithm {
66 
67 public:
72  PcaCaloAxisTrackingAlgo(const std::string &name);
73 
78  bool Initialize() override;
79 
84  bool Process() override;
85 
90  bool Finalize() override;
91 
92 private:
94  bool BuildAxis(const CaloHits &, std::string hitsObjName, size_t clusterIndex);
95 
98 
101 
107  unsigned short _minhits;
108 
112  std::string _caloHitsName;
113 
116  std::vector<CaloHitsRefFrame> _chRefFrames;
117 
118  // Utility variables
119  observer_ptr<EventDataStore> _evStore; // Pointer to the event data store
120  observer_ptr<GlobalDataStore> _globStore; // Pointer to the global data store
121 };
122 
123 #endif /* PCACALOAXISTRACKINGALGO_H_ */
124 }
CssGeoParams.h CssGeoParams class declaration.
Definition: CaloPDCalibrationAlgo.h:24
std::vector< CaloHitsRefFrame > _chRefFrames
Definition: PcaCaloAxisTrackingAlgo.h:116
Container for a set of tracks.
Tracks _caloAxes
Pointer to tracks objects.
Definition: PcaCaloAxisTrackingAlgo.h:115
observer_ptr< EventDataStore > _evStore
Definition: PcaCaloAxisTrackingAlgo.h:119
bool _processCalo
Flag variable to instruct the algorithm to process the whole calo hit collection instead of separate ...
Definition: PcaCaloAxisTrackingAlgo.h:97
float _eDepThreshold
Threshold (in GeV) for energy deposit in CALO hits. Only hits above threshold are used to build the C...
Definition: PcaCaloAxisTrackingAlgo.h:100
Algorithm for Calorimeter Shower Axis reconstruction based on Principal Component Analysis (PCA) meth...
Definition: PcaCaloAxisTrackingAlgo.h:65
observer_ptr< GlobalDataStore > _globStore
Definition: PcaCaloAxisTrackingAlgo.h:120
Container for the hits of a single CALO detector.
unsigned short _minhits
Minimum number of hits above threshold to reconstruct the axis.
Definition: PcaCaloAxisTrackingAlgo.h:107
std::string _caloHitsName
Name of the CaloHits collections to be used for reconstruction.
Definition: PcaCaloAxisTrackingAlgo.h:112