StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StPicoEvent.cxx
1 //
2 // StPicoEvent: holds the information about the event
3 //
4 
5 // C++ headers
6 #include <algorithm>
7 #include <limits>
8 
9 // PicoDst headers
10 #include "StPicoMessMgr.h"
11 #include "StPicoEvent.h"
12 
13 ClassImp(StPicoEvent)
14 
15 //_________________
16 StPicoEvent::StPicoEvent(): TObject(),
17  mRunId(0), mEventId(0), mFillId(0), mBField(0), mTime(0),
18  mPrimaryVertexX(0), mPrimaryVertexY(0), mPrimaryVertexZ(0),
19  mPrimaryVertexErrorX(0), mPrimaryVertexErrorY(0), mPrimaryVertexErrorZ(0),
20  mRanking(-999), mNBEMCMatch(0), mNBTOFMatch(0),
21  mTriggerIds(),
22  mRefMultFtpcEast(0), mRefMultFtpcWest(0),
23  mRefMultNeg(0), mRefMultPos(0),
24  mRefMult2NegEast(0), mRefMult2PosEast(0), mRefMult2NegWest(0), mRefMult2PosWest(0),
25  mRefMult3NegEast(0), mRefMult3PosEast(0), mRefMult3NegWest(0), mRefMult3PosWest(0),
26  mRefMult4NegEast(0), mRefMult4PosEast(0), mRefMult4NegWest(0), mRefMult4PosWest(0),
27  mRefMultHalfNegEast(0), mRefMultHalfPosEast(0), mRefMultHalfNegWest(0), mRefMultHalfPosWest(0),
28  mGRefMult(0), mNumberOfGlobalTracks(0), mbTofTrayMultiplicity(0), mNHitsHFT{},
29  mNVpdHitsEast(0), mNVpdHitsWest(0), mNTofT0(0), mVzVpd(-999.),
30  // In the following, the factors of 1000. serve to convert times back and forth between external nsec and internal psec
31  mNTofT0Can(0), mTStart(-9999*1000), mTCanFirst(99999*1000), mTCanLast(-99999*1000), mNVpdEGoodHits(0),
32  mNVpdWGoodHits(0), mEarliestVpdEHit(99999*1000), mEarliestVpdWHit(99999*1000), mClosestVpdEHit(99999*1000),
33  mClosestVpdWHit(99999*1000), mLatestVpdEHit(-99999*1000), mLatestVpdWHit(-99999*1000),
34  mZDCx(0), mBBCx(0), mBackgroundRate(0), mBbcBlueBackgroundRate(0), mBbcYellowBackgroundRate(0),
35  mBbcEastRate(0), mBbcWestRate(0), mZdcEastRate(0), mZdcWestRate(0),
36  mZdcSumAdcEast(0), mZdcSumAdcWest(0),
37  mZdcSmdEastHorizontal{}, mZdcSmdEastVertical{}, mZdcSmdWestHorizontal{}, mZdcSmdWestVertical{},
38  mBbcAdcEast{}, mBbcAdcWest{}, mHighTowerThreshold{}, mJetPatchThreshold{},
39  mETofHitMultiplicity(0), mETofDigiMultiplicity(0), mETofGoodEventFlag{}, mNumberOfPrimaryTracks(0), mZdcUnAttenuated{} {
40 
41  // Default constructor
42  if( !mTriggerIds.empty() ) {
43  mTriggerIds.clear();
44  }
45 }
46 
47 //_________________
48 StPicoEvent::StPicoEvent(const StPicoEvent &event) : TObject() {
49 
50  // Copy constructor
51 
52  // Global info
53  mRunId = event.mRunId;
54  mEventId = event.mEventId;
55  mFillId = event.mFillId;
56  mBField = event.mBField;
57  mTime = event.mTime;
58 
59  // Primary vertex info
60  mPrimaryVertexX = event.mPrimaryVertexX;
61  mPrimaryVertexY = event.mPrimaryVertexY;
62  mPrimaryVertexZ = event.mPrimaryVertexZ;
63  mPrimaryVertexErrorX = event.mPrimaryVertexErrorX;
64  mPrimaryVertexErrorY = event.mPrimaryVertexErrorY;
65  mPrimaryVertexErrorZ = event.mPrimaryVertexErrorZ;
66  mRanking = event.mRanking;
67 
68  // Number of matched tracks to fast detectors
69  mNBEMCMatch = event.mNBEMCMatch;
70  mNBTOFMatch = event.mNBTOFMatch;
71 
72  // Trigger ID collection
73  mTriggerIds = event.mTriggerIds;
74 
75  // Reference multiplicities
76  mRefMultFtpcEast = event.mRefMultFtpcEast;
77  mRefMultFtpcWest = event.mRefMultFtpcWest;
78  mRefMultNeg = event.mRefMultNeg;
79  mRefMultPos = event.mRefMultPos;
80  mRefMult2NegEast = event.mRefMult2NegEast;
81  mRefMult2PosEast = event.mRefMult2PosEast;
82  mRefMult2NegWest = event.mRefMult2NegWest;
83  mRefMult2PosWest = event.mRefMult2PosWest;
84  mRefMult3NegEast = event.mRefMult3NegEast;
85  mRefMult3PosEast = event.mRefMult3PosEast;
86  mRefMult3NegWest = event.mRefMult3NegWest;
87  mRefMult3PosWest = event.mRefMult3PosWest;
88  mRefMult4NegEast = event.mRefMult4NegEast;
89  mRefMult4PosEast = event.mRefMult4PosEast;
90  mRefMult4NegWest = event.mRefMult4NegWest;
91  mRefMult4PosWest = event.mRefMult4PosWest;
92  mRefMultHalfNegEast = event.mRefMultHalfNegEast;
93  mRefMultHalfPosEast = event.mRefMultHalfPosEast;
94  mRefMultHalfNegWest = event.mRefMultHalfNegWest;
95  mRefMultHalfPosWest = event.mRefMultHalfPosWest;
96 
97  mGRefMult = event.mGRefMult;
98  mNumberOfGlobalTracks = event.mNumberOfGlobalTracks;
99  mNumberOfPrimaryTracks = event.mNumberOfPrimaryTracks;
100 
101  // Hit mulitplicities
102  mbTofTrayMultiplicity = event.mbTofTrayMultiplicity;
103  mETofHitMultiplicity = event.mETofHitMultiplicity;
104  mETofDigiMultiplicity = event.mETofDigiMultiplicity;
105  for(int iIter=0; iIter<4; iIter++) {
106  mNHitsHFT[iIter] = event.mNHitsHFT[iIter];
107  }
108 
109  // VPD info
110  mNVpdHitsEast = event.mNVpdHitsEast;
111  mNVpdHitsWest = event.mNVpdHitsWest;
112  mNTofT0 = event.mNTofT0;
113  mVzVpd = event.mVzVpd;
114 
115  // Forward detector info
116  mZDCx = event.mZDCx;
117  mBBCx = event.mBBCx;
118  mBackgroundRate = event.mBackgroundRate;
119  mBbcBlueBackgroundRate = event.mBbcBlueBackgroundRate;
120  mBbcYellowBackgroundRate = event.mBbcYellowBackgroundRate;
121  mBbcEastRate = event.mBbcEastRate;
122  mBbcWestRate = event.mBbcWestRate;
123  mZdcEastRate = event.mZdcEastRate;
124  mZdcWestRate = event.mZdcWestRate;
125 
126  mZdcSumAdcEast = event.mZdcSumAdcEast;
127  mZdcSumAdcWest = event.mZdcSumAdcWest;
128  for(int iIter=0; iIter<8; iIter++) {
129  mZdcSmdEastHorizontal[iIter] = event.mZdcSmdEastHorizontal[iIter];
130  mZdcSmdEastVertical[iIter] = event.mZdcSmdEastVertical[iIter];
131  mZdcSmdWestHorizontal[iIter] = event.mZdcSmdWestHorizontal[iIter];
132  mZdcSmdWestVertical[iIter] = event.mZdcSmdWestVertical[iIter];
133  }
134 
135  for(int iSide=0; iSide<2; iSide++) {
136  mZdcUnAttenuated[iSide] = event.mZdcUnAttenuated[iSide];
137  }
138 
139  for(int iIter=0; iIter<24; iIter++) {
140  mBbcAdcEast[iIter] = event.mBbcAdcEast[iIter];
141  mBbcAdcWest[iIter] = event.mBbcAdcWest[iIter];
142  }
143 
144  // Tower and patch info
145  for(int iIter=0; iIter<4; iIter++) {
146  mHighTowerThreshold[iIter] = event.mHighTowerThreshold[iIter];
147  mJetPatchThreshold[iIter] = event.mJetPatchThreshold[iIter];
148  }
149 
150  for(int iIter=0; iIter<1728; iIter++) {
151  mETofGoodEventFlag[iIter] = event.mETofGoodEventFlag[iIter];
152  }
153  for(int iIter=0; iIter<108; iIter++) {
154  mETofHasPulsersFlag[iIter] = event.mETofHasPulsersFlag[iIter];
155  }
156 }
157 
158 //_________________
160  // Destructor
161  /* empty */
162 }
163 
164 //_________________
165 void StPicoEvent::Print(const Char_t *option __attribute__((unused)) ) const {
166  LOG_INFO << " year = " << year()
167  << " day = " << day() << "\n"
168  << " fill/run/event Id = " << fillId() << "/" << runId() << "/" << eventId() << "\n"
169 
170  << " vertex x = " << primaryVertex().X()
171  << " vertex y = " << primaryVertex().Y()
172  << " vertex z = " << primaryVertex().Z() << "\n"
173  << " refMult = " << refMult()
174  << " grefMult = " << grefMult() << "\n"
175  << " nTofT0 = " << nTofT0()
176  << " vpdVz = " << vzVpd()
177  << endm;
178 }
179 
180 //_________________
181 Int_t StPicoEvent::year() const {
182  return mRunId / 1000000 - 1 + 2000;
183 }
184 
185 //_________________
186 Int_t StPicoEvent::day() const {
187  return (mRunId % 1000000) / 1000;
188 }
189 
190 //_________________
191 Bool_t StPicoEvent::isTrigger(unsigned int id) const {
192  return std::find(mTriggerIds.begin(), mTriggerIds.end(), id) != mTriggerIds.end();
193 }
194 
195 //_________________
196 void StPicoEvent::setTriggerId(UInt_t id) {
197 
198  // If trigger list is not empty then loop over it
199  // and check if the new trigger already in.
200  if( !mTriggerIds.empty() ) {
201 
202  // Assume that the new trigger is not in the list
203  Bool_t isUsed = false;
204 
205  // Loop over the trigger list
206  for(UInt_t iIter=0; iIter<mTriggerIds.size(); iIter++) {
207 
208  // Compare triggers
209  if( mTriggerIds.at(iIter) == id ) {
210  isUsed = true;
211  }
212  } //(unsigned int iIter=0; iIter<mTriggerIds.size(); iIter++)
213 
214  // If the trigger not in the list then add it
215  if( !isUsed ) {
216  mTriggerIds.push_back(id);
217  }
218  } //if( !mTriggerIds.empty() )
219  else {
220  mTriggerIds.push_back(id);
221  }
222 }
223 
224 //_________________
225 void StPicoEvent::setTriggerIds(std::vector<unsigned int> newIds) {
226 
227  // Protection: work only if input vector has entries
228  if (!newIds.empty()) {
229 
230  // If trigger list is not empty then loop over it
231  // and check if the new trigger already in.
232  if (!mTriggerIds.empty()) {
233 
234  // For each entry in the input vector
235  for (UInt_t iIter1= 0; iIter1<newIds.size(); iIter1++) {
236 
237  // Assume that the new trigger is not in the list
238  Bool_t isUsed = false;
239 
240  // Loop over existing trigger list
241  for (UInt_t iIter2=0; iIter2<mTriggerIds.size(); iIter2++) {
242 
243  // Compare triggers
244  if (mTriggerIds.at(iIter2) == newIds.at(iIter1)) {
245  isUsed = true;
246  }
247  } //for (unsigned int iIter2=0; iIter2<mTriggerIds.size(); iIter2++)
248 
249  // The entry is unique then add it to the list
250  if (!isUsed) {
251  mTriggerIds.push_back(newIds.at(iIter1));
252  }
253 
254  } //for(unsigned int iIter1= 0; iIter1<newIds.size(); iIter1++)
255  } //if( !mTriggerIds.empty() )
256  else {
257  mTriggerIds = newIds;
258  }
259  } //if( !newIds.empty() )
260 }
261 
262 //________________
263 void StPicoEvent::setNHitsHFT(Int_t layer, UShort_t word) {
264  if(layer>=0 && layer<=3) {
265  mNHitsHFT[layer] = (UShort_t)word;
266  }
267  else {
268  // Probably some information about this incident may be printed
269  }
270 }
271 
272 //________________
273 void StPicoEvent::setZdcSmdEastHorizontal(Int_t strip, Float_t zdcSmdEastHorizontal) {
274  if(strip>=0 && strip<=7) {
275  mZdcSmdEastHorizontal[strip] = (UShort_t)zdcSmdEastHorizontal;
276  }
277  else {
278  // Probably some information about this incident may be printed
279  }
280 }
281 
282 //________________
283 void StPicoEvent::setZdcSmdEastVertical(Int_t strip, Float_t zdcSmdEastVertical) {
284  if(strip>=0 && strip<=7) {
285  mZdcSmdEastVertical[strip] = (UShort_t)zdcSmdEastVertical;
286  }
287  else {
288  // Probably some information about this incident may be printed
289  }
290 }
291 
292 //________________
293 void StPicoEvent::setZdcSmdWestHorizontal(Int_t strip, Float_t zdcSmdWestHorizontal) {
294  if(strip>=0 && strip<=7) {
295  mZdcSmdWestHorizontal[strip] = (UShort_t)zdcSmdWestHorizontal;
296  }
297  else {
298  // Probably some information about this incident may be printed
299  }
300 }
301 
302 //________________
303 void StPicoEvent::setZdcSmdWestVertical(Int_t strip, Float_t zdcSmdWestVertical) {
304  if(strip>=0 && strip<=7) {
305  mZdcSmdWestVertical[strip] = (UShort_t)zdcSmdWestVertical;
306  }
307  else {
308  // Probably some information about this incident may be printed
309  }
310 }
311 
312 //________________
313 void StPicoEvent::setBbcAdcEast(Int_t iPMT, Float_t bbcAdcEast) {
314  if(iPMT>=0 && iPMT<=23) {
315  mBbcAdcEast[iPMT] = (UShort_t)bbcAdcEast;
316  }
317  else {
318  // Probably some information about this incident may be printed
319  }
320 }
321 
322 //________________
323 void StPicoEvent::setBbcAdcWest(Int_t iPMT, Float_t bbcAdcWest) {
324  if(iPMT>=0 && iPMT<=23) {
325  mBbcAdcWest[iPMT] = (UShort_t)bbcAdcWest;
326  }
327  else {
328  // Probably some information about this incident may be printed
329  }
330 }
331 
332 //_________________
333 void StPicoEvent::setBunchId(Int_t id) {
334  if( id<0 ) {
335  LOG_INFO << "StPicoEvent::setBunchID() - negative bunch ID = " << id << endm;
336  }
337  else {
338  mBunchCrossId = ( ( id > std::numeric_limits<decltype(mBunchCrossId)>::max() ) ?
339  std::numeric_limits<decltype(mBunchCrossId)>::max() :
340  (UChar_t)id );
341  }
342 }
343 
344 //_________________
345 bool StPicoEvent::eTofGoodEventFlag( UShort_t iSector, UShort_t iModule, UShort_t iCounter , UShort_t iGet4) const {
346  if( iSector < 13 || iSector > 24 ){
347  LOG_INFO << "StPicoEvent::eTofGoodEventFlag() - non-existing sector id " << iSector <<" -> return false"<< endm;
348  return false;
349  }
350  if( iModule < 1 || iModule > 3 ){
351  LOG_INFO << "StPicoEvent::eTofGoodEventFlag() - non-existing module id " << iModule <<" -> return false"<< endm;
352  return false;
353  }
354  if( iCounter < 1 || iCounter > 3 ){
355  LOG_INFO << "StPicoEvent::eTofGoodEventFlag() - non-existing counter id " << iCounter <<" -> return false"<< endm;
356  return false;
357  }
358  if( iGet4 < 1 || iGet4 > 16 ){
359  LOG_INFO << "StPicoEvent::eTofGoodEventFlag() - non-existing Get4 id " << iGet4 <<" -> return false"<< endm;
360  return false;
361  }
362 
363  return (bool) mETofGoodEventFlag[ 3*3*16*(iSector-13) + 3*16*(iModule-1) + 16*(iCounter-1)+ (iGet4 - 1) ];
364 }
365 //_________________
366 void StPicoEvent::setETofGoodEventFlag( std::vector<bool> flagVec ) {
367  if( flagVec.size() != 1728 ){
368  LOG_INFO << "StPicoEvent::setETofGoodEventFlag() - eTof flag vector wrong size " << flagVec.size() <<" / 1728"<< endm;
369  }else{
370  std::copy(flagVec.begin(), flagVec.end(), mETofGoodEventFlag);
371  }
372 }
Int_t nTofT0() const
Return number of TOF tracks used for T0 calibration.
Definition: StPicoEvent.h:162
std::vector< unsigned int > mTriggerIds
List of triggers that were fired in the current event.
Definition: StPicoEvent.h:474
UShort_t mZdcSmdWestHorizontal[8]
ADC measured in 8 west horizontal ZDC strips.
Definition: StPicoEvent.h:597
UShort_t mBbcAdcWest[24]
ADC measured in each of 24 tiles in west BBC.
Definition: StPicoEvent.h:604
Int_t runId() const
Return run ID.
Definition: StPicoEvent.h:41
UShort_t mRefMultHalfNegEast
TPC refMultHalf neg (eta&lt;0)
Definition: StPicoEvent.h:501
virtual void Print(const Char_t *option="") const
Print some event information.
UShort_t mETofDigiMultiplicity
Total digi multiplicity in ETOF modules.
Definition: StPicoEvent.h:617
void setZdcSmdEastVertical(Int_t strip, Float_t zdcSmdEastVertical)
Set ZDC for the east vertical ZDC i-th strip.
UShort_t mZdcSmdWestVertical[8]
ADC measured in 8 west vertical ZDC strips.
Definition: StPicoEvent.h:599
Float_t mPrimaryVertexZ
Primary vertex position Z.
Definition: StPicoEvent.h:454
void setTriggerIds(std::vector< unsigned int > ids)
Set trigger id (pass STL vector with trigger IDs)
UShort_t mGRefMult
RefMult estimated by global tracks.
Definition: StPicoEvent.h:510
Float_t mBbcWestRate
West BBC rate.
Definition: StPicoEvent.h:581
Int_t eventId() const
Return event ID.
Definition: StPicoEvent.h:43
Int_t fillId() const
Return fill ID.
Definition: StPicoEvent.h:45
UShort_t mNHitsHFT[4]
Number of hits int HFT (in each of 4 layers)
Definition: StPicoEvent.h:516
Float_t mPrimaryVertexX
Primary vertex position X.
Definition: StPicoEvent.h:450
UChar_t mJetPatchThreshold[4]
Online JP thresholds BEMC only.
Definition: StPicoEvent.h:609
bool mETofGoodEventFlag[1728]
Flag to mark if the event is good for physics analysis for each Get4. A Get4 is considered good in ea...
Definition: StPicoEvent.h:619
Float_t mRanking
Primary vertex ranking.
Definition: StPicoEvent.h:467
void setTriggerId(UInt_t id)
Set trigger id.
UShort_t mRefMult2NegWest
TPC refMult2 neg (0.5&lt;eta&lt;1.0)
Definition: StPicoEvent.h:489
Int_t year() const
Return year.
bool isTrigger(unsigned int) const
UShort_t mZdcSumAdcEast
Sum of ADC in east ZDC.
Definition: StPicoEvent.h:589
UShort_t mZdcSmdEastVertical[8]
ADC measured in 8 east vertical ZDC strips.
Definition: StPicoEvent.h:595
Float_t mPrimaryVertexErrorX
Primary vertex position error X.
Definition: StPicoEvent.h:456
UShort_t mRefMultHalfPosEast
TPC refMultHalf pos (eta&lt;0)
Definition: StPicoEvent.h:503
void setBbcAdcWest(Int_t iPMT, Float_t bbcAdcWest)
Set i-th PMT of east BBC.
UShort_t mRefMultFtpcEast
RefMult for east TPC.
Definition: StPicoEvent.h:477
UShort_t mBbcAdcEast[24]
ADC measured in each of 24 tiles in east BBC.
Definition: StPicoEvent.h:602
void setZdcSmdEastHorizontal(Int_t strip, Float_t zdcSmdEastHorizontal)
Set ZDC for the east horizontal ZDC i-th strip.
UShort_t mZdcSumAdcWest
Sum of ADC in west ZDC.
Definition: StPicoEvent.h:591
Float_t mPrimaryVertexErrorZ
Primary vertex position error Z.
Definition: StPicoEvent.h:460
Float_t mBField
Magnetic field strength.
Definition: StPicoEvent.h:443
UChar_t mNVpdHitsWest
Number of hits in west VPD.
Definition: StPicoEvent.h:521
UShort_t mZdcSmdEastHorizontal[8]
ADC measured in 8 east horizontal ZDC strips.
Definition: StPicoEvent.h:593
Int_t mRunId
Run number (or runId)
Definition: StPicoEvent.h:437
UShort_t mRefMultHalfPosWest
TPC refMultHalf pos (eta&gt;0)
Definition: StPicoEvent.h:507
void setBbcAdcEast(Int_t iPMT, Float_t bbcAdcEast)
Set i-th PMT of east BBC.
UInt_t mZDCx
ZDC coincidence rate.
Definition: StPicoEvent.h:552
Float_t mZdcWestRate
West ZDC rate.
Definition: StPicoEvent.h:585
void setZdcSmdWestVertical(Int_t strip, Float_t zdcSmdWestVertical)
Set ZDC for the west vertical ZDC i-th strip.
void setNHitsHFT(Int_t layer, UShort_t word)
Set number of hits in i-th HFT layers (PXL, PXL, IST, SSD)
Float_t mZdcEastRate
East ZDC rate.
Definition: StPicoEvent.h:583
UChar_t mHighTowerThreshold[4]
Online HT thresholds.
Definition: StPicoEvent.h:607
void setBunchId(Int_t id)
Set bunch crossing ID.
virtual ~StPicoEvent()
Destructor.
Float_t vzVpd() const
Return z position of the primary vertex estimated by VPD.
Definition: StPicoEvent.h:164
Float_t mBbcYellowBackgroundRate
&quot;Yellow&quot; beam rate measured in BBC
Definition: StPicoEvent.h:577
UShort_t mRefMultFtpcWest
RefMult for west TPC.
Definition: StPicoEvent.h:479
Int_t mEventId
Event ID.
Definition: StPicoEvent.h:439
UShort_t mETofHitMultiplicity
Total hit multiplicity in ETOF modules.
Definition: StPicoEvent.h:615
void setZdcSmdWestHorizontal(Int_t strip, Float_t zdcSmdWestHorizontal)
Set ZDC for the west horizontal ZDC i-th strip.
Float_t mPrimaryVertexErrorY
Primary vertex position error Y.
Definition: StPicoEvent.h:458
Int_t day() const
Return day number.
void setETofGoodEventFlag(bool flag, UShort_t iSector, UShort_t iModule, UShort_t iCounter, UShort_t iGet4)
Set goodEventFlag for a specific eTOF counter.
Definition: StPicoEvent.h:286
UShort_t mRefMult2PosEast
TPC refMult2 pos (-1&lt;eta&lt;-0.5)
Definition: StPicoEvent.h:487
UShort_t mNTofT0
Number of T0 particles in BTOF self calibration.
Definition: StPicoEvent.h:523
Int_t refMult() const
Return RefMult (-0.5&lt;eta&lt;0.5)
Definition: StPicoEvent.h:83
UShort_t mNBEMCMatch
Number of BEMC-matched tracks.
Definition: StPicoEvent.h:469
UChar_t mBunchCrossId
Number of bunch crossing.
Definition: StPicoEvent.h:612
Int_t grefMult() const
Return gRefMult (RefMult by global tracks in |gRefMult|&lt;0.5)
Definition: StPicoEvent.h:127
Stores global information about the event.
Definition: StPicoEvent.h:24
UShort_t mRefMult2NegEast
TPC refMult2 neg (-1&lt;eta&lt;-0.5)
Definition: StPicoEvent.h:485
UShort_t mbTofTrayMultiplicity
Total hit multiplicity in TOF trays.
Definition: StPicoEvent.h:514
UShort_t mRefMult2PosWest
TPC refMult2 pos (0.5&lt;eta&lt;1.0)
Definition: StPicoEvent.h:491
Float_t mBbcBlueBackgroundRate
&quot;Blue&quot; beam rate measured in BBC
Definition: StPicoEvent.h:575
Float_t mVzVpd
Vz estimated via VPD.
Definition: StPicoEvent.h:525
Float_t mBbcEastRate
East BBC rate.
Definition: StPicoEvent.h:579
UShort_t mRefMultNeg
RefMult estimated via negative tracks (-0.5&lt;eta&lt;0.5)
Definition: StPicoEvent.h:481
UChar_t mNVpdHitsEast
Number of hits in east VPD.
Definition: StPicoEvent.h:519
UShort_t mNBTOFMatch
Number of TOF-matched tracks.
Definition: StPicoEvent.h:471
UShort_t mNumberOfPrimaryTracks
Number of primary tracks.
Definition: StPicoEvent.h:623
TVector3 primaryVertex() const
Return primary vertex position.
Definition: StPicoEvent.h:52
Float_t mPrimaryVertexY
Primary vertex position Y.
Definition: StPicoEvent.h:452
UShort_t mNumberOfGlobalTracks
Total number of global tracks reconstructed in the event.
Definition: StPicoEvent.h:512
UShort_t mZdcUnAttenuated[2]
ZDC unattenuated: 0 - east, 1 - west.
Definition: StPicoEvent.h:626
bool eTofGoodEventFlag(UShort_t iSector, UShort_t iModule, UShort_t iCounter, UShort_t iGet4) const
Return goodEventFlag for a specific eTOF Get4.
UShort_t mRefMultPos
RefMult estimated via positive tracks (-0.5&lt;eta&lt;0.5)
Definition: StPicoEvent.h:483
UInt_t mBBCx
BBC coincidence rate.
Definition: StPicoEvent.h:554
StPicoEvent()
Default constructor.
Definition: StPicoEvent.cxx:16
Float_t mBackgroundRate
Background rate.
Definition: StPicoEvent.h:573
UShort_t mFillId
Fill number.
Definition: StPicoEvent.h:441