ATLAS Offline Software
IntersectionPos.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef _VrtSecInclusive_IntersectionPos_H
6 #define _VrtSecInclusive_IntersectionPos_H
7 
8 
9 // Normal STL and physical vectors
10 #include <vector>
11 #include <string>
12 
13 class TTree;
14 
15 namespace VKalVrtAthena {
16 
17  //------------------------------------------------------------
19  public:
21  virtual ~IntersectionPos(){};
22  virtual void clear() = 0;
23  virtual void setBranchAddress( TTree*, const char* collectionName = "RecoTrk" ) = 0;
24  virtual int bec() = 0;
25  virtual const std::string& name() = 0;
26  virtual std::vector<double>* x() = 0;
27  virtual std::vector<double>* y() = 0;
28  virtual std::vector<double>* z() = 0;
29  enum { barrel, endcap };
30  };
31 
32 
33  //------------------------------------------------------------
35  public:
36  IntersectionPos_barrel(const char* name, const double& r);
37  virtual ~IntersectionPos_barrel();
40  void clear();
41  void setBranchAddress( TTree*, const char* collectionName = "RecoTrk" );
42  int bec();
43  inline const std::string& name() { return m_name; }
44  inline std::vector<double>* x() { return m_x; }
45  inline std::vector<double>* y() { return m_y; }
46  inline std::vector<double>* z() { return m_z; }
47  inline const double& radius() { return m_radius; }
48  private:
49  std::string m_name;
50  std::vector<double>* m_x;
51  std::vector<double>* m_y;
52  std::vector<double>* m_z;
53  const double m_radius;
54  };
55 
56 
57  //------------------------------------------------------------
59  public:
60  IntersectionPos_endcap(const char* name, const double& zpos, const double& rmin, const double& rmax);
61  virtual ~IntersectionPos_endcap();
64  void clear();
65  void setBranchAddress( TTree*, const char* collectionName = "RecoTrk" );
66  int bec();
67  inline const std::string& name() { return m_name; }
68  inline std::vector<double>* x() { return m_x; }
69  inline std::vector<double>* y() { return m_y; }
70  inline std::vector<double>* z() { return m_z; }
71  inline const double& zpos() { return m_zpos; }
72  inline const double& rmin() { return m_rmin; }
73  inline const double& rmax() { return m_rmax; }
74  private:
75  std::string m_name;
76  std::vector<double>* m_x;
77  std::vector<double>* m_y;
78  std::vector<double>* m_z;
79  const double m_zpos;
80  const double m_rmin;
81  const double m_rmax;
82  };
83 
84 } // end of namespace bracket
85 
86 
87 #endif /* _VrtSecInclusive_IntersectionPos_H */
beamspotman.r
def r
Definition: beamspotman.py:676
VKalVrtAthena::IntersectionPos_barrel
Definition: IntersectionPos.h:34
VKalVrtAthena::IntersectionPos::IntersectionPos
IntersectionPos()
Definition: IntersectionPos.h:20
VKalVrtAthena::IntersectionPos_endcap::rmax
const double & rmax()
Definition: IntersectionPos.h:73
VKalVrtAthena::IntersectionPos_endcap::m_rmax
const double m_rmax
Definition: IntersectionPos.h:81
VKalVrtAthena::IntersectionPos
Definition: IntersectionPos.h:18
VKalVrtAthena::IntersectionPos::z
virtual std::vector< double > * z()=0
VKalVrtAthena::IntersectionPos_endcap::IntersectionPos_endcap
IntersectionPos_endcap(const char *name, const double &zpos, const double &rmin, const double &rmax)
Definition: IntersectionPos.cxx:24
VKalVrtAthena::IntersectionPos_barrel::m_y
std::vector< double > * m_y
Definition: IntersectionPos.h:51
VKalVrtAthena::IntersectionPos_barrel::IntersectionPos_barrel
IntersectionPos_barrel(const char *name, const double &r)
Definition: IntersectionPos.cxx:11
VKalVrtAthena::IntersectionPos_barrel::m_radius
const double m_radius
Definition: IntersectionPos.h:53
VKalVrtAthena::IntersectionPos::setBranchAddress
virtual void setBranchAddress(TTree *, const char *collectionName="RecoTrk")=0
VKalVrtAthena::IntersectionPos_endcap::m_rmin
const double m_rmin
Definition: IntersectionPos.h:80
VKalVrtAthena::IntersectionPos_barrel::y
std::vector< double > * y()
Definition: IntersectionPos.h:45
VKalVrtAthena::IntersectionPos_barrel::x
std::vector< double > * x()
Definition: IntersectionPos.h:44
VKalVrtAthena::IntersectionPos_endcap::name
const std::string & name()
Definition: IntersectionPos.h:67
VKalVrtAthena::IntersectionPos_endcap::bec
int bec()
Definition: IntersectionPos.cxx:33
VKalVrtAthena::IntersectionPos_barrel::m_z
std::vector< double > * m_z
Definition: IntersectionPos.h:52
VKalVrtAthena::IntersectionPos::endcap
@ endcap
Definition: IntersectionPos.h:29
VKalVrtAthena::IntersectionPos_barrel::IntersectionPos_barrel
IntersectionPos_barrel(const IntersectionPos_barrel &)=delete
VKalVrtAthena::IntersectionPos_endcap::m_x
std::vector< double > * m_x
Definition: IntersectionPos.h:76
VKalVrtAthena::IntersectionPos_barrel::z
std::vector< double > * z()
Definition: IntersectionPos.h:46
VKalVrtAthena
Definition: AANT_Tools.cxx:25
VKalVrtAthena::IntersectionPos_endcap::~IntersectionPos_endcap
virtual ~IntersectionPos_endcap()
Definition: IntersectionPos.cxx:26
VKalVrtAthena::IntersectionPos_barrel::bec
int bec()
Definition: IntersectionPos.cxx:20
VKalVrtAthena::IntersectionPos::bec
virtual int bec()=0
VKalVrtAthena::IntersectionPos_barrel::m_name
std::string m_name
Definition: IntersectionPos.h:49
VKalVrtAthena::IntersectionPos_endcap::clear
void clear()
Definition: IntersectionPos.cxx:27
VKalVrtAthena::IntersectionPos_endcap
Definition: IntersectionPos.h:58
VKalVrtAthena::IntersectionPos::~IntersectionPos
virtual ~IntersectionPos()
Definition: IntersectionPos.h:21
VKalVrtAthena::IntersectionPos_barrel::operator=
IntersectionPos_barrel & operator=(const IntersectionPos_barrel &)=delete
VKalVrtAthena::IntersectionPos_endcap::setBranchAddress
void setBranchAddress(TTree *, const char *collectionName="RecoTrk")
Definition: IntersectionPos.cxx:28
VKalVrtAthena::IntersectionPos_barrel::radius
const double & radius()
Definition: IntersectionPos.h:47
VKalVrtAthena::IntersectionPos_endcap::m_zpos
const double m_zpos
Definition: IntersectionPos.h:79
VKalVrtAthena::IntersectionPos::y
virtual std::vector< double > * y()=0
VKalVrtAthena::IntersectionPos::name
virtual const std::string & name()=0
VKalVrtAthena::IntersectionPos_endcap::m_name
std::string m_name
Definition: IntersectionPos.h:75
VKalVrtAthena::IntersectionPos_endcap::x
std::vector< double > * x()
Definition: IntersectionPos.h:68
VKalVrtAthena::IntersectionPos_endcap::IntersectionPos_endcap
IntersectionPos_endcap(const IntersectionPos_endcap &)=delete
VKalVrtAthena::IntersectionPos_endcap::zpos
const double & zpos()
Definition: IntersectionPos.h:71
VKalVrtAthena::IntersectionPos_barrel::~IntersectionPos_barrel
virtual ~IntersectionPos_barrel()
Definition: IntersectionPos.cxx:13
VKalVrtAthena::IntersectionPos_barrel::clear
void clear()
Definition: IntersectionPos.cxx:14
VKalVrtAthena::IntersectionPos_barrel::name
const std::string & name()
Definition: IntersectionPos.h:43
VKalVrtAthena::IntersectionPos::clear
virtual void clear()=0
VKalVrtAthena::IntersectionPos_barrel::m_x
std::vector< double > * m_x
Definition: IntersectionPos.h:50
VKalVrtAthena::IntersectionPos_endcap::y
std::vector< double > * y()
Definition: IntersectionPos.h:69
VKalVrtAthena::IntersectionPos_endcap::rmin
const double & rmin()
Definition: IntersectionPos.h:72
VKalVrtAthena::IntersectionPos::barrel
@ barrel
Definition: IntersectionPos.h:29
VKalVrtAthena::IntersectionPos_endcap::z
std::vector< double > * z()
Definition: IntersectionPos.h:70
VKalVrtAthena::IntersectionPos_barrel::setBranchAddress
void setBranchAddress(TTree *, const char *collectionName="RecoTrk")
Definition: IntersectionPos.cxx:15
VKalVrtAthena::IntersectionPos_endcap::m_z
std::vector< double > * m_z
Definition: IntersectionPos.h:78
VKalVrtAthena::IntersectionPos_endcap::operator=
IntersectionPos_endcap & operator=(const IntersectionPos_endcap &)=delete
VKalVrtAthena::IntersectionPos::x
virtual std::vector< double > * x()=0
VKalVrtAthena::IntersectionPos_endcap::m_y
std::vector< double > * m_y
Definition: IntersectionPos.h:77