ROOT logo
#ifndef ALIANALYSISTASKZDCPBPB_H
#define ALIANALYSISTASKZDCPBPB_H

/* Copyright(c) 1998-2008, ALICE Experiment at CERN, All rights reserved. *
 * See cxx source for full Copyright notice                               */

//*****************************************************
//   Class AliAnalysisTaskZDCpA
//   author: Chiara Oppedisano
//*****************************************************

#include "AliAnalysisTaskSE.h"

class TROOT;
class TSystem;
class TList;
class TFile;
class TH1F;
class TH2F;

#include "AliAnalysisTaskSE.h"

class AliAnalysisTaskZDCpA : public AliAnalysisTaskSE {

 public:
  
  enum kAnalysisInput{kESD=1, kAOD=2}; 
  
  AliAnalysisTaskZDCpA();
  AliAnalysisTaskZDCpA(const char *name);
  AliAnalysisTaskZDCpA& operator= (const AliAnalysisTaskZDCpA& ana);
  AliAnalysisTaskZDCpA(const AliAnalysisTaskZDCpA& c);
  virtual ~AliAnalysisTaskZDCpA();

  // Implementation of interface methods
  virtual void UserCreateOutputObjects();
  virtual void UserExec(Option_t *option);
  virtual void Terminate(Option_t *option);

  virtual void  SetDebugLevel(Int_t level) {fDebug = level;}
  void SetInput(int input) {fAnalysisInput = input;}
  void SetMCInput() {fIsMCInput = kTRUE;}
  void SetCentralityRange(Float_t centrlow=0., Float_t centrup=100.) {fCentrLowLim=centrlow;
  fCentrUpLim=centrup;}
  void SetCentralityEstimator(TString centrest = "V0M") {fCentrEstimator=centrest;}              
 
 private:
  
  Int_t    fAnalysisInput;      // analysis input
  Bool_t   fIsMCInput;          // true when input is MC
  Float_t  fCentrLowLim;	// centrality lower limit
  Float_t  fCentrUpLim;		// centrality upper limit
  TString  fCentrEstimator;     // string for the centrality estimator   
  //
  TList   *fOutput;	   	//! list send on output slot 0
  //
  TH1F *fhZNCPM[5];		//! ZNC PM high res.
  TH1F *fhZNAPM[5];		//! ZNA PM high res.
  TH1F *fhZPCPM[5];		//! ZPC PM high res.
  TH1F *fhZPAPM[5];		//! ZPA PM high res.
  TH1F *fhZEM[2];		//! ZEM PM high res.
  TH1F *fhZNCPMlg[5];		//! ZNC PM low res.
  TH1F *fhZNAPMlg[5];		//! ZNA PM low res.
  TH1F *fhZPCPMlg[5];		//! ZPC PM low res.
  TH1F *fhZPAPMlg[5];		//! ZPA PM low res.
  TH1F *fhTDCraw[6];		//! raw TDC histos
  TH1F *fhTDC[6];		//! corrected TDC histos
  //
  TH1F *fhZNCPMQiPMC[4];	//! PMQi/PMC for ZNC
  TH1F *fhZNAPMQiPMC[4];	//! PMQi/PMC for ZNA
  TH1F *fhZPCPMQiPMC[4];	//! PMQi/PMC for ZPC
  TH1F *fhZPAPMQiPMC[4];	//! PMQi/PMC for ZPA
  //
  TH2F *fhZNCvsZNA;		//! ZNC vs ZNA;
  TH2F *fhZPCvsZPA;		//! ZPC vs ZPA;
  TH2F *fhZNCvsZPC;		//! ZNC vs ZPC;
  TH2F *fhZNAvsZPA;		//! ZNA vs ZPA;
  TH2F *fhZNAvsZEM;		//! ZNA vs ZEM;
  TH2F *fhZNCvsZEM;		//! ZNC vs ZEM;
  TH1F *fhZNAwV0M;		//! ZNA weighted with V0M centr. perc.;
  TH1F *fhZNCwV0M;		//! ZNC weighted with V0M centr. perc.;
  TH2F *fhZNAvsVZERO;		//! ZNA vs VZERO;
  TH2F *fhZNCvsVZERO;		//! ZNC vs VZERO;
  TH2F *fhZDCAvsTracklets;	//! ZDCA vs N_tracklets;
  TH2F *fhZDCCvsTracklets;	//! ZDCC vs N_tracklets;
  TH2F *fhVZEROvsZEM;		//! VZERO vs ZEM;
  TH2F *fhDebunch;		//! Debunch;
  TH2F *fhZNCcentroid;		//! ZNC centroid
  TH2F *fhZNAcentroid;		//! ZNA centroid
  TH2F *fhPMCvsPMQ[4];		//! PMC vs sum PMQi
  //
  TH2F *fhZNCvscentrality;	//! ZNC vs. centrality
  TH2F *fhZNAvscentrality;	//! ZNA vs. centrality
  TH2F *fhZPCvscentrality;	//! ZPC vs. centrality
  TH2F *fhZPAvscentrality;	//! ZPA vs. centrality
  //
  TH2F *fhZNCpmcvscentr;	//! ZNC vs. centrality
  TH2F *fhZNApmcvscentr;   	//! ZNA vs. centrality
  TH2F *fhZPCpmcvscentr;   	//! ZPC vs. centrality
  TH2F *fhZPApmcvscentr;   	//! ZPA vs. centrality
 
  ClassDef(AliAnalysisTaskZDCpA,1); 

};

#endif

 AliAnalysisTaskZDCpA.h:1
 AliAnalysisTaskZDCpA.h:2
 AliAnalysisTaskZDCpA.h:3
 AliAnalysisTaskZDCpA.h:4
 AliAnalysisTaskZDCpA.h:5
 AliAnalysisTaskZDCpA.h:6
 AliAnalysisTaskZDCpA.h:7
 AliAnalysisTaskZDCpA.h:8
 AliAnalysisTaskZDCpA.h:9
 AliAnalysisTaskZDCpA.h:10
 AliAnalysisTaskZDCpA.h:11
 AliAnalysisTaskZDCpA.h:12
 AliAnalysisTaskZDCpA.h:13
 AliAnalysisTaskZDCpA.h:14
 AliAnalysisTaskZDCpA.h:15
 AliAnalysisTaskZDCpA.h:16
 AliAnalysisTaskZDCpA.h:17
 AliAnalysisTaskZDCpA.h:18
 AliAnalysisTaskZDCpA.h:19
 AliAnalysisTaskZDCpA.h:20
 AliAnalysisTaskZDCpA.h:21
 AliAnalysisTaskZDCpA.h:22
 AliAnalysisTaskZDCpA.h:23
 AliAnalysisTaskZDCpA.h:24
 AliAnalysisTaskZDCpA.h:25
 AliAnalysisTaskZDCpA.h:26
 AliAnalysisTaskZDCpA.h:27
 AliAnalysisTaskZDCpA.h:28
 AliAnalysisTaskZDCpA.h:29
 AliAnalysisTaskZDCpA.h:30
 AliAnalysisTaskZDCpA.h:31
 AliAnalysisTaskZDCpA.h:32
 AliAnalysisTaskZDCpA.h:33
 AliAnalysisTaskZDCpA.h:34
 AliAnalysisTaskZDCpA.h:35
 AliAnalysisTaskZDCpA.h:36
 AliAnalysisTaskZDCpA.h:37
 AliAnalysisTaskZDCpA.h:38
 AliAnalysisTaskZDCpA.h:39
 AliAnalysisTaskZDCpA.h:40
 AliAnalysisTaskZDCpA.h:41
 AliAnalysisTaskZDCpA.h:42
 AliAnalysisTaskZDCpA.h:43
 AliAnalysisTaskZDCpA.h:44
 AliAnalysisTaskZDCpA.h:45
 AliAnalysisTaskZDCpA.h:46
 AliAnalysisTaskZDCpA.h:47
 AliAnalysisTaskZDCpA.h:48
 AliAnalysisTaskZDCpA.h:49
 AliAnalysisTaskZDCpA.h:50
 AliAnalysisTaskZDCpA.h:51
 AliAnalysisTaskZDCpA.h:52
 AliAnalysisTaskZDCpA.h:53
 AliAnalysisTaskZDCpA.h:54
 AliAnalysisTaskZDCpA.h:55
 AliAnalysisTaskZDCpA.h:56
 AliAnalysisTaskZDCpA.h:57
 AliAnalysisTaskZDCpA.h:58
 AliAnalysisTaskZDCpA.h:59
 AliAnalysisTaskZDCpA.h:60
 AliAnalysisTaskZDCpA.h:61
 AliAnalysisTaskZDCpA.h:62
 AliAnalysisTaskZDCpA.h:63
 AliAnalysisTaskZDCpA.h:64
 AliAnalysisTaskZDCpA.h:65
 AliAnalysisTaskZDCpA.h:66
 AliAnalysisTaskZDCpA.h:67
 AliAnalysisTaskZDCpA.h:68
 AliAnalysisTaskZDCpA.h:69
 AliAnalysisTaskZDCpA.h:70
 AliAnalysisTaskZDCpA.h:71
 AliAnalysisTaskZDCpA.h:72
 AliAnalysisTaskZDCpA.h:73
 AliAnalysisTaskZDCpA.h:74
 AliAnalysisTaskZDCpA.h:75
 AliAnalysisTaskZDCpA.h:76
 AliAnalysisTaskZDCpA.h:77
 AliAnalysisTaskZDCpA.h:78
 AliAnalysisTaskZDCpA.h:79
 AliAnalysisTaskZDCpA.h:80
 AliAnalysisTaskZDCpA.h:81
 AliAnalysisTaskZDCpA.h:82
 AliAnalysisTaskZDCpA.h:83
 AliAnalysisTaskZDCpA.h:84
 AliAnalysisTaskZDCpA.h:85
 AliAnalysisTaskZDCpA.h:86
 AliAnalysisTaskZDCpA.h:87
 AliAnalysisTaskZDCpA.h:88
 AliAnalysisTaskZDCpA.h:89
 AliAnalysisTaskZDCpA.h:90
 AliAnalysisTaskZDCpA.h:91
 AliAnalysisTaskZDCpA.h:92
 AliAnalysisTaskZDCpA.h:93
 AliAnalysisTaskZDCpA.h:94
 AliAnalysisTaskZDCpA.h:95
 AliAnalysisTaskZDCpA.h:96
 AliAnalysisTaskZDCpA.h:97
 AliAnalysisTaskZDCpA.h:98
 AliAnalysisTaskZDCpA.h:99
 AliAnalysisTaskZDCpA.h:100
 AliAnalysisTaskZDCpA.h:101
 AliAnalysisTaskZDCpA.h:102
 AliAnalysisTaskZDCpA.h:103
 AliAnalysisTaskZDCpA.h:104
 AliAnalysisTaskZDCpA.h:105
 AliAnalysisTaskZDCpA.h:106
 AliAnalysisTaskZDCpA.h:107