LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
Slice.h
Go to the documentation of this file.
1 //
3 // \brief Definition of slice object for LArSoft
4 //
5 // \author tjyang@fnal.gov
6 //
8 
9 #ifndef RB_SLICE_H
10 #define RB_SLICE_H
11 
13 
14 namespace recob {
15 
16  class Slice {
17 
18  public:
21 
22  Slice(); // Needed for ROOT persistency.
23 
24  Slice(int id,
25  Point_t center,
26  Vector_t direction,
27  Point_t end0Pos,
28  Point_t end1Pos,
29  float aspectratio,
30  float charge)
31  : fID(id)
32  , fCenter(center)
33  , fDirection(direction)
34  , fEnd0Pos(end0Pos)
35  , fEnd1Pos(end1Pos)
36  , fAspectRatio(aspectratio)
37  , fCharge(charge)
38  {}
39 
40  int ID() const { return fID; }
41  Point_t Center() const { return fCenter; }
42  Vector_t Direction() const { return fDirection; }
43  Point_t End0Pos() const { return fEnd0Pos; }
44  Point_t End1Pos() const { return fEnd1Pos; }
45  float AspectRatio() const { return fAspectRatio; }
46  float Charge() const { return fCharge; }
47 
48  void SetID(const int id) { fID = id; }
49  void SetCenter(const Point_t center) { fCenter = center; }
50  void SetDirection(const Vector_t direction) { fDirection = direction; }
51  void SetEnd0Pos(const Point_t endpos) { fEnd0Pos = endpos; }
52  void SetEnd1Pos(const Point_t endpos) { fEnd1Pos = endpos; }
53  void SetAspectRatio(const float aspectratio) { fAspectRatio = aspectratio; }
54  void SetCharge(const float charge) { fCharge = charge; }
55 
56  private:
57  int fID;
62  float
64  float fCharge;
65  };
66 }
67 #endif // RB_SLICE_H
void SetAspectRatio(const float aspectratio)
Definition: Slice.h:53
Vector_t fDirection
direction from a linear fit
Definition: Slice.h:59
Reconstruction base classes.
Point_t fCenter
Center of the slice for flash matching.
Definition: Slice.h:58
float Charge() const
Definition: Slice.h:46
float fAspectRatio
absolute value of the linear correlation coefficient (0 = round blob, 1 = line)
Definition: Slice.h:63
Vector_t Direction() const
Definition: Slice.h:42
Point_t fEnd1Pos
Position of the other end.
Definition: Slice.h:61
void SetEnd0Pos(const Point_t endpos)
Definition: Slice.h:51
tracking::Vector_t Vector_t
Definition: Slice.h:20
void SetDirection(const Vector_t direction)
Definition: Slice.h:50
void SetCharge(const float charge)
Definition: Slice.h:54
void SetEnd1Pos(const Point_t endpos)
Definition: Slice.h:52
Slice(int id, Point_t center, Vector_t direction, Point_t end0Pos, Point_t end1Pos, float aspectratio, float charge)
Definition: Slice.h:24
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< Coord_t >, ROOT::Math::GlobalCoordinateSystemTag > Vector_t
Type for representation of momenta in 3D space. See recob::tracking::Coord_t for more details on the ...
Definition: TrackingTypes.h:31
void SetID(const int id)
Definition: Slice.h:48
int fID
id for this slice
Definition: Slice.h:57
float fCharge
Definition: Slice.h:64
int ID() const
Definition: Slice.h:40
Point_t Center() const
Definition: Slice.h:41
Point_t End1Pos() const
Definition: Slice.h:44
Point_t fEnd0Pos
Position of a SpacePoint at one end of the slice.
Definition: Slice.h:60
Point_t End0Pos() const
Definition: Slice.h:43
tracking::Point_t Point_t
Definition: Slice.h:19
float AspectRatio() const
Definition: Slice.h:45
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< Coord_t >, ROOT::Math::GlobalCoordinateSystemTag > Point_t
Type for representation of position in physical 3D space. See recob::tracking::Coord_t for more detai...
Definition: TrackingTypes.h:27
void SetCenter(const Point_t center)
Definition: Slice.h:49