HerdSoftware  0.1.1
StkIntersections.h
Go to the documentation of this file.
1 /*
2  * StkIntersections.h
3  *
4  * Created on: 24 October 2019
5  * Author: Lorenzo Pacini
6  */
7 
10 #ifndef HERD_STKINTERSECTIONS_H_
11 #define HERD_STKINTERSECTIONS_H_
12 
13 // HerdSoftware headers
14 #include "common/DefaultValues.h"
15 #include "dataobjects/Point.h"
16 
17 #ifdef HS_USE_ROOT
18 #include "Rtypes.h"
19 #endif
20 
21 // c++ headers
22 #include <vector>
23 
24 namespace Herd {
25 
31 public:
37 
39  virtual ~StkIntersection() = default;
40 
45  void Reset() {
46  point = DefaultValue(point);
47  side = DefaultValue(side);
48  layer = DefaultValue(layer);
49  }
50 
53  unsigned short layer;
54 
55 #ifdef HS_USE_ROOT
56  ClassDef(StkIntersection, 1)
57 #endif
58 };
59 
65 public:
72 
74  virtual ~StkIntersections() = default;
75 
80  void Reset() {
81  intersections.clear();
82  trackLengthStkCm = 0;
83  trackLengthStkX0 = 0;
84  }
85 
86  std::vector<StkIntersection> intersections;
89 
90 #ifdef HS_USE_ROOT
91  ClassDef(StkIntersections, 1)
92 #endif
93 };
94 
95 } // namespace Herd
96 
97 #endif /* HERD_STKINTERSECTIONS_H_ */
CssGeoParams.h CssGeoParams class declaration.
Definition: CaloPDCalibrationAlgo.h:24
A container of information about a interesection between a track and a STK layer. ...
Definition: StkIntersections.h:30
float trackLengthStkX0
Track length in STK, measured in X0, including both passive and active materials (TBD).
Definition: StkIntersections.h:88
virtual ~StkIntersection()=default
Virtual destructor.
#define DEFAULT_INIT(x)
Definition: DefaultValues.h:23
A container of information about interesections between a track and the STK.
Definition: StkIntersections.h:64
std::vector< StkIntersection > intersections
Intersections of a track in STK, [0] is the entrance.
Definition: StkIntersections.h:86
Side
Aliases for the five sides. RefFrame.h common/RefFrame.h.
Definition: RefFrame.h:104
StkIntersections()
Default constructor.
Definition: StkIntersections.h:71
unsigned short layer
Number of the layers (0 is the external layer in each side).
Definition: StkIntersections.h:53
A class describing a vector in 3D space.
Definition: Vec3D.h:33
void Reset()
Resets StkIntersection with default values.
Definition: StkIntersections.h:45
Point point
Intersection point.
Definition: StkIntersections.h:51
void Reset()
Resets StkIntersections with default values.
Definition: StkIntersections.h:80
StkIntersection()
Constructs a new StkIntersection object.
Definition: StkIntersections.h:36
float trackLengthStkCm
Track length in STK, measured in cm, including both passive and active materials (TBD).
Definition: StkIntersections.h:87
RefFrame::Side side
Side of the STK layer.
Definition: StkIntersections.h:52