StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StBTofPidTraits.h
1 
5 /***************************************************************************
6  *
7  * $Id: StBTofPidTraits.h,v 2.2 2009/12/08 23:24:46 fine Exp $
8  *
9  * Author: Xin Dong, Nov 2008
10  ***************************************************************************
11  *
12  * Description:
13  *
14  ***************************************************************************
15  *
16  * $Log: StBTofPidTraits.h,v $
17  * Revision 2.2 2009/12/08 23:24:46 fine
18  * Fix issue #1748 http://www.star.bnl.gov/rt2/Ticket/Display.html?id=1748
19  *
20  * Revision 2.1 2008/12/22 20:31:00 ullrich
21  * Initial Revision.
22  *
23  *
24  ***************************************************************************/
25 #ifndef StBTofPidTraits_hh
26 #define StBTofPidTraits_hh
27 
28 #include "StTrackPidTraits.h"
29 #include "StBTofHit.h"
30 #include "StThreeVectorF.hh"
31 
33 public:
35  ~StBTofPidTraits();
36 
37  StBTofHit* tofHit();
38  const StBTofHit* tofHit() const;
39 
41  unsigned char matchFlag() const;
42  float yLocal() const;
43  float zLocal() const;
44  float thetaLocal() const;
45 
46  StThreeVectorF& position();
47  const StThreeVectorF& position() const;
48 
50  float tot() const;
51  float timeOfFlight() const;
52  float pathLength() const;
53  float beta() const;
54 
56  float sigmaElectron() const;
57  float sigmaPion() const;
58  float sigmaKaon() const;
59  float sigmaProton() const;
60 
61  float probElectron() const;
62  float probPion() const;
63  float probKaon() const;
64  float probProton() const;
65 
67  void setTofHit(StBTofHit*);
68 
69  void setMatchFlag(unsigned char);
70  void setYLocal(float);
71  void setZLocal(float);
72  void setThetaLocal(float);
73  void setPosition( const StThreeVectorF&);
74 
75  void setTimeOfFlight(float);
76  void setPathLength(float);
77  void setBeta(float);
78 
79  void setSigmaElectron(float);
80  void setSigmaPion(float);
81  void setSigmaKaon(float);
82  void setSigmaProton(float);
83 
84  void setProbElectron(float);
85  void setProbPion(float);
86  void setProbKaon(float);
87  void setProbProton(float);
88 
89 private:
90  // StBTofHit *mBTofHit; //$LINK
91 #ifdef __CINT__
92  StObjLink mBTofHit;
93 #else
94  StLink<StBTofHit> mBTofHit;
95 #endif //__CINT__
96 
97  UChar_t mMatchFlag;
98  Float_t mYLocal;
99  Float_t mZLocal;
100  Float_t mThetaLocal;
101  StThreeVectorF mPosition;
102 
103  Float_t mTimeOfFlight;
104  Float_t mPathLength;
105  Float_t mBeta;
106 
107  Float_t mSigmaElectron;
108  Float_t mSigmaPion;
109  Float_t mSigmaKaon;
110  Float_t mSigmaProton;
111 
112  Float_t mProbElectron;
113  Float_t mProbPion;
114  Float_t mProbKaon;
115  Float_t mProbProton;
116 
117  ClassDef(StBTofPidTraits,1)
118 };
119 
120 inline unsigned char StBTofPidTraits::matchFlag() const { return mMatchFlag; }
121 inline float StBTofPidTraits::yLocal() const { return mYLocal; }
122 inline float StBTofPidTraits::zLocal() const { return mZLocal; }
123 inline float StBTofPidTraits::thetaLocal() const { return mThetaLocal; }
124 inline float StBTofPidTraits::timeOfFlight() const { return mTimeOfFlight; }
125 inline float StBTofPidTraits::pathLength() const { return mPathLength; }
126 inline float StBTofPidTraits::beta() const { return mBeta; }
127 inline float StBTofPidTraits::sigmaElectron() const { return mSigmaElectron; }
128 inline float StBTofPidTraits::sigmaPion() const { return mSigmaPion; }
129 inline float StBTofPidTraits::sigmaKaon() const { return mSigmaKaon; }
130 inline float StBTofPidTraits::sigmaProton() const { return mSigmaProton; }
131 inline float StBTofPidTraits::probElectron() const { return mProbElectron; }
132 inline float StBTofPidTraits::probPion() const { return mProbPion; }
133 inline float StBTofPidTraits::probKaon() const { return mProbKaon; }
134 inline float StBTofPidTraits::probProton() const { return mProbProton; }
135 
136 inline void StBTofPidTraits::setMatchFlag(unsigned char flag) { mMatchFlag=flag; }
137 inline void StBTofPidTraits::setYLocal(float y) { mYLocal=y; }
138 inline void StBTofPidTraits::setZLocal(float z) { mZLocal=z; }
139 inline void StBTofPidTraits::setThetaLocal(float theta) { mThetaLocal=theta; }
140 inline void StBTofPidTraits::setTimeOfFlight(float t) { mTimeOfFlight=t; }
141 inline void StBTofPidTraits::setPathLength(float s) { mPathLength=s; }
142 inline void StBTofPidTraits::setBeta(float beta) { mBeta=beta; }
143 inline void StBTofPidTraits::setSigmaElectron(float sigma) { mSigmaElectron=sigma; }
144 inline void StBTofPidTraits::setSigmaPion(float sigma) { mSigmaPion=sigma; }
145 inline void StBTofPidTraits::setSigmaKaon(float sigma) { mSigmaKaon=sigma; }
146 inline void StBTofPidTraits::setSigmaProton(float sigma) { mSigmaProton=sigma; }
147 inline void StBTofPidTraits::setProbElectron(float prob) { mProbElectron=prob; }
148 inline void StBTofPidTraits::setProbPion(float prob) { mProbPion=prob; }
149 inline void StBTofPidTraits::setProbKaon(float prob) { mProbKaon=prob; }
150 inline void StBTofPidTraits::setProbProton(float prob) { mProbProton=prob; }
151 
152 #endif
float sigmaElectron() const
PID functions.
unsigned char matchFlag() const
Matching information.
float tot() const
timing for PID