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(),
47 AliAnalysisTaskSpectraAllChAOD(const char *name);
48 virtual ~AliAnalysisTaskSpectraAllChAOD() {
49 Printf("calling detructor of AliAnalysisTaskSpectraAllChAOD - To be implemented");
52 void SetIsMC(Bool_t isMC = kFALSE) {fIsMC = isMC; };
53 Bool_t GetIsMC() const { return fIsMC;};
55 void SetDoDoubleCounting(Bool_t doDoubleCounting = kFALSE) {fDoDoubleCounting = doDoubleCounting; };
56 Bool_t GetDoDoubleCounting() const { return fDoDoubleCounting;};
58 void SetFillOnlyEvents(Bool_t fillOnlyEvents = kFALSE) {fFillOnlyEvents = fillOnlyEvents; };
59 Bool_t GetFillOnlyEvents() const { return fFillOnlyEvents;};
61 void SetCharge(Int_t charge = 0) {fCharge = charge; };
62 Int_t GetCharge() const { return fCharge;};
64 void SetVZEROside(Int_t side = 0) {fVZEROside = side; };
65 Int_t GetVZEROside() const { return fVZEROside;};
67 virtual void UserCreateOutputObjects();
68 virtual void UserExec(Option_t *option);
69 virtual void Terminate(Option_t *);
71 AliSpectraAODTrackCuts * GetTrackCuts() { return fTrackCuts; }
72 AliSpectraAODEventCuts * GetEventCuts() { return fEventCuts; }
73 AliHelperPID * GetHelperPID() { return fHelperPID; }
74 TList * GetOutputList() { return fOutput; }
76 void SetTrackCuts(AliSpectraAODTrackCuts * tc) { fTrackCuts = tc; }
77 void SetEventCuts(AliSpectraAODEventCuts * vc) { fEventCuts = vc; }
78 void SetHelperPID(AliHelperPID* pid) { fHelperPID = pid; }
79 void SetnCentBins(Int_t val) { fnCentBins = val; }
80 void SetnQvecBins(Int_t val) { fnQvecBins = val; }
81 void SetnNchBins(Int_t val) { fnNchBins = val; }
82 void SetQvecCalibMode(Bool_t mode) { fIsQvecCalibMode = mode; }
83 void SetQvecUpperLimit(Double_t val) { fQvecUpperLim = val; }
85 void SetIsAOD160(Bool_t aod) { fIsAOD160 = aod; }
86 void SetnDCABin(Int_t val) { fnDCABins = val; }
87 void SetDCAmin(Double_t val) { fDCAmin = val; }
88 void SetDCAmax(Double_t val) { fDCAmax = val; }
89 Bool_t GetDCA(const AliAODTrack* trk, Double_t * p);
93 AliAODEvent * fAOD; //! AOD object
94 AliSpectraAODTrackCuts * fTrackCuts; // Track Cuts
95 AliSpectraAODEventCuts * fEventCuts; // Event Cuts
96 AliHelperPID * fHelperPID; // points to class for PID
97 Bool_t fIsMC; // true if processing MC
98 Bool_t fDoDoubleCounting; // true is double counting for Nsigma accepetd
99 Bool_t fFillOnlyEvents; // if true fill only NSparseHistEv
100 Int_t fCharge; // charge to be selected
101 Int_t fVZEROside; // 0: VZERO-A 1: VZERO-C
102 TList * fOutput; // output list
103 Int_t fnCentBins; // number of bins for the centrality axis
104 Int_t fnQvecBins; // number of bins for the q vector axis
105 Int_t fnNchBins; // number of bins for the Nch axis
106 Bool_t fIsQvecCalibMode; //calib mode for Qvector percentile
107 Double_t fQvecUpperLim; //Upper limit for Qvector
108 Bool_t fIsAOD160; // enable DCA for AOD160
109 Int_t fnDCABins; // number of bins for DCA axis
110 Double_t fDCAmin; // min DCA value
111 Double_t fDCAmax; // max DCA value
112 AliAnalysisTaskSpectraAllChAOD(const AliAnalysisTaskSpectraAllChAOD&);
113 AliAnalysisTaskSpectraAllChAOD& operator=(const AliAnalysisTaskSpectraAllChAOD&);
115 ClassDef(AliAnalysisTaskSpectraAllChAOD, 8);