]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGLF/SPECTRA/PiKaPr/TestAOD/AliAnalysisTaskSpectraAllChAOD.h
switch to generated q-vector
[u/mrichter/AliRoot.git] / PWGLF / SPECTRA / PiKaPr / TestAOD / AliAnalysisTaskSpectraAllChAOD.h
1 #ifndef ALIANALYSISTASKSPECTRAALLCHAOD_H
2 #define ALIANALYSISTASKSPECTRAALLCHAOD_H
3
4 /*  See cxx source for full Copyright notice */
5
6 //-------------------------------------------------------------------------
7 //                      AliAnalysisTaskSpectraAllChAOD
8 //
9 //
10 //
11 //
12 // Author: Leonardo Milano, CERN
13 //-------------------------------------------------------------------------
14
15 class AliAODEvent;
16 class AliSpectraAODTrackCuts;
17 class AliSpectraAODEventCuts;
18 class AliHelperPID;
19
20 #include "AliAnalysisTaskSE.h"
21
22 class AliAnalysisTaskSpectraAllChAOD : public AliAnalysisTaskSE
23 {
24  public:
25   // constructors
26  AliAnalysisTaskSpectraAllChAOD() : AliAnalysisTaskSE(),
27     fAOD(0x0),
28     fTrackCuts(0x0),
29     fEventCuts(0x0),
30     fHelperPID(0x0),
31     fIsMC(0),
32     fDoDoubleCounting(0),
33     fFillOnlyEvents(0),
34     fCharge(0),
35     fVZEROside(0),
36     fOutput(0x0),
37     fnCentBins(20),
38     fnQvecBins(40),
39     fnNchBins(200),
40     fIsQvecCalibMode(0),
41     fQvecUpperLim(100),
42     fIsAOD160(1),
43     fnDCABins(60),
44     fDCAmin(-3),
45     fDCAmax(3),
46     fDCAzCut(0),
47     fQvecGen(0)
48       {}
49   AliAnalysisTaskSpectraAllChAOD(const char *name);
50   virtual ~AliAnalysisTaskSpectraAllChAOD() {
51     Printf("calling detructor of AliAnalysisTaskSpectraAllChAOD - To be implemented");
52   }
53   
54   void SetIsMC(Bool_t isMC = kFALSE)    {fIsMC = isMC; };
55   Bool_t GetIsMC()           const           { return fIsMC;};
56  
57   void SetDoDoubleCounting(Bool_t doDoubleCounting = kFALSE)    {fDoDoubleCounting = doDoubleCounting; };
58   Bool_t GetDoDoubleCounting()           const           { return fDoDoubleCounting;};
59  
60   void SetFillOnlyEvents(Bool_t fillOnlyEvents = kFALSE)    {fFillOnlyEvents = fillOnlyEvents; };
61   Bool_t GetFillOnlyEvents()           const           { return fFillOnlyEvents;};
62  
63   void SetCharge(Int_t charge = 0)    {fCharge = charge; };
64   Int_t GetCharge()           const           { return fCharge;};
65   
66   void SetVZEROside(Int_t side = 0)    {fVZEROside = side; };
67   Int_t GetVZEROside()           const           { return fVZEROside;};
68   
69   virtual void   UserCreateOutputObjects();
70   virtual void   UserExec(Option_t *option);
71   virtual void   Terminate(Option_t *);
72   
73   AliSpectraAODTrackCuts      * GetTrackCuts()         {  return fTrackCuts; }
74   AliSpectraAODEventCuts      * GetEventCuts()         {  return fEventCuts; }
75   AliHelperPID                   * GetHelperPID()          { return fHelperPID; }
76   TList                          * GetOutputList()         { return fOutput; }
77   
78   void SetTrackCuts(AliSpectraAODTrackCuts * tc)       { fTrackCuts = tc; }
79   void SetEventCuts(AliSpectraAODEventCuts * vc)       { fEventCuts = vc; }
80   void SetHelperPID(AliHelperPID* pid)                     { fHelperPID = pid; }
81   void SetnCentBins(Int_t val)                             { fnCentBins = val; }
82   void SetnQvecBins(Int_t val)                             { fnQvecBins = val; }
83   void SetnNchBins(Int_t val)                             { fnNchBins = val; }
84   void SetQvecCalibMode(Bool_t mode)                  { fIsQvecCalibMode = mode; }
85   void SetQvecUpperLimit(Double_t val)                { fQvecUpperLim = val; }
86   
87   void SetIsAOD160(Bool_t aod)                        { fIsAOD160 = aod; }
88   void SetnDCABin(Int_t val)                          { fnDCABins = val; } 
89   void SetDCAmin(Double_t val)                        { fDCAmin = val; }
90   void SetDCAmax(Double_t val)                        { fDCAmax = val; }
91   Bool_t GetDCA(const AliAODTrack* trk, Double_t * p);
92   void SetDCAzCut(Double_t val)                        { fDCAzCut = val; }
93   
94   void GetQvecGen(Bool_t val) { fQvecGen = val; } //enable Qvec from generated
95
96  private:
97   
98   AliAODEvent                   * fAOD;                         //! AOD object
99   AliSpectraAODTrackCuts      * fTrackCuts;                   // Track Cuts
100   AliSpectraAODEventCuts      * fEventCuts;                   // Event Cuts
101   AliHelperPID                   * fHelperPID;                    // points to class for PID
102   Bool_t                          fIsMC;                         // true if processing MC
103   Bool_t                          fDoDoubleCounting;           // true is double counting for Nsigma accepetd
104   Bool_t                          fFillOnlyEvents;               // if true fill only NSparseHistEv
105   Int_t                            fCharge;                      // charge to be selected
106   Int_t                            fVZEROside;                  // 0: VZERO-A 1: VZERO-C
107   TList                          * fOutput;                     // output list
108   Int_t                            fnCentBins;                  // number of bins for the centrality axis
109   Int_t                            fnQvecBins;                 // number of bins for the q vector axis
110   Int_t                            fnNchBins;                 // number of bins for the Nch axis
111   Bool_t                           fIsQvecCalibMode;          //calib mode for Qvector percentile
112   Double_t                         fQvecUpperLim;             //Upper limit for Qvector
113   Bool_t                           fIsAOD160;              // enable DCA for AOD160
114   Int_t                            fnDCABins;              // number of bins for DCA axis
115   Double_t                         fDCAmin;                // min DCA value
116   Double_t                         fDCAmax;                // max DCA value
117   Double_t                         fDCAzCut;               //cut on DCA z
118   
119   Bool_t fQvecGen; //enable Qvec from generated
120   
121   AliAnalysisTaskSpectraAllChAOD(const AliAnalysisTaskSpectraAllChAOD&);
122   AliAnalysisTaskSpectraAllChAOD& operator=(const AliAnalysisTaskSpectraAllChAOD&);
123   
124   ClassDef(AliAnalysisTaskSpectraAllChAOD, 10);
125 };
126
127 #endif