]>
Commit | Line | Data |
---|---|---|
2ff24e4c | 1 | //-*- Mode: C++ -*- |
2 | // $Id$ | |
3 | #ifndef ALIHLTTPCRUNSTATISTICS_H | |
4 | #define ALIHLTTPCRUNSTATISTICS_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 AliHLTTPCRunStatistics.h |
2ff24e4c | 11 | @author Jochen Thaeder |
12 | @date | |
13 | @brief TPC class for event statistics, derived from @see AliHLTRunStatistics | |
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 "AliHLTRunStatistics.h" | |
26 | ||
27 | /** | |
28 | * @class AliHLTTPCRunStatistics | |
29 | * @brief TPC class for event statistics, derived from @see AliHLTRunStatistics | |
30 | * | |
31 | * The run statistic classes hold information / histograms about certain | |
32 | * characteristica of the processed events. They are devided into 3 parts. A base class | |
33 | * @see AliHLTRunStatistics for general Information, detector specific | |
34 | * classes like @see AliHLTTPCRunStatistics for the TPC and a summary class | |
35 | * @see AliHLTRunStatisticsSummary which can hold several detector classes. | |
36 | * | |
37 | * This is the detector class for the TPC. | |
38 | * | |
39 | * See base class @see AliHLTRunStatistics for further information. | |
40 | * | |
41 | * @ingroup alihlt_run_statistics alihlt_trigger | |
42 | */ | |
43 | ||
44 | class AliHLTTPCRunStatistics : public AliHLTRunStatistics { | |
45 | ||
46 | public: | |
47 | ||
48 | /** constructor */ | |
49 | AliHLTTPCRunStatistics(); | |
50 | /** destructor */ | |
51 | virtual ~AliHLTTPCRunStatistics(); | |
52 | ||
53 | // -- Tracks -- | |
54 | ||
55 | /** Set Total number of tracks found | |
56 | * @param i number of tracks | |
57 | */ | |
58 | void SetNTotalTracks( Int_t i ) { fNTotalTracks = (ULong64_t) i; } | |
59 | ||
60 | /** Add to Total number of tracks found | |
61 | * @param i number of tracks | |
62 | */ | |
63 | void AddNTotalTracks( Int_t i ) { fNTotalTracks += (ULong64_t) i; } | |
64 | ||
65 | /** Get Total number of tracks found | |
66 | * @return number of tracks | |
67 | */ | |
68 | ULong64_t GetNTotalTracks() { return fNTotalTracks; } | |
69 | ||
70 | // -- | |
71 | ||
72 | /** Set Total number of tracks found | |
73 | * @param i number of tracks | |
74 | */ | |
75 | void SetNTracksAboveClusterThreshold( Int_t i ) { fNTracksAboveClusterThreshold = (ULong64_t) i; } | |
76 | ||
77 | /** Add to Tracks with ( number of cluster >= fClusterThreshold ) | |
78 | * @param i number of tracks | |
79 | */ | |
80 | void AddNTracksAboveClusterThreshold( Int_t i ) { fNTracksAboveClusterThreshold += (ULong64_t) i; } | |
81 | ||
82 | /** Get Tracks with ( number of cluster >= fClusterThreshold ) | |
83 | * @return number of tracks | |
84 | */ | |
85 | ULong64_t GetNTracksAboveClusterThreshold() { return fNTracksAboveClusterThreshold; } | |
86 | ||
87 | // -- Cluster -- | |
88 | ||
89 | /** Get Threshold for number of clusters per track | |
90 | * @return threshold | |
91 | */ | |
92 | Int_t GetClusterThreshold() { return fClusterThreshold; } | |
93 | ||
94 | /** Set Threshold for number of clusters per track | |
95 | * @param i threshold | |
96 | */ | |
97 | void SetClusterThreshold( Int_t i) { fClusterThreshold = i; } | |
98 | ||
99 | // -- | |
100 | ||
101 | /** Set Total number of cluster found | |
102 | * @param i number of cluster | |
103 | */ | |
104 | void SetNTotalCluster( Int_t i ) { fNTotalCluster = (ULong64_t) i; } | |
105 | ||
106 | /** Add to Total number of cluster found | |
107 | * @param i number of cluster | |
108 | */ | |
109 | void AddNTotalCluster( Int_t i ) { fNTotalCluster += (ULong64_t) i; } | |
110 | ||
111 | /** Get Total number of cluster found | |
112 | * @return number of cluster | |
113 | */ | |
114 | ULong64_t GetNTotalCluster() { return fNTotalCluster; } | |
115 | ||
116 | // -- | |
117 | ||
118 | /** Set Number of cluster which were used in tracks | |
119 | * @param i number of cluster | |
120 | */ | |
121 | void SetNUsedCluster( Int_t i ) { fNUsedCluster = (ULong64_t) i; } | |
122 | ||
123 | /** Add to Number of cluster which were used in tracks | |
124 | * @param i number AvgClusterPerTrackof cluster | |
125 | */ | |
126 | void AddNUsedCluster( Int_t i ) {fNUsedCluster += (ULong64_t) i; } | |
127 | ||
128 | /** Get Number of cluster which were used in tracks | |
129 | * @return number of cluster | |
130 | */ | |
131 | ULong64_t GetNUsedCluster() { return fNUsedCluster; } | |
132 | ||
133 | // -- | |
134 | ||
135 | /** Set Average of ( number of clusters per track ), floored | |
136 | * @param i number of cluster | |
137 | */ | |
138 | void SetAvgClusterPerTrack( Int_t i ) { fAvgClusterPerTrack = (ULong64_t) i; } | |
139 | ||
140 | /** Add to Average of ( number of clusters per track ), floored | |
141 | * @param i number of cluster | |
142 | */ | |
143 | void AddAvgClusterPerTrack( Int_t i ) { fAvgClusterPerTrack += (ULong64_t) i; } | |
144 | ||
145 | /** Get Average of ( number of clusters per track ), floored | |
146 | * @return number of cluster | |
147 | */ | |
148 | ULong64_t GetAvgClusterPerTrack() { return fAvgClusterPerTrack; } | |
149 | ||
150 | private: | |
151 | ||
152 | /** copy constructor prohibited */ | |
153 | AliHLTTPCRunStatistics (const AliHLTTPCRunStatistics&); | |
154 | ||
155 | /** assignment operator prohibited */ | |
156 | AliHLTTPCRunStatistics& operator= (const AliHLTTPCRunStatistics&); | |
157 | ||
158 | // -- Tracks -- | |
159 | ||
160 | /** Total number of tracks found */ | |
161 | ULong64_t fNTotalTracks; // see above | |
162 | ||
163 | /** Tracks with ( number of cluster >= fClusterThreshold ) | |
164 | * ( for long tracks ) | |
165 | */ | |
166 | ULong64_t fNTracksAboveClusterThreshold; // see above | |
167 | ||
168 | // -- Cluster -- | |
169 | ||
170 | /** Threshold for number of clusters per track | |
171 | * ( for long tracks ) | |
172 | */ | |
173 | Int_t fClusterThreshold; // see above | |
174 | ||
175 | /** Total number of cluster found */ | |
176 | ULong64_t fNTotalCluster; // see above | |
177 | ||
178 | /** Number of cluster which were used in tracks */ | |
179 | ULong64_t fNUsedCluster; // see above | |
180 | ||
181 | /** Average of ( number of clusters per track ), floored */ | |
182 | ULong64_t fAvgClusterPerTrack; // see above | |
183 | ||
184 | ClassDef(AliHLTTPCRunStatistics, 0); | |
185 | ||
186 | }; | |
187 | #endif | |
188 |