#ifndef AliCFSINGLETRACKEFFICIENCYTASK_H
#define AliCFSINGLETRACKEFFICIENCYTASK_H
#include "AliAnalysisTaskSE.h"
#include "AliSingleTrackEffCuts.h"
class TH1I;
class TParticle;
class AliStack;
class AliCFManager;
class AliAODTrack;
class AliESDtrack;
class AliESDtrackCuts;
class AliESDVertex;
class AliVVertex;
class AliVParticle;
class AliCFSingleTrackEfficiencyTask : public AliAnalysisTaskSE {
public:
enum {
kStepMCGenCut = 0,
kStepMCKineCut = 1,
kStepMCAccpCut = 2,
kStepReconstructed = 3,
kStepRecoKineCuts = 4,
kStepReconstructedMC = 5,
kStepRecoQualityCuts = 6,
kStepRecoPID = 7
};
AliCFSingleTrackEfficiencyTask();
AliCFSingleTrackEfficiencyTask(const Char_t* name, AliESDtrackCuts *trackcuts, AliSingleTrackEffCuts * mccuts);
AliCFSingleTrackEfficiencyTask(const AliCFSingleTrackEfficiencyTask& c);
AliCFSingleTrackEfficiencyTask& operator= (const AliCFSingleTrackEfficiencyTask& c);
virtual ~AliCFSingleTrackEfficiencyTask();
virtual void UserCreateOutputObjects();
virtual void UserExec(Option_t *option);
virtual void Terminate(Option_t *);
virtual void Init();
virtual void LocalInit() { Init(); }
void SetCFManager(AliCFManager* io) { fCFManager = io; }
AliCFManager * GetCFManager() const { return fCFManager; }
void SetQAList(TList* list) { fQAHistList = list; }
void SetReadAODData (Bool_t flag=kTRUE) { fReadAODData=flag; }
void SetFilterBit (Bool_t flag=kTRUE) { fSetFilterBit=flag; }
void SetFilterType (Int_t fbittype) { fbit=fbittype; }
void SetTriggerMask(ULong64_t mask=0) { fTriggerMask=mask; }
void SetUseCentrality(Bool_t flag, TString estimator=""){ fEvalCentrality=flag; fCentralityEstimator=estimator; }
Bool_t IsReadAODData() const { return fReadAODData; }
ULong64_t GetTriggerMask() { return fTriggerMask; }
AliESDtrackCuts *GetTrackCuts(){ return (AliESDtrackCuts*)fTrackCuts; }
AliSingleTrackEffCuts *GetSingleTrackEffCuts() { return (AliSingleTrackEffCuts*)fMCCuts; }
protected:
void CheckESDMCParticles();
void CheckAODMCParticles();
void CheckReconstructedParticles();
AliESDtrack* ConvertTrack(AliAODTrack *track);
Int_t GetNumberOfTrackletsInEtaRange(Double_t mineta, Double_t maxeta);
Double_t GetCentrality();
Bool_t fReadAODData;
AliCFManager *fCFManager;
TList *fQAHistList;
AliESDtrackCuts *fTrackCuts;
AliSingleTrackEffCuts *fMCCuts;
ULong64_t fTriggerMask;
Bool_t fSetFilterBit;
Int_t fbit;
Bool_t fEvalCentrality;
TString fCentralityEstimator;
TH1I *fHistEventsProcessed;
ClassDef(AliCFSingleTrackEfficiencyTask,2)
};
#endif
AliCFSingleTrackEfficiencyTask.h:1 AliCFSingleTrackEfficiencyTask.h:2 AliCFSingleTrackEfficiencyTask.h:3 AliCFSingleTrackEfficiencyTask.h:4 AliCFSingleTrackEfficiencyTask.h:5 AliCFSingleTrackEfficiencyTask.h:6 AliCFSingleTrackEfficiencyTask.h:7 AliCFSingleTrackEfficiencyTask.h:8 AliCFSingleTrackEfficiencyTask.h:9 AliCFSingleTrackEfficiencyTask.h:10 AliCFSingleTrackEfficiencyTask.h:11 AliCFSingleTrackEfficiencyTask.h:12 AliCFSingleTrackEfficiencyTask.h:13 AliCFSingleTrackEfficiencyTask.h:14 AliCFSingleTrackEfficiencyTask.h:15 AliCFSingleTrackEfficiencyTask.h:16 AliCFSingleTrackEfficiencyTask.h:17 AliCFSingleTrackEfficiencyTask.h:18 AliCFSingleTrackEfficiencyTask.h:19 AliCFSingleTrackEfficiencyTask.h:20 AliCFSingleTrackEfficiencyTask.h:21 AliCFSingleTrackEfficiencyTask.h:22 AliCFSingleTrackEfficiencyTask.h:23 AliCFSingleTrackEfficiencyTask.h:24 AliCFSingleTrackEfficiencyTask.h:25 AliCFSingleTrackEfficiencyTask.h:26 AliCFSingleTrackEfficiencyTask.h:27 AliCFSingleTrackEfficiencyTask.h:28 AliCFSingleTrackEfficiencyTask.h:29 AliCFSingleTrackEfficiencyTask.h:30 AliCFSingleTrackEfficiencyTask.h:31 AliCFSingleTrackEfficiencyTask.h:32 AliCFSingleTrackEfficiencyTask.h:33 AliCFSingleTrackEfficiencyTask.h:34 AliCFSingleTrackEfficiencyTask.h:35 AliCFSingleTrackEfficiencyTask.h:36 AliCFSingleTrackEfficiencyTask.h:37 AliCFSingleTrackEfficiencyTask.h:38 AliCFSingleTrackEfficiencyTask.h:39 AliCFSingleTrackEfficiencyTask.h:40 AliCFSingleTrackEfficiencyTask.h:41 AliCFSingleTrackEfficiencyTask.h:42 AliCFSingleTrackEfficiencyTask.h:43 AliCFSingleTrackEfficiencyTask.h:44 AliCFSingleTrackEfficiencyTask.h:45 AliCFSingleTrackEfficiencyTask.h:46 AliCFSingleTrackEfficiencyTask.h:47 AliCFSingleTrackEfficiencyTask.h:48 AliCFSingleTrackEfficiencyTask.h:49 AliCFSingleTrackEfficiencyTask.h:50 AliCFSingleTrackEfficiencyTask.h:51 AliCFSingleTrackEfficiencyTask.h:52 AliCFSingleTrackEfficiencyTask.h:53 AliCFSingleTrackEfficiencyTask.h:54 AliCFSingleTrackEfficiencyTask.h:55 AliCFSingleTrackEfficiencyTask.h:56 AliCFSingleTrackEfficiencyTask.h:57 AliCFSingleTrackEfficiencyTask.h:58 AliCFSingleTrackEfficiencyTask.h:59 AliCFSingleTrackEfficiencyTask.h:60 AliCFSingleTrackEfficiencyTask.h:61 AliCFSingleTrackEfficiencyTask.h:62 AliCFSingleTrackEfficiencyTask.h:63 AliCFSingleTrackEfficiencyTask.h:64 AliCFSingleTrackEfficiencyTask.h:65 AliCFSingleTrackEfficiencyTask.h:66 AliCFSingleTrackEfficiencyTask.h:67 AliCFSingleTrackEfficiencyTask.h:68 AliCFSingleTrackEfficiencyTask.h:69 AliCFSingleTrackEfficiencyTask.h:70 AliCFSingleTrackEfficiencyTask.h:71 AliCFSingleTrackEfficiencyTask.h:72 AliCFSingleTrackEfficiencyTask.h:73 AliCFSingleTrackEfficiencyTask.h:74 AliCFSingleTrackEfficiencyTask.h:75 AliCFSingleTrackEfficiencyTask.h:76 AliCFSingleTrackEfficiencyTask.h:77 AliCFSingleTrackEfficiencyTask.h:78 AliCFSingleTrackEfficiencyTask.h:79 AliCFSingleTrackEfficiencyTask.h:80 AliCFSingleTrackEfficiencyTask.h:81 AliCFSingleTrackEfficiencyTask.h:82 AliCFSingleTrackEfficiencyTask.h:83 AliCFSingleTrackEfficiencyTask.h:84 AliCFSingleTrackEfficiencyTask.h:85 AliCFSingleTrackEfficiencyTask.h:86 AliCFSingleTrackEfficiencyTask.h:87 AliCFSingleTrackEfficiencyTask.h:88 AliCFSingleTrackEfficiencyTask.h:89 AliCFSingleTrackEfficiencyTask.h:90 AliCFSingleTrackEfficiencyTask.h:91 AliCFSingleTrackEfficiencyTask.h:92 AliCFSingleTrackEfficiencyTask.h:93 AliCFSingleTrackEfficiencyTask.h:94 AliCFSingleTrackEfficiencyTask.h:95 AliCFSingleTrackEfficiencyTask.h:96 AliCFSingleTrackEfficiencyTask.h:97 AliCFSingleTrackEfficiencyTask.h:98 AliCFSingleTrackEfficiencyTask.h:99 AliCFSingleTrackEfficiencyTask.h:100 AliCFSingleTrackEfficiencyTask.h:101 AliCFSingleTrackEfficiencyTask.h:102 AliCFSingleTrackEfficiencyTask.h:103 AliCFSingleTrackEfficiencyTask.h:104 AliCFSingleTrackEfficiencyTask.h:105 AliCFSingleTrackEfficiencyTask.h:106 AliCFSingleTrackEfficiencyTask.h:107 AliCFSingleTrackEfficiencyTask.h:108