HerdSoftware  0.1.1
Track.h
Go to the documentation of this file.
1 /*
2  * Track.h
3  *
4  * Created on: 19 Oct 2018
5  * Author: Nicola Mori
6  */
7 
10 #ifndef HERD_TRACK_H_
11 #define HERD_TRACK_H_
12 
13 // HerdSoftware headers
14 #include "dataobjects/CaloAxis.h"
17 #include "dataobjects/Line.h"
18 #include "dataobjects/Point.h"
23 #include "dataobjects/Track2D.h"
24 
25 #ifdef HS_USE_ROOT
26 #include "Rtypes.h"
27 #endif
28 
29 namespace Herd {
30 
38 class Track {
39 public:
41  Track() : m_line{} {}
42 
49  Track(Line line) : m_line(std::move(line)){};
50 
57  Track(const CaloAxis &caloAxis) : m_caloAxis{caloAxis}, m_line{caloAxis.Axis()} {};
58 
71  Track(const Track2D &proj1, RefFrame::View view1, const Track2D &proj2, RefFrame::View view2);
72 
74  virtual ~Track() = default;
75 
80  const Herd::Line &GetLine() const { return m_line; }
81 
88  void AddClusters(const StkClustersColl &clusterColl);
89 
96  void AddClusters(const ScdClustersColl &clusterColl);
97 
104  void AddClusters(const FitClustersColl &clusterColl);
105 
112  void AddCaloAxis(const CaloAxis &caloAxis) { m_caloAxis = caloAxis; };
113 
119 
125 
131 
136  const CaloAxis &GetCaloAxis() const { return m_caloAxis; }
137 
138 private:
143 
145 
146 #ifdef HS_USE_ROOT
147  ClassDef(Track, 1)
148 #endif
149 };
150 
151 } // namespace Herd
152 
153 #endif /* HERD_TRACK_H_ */
CssGeoParams.h CssGeoParams class declaration.
Definition: CaloPDCalibrationAlgo.h:24
Container of information about the Calorimeter Shower Axis.
Definition: CaloAxis.h:46
const ScdClustersColl & GetScdClusters() const
Returns the SCD clusters associated to the track.
Definition: Track.h:124
virtual ~Track()=default
Virtual destructor.
void AddCaloAxis(const CaloAxis &caloAxis)
Add calo hits to the current collection.
Definition: Track.h:112
Class describing a line in the 3D space.
Definition: Line.h:32
Track(Line line)
Constructor.
Definition: Track.h:49
FitClustersColl m_fitClusterColl
Definition: Track.h:142
Class describing a track.
Definition: Track2D.h:34
Track(const CaloAxis &caloAxis)
Constructor.
Definition: Track.h:57
ScdClustersColl m_scdClusterColl
Definition: Track.h:141
const CaloAxis & GetCaloAxis() const
Returns the calorimeter axis associated to the track.
Definition: Track.h:136
StkClustersColl m_stkClusterColl
Definition: Track.h:140
Class describing a track.
Definition: Track.h:38
Collection of containers for the clusters of all the FIT detectors.
Definition: FitClustersColl.h:23
void AddClusters(const StkClustersColl &clusterColl)
Add STK clusters to the current collection.
Definition: Track.cpp:46
const StkClustersColl & GetStkClusters() const
Returns the STK clusters associated to the track.
Definition: Track.h:118
Herd::Line m_line
Definition: Track.h:144
View
Aliases for the three 2D projection planes. RefFrame.h common/RefFrame.h.
Definition: RefFrame.h:88
const FitClustersColl & GetFitClusters() const
Returns the FIT clusters associated to the track.
Definition: Track.h:130
Track()
Default constructor.
Definition: Track.h:41
Collection of containers for the clusters of all the SCD detectors.
Definition: ScdClustersColl.h:24
Collection of containers for the clusters of all the STK detectors.
Definition: StkClustersColl.h:24
CaloAxis m_caloAxis
Definition: Track.h:139
const Herd::Line & GetLine() const
Returns the line associated to the track.
Definition: Track.h:80