StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StL3EventSummary.h
1 
5 /***************************************************************************
6  *
7  * $Id: StL3EventSummary.h,v 2.5 2002/02/22 22:56:49 jeromel Exp $
8  *
9  * Author: Christof Struck, July 2001
10  ***************************************************************************
11  *
12  * Description: L3 Event Summary Information
13  *
14  ***************************************************************************
15  *
16  * $Log: StL3EventSummary.h,v $
17  * Revision 2.5 2002/02/22 22:56:49 jeromel
18  * Doxygen basic documentation in all header files. None of this is required
19  * for QM production.
20  *
21  * Revision 2.4 2001/11/28 18:52:57 struck
22  * updated classdef version
23  *
24  * Revision 2.3 2001/11/14 23:29:35 struck
25  * minor changes in 'unbiasedTrigger' function, trigger word added for debugging purposes
26  *
27  * Revision 2.2 2001/08/20 21:29:53 ullrich
28  * Added method setCounters().
29  *
30  * Revision 2.1 2001/08/02 01:26:31 ullrich
31  * Initial Revision.
32  *
33  **************************************************************************/
34 #ifndef StL3EventSummary_hh
35 #define StL3EventSummary_hh
36 
37 #include "StObject.h"
38 #include "StContainers.h"
39 #include "StDaqLib/L3/L3_Banks.hh"
40 
41 class StL3AlgorithmInfo;
42 
43 class StL3EventSummary : public StObject
44 {
45 public:
48  // StL3EventSummary(const StL3EventSummary&); use default
49  // StL3EventSummary& operator=(const StL3EventSummray&); use default
50  ~StL3EventSummary() {}
51 
52  int numberOfProcessedEvents() const;
53  int numberOfReconstructedEvents() const;
54  unsigned int numberOfTracks() const;
55  unsigned int numberOfAlgorithms() const;
56 
57  int unbiasedTriggerPreScale() const;
58 
59  bool unbiasedTrigger() const;
60  bool zVertexTrigger() const;
61 
62  unsigned int l0TriggerWord() const;
63 
64  StPtrVecL3AlgorithmInfo& algorithmsAcceptingEvent();
65  const StPtrVecL3AlgorithmInfo& algorithmsAcceptingEvent() const;
66 
67  StSPtrVecL3AlgorithmInfo& algorithms();
68  const StSPtrVecL3AlgorithmInfo& algorithms() const;
69 
70  void addAlgorithm(StL3AlgorithmInfo*);
71  void setNumberOfTracks(int);
72  void setCounters(int, int);
73  void setUnbiasedTrigger();
74  void setUnbiasedTriggerPreScale(int);
75  void setZVertexTrigger();
76  void setL0TriggerWord(unsigned int);
77 
78 private:
79  Int_t mNumberOfProcessedEvents;
80  Int_t mNumberReconstructedEvents;
81  UInt_t mNumberOfTracks;
82  UInt_t mNumberOfAlgorithms;
83  Bool_t mZVertexTrigger;
84  Bool_t mUnbiasedTrigger;
85  UInt_t mL0TriggerWord;
86  Int_t mUnbiasedPreScale;
87  StPtrVecL3AlgorithmInfo mL3AcceptAlgorithms;
88  StSPtrVecL3AlgorithmInfo mL3Algorithms;
89 
90  ClassDef(StL3EventSummary,2)
91 };
92 
93 
94 inline int
95 StL3EventSummary::numberOfProcessedEvents() const { return mNumberOfProcessedEvents; }
96 
97 inline int
98 StL3EventSummary::numberOfReconstructedEvents() const { return mNumberReconstructedEvents; }
99 
100 inline unsigned int
101 StL3EventSummary::numberOfTracks() const { return mNumberOfTracks; }
102 
103 inline unsigned int
104 StL3EventSummary::numberOfAlgorithms() const { return mNumberOfAlgorithms; }
105 
106 inline bool
107 StL3EventSummary::unbiasedTrigger() const { return mUnbiasedTrigger; }
108 
109 inline bool
110 StL3EventSummary::zVertexTrigger() const { return mZVertexTrigger; }
111 
112 inline unsigned int
113 StL3EventSummary::l0TriggerWord() const { return mL0TriggerWord; }
114 
115 inline StPtrVecL3AlgorithmInfo&
116 StL3EventSummary::algorithmsAcceptingEvent() { return mL3AcceptAlgorithms; }
117 
118 inline const StPtrVecL3AlgorithmInfo&
119 StL3EventSummary::algorithmsAcceptingEvent() const { return mL3AcceptAlgorithms; }
120 
121 inline StSPtrVecL3AlgorithmInfo&
122 StL3EventSummary::algorithms() { return mL3Algorithms; }
123 
124 inline const StSPtrVecL3AlgorithmInfo&
125 StL3EventSummary::algorithms() const { return mL3Algorithms; }
126 
127 inline int
128 StL3EventSummary::unbiasedTriggerPreScale() const { return mUnbiasedPreScale; }
129 
130 inline void
131 StL3EventSummary::setCounters(int nProcessed, int nReconstructed) {
132  mNumberOfProcessedEvents = nProcessed;
133  mNumberReconstructedEvents = nReconstructed;
134 }
135 
136 inline void
137 StL3EventSummary::setUnbiasedTrigger() { mUnbiasedTrigger = true; }
138 
139 inline void
140 StL3EventSummary::setZVertexTrigger() { mZVertexTrigger = true; }
141 
142 inline void
143 StL3EventSummary::setUnbiasedTriggerPreScale(int preScale) { mUnbiasedPreScale = preScale; }
144 
145 inline void
146 StL3EventSummary::setL0TriggerWord(unsigned int triggerWord) { mL0TriggerWord = triggerWord; }
147 
148 #endif