1 #ifndef ALIANALYSISTASKMULTPBTRACKS_H
2 #define ALIANALYSISTASKMULTPBTRACKS_H
4 #include "AliAnalysisTaskSE.h"
5 #include "AliESDtrackCuts.h" // if I don't include this, nothing compiles
7 //-------------------------------------------------------------------------
8 // AliAnalysisTaskMultPbTracks
13 // Author: Michele Floris, CERN
14 //-------------------------------------------------------------------------
18 class AliESDtrackCuts;
19 class AliAnalysisMultPbCentralitySelector;
20 class AliAnalysisMultPbTrackHistoManager;
21 class AliTriggerAnalysis;
24 class AliAnalysisTaskMultPbTracks : public AliAnalysisTaskSE {
28 AliAnalysisTaskMultPbTracks();
29 AliAnalysisTaskMultPbTracks(const char * name);
30 AliAnalysisTaskMultPbTracks(const AliAnalysisTaskMultPbTracks& obj) ;
31 ~AliAnalysisTaskMultPbTracks();
32 void SetTrackCuts(AliESDtrackCuts * cuts) { fTrackCuts = cuts;}
33 void SetCentralitySelector(AliAnalysisMultPbCentralitySelector * centr) { fCentrSelector=centr;}
34 void SetTPCOnly(Bool_t flag=kTRUE) {fIsTPCOnly=flag;}
35 // void SetCentralityBin(Int_t bin = 0) { fCentrBin = bin; }
36 // void SetCentralityEstimator(const char * centr) { fCentralityEstimator = centr; }
38 void SetIsMC(Bool_t flag=kTRUE) { fIsMC = flag;}
39 AliAnalysisMultPbTrackHistoManager * GetHistoManager() { return fHistoManager;}
40 Bool_t IsPhysicalPrimaryAndTransportBit(Int_t ipart) ;
41 Bool_t IsElectron(AliESDtrack * esdTrack);
42 void RejectElectrons(Bool_t rejElectron) { fRejectElectrons = rejElectron;}
43 void SetOfflineTrigger(UInt_t mask) { fOfflineTrigger = mask; }
45 virtual void UserCreateOutputObjects();
46 virtual void UserExec(Option_t *option);
47 virtual void Terminate(Option_t *);
54 AliESDEvent * fESD; //! ESD object AliVEvent* fEvent;
55 // TList * fListHisto; // list of output object
56 AliAnalysisMultPbTrackHistoManager * fHistoManager; // wrapper for the list, takes care of merging + histo booking and getters
57 AliAnalysisMultPbCentralitySelector * fCentrSelector; // centrality selector
58 // Int_t fCentrBin; // centrality bin selected (5% XS percentiles)
59 // TString fCentralityEstimator; // Name of the centrality estimator, for AliESDCentrality
60 AliESDtrackCuts * fTrackCuts; // track cuts
61 AliESDtrackCuts * fTrackCutsNoDCA; // copy of the previous one, but with no DCA cuts
62 UInt_t fOfflineTrigger ; // offline trigger mask
63 Bool_t fIsMC; // true if processing montecarlo
64 Bool_t fIsTPCOnly; // if you only want to use TPC tracks
65 AliTriggerAnalysis * fTriggerAnalysis; // for offline triggers
66 AliPIDResponse *fPIDResponse; //! PID response object
67 Bool_t fRejectElectrons; // reject electrons
69 AliAnalysisTaskMultPbTracks& operator=(const AliAnalysisTaskMultPbTracks& task);
71 ClassDef(AliAnalysisTaskMultPbTracks, 3)