- added TPCLib to doxygen docu, code corrections according to documentation and effC++
[u/mrichter/AliRoot.git] / HLT / TPCLib / AliHLTTPCBenchmark.h
CommitLineData
a6c02c85 1// @(#) $Id$
c2f37813 2// Original: AliL3Benchmark.h,v 1.6 2004/06/26 11:39:40 loizides
a6c02c85 3
4#ifndef AliHLTTPCBenchmarkH
5#define AliHLTTPCBenchmarkH
6
7//_____________________________________________________________
8//
9// AliHLTTPCBenchmark
10//
11// Benchmark class for level3 code
12//
13//
14
15#ifndef no_root
16class TStopwatch;
17class TString;
18#else
19class AliHLTTPCStopwatch;
20#endif
600e6a1b 21#include "AliHLTLogging.h"
a6c02c85 22
600e6a1b 23class AliHLTTPCBenchmark : public AliHLTLogging {
a6c02c85 24
25public:
600e6a1b 26 /** standard constructor */
27 AliHLTTPCBenchmark();
28 /** not a valid copy constructor, defined according to effective C++ style */
29 AliHLTTPCBenchmark(const AliHLTTPCBenchmark&);
30 /** not a valid assignment op, but defined according to effective C++ style */
31 AliHLTTPCBenchmark& operator=(const AliHLTTPCBenchmark&);
32 /** destructor */
33 virtual ~AliHLTTPCBenchmark();
34 Int_t GetBench(const Char_t *name);
35 void Start(const Char_t *name);
a6c02c85 36 void Stop(const char *name);
600e6a1b 37 void Analyze(const Char_t* name);
a6c02c85 38
39 static Double_t GetCpuTime();
40
41private:
42
43 Int_t fNbench; //Number of active benchmarks
44 Int_t fNmax; //Maximum number of benchmarks initialized
45#ifndef no_root
46 TString *fNames; //Names of benchmarks
47 TStopwatch *fTimer; //Timers
48#else
49 Char_t **fNames; //Names of benchmarks
50 AliHLTTPCStopwatch *fTimer; //Timers
51#endif
52 Float_t *fSum; //sum of time
53 Float_t *fMin; //min of time
54 Float_t *fMax; //max of time
55 Int_t *fCount;// counter
56
57 ClassDef(AliHLTTPCBenchmark,0) //HLTTPC benchmark
58};
59
60#endif