HerdSoftware  0.4.0
TracksDistanceSorterAlgo.h
Go to the documentation of this file.
1 /*
2  * TracksDistanceSorterAlgo.h
3  *
4  * Created on: 20 Sep 2021
5  * Author: Nicola Mori
6  */
7 
8 #ifndef HERD_TRACKSDISTANCESORTERALGO_H_
9 #define HERD_TRACKSDISTANCESORTERALGO_H_
10 
11 // HerdSoftware headers
12 
13 // EventAnalysis headers
14 #include "algorithm/Algorithm.h"
15 
16 // Root headers
17 #include "TH1I.h"
18 #include "TH2I.h"
19 
20 // C/C++ headers
21 
22 namespace Herd {
23 
24 // clang-format off
74 // clang-format on
75 class TracksDistanceSorterAlgo : public EA::Algorithm {
76 public:
81  TracksDistanceSorterAlgo(const std::string &name);
82 
87  bool Initialize() override;
88 
93  bool Process() override;
94 
99  bool Finalize() override;
100 
101 private:
102  // Parameters
103  std::string m_axisType;
106  std::vector<float> m_meanDistPlotsBins;
107 
108  std::shared_ptr<TH1I> m_meanDistXZ, m_meanDistYZ, m_meanDistXY;
110  EA::StorePtr m_evStore, m_globStore;
111 };
112 
113 } // namespace Herd
114 
115 #endif // HERD_TRACKSDISTANCESORTERALGO_H_
Herd::TracksDistanceSorterAlgo::m_evStore
EA::StorePtr m_evStore
Definition: TracksDistanceSorterAlgo.h:110
Herd::TracksDistanceSorterAlgo::m_controlPlots
bool m_controlPlots
Definition: TracksDistanceSorterAlgo.h:105
Herd::TracksDistanceSorterAlgo::m_meanDistSctYZ
std::shared_ptr< TH2I > m_meanDistSctYZ
Definition: TracksDistanceSorterAlgo.h:109
Herd::TracksDistanceSorterAlgo::TracksDistanceSorterAlgo
TracksDistanceSorterAlgo(const std::string &name)
Constructor.
Definition: TracksDistanceSorterAlgo.cpp:26
Herd::TracksDistanceSorterAlgo::m_meanDistXY
std::shared_ptr< TH1I > m_meanDistXY
Definition: TracksDistanceSorterAlgo.h:108
Herd
CssGeoParams.h CssGeoParams class declaration.
Definition: CaloPDCalibrationAlgo.h:22
Herd::TracksDistanceSorterAlgo::m_meanDistXZ
std::shared_ptr< TH1I > m_meanDistXZ
Definition: TracksDistanceSorterAlgo.h:108
Herd::TracksDistanceSorterAlgo::m_globStore
EA::StorePtr m_globStore
Definition: TracksDistanceSorterAlgo.h:110
Herd::TracksDistanceSorterAlgo::Finalize
bool Finalize() override
Finalizes the algo.
Definition: TracksDistanceSorterAlgo.cpp:302
Herd::TracksDistanceSorterAlgo::m_meanDistSctXZ
std::shared_ptr< TH2I > m_meanDistSctXZ
Definition: TracksDistanceSorterAlgo.h:109
Herd::TracksDistanceSorterAlgo::Initialize
bool Initialize() override
Initializes the algo.
Definition: TracksDistanceSorterAlgo.cpp:35
Herd::TracksDistanceSorterAlgo::m_axisType
std::string m_axisType
Definition: TracksDistanceSorterAlgo.h:103
Herd::TracksDistanceSorterAlgo::Process
bool Process() override
Processes an event.
Definition: TracksDistanceSorterAlgo.cpp:102
Herd::TracksDistanceSorterAlgo::m_meanDistSctXY
std::shared_ptr< TH2I > m_meanDistSctXY
Definition: TracksDistanceSorterAlgo.h:109
Herd::TracksDistanceSorterAlgo::m_maxDistance
float m_maxDistance
Definition: TracksDistanceSorterAlgo.h:104
Herd::TracksDistanceSorterAlgo::m_meanDistPlotsBins
std::vector< float > m_meanDistPlotsBins
Definition: TracksDistanceSorterAlgo.h:106
Herd::TracksDistanceSorterAlgo
Algorithm that sort tracks according to their proximity to the CALO axis.
Definition: TracksDistanceSorterAlgo.h:75
Herd::TracksDistanceSorterAlgo::m_meanDistYZ
std::shared_ptr< TH1I > m_meanDistYZ
Definition: TracksDistanceSorterAlgo.h:108