StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StMuMtdPidTraits.h
1 #ifndef StMuMtdPidTraits_hh
2 #define StMuMtdPidTraits_hh
3 
4 #include "StTrackPidTraits.h"
5 #include "StThreeVectorF.hh"
6 class StMtdPidTraits;
7 class StMuMtdHit;
8 
9 class StMuMtdPidTraits : public TObject {
10 public:
13 
14  StMtdPidTraits* createMtdPidTraits() const;
15 
17  unsigned char matchFlag() const;
18  float yLocal() const;
19  float zLocal() const;
20  float thetaLocal() const;
21  float deltaY() const;
22  float deltaZ() const;
23 
24  StThreeVectorF& position();
25  const StThreeVectorF& position() const;
26 
28  float timeOfFlight() const;
29  float pathLength() const;
30  float beta() const;
31  float expTimeOfFlight() const;
32 
34  float sigmaMuon() const;
35  float probMuon() const;
36 
38  void setMtdPidTraits(const StMtdPidTraits*);
39 
40  void setMatchFlag(unsigned char);
41  void setYLocal(float);
42  void setZLocal(float);
43  void setThetaLocal(float);
44  void setPosition( const StThreeVectorF&);
45  void setDeltaY(float);
46  void setDeltaZ(float);
47 
48  void setTimeOfFlight(float);
49  void setPathLength(float);
50  void setBeta(float);
51 
52  void setSigmaMuon(float);
53 
54  void setProbMuon(float);
55 
56  void setExpTimeOfFlight(float);
57 private:
58 
59  UChar_t mMatchFlag;
60  Float_t mYLocal;
61  Float_t mZLocal;
62  Float_t mThetaLocal;
63  StThreeVectorF mPosition;
64 
65  Float_t mTimeOfFlight; // Measured time-of-flight
66  Float_t mPathLength; // Path length obtained from track extrapolation
67  Float_t mBeta;
68 
69  Float_t mSigmaMuon;
70  Float_t mProbMuon;
71 
72  Float_t mExpTimeOfFlight; // Expected time-of-flight obtained from track extrapolation
73  Float_t mDeltaY; // DeltaY between matched track-hit pair
74  Float_t mDeltaZ; // DeltaZ between matched track-hit pair
75 
76  ClassDef(StMuMtdPidTraits,3)
77 };
78 
79 inline unsigned char StMuMtdPidTraits::matchFlag() const { return mMatchFlag; }
80 inline float StMuMtdPidTraits::yLocal() const { return mYLocal; }
81 inline float StMuMtdPidTraits::zLocal() const { return mZLocal; }
82 inline float StMuMtdPidTraits::deltaY() const { return mDeltaY; }
83 inline float StMuMtdPidTraits::deltaZ() const { return mDeltaZ; }
84 inline float StMuMtdPidTraits::thetaLocal() const { return mThetaLocal; }
85 inline float StMuMtdPidTraits::timeOfFlight() const { return mTimeOfFlight; }
86 inline float StMuMtdPidTraits::pathLength() const { return mPathLength; }
87 inline float StMuMtdPidTraits::beta() const { return mBeta; }
88 inline float StMuMtdPidTraits::sigmaMuon() const { return mSigmaMuon; }
89 inline float StMuMtdPidTraits::probMuon() const { return mProbMuon; }
90 inline float StMuMtdPidTraits::expTimeOfFlight() const {return mExpTimeOfFlight; }
91 
92 inline void StMuMtdPidTraits::setMatchFlag(unsigned char flag) { mMatchFlag=flag; }
93 inline void StMuMtdPidTraits::setYLocal(float y) { mYLocal=y; }
94 inline void StMuMtdPidTraits::setZLocal(float z) { mZLocal=z; }
95 inline void StMuMtdPidTraits::setDeltaY(float y) { mDeltaY=y; }
96 inline void StMuMtdPidTraits::setDeltaZ(float z) { mDeltaZ=z; }
97 inline void StMuMtdPidTraits::setThetaLocal(float theta) { mThetaLocal=theta; }
98 inline void StMuMtdPidTraits::setTimeOfFlight(float t) { mTimeOfFlight=t; }
99 inline void StMuMtdPidTraits::setPathLength(float s) { mPathLength=s; }
100 inline void StMuMtdPidTraits::setBeta(float beta) { mBeta=beta; }
101 inline void StMuMtdPidTraits::setSigmaMuon(float sigma) { mSigmaMuon=sigma; }
102 inline void StMuMtdPidTraits::setProbMuon(float prob) { mProbMuon=prob; }
103 inline void StMuMtdPidTraits::setExpTimeOfFlight(float time) { mExpTimeOfFlight=time; }
104 #endif
float sigmaMuon() const
PID functions.
unsigned char matchFlag() const
Matching information.
void setMtdPidTraits(const StMtdPidTraits *)
Setters.
float timeOfFlight() const
timing for PID