HerdSoftware  0.1.1
FitClusteringAlgo.h
Go to the documentation of this file.
1 /*
2  * FitClusteringAlgo.h
3  *
4  * Created on: 7 Apr 2020
5  * Author: Valerio Formato
6  */
7 
8 #ifndef HERD_FitClusteringAlgo_H_
9 #define HERD_FitClusteringAlgo_H_
10 
11 // HerdSoftware headers
16 #include "dataobjects/FitHits.h"
17 
18 // EventAnalysis headers
19 #include "algorithm/Algorithm.h"
20 
21 using namespace EA;
22 
23 namespace Herd {
24 
25 // clang-format off
63 // clang-format on
64 class FitClusteringAlgo : public Algorithm {
65 public:
70  FitClusteringAlgo(const std::string &name);
71 
76  bool Initialize() override;
77 
82  bool Process() override;
83 
92  std::vector<std::string> FreeObjects(const std::vector<std::string> &objs, Memory::Status memStatus) override;
93 
94 private:
95  // Algorithm parameters
96  float _snThreshold;
97  float _snSeed;
98 
99  // Class members
101  observer_ptr<FitGeoParamsColl> _fitGeoParamsColl;
102  observer_ptr<FitChannelInfoColl> _fitChannelInfoColl;
103  StorePtr _evStore, _globStore;
104 
105  // other stuff
106  bool _hasChannelInfo = false;
107 
108  std::vector<Cluster> _Clusterize(std::vector<Hit> &hits, const FitGeoParams &geoParams);
109  std::vector<Cluster> _Clusterize(std::vector<Hit> &hits, const FitGeoParams &geoParams,
110  const FitChannelInfo &channelInfo);
111 };
112 
113 } // namespace Herd
114 
115 #endif /* HERD_FitClusteringAlgo_H_ */
CssGeoParams.h CssGeoParams class declaration.
Definition: CaloPDCalibrationAlgo.h:24
Definition: FitChannelInfo.h:19
observer_ptr< FitGeoParamsColl > _fitGeoParamsColl
Definition: FitClusteringAlgo.h:101
Data structure for single silicon layer geometry parameters.
Definition: FitGeoParams.h:64
observer_ptr< FitChannelInfoColl > _fitChannelInfoColl
Definition: FitClusteringAlgo.h:102
float _snSeed
Definition: FitClusteringAlgo.h:97
StorePtr _globStore
Definition: FitClusteringAlgo.h:103
Collection of containers for the clusters of all the FIT detectors.
Definition: FitClustersColl.h:23
FitClustersColl _fitClustersColl
Definition: FitClusteringAlgo.h:100
Algorithm that clusters the Monte Carlo FIT detector hits. algorithms/clustering/FitClusteringAlgo.h.
Definition: FitClusteringAlgo.h:64
float _snThreshold
Definition: FitClusteringAlgo.h:96