]>
Commit | Line | Data |
---|---|---|
0b19d121 | 1 | #ifndef ALIVZEROQADATAMAKERREC_H |
2 | #define ALIVZEROQADATAMAKERREC_H | |
508b9fc0 | 3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
508b9fc0 | 6 | |
0b19d121 | 7 | // Produces the data needed to calculate the quality assurance |
8 | // All data must be mergeable objects | |
9 | // Handles ESDs and RAWs | |
10 | // Histos will be used for Raw Data control and monitoring | |
508b9fc0 | 11 | |
12 | // --- ROOT system --- | |
3f563b2b | 13 | class TH1F; |
14 | class TH1I; | |
15 | class TObjArray; | |
508b9fc0 | 16 | |
17 | // --- Standard library --- | |
18 | ||
19 | // --- AliRoot header files --- | |
20 | #include "AliQADataMakerRec.h" | |
21 | ||
23eb5160 | 22 | class AliCDBManager; |
23 | class AliCDBStorage; | |
24 | class AliVZEROCalibData; | |
508b9fc0 | 25 | |
26 | class AliVZEROQADataMakerRec: public AliQADataMakerRec { | |
27 | ||
9bd82f77 | 28 | public: |
0b19d121 | 29 | // Histograms for Raw data control |
30 | enum HRawType_t {kPedestalInt0,kPedestalInt1,kPedestalCycleInt0,kPedestalCycleInt1,kPedestalTimeInt0,kPedestalTimeInt1 | |
c8d309e0 | 31 | ,kChargeEoI,kChargeEoIInt0,kChargeEoIInt1,kChargeEoITimeInt0,kChargeEoITimeInt1,kChargeEoICycleInt0,kChargeEoICycleInt1 |
0b19d121 | 32 | ,kChargeEoIBBInt0,kChargeEoIBBInt1,kChargeEoIBGInt0,kChargeEoIBGInt1,kChargeVsClockInt0,kChargeVsClockInt1 |
33 | ,kChargeMBBB0BG0Int0,kChargeMBBB0BG1Int0,kChargeMBBB1BG0Int0,kChargeMBBB1BG1Int0 | |
34 | ,kChargeMBBB0BG0Int1,kChargeMBBB0BG1Int1,kChargeMBBB1BG0Int1,kChargeMBBB1BG1Int1 | |
35 | ,kWidth,kWidthBB,kWidthBG,kHPTDCTime,kHPTDCTimeBB,kHPTDCTimeBG,kBBFlagVsClock,kBGFlagVsClock | |
36 | ,kMultiV0A,kMultiV0C,kChargeV0A,kChargeV0C,kChargeV0 | |
37 | ,kV0ATime,kV0CTime,kDiffTime | |
a8e23456 | 38 | ,kRawMIPV0A,kRawMIPV0C,kRawMIPV0,kRawMIPChannel |
c8d309e0 | 39 | ,kRawMeanChargePerRing,kRawMeanFlagPerRing,kRawDQMCharge,kRawDQMFlag |
40 | ,kBBFlagsPerChannel} ; | |
9bd82f77 | 41 | |
0b19d121 | 42 | enum HESDType_t {kCellMultiV0A,kCellMultiV0C,kMIPMultiV0A,kMIPMultiV0C,kMIPMultiChannel |
43 | ,kBBFlag,kBGFlag,kChargeChannel,kTimeChannel | |
44 | ,kESDV0ATime,kESDV0CTime,kESDDiffTime}; | |
9bd82f77 | 45 | |
508b9fc0 | 46 | public: |
0b19d121 | 47 | AliVZEROQADataMakerRec() ; // constructor |
508b9fc0 | 48 | AliVZEROQADataMakerRec(const AliVZEROQADataMakerRec& qadm) ; |
49 | AliVZEROQADataMakerRec& operator = (const AliVZEROQADataMakerRec& qadm) ; | |
50 | virtual ~AliVZEROQADataMakerRec() {;} // destructor | |
23eb5160 | 51 | AliVZEROCalibData *GetCalibData() const; |
6252ceeb | 52 | virtual void InitRaws() ; |
a8e23456 | 53 | void SetTrendingUpdateTime(size_t time) {fTrendingUpdateTime = time;}; |
508b9fc0 | 54 | |
23eb5160 | 55 | protected: |
0b19d121 | 56 | AliVZEROCalibData *fCalibData; //! calibration data |
23eb5160 | 57 | |
508b9fc0 | 58 | private: |
57eead61 | 59 | virtual void EndOfDetectorCycle(AliQAv1::TASKINDEX_t task, TObjArray ** list) ; |
508b9fc0 | 60 | virtual void InitESDs() ; |
44ed7a66 | 61 | virtual void InitDigits(); |
508b9fc0 | 62 | virtual void MakeESDs(AliESDEvent * esd) ; |
44ed7a66 | 63 | virtual void MakeRaws(AliRawReader* rawReader) ; |
6252ceeb | 64 | virtual void MakeDigits() ; |
44ed7a66 | 65 | virtual void MakeDigits(TTree* digitTree) ; |
508b9fc0 | 66 | virtual void StartOfDetectorCycle() ; |
a8e23456 | 67 | void AddTrendingEntry(); |
508b9fc0 | 68 | |
57eead61 | 69 | Int_t fEvent; // event index |
70 | Int_t fEven[64]; // even charge integrators | |
71 | Int_t fOdd[64]; // odd charge intergators | |
72 | Float_t fADCmean[128]; // mean adc per integrator | |
73 | size_t fNTotEvents; // total number of events | |
74 | size_t fNSubEvents; // number of events used in trending histos | |
75 | size_t fTrendingUpdateEvent; // event index of last update of the trending histos | |
76 | size_t fNTrendingUpdates; // number of updates in trending histos | |
77 | size_t fTrendingUpdateTime; // trending histos update time | |
78 | UInt_t fCycleStartTime; // timestamp of QA start-of-cycle | |
79 | UInt_t fCycleStopTime; // timestamp of QA end-of-cycle | |
80 | Double_t fMonitorRate; // monitoring rate | |
81 | Double_t fChargePerRing[8]; // charge per ring | |
82 | Double_t fFlagPerRing[8]; // flag per ring | |
83 | Double_t fChargePerChannel[64]; // charge per channel | |
84 | Double_t fFlagPerChannel[64]; // flag per channel | |
85 | Double_t fMeanChargePerChannel[64]; // mean charge per channel | |
86 | Double_t fMeanFlagPerChannel[64]; // mean flag per channel | |
23eb5160 | 87 | |
3dc953e2 | 88 | ClassDef(AliVZEROQADataMakerRec,2) // description |
508b9fc0 | 89 | |
90 | }; | |
91 | ||
0b19d121 | 92 | #endif // AliVZEROQADATAMAKERREC_H |