10 #ifndef StStrangeEvMuDst_hh
11 #define StStrangeEvMuDst_hh
12 #include "StStrangeMuDst.hh"
29 void Clear(Option_t* option) {TObject::Clear(option);}
31 static void SetCorrectionFile(
char*);
46 Float_t primaryVertexX()
const;
47 Float_t primaryVertexY()
const;
55 Int_t globalTracks()
const;
56 Int_t tpcTracks()
const;
57 Int_t ftpcEastTracks()
const;
58 Int_t ftpcWestTracks()
const;
59 Int_t primaryTracks()
const;
60 Int_t tpcPrimTracks()
const;
61 Int_t ftpcEastPrimTracks()
const;
62 Int_t ftpcWestPrimTracks()
const;
63 Int_t primaryNegTracks()
const;
64 Float_t primaryCorrectedTracks()
const;
75 void setMagneticField(Float_t);
76 void setL0TriggerWord(UInt_t);
77 void setGlobalTracks(Int_t);
78 void setPrimaryTracks(Int_t);
90 Float_t mPrimaryVertexX;
91 Float_t mPrimaryVertexY;
92 Float_t mPrimaryVertexZ;
95 Int_t mPrimaryNegTracks;
96 Float_t mMagneticField;
97 UInt_t mL0TriggerWord;
101 Int_t FTPC(
const Int_t)
const;
106 inline StStrangeEvMuDst::StStrangeEvMuDst(
StEvent& event)
108 inline StStrangeEvMuDst::StStrangeEvMuDst(
StMcEvent& event)
112 {
mRun = - TMath::Abs(r); }
114 {
return (
mRun > 0); }
117 {
return TMath::Abs(
mRun); }
119 {
return TMath::Abs(
mEvent); }
123 {
return ((
run() < 3999999) ? mL0TriggerWord :
124 (UInt_t) mL0TriggerWord%100000); }
126 {
return ((
run() < 3999999) ? 0U :
127 (UInt_t) mL0TriggerWord/100000); }
129 {
return mMagneticField; }
131 inline Float_t StStrangeEvMuDst::primaryVertexX()
const
132 {
return mPrimaryVertexX; }
133 inline Float_t StStrangeEvMuDst::primaryVertexY()
const
134 {
return mPrimaryVertexY; }
136 {
return mPrimaryVertexZ; }
140 inline Int_t StStrangeEvMuDst::FTPC(
const Int_t x)
const
141 {
return ((Int_t) (((UInt_t) x)>>13)); }
143 inline Int_t StStrangeEvMuDst::globalTracks()
const
144 { div_t ftpc = div(FTPC(mGlobalTracks),724);
145 return (tpcTracks() + ftpc.quot + ftpc.rem); }
146 inline Int_t StStrangeEvMuDst::tpcTracks()
const
147 {
return mGlobalTracks & 0x1fff; }
148 inline Int_t StStrangeEvMuDst::ftpcEastTracks()
const
149 {
return FTPC(mGlobalTracks)%724; }
150 inline Int_t StStrangeEvMuDst::ftpcWestTracks()
const
151 {
return FTPC(mGlobalTracks)/724; }
153 inline Int_t StStrangeEvMuDst::primaryTracks()
const
154 { div_t ftpc = div(FTPC(mPrimaryTracks),724);
155 return (tpcPrimTracks() + ftpc.quot + ftpc.rem); }
156 inline Int_t StStrangeEvMuDst::tpcPrimTracks()
const
157 {
return mPrimaryTracks & 0x1fff; }
158 inline Int_t StStrangeEvMuDst::ftpcEastPrimTracks()
const
159 {
return FTPC(mPrimaryTracks)%724; }
160 inline Int_t StStrangeEvMuDst::ftpcWestPrimTracks()
const
161 {
return FTPC(mPrimaryTracks)/724; }
162 inline Int_t StStrangeEvMuDst::primaryNegTracks()
const
163 {
return mPrimaryNegTracks; }
165 inline void StStrangeEvMuDst::setMagneticField(Float_t b)
166 { mMagneticField = b; }
167 inline void StStrangeEvMuDst::setL0TriggerWord(UInt_t trgWrd)
168 { mL0TriggerWord = trgWrd; }
169 inline void StStrangeEvMuDst::setGlobalTracks(Int_t newGlob)
170 { mGlobalTracks = newGlob;}
171 inline void StStrangeEvMuDst::setPrimaryTracks(Int_t newPrim)
172 { mPrimaryTracks = newPrim;}
static void SetFractionFile(char *)
Set files to use.
Int_t mRun
Negative mRun value for bad FTPC run (set via tagRunNumber())
Bool_t ftpcGoodRun()
Return whether FTPC information is good.
Float_t magneticField() const
Magnetic field.
virtual void Clear(Option_t *option="")
User defined functions.
UInt_t l0TriggerWord() const
L0 trigger word.
void tagRunNumber(Int_t)
Set a neg value of the run number if FTPC information is bad.
Int_t mEvent
Negative mEvent value for L3Bias (automatic during Fill())
Bool_t unbiasedTrigger() const
Trigger bias.
Int_t run() const
Run number.
Float_t primaryVertexZ() const
Primary vtx position coordinates.
Float_t fractionSigma() const
Cross section fraction.
Event data structure to hold all information from a Monte Carlo simulation. This class is the interfa...
Int_t event() const
Event number.
UInt_t zdcWestADC() const
ADC value given by ZDC west (for pAu event tagging)