]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/TPCLib/AliHLTTPCRunStatistics.h
added new helper components to libAliHLTUtil (EsdCollector and AliHLTOUTPublisher...
[u/mrichter/AliRoot.git] / HLT / TPCLib / AliHLTTPCRunStatistics.h
CommitLineData
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
44class AliHLTTPCRunStatistics : public AliHLTRunStatistics {
45
46public:
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
150private:
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