eic-smear  1.0.3
A collection of ROOT classes for Monte Carlo events and a fast-smearing code simulating detector effects for the Electron-Ion Collider task force
Pid.h
Go to the documentation of this file.
1 
10 #ifndef INCLUDE_EICSMEAR_ERHIC_PID_H_
11 #define INCLUDE_EICSMEAR_ERHIC_PID_H_
12 
13 #include <Rtypes.h>
14 
15 class TParticlePDG;
16 
17 namespace erhic {
18 
22 class Pid {
23  public:
28  static Int_t InvalidCode();
29 
34  Pid(Int_t pdg = Pid::InvalidCode());
35 
37  virtual ~Pid();
38 
40  Int_t Code() const;
41 
46  void Set(Int_t pdg);
47 
53  TParticlePDG* Info() const;
54 
59  operator Int_t() const;
60 
65  bool operator==(Int_t i) const;
66 
71  bool operator<(Int_t i) const;
72 
77  bool operator>(Int_t i) const;
78 
83  bool operator!=(Int_t i) const;
84 
89  bool operator<=(Int_t i) const;
90 
95  bool operator>=(Int_t i) const;
96 
97  protected:
98  Int_t mCode;
99 
100  ClassDef(erhic::Pid, 1)
101 };
102 
103 inline Pid::operator Int_t() const { return mCode; }
104 
105 inline Int_t Pid::Code() const { return mCode; }
106 
107 inline void Pid::Set(Int_t code) { mCode = code; }
108 
109 inline bool Pid::operator==(Int_t i) const { return mCode == i; }
110 
111 inline bool Pid::operator<(Int_t i) const { return mCode < i; }
112 
113 inline bool Pid::operator>(Int_t i) const { return mCode > i; }
114 
115 inline bool Pid::operator!=(Int_t i) const { return !operator==(i); }
116 
117 inline bool Pid::operator<=(Int_t i) const { return mCode <= i; }
118 
119 inline bool Pid::operator>=(Int_t i) const { return mCode >= i; }
120 
121 } // namespace erhic
122 
123 #endif // INCLUDE_EICSMEAR_ERHIC_PID_H_
bool operator==(Int_t i) const
Definition: Pid.h:109
Int_t Code() const
Definition: Pid.h:105
bool operator>=(Int_t i) const
Definition: Pid.h:119
Int_t mCode
The integer PDG code.
Definition: Pid.h:98
bool operator<(Int_t i) const
Definition: Pid.h:111
bool operator>(Int_t i) const
Definition: Pid.h:113
virtual ~Pid()
Definition: Pid.cxx:24
Pid(Int_t pdg=Pid::InvalidCode())
Definition: Pid.cxx:20
static Int_t InvalidCode()
Definition: Pid.cxx:44
bool operator!=(Int_t i) const
Definition: Pid.h:115
bool operator<=(Int_t i) const
Definition: Pid.h:117
TParticlePDG * Info() const
Definition: Pid.cxx:31
void Set(Int_t pdg)
Definition: Pid.h:107
Definition: Pid.h:22