Moving PbPb multiplicity in the new directory structure
[u/mrichter/AliRoot.git] / PWGLF / SPECTRA / ChargedHadrons / multPbPb / AliAnalysisTaskTriggerStudy.h
CommitLineData
9d173aad 1#ifndef ALIANALYSISTASKTRIGGERSTUDY_H
2#define ALIANALYSISTASKTRIGGERSTUDY_H
3
4#include "AliAnalysisTaskSE.h"
5
6//-------------------------------------------------------------------------
7// AliAnalysisTaskTriggerStudy
8//
9//
10//
11//
12// Author: Michele Floris, CERN
13//-------------------------------------------------------------------------
14
15
16class AliESDEvent;
17class AliESDtrackCuts;
18class AliHistoListWrapper;
19class AliTriggerAnalysis;
20class AliAnalysisTaskTriggerStudy : public AliAnalysisTaskSE {
21
52d405b5 22 // offline trigger enum
23 enum {kC0MBS1,kC0MBS2,kC0MBS3,kC0MBS4,kC0MBS5,kC0VBA,kC0VBC,kC0OM2,kCO0M3};
24 // enum for triggers to be included in the venn-like histogram
7f5f2e0c 25 // enum {kVDC0MBS1,kVDC0MBS2,kVDC0VBA,kVDC0VBC,kVDC0OM2,kNVDEntries};
359f9654 26 // enum {kVDC0MBS1,kVDC0MBS2,kVDC0VBA,kVDC0VBC,kNVDEntries};
f07573a6 27 // enum {kVDV0AND,kVDV0OR,kVDNTRACKS,kNVDEntries};// Venn diagram for Federico, 7 teV
52d405b5 28
9d173aad 29public:
30
84bad6b8 31 enum {kVDV0ANDOnline,kVDV0ANDOffline,kVDPhysSel, kVDRecCandle, kVDGenCandle, kNVDEntries};// Venn diagram for Federico, 7 teV
32
9d173aad 33 AliAnalysisTaskTriggerStudy();
34 AliAnalysisTaskTriggerStudy(const char * name);
35 AliAnalysisTaskTriggerStudy(const AliAnalysisTaskTriggerStudy& obj) ;
36 ~AliAnalysisTaskTriggerStudy();
37
38 void SetIsMC(Bool_t flag=kTRUE) { fIsMC = flag;}
39 AliHistoListWrapper * GetHistoList() { return fHistoList;}
40
52d405b5 41
a82dc581 42 TH1 * GetHistoTracklets (const char * name, const char * title);
eef42d18 43 TH1 * GetHistoPt(const char * name, const char * title);
44 TH1 * GetHistoEta(const char * name, const char * title);
bcc49144 45 TH1 * GetHistoV0M(const char * name, const char * title);
46 TH1 * GetHistoSPD1(const char * name, const char * title);
47 TH1 * GetHistoTracks(const char * name, const char * title);
48 TH1 * GetHistoCorrelationSPDTPCVz(const char * name, const char * title);
49 TH1 * GetHistoCorrelationContrTPCSPDCls (const char * name, const char * title);
50 TH1 * GetHistoCorrelationTrackletsSPDCls (const char * name, const char * title);
52d405b5 51 void FillTriggerOverlaps (const char * name, const char * title, Bool_t * vdArray) ;
9d173aad 52
eef42d18 53 void SetNTrackletsCut(Int_t cut){ fNTrackletsCut = cut;}
54 void SetNTrackletsCutKine(Int_t cut){ fNTrackletsCutKine = cut;}
55 void SetRejectBGWithV0(Bool_t flag) { fRejectBGWithV0 = flag;}
56
57
9d173aad 58 virtual void UserCreateOutputObjects();
59 virtual void UserExec(Option_t *option);
60 virtual void Terminate(Option_t *);
61
62
63
64private:
65
66 //
67 AliESDEvent * fESD; //! ESD object AliVEvent* fEvent;
68 AliHistoListWrapper * fHistoList; // wrapper for the list, takes care of merging + histo booking and getters
69 Bool_t fIsMC; // true if processing montecarlo
eef42d18 70
a82dc581 71 AliTriggerAnalysis * fTriggerAnalysis; // trigger analysis object, to get the offline triggers
72 TString fHistoSuffix; // suffix appended to all histos, set in the user exec.
73
52d405b5 74 Int_t fNTrackletsCut; // max number of tracklets
eef42d18 75 Int_t fNTrackletsCutKine; // max number of tracklets (only for kinematic distributions)
76
77 Bool_t fRejectBGWithV0; // Reject the BG with the V0
9d173aad 78
52d405b5 79 static const char * kVDNames[]; // names of the venn hist
9d173aad 80 AliAnalysisTaskTriggerStudy& operator=(const AliAnalysisTaskTriggerStudy& task);
81
82 ClassDef(AliAnalysisTaskTriggerStudy, 2)
83
84
85};
86
87#endif