]>
Commit | Line | Data |
---|---|---|
2ff24e4c | 1 | //-*- Mode: C++ -*- |
2 | // $Id$ | |
3 | #ifndef ALIHLTTPCEVENTSTATISTICS_H | |
4 | #define ALIHLTTPCEVENTSTATISTICS_H | |
5 | ||
6 | /* This file is property of and copyright by the ALICE HLT Project * | |
7 | * ALICE Experiment at CERN, All rights reserved. * | |
8 | * See cxx source for full Copyright notice */ | |
9 | ||
6291d256 | 10 | /** @file AliHLTTPCEventStatistics.h |
2ff24e4c | 11 | @author Jochen Thaeder |
12 | @date | |
13 | @brief TPC class for event statistics, derived from @see AliHLTEventStatistics | |
14 | */ | |
15 | ||
16 | // see below for class documentation | |
17 | // or | |
18 | // refer to README to build package | |
19 | // or | |
20 | // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt | |
21 | ||
22 | #include "TObject.h" | |
23 | #include "TString.h" | |
24 | ||
25 | #include "AliHLTEventStatistics.h" | |
26 | ||
27 | /** | |
6291d256 | 28 | * @class AliHLTTPCEventStatistics |
2ff24e4c | 29 | * @brief TPC class for event statistics, derived from @see AliHLTEventStatistics |
30 | * | |
31 | * The event statistic classes hold information about certain characteristica | |
32 | * of the processed events. They are devided into 3 parts. A base class | |
33 | * @see AliHLTEventStatistics for general Information, detector specific | |
34 | * classes like @see AliHLTTPCEventStatistics for the TPC and a summary class | |
35 | * @see AliHLTEventStatisticsSummary which can hold several detector classes. | |
36 | * | |
37 | * This is the detector class for the TPC. | |
38 | * | |
39 | * See base class @see AliHLTEventStatistics for further information. | |
40 | * | |
41 | * | |
42 | * @ingroup alihlt_run_statistics alihlt_trigger | |
43 | */ | |
44 | ||
45 | class AliHLTTPCEventStatistics : public AliHLTEventStatistics { | |
46 | ||
47 | public: | |
48 | ||
49 | /** constructor */ | |
50 | AliHLTTPCEventStatistics(); | |
51 | /** destructor */ | |
52 | virtual ~AliHLTTPCEventStatistics(); | |
53 | ||
54 | // -- Tracks -- | |
55 | ||
56 | /** Get Total number of tracks | |
57 | * @return number of tracks | |
58 | */ | |
59 | Int_t GetNTotalTracks() { return fNTotalTracks; } | |
60 | ||
61 | /** Set Total number of tracks | |
62 | * @param i number of tracks | |
63 | */ | |
64 | void SetNTotalTracks( Int_t i) { fNTotalTracks = i; } | |
65 | ||
66 | // -- | |
67 | ||
68 | /** Get Total number of tracks with ( number of cluster >= fClusterThreshold ) | |
69 | * @return number of tracks | |
70 | */ | |
71 | Int_t GetNTracksAboveClusterThreshold() { return fNTracksAboveClusterThreshold; } | |
72 | ||
73 | /** Set Total number of tracks with ( number of cluster >= fClusterThreshold ) | |
74 | * @param i number of tracks | |
75 | */ | |
76 | void SetNTotalTracksAboveClusterThreshold( Int_t i) { fNTracksAboveClusterThreshold = i;} | |
77 | ||
78 | /** Add tracks to total number of tracks with ( number of cluster >= fClusterThreshold ) | |
79 | * @param i number of tracks | |
80 | */ | |
81 | void AddNTracksAboveClusterThreshold( Int_t i = 1 ) { fNTracksAboveClusterThreshold += i; } | |
82 | ||
83 | // -- | |
84 | ||
85 | /** Max of ( tracks per sector ) | |
86 | * @return number of tracks | |
87 | */ | |
88 | Int_t GetNMaxTracksPerSector() { return fNMaxTracksPerSector; } | |
89 | ||
90 | /** Max of ( tracks per sector ) | |
91 | * @param i number of tracks | |
92 | */ | |
93 | void SetNMaxTracksPerSector( Int_t i) { fNMaxTracksPerSector = i; } | |
94 | ||
95 | // -- | |
96 | ||
97 | /** Min of ( tracks per sector ) | |
98 | * @return number of tracks | |
99 | */ | |
100 | Int_t GetNMinTracksPerSector() { return fNMinTracksPerSector; } | |
101 | ||
102 | /** Max of ( tracks per sector ) | |
103 | * @param i number of tracks | |
104 | */ | |
105 | void SetNMinTracksPerSector( Int_t i) { fNMinTracksPerSector = i; } | |
106 | ||
107 | // -- | |
108 | ||
109 | /** Average of ( tracks per sector ) | |
110 | * @return number of tracks | |
111 | */ | |
112 | Int_t GetNAvgTracksPerSector() { return fNAvgTracksPerSector; } | |
113 | ||
114 | /** Average of ( tracks per sector ) | |
115 | * @param i number of tracks | |
116 | */ | |
117 | void SetNAvgTracksPerSector( Int_t i) { fNAvgTracksPerSector = i; } | |
118 | ||
119 | // -- Cluster -- | |
120 | ||
121 | /** Get Threshold for number of clusters per track | |
122 | * @return threshold | |
123 | */ | |
124 | Int_t GetClusterThreshold() { return fClusterThreshold; } | |
125 | ||
126 | /** Set Threshold for number of clusters per track | |
127 | * @param i threshold | |
128 | */ | |
129 | void SetClusterThreshold( Int_t i) { fClusterThreshold = i; } | |
130 | ||
131 | // -- | |
132 | ||
133 | /** Get Total number of cluster found | |
134 | * @return number of cluster | |
135 | */ | |
136 | Int_t GetNTotalCluster() { return fNTotalCluster; } | |
137 | ||
138 | /** Set Total number of cluster found | |
139 | * @param i number of cluster | |
140 | */ | |
141 | void SetNTotalCluster( Int_t i) { fNTotalCluster = i; } | |
142 | ||
143 | /** Add cluster to total number of cluster found | |
144 | * @param i number of cluster | |
145 | */ | |
146 | void AddNTotalCluster( Int_t i ) { fNTotalCluster += i; } | |
147 | ||
148 | //-- | |
149 | ||
150 | /** Get Number of cluster which were used in tracks | |
151 | * @return number of cluster | |
152 | */ | |
153 | Int_t GetNUsedCluster() { return fNUsedCluster; } | |
154 | ||
155 | /** Set Number of cluster which were used in tracks | |
156 | * @param i number of cluster | |
157 | */ | |
158 | void SetNUsedCluster( Int_t i) { fNUsedCluster = i; } | |
159 | ||
160 | /** Add cluster to total number of cluster which were used in tracks | |
161 | * @param i number of cluster | |
162 | */ | |
163 | void AddNUsedCluster( Int_t i ) { fNUsedCluster += i; } | |
164 | ||
165 | // -- | |
166 | ||
167 | /** Get Average of ( number of clusters per track ), floored | |
168 | * @return number of cluster | |
169 | */ | |
170 | Int_t GetAvgClusterPerTrack() { return fAvgClusterPerTrack; } | |
171 | ||
172 | /** Set Average of ( number of clusters per track ), floored | |
173 | * @param i number of cluster | |
174 | */ | |
175 | void SetAvgClusterPerTrack( Int_t i) { fAvgClusterPerTrack = i; } | |
176 | ||
177 | private: | |
178 | ||
179 | /** copy constructor prohibited */ | |
180 | AliHLTTPCEventStatistics (const AliHLTTPCEventStatistics&); | |
181 | ||
182 | /** assignment operator prohibited */ | |
183 | AliHLTTPCEventStatistics& operator= (const AliHLTTPCEventStatistics&); | |
184 | ||
185 | // -- Tracks -- | |
186 | ||
187 | /** Total number of tracks found */ | |
188 | Int_t fNTotalTracks; // see above | |
189 | ||
190 | /** Tracks with ( number of cluster >= fClusterThreshold ) | |
191 | * ( for long tracks ) | |
192 | */ | |
193 | Int_t fNTracksAboveClusterThreshold; // see above | |
194 | ||
195 | /** Max of ( tracks per sector ) */ | |
196 | Int_t fNMaxTracksPerSector; // see above | |
197 | ||
198 | /** Min of ( tracks per sector ) */ | |
199 | Int_t fNMinTracksPerSector; // see above | |
200 | ||
201 | /** Average of ( tracks per sector ) */ | |
202 | Int_t fNAvgTracksPerSector; // see above | |
203 | ||
204 | // -- Cluster -- | |
205 | ||
206 | /** Threshold for number of clusters per track | |
207 | * ( for long tracks ) | |
208 | */ | |
209 | Int_t fClusterThreshold; // see above | |
210 | ||
211 | /** Total number of cluster found */ | |
212 | Int_t fNTotalCluster; // see above | |
213 | ||
214 | /** Number of cluster which were used in tracks */ | |
215 | Int_t fNUsedCluster; // see above | |
216 | ||
217 | /** Average of ( number of clusters per track ), floored */ | |
218 | Int_t fAvgClusterPerTrack; // see above | |
219 | ||
22240104 | 220 | ClassDef(AliHLTTPCEventStatistics, 1); |
2ff24e4c | 221 | |
222 | }; | |
223 | #endif | |
224 |