]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG0/multPbPb/AliAnalysisTaskMultPbTracks.h
Changes to improve performance while running over MC
[u/mrichter/AliRoot.git] / PWG0 / multPbPb / AliAnalysisTaskMultPbTracks.h
1 #ifndef ALIANALYSISTASKMULTPBTRACKS_H
2 #define ALIANALYSISTASKMULTPBTRACKS_H
3
4 #include "AliAnalysisTaskSE.h"
5 #include "AliESDtrackCuts.h" // if I don't include this, nothing compiles
6
7 //-------------------------------------------------------------------------
8 //                      AliAnalysisTaskMultPbTracks
9 // 
10 // 
11 //
12 //
13 // Author: Michele Floris, CERN
14 //-------------------------------------------------------------------------
15
16
17 class AliESDEvent;
18 class AliESDtrackCuts;
19 class AliAnalysisMultPbCentralitySelector;
20 class AliAnalysisMultPbTrackHistoManager;
21
22
23
24 class AliAnalysisTaskMultPbTracks : public AliAnalysisTaskSE {
25
26 public:
27
28   AliAnalysisTaskMultPbTracks();
29   AliAnalysisTaskMultPbTracks(const char * name);
30   AliAnalysisTaskMultPbTracks(const AliAnalysisTaskMultPbTracks& obj) ;
31   ~AliAnalysisTaskMultPbTracks();
32   void SetTrackCuts(AliESDtrackCuts * cuts) { fTrackCuts = cuts;}
33   void SetCentralityBin(Int_t bin = 0) { fCentrBin = bin; }
34   void SetCentralityEstimator(const char * centr) { fCentralityEstimator = centr; }
35
36   void SetIsMC(Bool_t flag=kTRUE) { fIsMC = flag;}
37   AliAnalysisMultPbTrackHistoManager * GetHistoManager() { return fHistoManager;}
38
39   virtual void   UserCreateOutputObjects();
40   virtual void   UserExec(Option_t *option);
41   virtual void   Terminate(Option_t *);
42   
43   
44
45 private:
46
47   //
48   AliESDEvent *  fESD;    //! ESD object  AliVEvent*     fEvent;
49   //  TList * fListHisto;     // list of output object
50   AliAnalysisMultPbTrackHistoManager  * fHistoManager; // wrapper for the list, takes care of merging + histo booking and getters
51   Int_t fCentrBin; // centrality bin selected (5% XS percentiles)
52   TString fCentralityEstimator; // Name of the centrality estimator, for AliESDCentrality
53   AliESDtrackCuts * fTrackCuts; // track cuts
54   AliESDtrackCuts * fTrackCutsNoDCA; // copy of the previous one, but with no DCA cuts
55   
56   Bool_t fIsMC; // true if processing montecarlo
57
58   AliAnalysisTaskMultPbTracks& operator=(const AliAnalysisTaskMultPbTracks& task);
59   
60   ClassDef(AliAnalysisTaskMultPbTracks, 2)
61
62
63 };
64
65 #endif