Adding macros for ACORDE: sim&rec, read raw-data,esd & hits (*.C macros and AliAnalys...
[u/mrichter/AliRoot.git] / TRD / AliTRDCalibChamberStatus.h
CommitLineData
6c1053a8 1#ifndef ALITRDCALIBCHAMBERSTATUS_H
2#define ALITRDCALIBCHAMBERSTATUS_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id: AliTRDCalibChamberStatus.h 34340 2009-08-20 07:48:28Z cblume $ */
7
8///////////////////////////////////////////////////////////////////////////////
9// //
10// TRD calibration class for online calibration //
11// //
12///////////////////////////////////////////////////////////////////////////////
13
14#ifndef ROOT_THnSparse
15#include <THnSparse.h>
16#endif
17
18class AliRawReader;
19
20class AliTRDCalChamberStatus;
21class AliRawReader;
22class AliTRDCalDCS;
23
24
25struct eventHeaderStruct;
26
27class AliTRDCalibChamberStatus : public TObject {
28
29public:
30
31 AliTRDCalibChamberStatus();
32 AliTRDCalibChamberStatus(const AliTRDCalibChamberStatus &ped);
33 virtual ~AliTRDCalibChamberStatus();
34
35 AliTRDCalibChamberStatus& operator = (const AliTRDCalibChamberStatus &source);
36
37 void ProcessEvent(AliRawReader *rawReader, Int_t nevents_physics);
38
39 void Init();
40 void AnalyseHisto();
41 void CheckEORStatus(AliTRDCalDCS *calDCS);
42
43 void Add(AliTRDCalibChamberStatus *calibChamberStatus);
44
45 Int_t GetNumberEventNotEmpty() const { return fCounterEventNotEmpty; };
46
47 THnSparseI *GetSparseI() const {return fHnSparseI;};
48 THnSparseI *GetSparseHCM() const {return fHnSparseHCM;};
49 // for fDebugLevel>0
50 THnSparseI *GetSparseEvtDet() const {return fHnSparseEvtDet;};
51 THnSparseI *GetSparseDebug() const {return fHnSparseDebug;};
52 THnSparseI *GetSparseMCM() const {return fHnSparseMCM;};
53
54
55 AliTRDCalChamberStatus *GetCalChamberStatus() const {return fCalChamberStatus;};
56
57 void DumpToFile(const Char_t *filename, const Char_t *dir="", Bool_t append=kFALSE);
58
59 Bool_t TestEventHisto(Int_t nevent);
60
61 // Debug
62 void SetDebugLevel(Short_t level) { fDebugLevel = level; }
63
64 private:
65
66 Int_t fDetector; // Current detector
67 Int_t fNumberOfTimeBins; // Current number of time bins
68 Int_t fCounterEventNotEmpty; // Counter Events Not Empty
69
70 AliTRDCalChamberStatus *fCalChamberStatus; // AliTRDCalChamberStatus result
71
72 THnSparseI *fHnSparseI; // THnSparse for entries in half chambers
73 THnSparseI *fHnSparseHCM; // THnSparse for DCS half chamber status
74
75 // for fDebugLevel>0
76 THnSparseI *fHnSparseEvtDet; // THnSparse for entries in half chambers per events
77 THnSparseI *fHnSparseDebug; // THnSparse for half chambers satuts
78 THnSparseI *fHnSparseMCM; // THnSparse for DCS MCM status
79
80 Short_t fDebugLevel; // Flag for debugging
81
82 ClassDef(AliTRDCalibChamberStatus,1)
83
84};
85#endif
86