ROOT logo
#ifndef ALIANALYSISTASKCPQA_H
#define ALIANALYSISTASKCPQA_H

class TList;
class TH1F;
class TH2F;
class TH3F;
class AliTriggerAnalysis;


#include "AliAnalysisTaskSE.h"

class AliAnalysisTaskCPQA : public AliAnalysisTaskSE {
 public:

  AliAnalysisTaskCPQA(const char *name="<default name>");
  virtual ~AliAnalysisTaskCPQA() ;// { /*if (fOutputList) delete fOutputList;*/}
  
  virtual void   UserCreateOutputObjects();
  virtual void   UserExec(Option_t* option);
  virtual void   Terminate(Option_t *);

  void LoopESD();
  void LoopESDMC();

  
  void UseMC(Bool_t useMC=kTRUE) { fUseMC = useMC;}
  
 private:
  Bool_t       fUseMC; //MC flag
  AliESDEvent *fESD; // esd event
  TList	      *fOutputList; //! output list

  TH1F *fhEvent;//!


//  Double_t fEtaMaxM;
//  Double_t fEtaMaxD;
//  Double_t fVtxZmax;

  TH2F *fhV0A[4];//!
  TH2F *fhV0C[4];//!
  TH2F *fhV0online[4];//!
  TH2F *fhV0offline[4];//!
  TH1F *fhSPDFiredChip[4];//!
  TH1F *fhSPDFastOrChip[4];//!
  TH1F *fhReferenceMultiplicity[4];//!
  TH3F *fhVtxTrack[4];//!

  AliTriggerAnalysis * fTriggerAnalysis; // trigger analysis object, to get the offline triggers

  TH1F* Hist1D(const char* name, Int_t nBins, Double_t xMin, Double_t xMax,  const char* xLabel="", Int_t color=1, Int_t ls=1, const char* yLabel="");
  TH2F *Hist2D(const char* name, Int_t nBinsx, Double_t xMin, Double_t xMax, Int_t nBinsy, Double_t yMin, Double_t yMax, const char* xLabel="", const char* yLabel="", Int_t color=1);
  TH3F *Hist3D(const char* name, Int_t nBinsx, Double_t xMin, Double_t xMax, Int_t nBinsy, Double_t yMin, Double_t yMax,  Int_t nBinsz, Double_t zMin, Double_t zMax, const char* xLabel="", const char* yLabel="", const char *zLabel="");

  // public:
    AliAnalysisTaskCPQA(const AliAnalysisTaskCPQA&); // not implemented
    AliAnalysisTaskCPQA& operator=(const AliAnalysisTaskCPQA&); // not implemented
  
  ClassDef(AliAnalysisTaskCPQA, 1);
};

#endif
 AliAnalysisTaskCPQA.h:1
 AliAnalysisTaskCPQA.h:2
 AliAnalysisTaskCPQA.h:3
 AliAnalysisTaskCPQA.h:4
 AliAnalysisTaskCPQA.h:5
 AliAnalysisTaskCPQA.h:6
 AliAnalysisTaskCPQA.h:7
 AliAnalysisTaskCPQA.h:8
 AliAnalysisTaskCPQA.h:9
 AliAnalysisTaskCPQA.h:10
 AliAnalysisTaskCPQA.h:11
 AliAnalysisTaskCPQA.h:12
 AliAnalysisTaskCPQA.h:13
 AliAnalysisTaskCPQA.h:14
 AliAnalysisTaskCPQA.h:15
 AliAnalysisTaskCPQA.h:16
 AliAnalysisTaskCPQA.h:17
 AliAnalysisTaskCPQA.h:18
 AliAnalysisTaskCPQA.h:19
 AliAnalysisTaskCPQA.h:20
 AliAnalysisTaskCPQA.h:21
 AliAnalysisTaskCPQA.h:22
 AliAnalysisTaskCPQA.h:23
 AliAnalysisTaskCPQA.h:24
 AliAnalysisTaskCPQA.h:25
 AliAnalysisTaskCPQA.h:26
 AliAnalysisTaskCPQA.h:27
 AliAnalysisTaskCPQA.h:28
 AliAnalysisTaskCPQA.h:29
 AliAnalysisTaskCPQA.h:30
 AliAnalysisTaskCPQA.h:31
 AliAnalysisTaskCPQA.h:32
 AliAnalysisTaskCPQA.h:33
 AliAnalysisTaskCPQA.h:34
 AliAnalysisTaskCPQA.h:35
 AliAnalysisTaskCPQA.h:36
 AliAnalysisTaskCPQA.h:37
 AliAnalysisTaskCPQA.h:38
 AliAnalysisTaskCPQA.h:39
 AliAnalysisTaskCPQA.h:40
 AliAnalysisTaskCPQA.h:41
 AliAnalysisTaskCPQA.h:42
 AliAnalysisTaskCPQA.h:43
 AliAnalysisTaskCPQA.h:44
 AliAnalysisTaskCPQA.h:45
 AliAnalysisTaskCPQA.h:46
 AliAnalysisTaskCPQA.h:47
 AliAnalysisTaskCPQA.h:48
 AliAnalysisTaskCPQA.h:49
 AliAnalysisTaskCPQA.h:50
 AliAnalysisTaskCPQA.h:51
 AliAnalysisTaskCPQA.h:52
 AliAnalysisTaskCPQA.h:53
 AliAnalysisTaskCPQA.h:54
 AliAnalysisTaskCPQA.h:55
 AliAnalysisTaskCPQA.h:56
 AliAnalysisTaskCPQA.h:57
 AliAnalysisTaskCPQA.h:58
 AliAnalysisTaskCPQA.h:59
 AliAnalysisTaskCPQA.h:60
 AliAnalysisTaskCPQA.h:61
 AliAnalysisTaskCPQA.h:62
 AliAnalysisTaskCPQA.h:63