1 #ifndef ALIANAVZEROQA_H
2 #define ALIANAVZEROQA_H
4 //------------------------------
5 // Analysis task for quality-assurance
8 // 05/12/2009 cvetan.cheshkov@cern.ch
9 //------------------------------
11 #include "AliAnalysisTaskSE.h"
13 class AliAnaVZEROQA : public AliAnalysisTaskSE
17 AliAnaVZEROQA(const char *name);
18 virtual ~AliAnaVZEROQA() {}
20 virtual void UserCreateOutputObjects();
21 virtual void UserExec(Option_t *option);
22 virtual void Terminate(Option_t *);
24 TH1F* CreateHisto1D(const char* name, const char* title, Int_t nBins, Double_t xMin, Double_t xMax,
25 const char* xLabel = NULL, const char* yLabel = NULL);
26 TH2F* CreateHisto2D(const char* name, const char* title, Int_t nBinsX, Double_t xMin, Double_t xMax,
27 Int_t nBinsY, Double_t yMin, Double_t yMax,
28 const char* xLabel = NULL, const char* yLabel = NULL);
30 Float_t CorrectLeadingTime(Int_t i, Float_t time, Float_t adc) const;
34 TList* fListOfHistos; // List of output histos
36 TH1F *fhAdcNoTimeA; // ADC spectra (no time measurement) for V0A
37 TH1F *fhAdcWithTimeA; // ADC spectra (with time measurement) for V0A
38 TH1F *fhAdcNoTimeC; // ADC spectra (no time measurement) for V0C
39 TH1F *fhAdcWithTimeC; // ADC spectra (with time measurement) for V0C
41 TH2F *fhAdcPMTNoTime; // ADC spectra per PMT (no time measurement)
42 TH2F *fhAdcPMTWithTime; // ADC spectra per PMT (with time measurement)
44 TH1F *fhTimeA; // Time spectra for V0A
45 TH1F *fhTimeC; // Time spectra for V0C
47 TH1F *fhWidthA; // Signal width for V0A
48 TH1F *fhWidthC; // Signal width for V0C
50 TH2F *fhTimePMT; // Time spectra per PMT
51 TH2F *fhWidthPMT; // Signal width per PMT
53 TH2F *fhAdcWidthA; // ADC vs Signal width for V0A
54 TH2F *fhAdcWidthC; // ADC vs Signal width for V0C
56 TH2F *fhTimeCorr; // Corrected mean time V0C vs V0A
58 TH2F *fhAdcTimeA; // ADC vs Time for V0A
59 TH2F *fhAdcTimeC; // ADC vs Time for V0C
61 TH1F *fV0a; // Number of fired PMTs in V0A
62 TH1F *fV0c; // Number of fired PMTs in V0C
63 TH1F *fV0multA; // Mutiplicity in V0A
64 TH1F *fV0multC; // Mutiplicity in V0C
65 TH1F *fV0ampl; // ADC spectra for both rings
67 TH2F *fhTimePMTCorr; // Corrected time per PMT
68 TH2F *fhEvents; // Event statistics histogram
70 TH2F *fhVtxXYBB; // XY vertex for beam-beam events
71 TH1F *fhVtxZBB; // Z vertex for beam-beam events
72 TH2F *fhVtxXYBGA; // XY vertex for beam-gas (A side) events
73 TH1F *fhVtxZBGA; // Z vertex for beam-gas (A side) events
74 TH2F *fhVtxXYBGC; // XY vertex for beam-gas (C side) events
75 TH1F *fhVtxZBGC; // Z vertex for beam-gas (C side) events
77 AliAnaVZEROQA(const AliAnaVZEROQA&); // not implemented
78 AliAnaVZEROQA& operator=(const AliAnaVZEROQA&); // not implemented
80 ClassDef(AliAnaVZEROQA, 1) // VZERO QA task