1 #ifndef ALIANALYSISTASKSPECTRAALLCHAOD_H
2 #define ALIANALYSISTASKSPECTRAALLCHAOD_H
4 /* See cxx source for full Copyright notice */
6 //-------------------------------------------------------------------------
7 // AliAnalysisTaskSpectraAllChAOD
12 // Author: Leonardo Milano, CERN
13 //-------------------------------------------------------------------------
16 class AliSpectraAODTrackCuts;
17 class AliSpectraAODEventCuts;
20 #include "AliAnalysisTaskSE.h"
22 class AliAnalysisTaskSpectraAllChAOD : public AliAnalysisTaskSE
26 AliAnalysisTaskSpectraAllChAOD() : AliAnalysisTaskSE(),
48 AliAnalysisTaskSpectraAllChAOD(const char *name);
49 virtual ~AliAnalysisTaskSpectraAllChAOD() {
50 Printf("calling detructor of AliAnalysisTaskSpectraAllChAOD - To be implemented");
53 void SetIsMC(Bool_t isMC = kFALSE) {fIsMC = isMC; };
54 Bool_t GetIsMC() const { return fIsMC;};
56 void SetDoDoubleCounting(Bool_t doDoubleCounting = kFALSE) {fDoDoubleCounting = doDoubleCounting; };
57 Bool_t GetDoDoubleCounting() const { return fDoDoubleCounting;};
59 void SetFillOnlyEvents(Bool_t fillOnlyEvents = kFALSE) {fFillOnlyEvents = fillOnlyEvents; };
60 Bool_t GetFillOnlyEvents() const { return fFillOnlyEvents;};
62 void SetCharge(Int_t charge = 0) {fCharge = charge; };
63 Int_t GetCharge() const { return fCharge;};
65 void SetVZEROside(Int_t side = 0) {fVZEROside = side; };
66 Int_t GetVZEROside() const { return fVZEROside;};
68 virtual void UserCreateOutputObjects();
69 virtual void UserExec(Option_t *option);
70 virtual void Terminate(Option_t *);
72 AliSpectraAODTrackCuts * GetTrackCuts() { return fTrackCuts; }
73 AliSpectraAODEventCuts * GetEventCuts() { return fEventCuts; }
74 AliHelperPID * GetHelperPID() { return fHelperPID; }
75 TList * GetOutputList() { return fOutput; }
77 void SetTrackCuts(AliSpectraAODTrackCuts * tc) { fTrackCuts = tc; }
78 void SetEventCuts(AliSpectraAODEventCuts * vc) { fEventCuts = vc; }
79 void SetHelperPID(AliHelperPID* pid) { fHelperPID = pid; }
80 void SetnCentBins(Int_t val) { fnCentBins = val; }
81 void SetnQvecBins(Int_t val) { fnQvecBins = val; }
82 void SetnNchBins(Int_t val) { fnNchBins = val; }
83 void SetQvecCalibMode(Bool_t mode) { fIsQvecCalibMode = mode; }
84 void SetQvecUpperLimit(Double_t val) { fQvecUpperLim = val; }
86 void SetIsAOD160(Bool_t aod) { fIsAOD160 = aod; }
87 void SetnDCABin(Int_t val) { fnDCABins = val; }
88 void SetDCAmin(Double_t val) { fDCAmin = val; }
89 void SetDCAmax(Double_t val) { fDCAmax = val; }
90 Bool_t GetDCA(const AliAODTrack* trk, Double_t * p);
91 void SetDCAzCut(Double_t val) { fDCAzCut = val; }
95 AliAODEvent * fAOD; //! AOD object
96 AliSpectraAODTrackCuts * fTrackCuts; // Track Cuts
97 AliSpectraAODEventCuts * fEventCuts; // Event Cuts
98 AliHelperPID * fHelperPID; // points to class for PID
99 Bool_t fIsMC; // true if processing MC
100 Bool_t fDoDoubleCounting; // true is double counting for Nsigma accepetd
101 Bool_t fFillOnlyEvents; // if true fill only NSparseHistEv
102 Int_t fCharge; // charge to be selected
103 Int_t fVZEROside; // 0: VZERO-A 1: VZERO-C
104 TList * fOutput; // output list
105 Int_t fnCentBins; // number of bins for the centrality axis
106 Int_t fnQvecBins; // number of bins for the q vector axis
107 Int_t fnNchBins; // number of bins for the Nch axis
108 Bool_t fIsQvecCalibMode; //calib mode for Qvector percentile
109 Double_t fQvecUpperLim; //Upper limit for Qvector
110 Bool_t fIsAOD160; // enable DCA for AOD160
111 Int_t fnDCABins; // number of bins for DCA axis
112 Double_t fDCAmin; // min DCA value
113 Double_t fDCAmax; // max DCA value
114 Double_t fDCAzCut; //cut on DCA z
115 AliAnalysisTaskSpectraAllChAOD(const AliAnalysisTaskSpectraAllChAOD&);
116 AliAnalysisTaskSpectraAllChAOD& operator=(const AliAnalysisTaskSpectraAllChAOD&);
118 ClassDef(AliAnalysisTaskSpectraAllChAOD, 9);