StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StMuETofPidTraits.h
1 /***************************************************************************
2  *
3  * $Id: StMuETofPidTraits.h,v 1.1 2019/02/21 13:32:54 jdb Exp $
4  *
5  * Author: Florian Seck, November 2018
6  ***************************************************************************
7  *
8  * Description: Data class for storing eTOF PID information for tracks
9  * matched to eTOF hits
10  *
11  ***************************************************************************
12  *
13  * $Log: StMuETofPidTraits.h,v $
14  * Revision 1.1 2019/02/21 13:32:54 jdb
15  * Inclusion of ETOF MuDst code. This code adds support for the full set of ETOF data which includes EtofDigi, EtofHit, EtofHeader. The code essentially copies similar structures from StEvent and additionally rebuilds the maps between Digis and Hits. Accessor methods are added based on the pattern from BTOF to provide access to data at various levels. The code for accessing the PID traits provided by ETOF is also provided
16  *
17  *
18  ***************************************************************************/
19 #ifndef STMUETOFPIDTRAITS_H
20 #define STMUETOFPIDTRAITS_H
21 
22 #include "StThreeVectorF.hh"
23 
24 class StETofPidTraits;
25 
26 
27 class StMuETofPidTraits : public TObject {
28 public:
31 
32  StETofPidTraits* createETofPidTraits() const;
33 
35  unsigned short matchFlag() const;
36  float localX() const;
37  float localY() const;
38  float thetaLocal() const;
39  float deltaX() const;
40  float deltaY() const;
41 
42  StThreeVectorF& position();
43  const StThreeVectorF& position() const;
44 
46  float timeOfFlight() const;
47  float pathLength() const;
48  float beta() const;
49 
51 
52 
54  void setETofPidTraits( const StETofPidTraits* );
55 
56  void setMatchFlag( const unsigned short& );
57 
58  void setLocalX( const float& );
59  void setLocalY( const float& );
60  void setThetaLocal( const float& );
61  void setDeltaX( const float& );
62  void setDeltaY( const float& );
63 
64  void setPosition( const StThreeVectorF& );
65 
66  void setTimeOfFlight( const float& );
67  void setPathLength( const float& );
68  void setBeta( const float& );
69 
70 private:
71  UShort_t mMatchFlag;
72  Float_t mLocalX;
73  Float_t mLocalY;
74  Float_t mThetaLocal;
75  StThreeVectorF mPosition;
76 
77  Float_t mDeltaX; // deltaX between matched track-hit pair
78  Float_t mDeltaY; // deltaY between matched track-hit pair
79 
80  Float_t mTimeOfFlight; // measured time-of-flight
81  Float_t mPathLength; // path length obtained from track extrapolation
82  Float_t mBeta;
83 
84 
85 
86  ClassDef( StMuETofPidTraits, 1 )
87 };
88 
89 inline unsigned short StMuETofPidTraits::matchFlag() const { return mMatchFlag; }
90 inline float StMuETofPidTraits::localX() const { return mLocalX; }
91 inline float StMuETofPidTraits::localY() const { return mLocalY; }
92 inline float StMuETofPidTraits::deltaX() const { return mDeltaX; }
93 inline float StMuETofPidTraits::deltaY() const { return mDeltaY; }
94 inline float StMuETofPidTraits::thetaLocal() const { return mThetaLocal; }
95 inline float StMuETofPidTraits::timeOfFlight() const { return mTimeOfFlight; }
96 inline float StMuETofPidTraits::pathLength() const { return mPathLength; }
97 inline float StMuETofPidTraits::beta() const { return mBeta; }
98 
99 inline void StMuETofPidTraits::setMatchFlag( const unsigned short& flag ) { mMatchFlag = flag; }
100 inline void StMuETofPidTraits::setLocalX( const float& x ) { mLocalX = x; }
101 inline void StMuETofPidTraits::setLocalY( const float& y ) { mLocalY = y; }
102 inline void StMuETofPidTraits::setDeltaX( const float& x ) { mDeltaX = x; }
103 inline void StMuETofPidTraits::setDeltaY( const float& y ) { mDeltaY = y; }
104 inline void StMuETofPidTraits::setThetaLocal( const float& theta ) { mThetaLocal = theta; }
105 inline void StMuETofPidTraits::setTimeOfFlight( const float& t ) { mTimeOfFlight = t; }
106 inline void StMuETofPidTraits::setPathLength( const float& s ) { mPathLength = s; }
107 inline void StMuETofPidTraits::setBeta( const float& beta ) { mBeta = beta; }
108 
109 #endif
void setETofPidTraits(const StETofPidTraits *)
PID functions – to be added (?)
float timeOfFlight() const
timing for PID
unsigned short matchFlag() const
matching information