#ifndef ALITRDCALIBCHAMBERSTATUS_H
#define ALITRDCALIBCHAMBERSTATUS_H
#ifndef ROOT_THnSparse
#include <THnSparse.h>
#include <TCanvas.h>
#include <TH2.h>
#endif
#include <AliTRDtrackV1.h>
class AliRawReader;
class AliTRDCalChamberStatus;
class AliRawReader;
class AliTRDCalDCSv2;
struct eventHeaderStruct;
class AliTRDCalibChamberStatus : public TObject {
public:
AliTRDCalibChamberStatus();
AliTRDCalibChamberStatus(const AliTRDCalibChamberStatus &ped);
virtual ~AliTRDCalibChamberStatus();
AliTRDCalibChamberStatus& operator = (const AliTRDCalibChamberStatus &source);
void ProcessTrack(const AliTRDtrackV1 * trdTrack);
void ProcessEvent(AliRawReader *rawReader, Int_t nevents_physics);
void Init();
void AnalyseHisto(Int_t limit=200, Double_t chamberlimit=0.05);
void CheckEORStatus(const AliTRDCalDCSv2 *calDCS);
void Add(const AliTRDCalibChamberStatus *calibChamberStatus);
Int_t GetNumberEventNotEmpty() const { return fCounterEventNotEmpty; };
THnSparseI *GetSparseI() const {return fHnSparseI;};
THnSparseI *GetSparseHCM() const {return fHnSparseHCM;};
THnSparseI *GetSparseEvtDet() const {return fHnSparseEvtDet;};
THnSparseI *GetSparseDebug() const {return fHnSparseDebug;};
THnSparseI *GetSparseMCM() const {return fHnSparseMCM;};
void SetSparseI(THnSparseI *sparse) { fHnSparseI=sparse; }
AliTRDCalChamberStatus *GetCalChamberStatus() const {return fCalChamberStatus;};
void DumpToFile(const Char_t *filename, const Char_t *dir="", Bool_t append=kFALSE);
Bool_t TestEventHisto(Int_t nevent);
TH2D *PlotSparseI(Int_t sm, Int_t side);
TH2F *MakeHisto2DSmPlEORStatus(const AliTRDCalDCSv2 *calDCS, Int_t sm, Int_t pl);
TCanvas *PlotHistos2DSmEORStatus(AliTRDCalDCSv2 *calDCS,Int_t sm, const Char_t *name);
void SetDebugLevel(Short_t level) { fDebugLevel = level; }
private:
Int_t fDetector;
Int_t fNumberOfTimeBins;
Int_t fCounterEventNotEmpty;
AliTRDCalChamberStatus *fCalChamberStatus;
THnSparseI *fHnSparseI;
THnSparseI *fHnSparseHCM;
THnSparseI *fHnSparseEvtDet;
THnSparseI *fHnSparseDebug;
THnSparseI *fHnSparseMCM;
TCanvas *fC1;
Short_t fDebugLevel;
ClassDef(AliTRDCalibChamberStatus,1)
};
#endif
AliTRDCalibChamberStatus.h:1 AliTRDCalibChamberStatus.h:2 AliTRDCalibChamberStatus.h:3 AliTRDCalibChamberStatus.h:4 AliTRDCalibChamberStatus.h:5 AliTRDCalibChamberStatus.h:6 AliTRDCalibChamberStatus.h:7 AliTRDCalibChamberStatus.h:8 AliTRDCalibChamberStatus.h:9 AliTRDCalibChamberStatus.h:10 AliTRDCalibChamberStatus.h:11 AliTRDCalibChamberStatus.h:12 AliTRDCalibChamberStatus.h:13 AliTRDCalibChamberStatus.h:14 AliTRDCalibChamberStatus.h:15 AliTRDCalibChamberStatus.h:16 AliTRDCalibChamberStatus.h:17 AliTRDCalibChamberStatus.h:18 AliTRDCalibChamberStatus.h:19 AliTRDCalibChamberStatus.h:20 AliTRDCalibChamberStatus.h:21 AliTRDCalibChamberStatus.h:22 AliTRDCalibChamberStatus.h:23 AliTRDCalibChamberStatus.h:24 AliTRDCalibChamberStatus.h:25 AliTRDCalibChamberStatus.h:26 AliTRDCalibChamberStatus.h:27 AliTRDCalibChamberStatus.h:28 AliTRDCalibChamberStatus.h:29 AliTRDCalibChamberStatus.h:30 AliTRDCalibChamberStatus.h:31 AliTRDCalibChamberStatus.h:32 AliTRDCalibChamberStatus.h:33 AliTRDCalibChamberStatus.h:34 AliTRDCalibChamberStatus.h:35 AliTRDCalibChamberStatus.h:36 AliTRDCalibChamberStatus.h:37 AliTRDCalibChamberStatus.h:38 AliTRDCalibChamberStatus.h:39 AliTRDCalibChamberStatus.h:40 AliTRDCalibChamberStatus.h:41 AliTRDCalibChamberStatus.h:42 AliTRDCalibChamberStatus.h:43 AliTRDCalibChamberStatus.h:44 AliTRDCalibChamberStatus.h:45 AliTRDCalibChamberStatus.h:46 AliTRDCalibChamberStatus.h:47 AliTRDCalibChamberStatus.h:48 AliTRDCalibChamberStatus.h:49 AliTRDCalibChamberStatus.h:50 AliTRDCalibChamberStatus.h:51 AliTRDCalibChamberStatus.h:52 AliTRDCalibChamberStatus.h:53 AliTRDCalibChamberStatus.h:54 AliTRDCalibChamberStatus.h:55 AliTRDCalibChamberStatus.h:56 AliTRDCalibChamberStatus.h:57 AliTRDCalibChamberStatus.h:58 AliTRDCalibChamberStatus.h:59 AliTRDCalibChamberStatus.h:60 AliTRDCalibChamberStatus.h:61 AliTRDCalibChamberStatus.h:62 AliTRDCalibChamberStatus.h:63 AliTRDCalibChamberStatus.h:64 AliTRDCalibChamberStatus.h:65 AliTRDCalibChamberStatus.h:66 AliTRDCalibChamberStatus.h:67 AliTRDCalibChamberStatus.h:68 AliTRDCalibChamberStatus.h:69 AliTRDCalibChamberStatus.h:70 AliTRDCalibChamberStatus.h:71 AliTRDCalibChamberStatus.h:72 AliTRDCalibChamberStatus.h:73 AliTRDCalibChamberStatus.h:74 AliTRDCalibChamberStatus.h:75 AliTRDCalibChamberStatus.h:76 AliTRDCalibChamberStatus.h:77 AliTRDCalibChamberStatus.h:78 AliTRDCalibChamberStatus.h:79 AliTRDCalibChamberStatus.h:80 AliTRDCalibChamberStatus.h:81 AliTRDCalibChamberStatus.h:82 AliTRDCalibChamberStatus.h:83 AliTRDCalibChamberStatus.h:84 AliTRDCalibChamberStatus.h:85 AliTRDCalibChamberStatus.h:86 AliTRDCalibChamberStatus.h:87 AliTRDCalibChamberStatus.h:88 AliTRDCalibChamberStatus.h:89 AliTRDCalibChamberStatus.h:90 AliTRDCalibChamberStatus.h:91 AliTRDCalibChamberStatus.h:92 AliTRDCalibChamberStatus.h:93 AliTRDCalibChamberStatus.h:94 AliTRDCalibChamberStatus.h:95 AliTRDCalibChamberStatus.h:96 AliTRDCalibChamberStatus.h:97 AliTRDCalibChamberStatus.h:98 AliTRDCalibChamberStatus.h:99 AliTRDCalibChamberStatus.h:100