1 #ifndef ALIANALYSISTASKEVENTCOUNT_H
2 #define ALIANALYSISTASKEVENTCOUNT_H
4 // analysis task creating basic QA plots for resonance particles
5 // Author: Ayben Karasu Uysal
13 class AliESDtrackCuts;
15 #include "AliAnalysisTaskSE.h"
17 class AliAnalysisTaskEventCount : public AliAnalysisTaskSE {
30 AliAnalysisTaskEventCount(const char *name = "RsnQA");
31 virtual ~AliAnalysisTaskEventCount() {}
33 virtual void UserCreateOutputObjects();
34 virtual void UserExec(Option_t *option);
35 virtual void Terminate(Option_t *);
37 void SetVzRange(Double_t vz) {fVz = vz;}
38 void SetAcceptTPCPrimaryVertex(Bool_t yn = kTRUE) {fAcceptTPC = yn;}
39 static const char* Title(EType type);
43 Bool_t fAcceptTPC; // accept TPC primary vertex?
44 Double_t fVz; // symmetric range around 0
45 TList *fOutputList; // output container
46 Bool_t fCheck[kTypes]; // check if accepted according to criterion in enum
47 TH1I *fHEvent; // histogram with event counts
48 AliESDtrackCuts *fTrackCuts; // cut checker
50 AliAnalysisTaskEventCount(const AliAnalysisTaskEventCount&);
51 AliAnalysisTaskEventCount& operator=(const AliAnalysisTaskEventCount&);
53 ClassDef(AliAnalysisTaskEventCount, 1);
56 inline const char* Title(AliAnalysisTaskEventCount::EType type)
59 // Title string depending on type
63 case kAll : return "All";
64 case kPassPhysicsSel : return "Phys Sel OK";
65 case kGoodPrimaryVertex: return "Good primary vertex";
66 case kHas1TrackAny : return "1 track (any)";
67 case kHas1TrackQuality : return "1 track (quality OK)";
68 default : return "Unknown";