00001
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef StMtdHit_hh
00021 #define StMtdHit_hh
00022
00023 #include <Stiostream.h>
00024 #include "StObject.h"
00025 #include "StContainers.h"
00026
00027 class StTrack;
00028
00029 class StMtdHit : public StObject {
00030 public:
00031 StMtdHit();
00032 ~StMtdHit();
00033
00034 int backleg() const;
00035 int module() const;
00036 int cell() const;
00037 pair<double,double> leadingEdgeTime() const;
00038 pair<double,double> trailingEdgeTime() const;
00039 pair<double,double> tot() const;
00040 double tof() const;
00041
00042 StTrack* associatedTrack();
00043 const StTrack* associatedTrack() const;
00044
00045 int idTruth() const;
00046 int qaTruth() const;
00047
00048 void setBackleg(unsigned char);
00049 void setModule(unsigned char);
00050 void setCell(unsigned char);
00051 void setLeadingEdgeTime(pair<double,double>);
00052 void setTrailingEdgeTime(pair<double,double>);
00053 void setTof(double);
00054 void setAssociatedTrack(StTrack*);
00055 void setIdTruth(Int_t idtru, Int_t qatru=0);
00056
00057 protected:
00058 UChar_t mBackLeg;
00059 UChar_t mModule;
00060 UChar_t mCell;
00061 pair<Double_t,Double_t> mLeadingEdgeTime;
00062 pair<Double_t,Double_t> mTrailingEdgeTime;
00063
00064 #ifdef __CINT__
00065 StObjLink mAssociatedTrack;
00066 #else
00067 StLink<StTrack> mAssociatedTrack;
00068 #endif //__CINT__
00069 UShort_t mIdTruth;
00070 UShort_t mQuality;
00071
00072 ClassDef(StMtdHit,1)
00073 };
00074
00075 ostream& operator<<(ostream&, const StMtdHit&);
00076
00077 #endif