00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032 #ifndef StHbtTTreeEvent_hh
00033 #define StHbtTTreeEvent_hh
00034
00035
00036
00037
00038
00039 #include "TObject.h"
00040 #include "TClonesArray.h"
00041
00042 class StHbtEvent;
00043 class StHbtTrack;
00044 class StHbtV0;
00045 class StHbtXi;
00046 class StHbtKink;
00047 class StHbtEventCut;
00048 class StHbtTrackCut;
00049 class StHbtV0Cut;
00050 class StHbtXiCut;
00051 class StHbtKinkCut;
00052
00053 class StHbtTTreeEvent : public TObject {
00054 public:
00055 StHbtTTreeEvent();
00056 StHbtTTreeEvent(const StHbtEvent*, StHbtTrackCut*, StHbtV0Cut*, StHbtXiCut*, StHbtKinkCut*);
00057 virtual ~StHbtTTreeEvent();
00058 void clear();
00059 void fill(const StHbtEvent*, StHbtTrackCut*, StHbtV0Cut*, StHbtXiCut*, StHbtKinkCut*);
00060 void SetMagneticField(double);
00061 private:
00062 void initClonesArrays();
00063 void fillEventInfo(const StHbtEvent* event);
00064 void addTrack(const StHbtEvent*, const StHbtTrack*);
00065 void addV0(const StHbtEvent*, const StHbtV0*);
00066 void addXi(const StHbtEvent*, const StHbtXi*);
00067 void addKink(const StHbtEvent*, const StHbtKink*);
00068 TClonesArray* tracks() const {return fTracks;}
00069 TClonesArray* v0s() const {return fV0s;}
00070 TClonesArray* xis() const {return fXis;}
00071 TClonesArray* kinks() const {return fKinks;}
00072
00073 UShort_t mEventNumber;
00074 UShort_t mRunNumber;
00075
00076 UInt_t mTriggerWord;
00077 UInt_t mTriggerActionWord;
00078
00079 UShort_t mTpcNhits;
00080 UShort_t mNumberOfTracks;
00081 UShort_t mNumberOfGoodTracks;
00082 UShort_t mUncorrectedNumberOfPositivePrimaries;
00083 UShort_t mUncorrectedNumberOfNegativePrimaries;
00084 Float_t mCtbMultiplicity;
00085 Float_t mZdcAdc[2];
00086
00087 Float_t mReactionPlane[2];
00088 Float_t mVertexX;
00089 Float_t mVertexY;
00090 Float_t mVertexZ;
00091 Float_t mMagneticField;
00092
00093
00094 UShort_t mNtracks;
00095 TClonesArray* fTracks;
00096 static TClonesArray* fgTracks;
00097
00098 UShort_t mNv0s;
00099 TClonesArray* fV0s;
00100 static TClonesArray* fgV0s;
00101
00102 UShort_t mNxis;
00103 TClonesArray* fXis;
00104 static TClonesArray* fgXis;
00105
00106 UShort_t mNkinks;
00107 TClonesArray* fKinks;
00108 static TClonesArray* fgKinks;
00109
00110 static Int_t mDebug;
00111 Short_t mTrackType;
00112
00113 Float_t mReactionPlanePtWgt[2];
00114
00115 UInt_t mL3TriggerAlgorithm;
00116
00117 friend class StHbtEvent;
00118 friend class StHbtTrack;
00119 friend class StHbtV0;
00120 friend class StHbtXi;
00121 friend class StHbtKink;
00122
00123 ClassDef(StHbtTTreeEvent,5)
00124 };
00125
00126
00127
00128 #endif