HerdSoftware  0.1.1
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/CaloAxes.h"
19 #include "dataobjects/CaloHits.h"
20 #include "dataobjects/Line.h"
21 
22 using namespace EA;
23 
24 namespace Herd {
68 class PcaCaloAxisTrackingAlgo : public Algorithm {
69 
70 public:
75  PcaCaloAxisTrackingAlgo(const std::string &name);
76 
81  bool Initialize();
82 
87  bool Process();
88 
93  bool Finalize();
94 
95 private:
97  bool BuildAxis(const CaloHits &);
98 
101 
104 
110  unsigned short _minhits;
111 
115  std::string _caloHitsName;
116 
118  std::shared_ptr<CaloAxes> _caloAxes;
119 
120  // Utility variables
121  observer_ptr<EventDataStore> _evStore; // Pointer to the event data store
122  observer_ptr<GlobalDataStore> _globStore; // Pointer to the global data store
123 };
124 
125 #endif /* PCACALOAXISTRACKINGALGO_H_ */
126 }
CssGeoParams.h CssGeoParams class declaration.
Definition: CaloPDCalibrationAlgo.h:24
std::shared_ptr< CaloAxes > _caloAxes
Pointer to CaloAxis objects.
Definition: PcaCaloAxisTrackingAlgo.h:118
observer_ptr< EventDataStore > _evStore
Definition: PcaCaloAxisTrackingAlgo.h:121
float _edepthreshold
Threshold (in GeV) for energy deposit in CALO hits. Only hits above threshold are used to build the C...
Definition: PcaCaloAxisTrackingAlgo.h:103
bool _processcalo
Flag variable to instruct the algorithm to process the whole calo hit collection instead of separate ...
Definition: PcaCaloAxisTrackingAlgo.h:100
Algorithm for Calorimeter Shower Axis reconstruction based on Principal Component Analysis (PCA) meth...
Definition: PcaCaloAxisTrackingAlgo.h:68
observer_ptr< GlobalDataStore > _globStore
Definition: PcaCaloAxisTrackingAlgo.h:122
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:110
std::string _caloHitsName
Name of the CaloHits collections to be used for reconstruction.
Definition: PcaCaloAxisTrackingAlgo.h:115