]>
Commit | Line | Data |
---|---|---|
27de2dfb | 1 | #ifndef ALIANALYSISTASKTRIGCHEFF_H |
2 | #define ALIANALYSISTASKTRIGCHEFF_H | |
3 | ||
4 | /* $Id$ */ | |
5 | ||
eae6a777 | 6 | // |
7 | // Class for trigger chamber efficiency calculations | |
8 | // and tests | |
9 | // | |
10 | // Author: Diego Stocco | |
11 | // | |
59156747 | 12 | |
eae6a777 | 13 | #include "AliVAnalysisMuon.h" |
3c62c614 | 14 | |
eae6a777 | 15 | class AliMuonTrackCuts; |
16 | class AliVParticle; | |
ebbabac1 | 17 | class TList; |
eae6a777 | 18 | class TObjArray; |
19 | class TString; | |
59156747 | 20 | |
eae6a777 | 21 | class AliAnalysisTaskTrigChEff : public AliVAnalysisMuon { |
59156747 | 22 | public: |
6324068c | 23 | AliAnalysisTaskTrigChEff(); |
eae6a777 | 24 | AliAnalysisTaskTrigChEff(const char *name, const AliMuonTrackCuts& cuts); |
b201705a | 25 | virtual ~AliAnalysisTaskTrigChEff(); |
ebbabac1 | 26 | |
eae6a777 | 27 | void Terminate(Option_t *option); |
28 | void FinishTaskOutput(); | |
59156747 | 29 | |
eae6a777 | 30 | void MyUserCreateOutputObjects(); |
31 | void ProcessEvent(TString physSel, const TObjArray& selectTrigClasses, TString centrality); | |
59156747 | 32 | |
eae6a777 | 33 | TList* GetEffHistoList(TString physSel, TString trigClassNames, TString centrality, TString trackSelection); |
59156747 | 34 | |
028d3ff6 | 35 | // /// Use ghost tracks in calculations |
36 | // void SetUseGhostTracks(Bool_t useGhosts = kTRUE) { fUseGhosts = useGhosts; } | |
59156747 | 37 | |
eae6a777 | 38 | private: |
59156747 | 39 | |
eae6a777 | 40 | AliAnalysisTaskTrigChEff(const AliAnalysisTaskTrigChEff&); |
41 | AliAnalysisTaskTrigChEff& operator=(const AliAnalysisTaskTrigChEff&); | |
59156747 | 42 | |
6228ecd4 | 43 | enum { |
44 | kBendingEff, ///< Bending plane fired | |
45 | kNonBendingEff, ///< Non-bending plane fired | |
46 | kBothPlanesEff, ///< Both planes fired | |
47 | kAllTracks, ///< tracks used for calculation | |
48 | kNcounts ///< Number of count type | |
49 | }; | |
59156747 | 50 | |
59156747 | 51 | enum { |
6228ecd4 | 52 | kHchamberEff, ///< Counts per cathode histogram index |
53 | kHslatEff, ///< Counts per slat histogram index | |
54 | kHboardEff, ///< Counts per board histogram index | |
eae6a777 | 55 | kHcheckBoard, ///< Check rejected tracks per board |
56 | kNhistoTypes ///< Check rejected tracks per board | |
59156747 | 57 | }; |
59156747 | 58 | |
eae6a777 | 59 | enum { |
028d3ff6 | 60 | kNoMatch, ///< No match with trigger |
eae6a777 | 61 | kMatchApt, ///< Match All Pt |
62 | kMatchLpt, ///< Match Low Pt | |
63 | kMatchHpt, ///< Match High Pt | |
028d3ff6 | 64 | kNtrigMatch ///< Total number of matched types |
65 | }; | |
66 | ||
67 | enum { | |
68 | kSelectTrack, ///< Selected track | |
69 | kNoSelectTrack, ///< Non selected tracks (includes ghosts) | |
70 | kNtrackSel ///< Total number of track selection | |
eae6a777 | 71 | }; |
0a2dcc83 | 72 | |
73 | enum { | |
74 | kEffFromTrack, ///< Hit pattern from tracker track extrapolation | |
75 | kEffFromTrig, ///< Hit pattern from trigger | |
76 | kNeffMethods ///< Total number of efficiency methods | |
77 | }; | |
eae6a777 | 78 | |
028d3ff6 | 79 | TString GetHistoName(Int_t itype, Int_t icount, Int_t ichamber, Int_t itrackSel, Int_t imatch, Int_t imethod); |
eae6a777 | 80 | Bool_t FillEffHistoList(TString physSel, TString trigClassNames, TString centrality, TString trackSelection, TList* outList = 0x0); |
81 | void InitLocalKeys(); | |
82 | ||
028d3ff6 | 83 | TObjArray* fTrackSelKeys; ///< Selection names |
84 | TObjArray* fCountTypeKeys; ///< Count type keys | |
85 | TObjArray* fHistoTypeKeys; ///< Base histogram name | |
86 | TObjArray* fEffMethodKeys; ///< Efficiency methods keys | |
87 | TObjArray* fMatchTrigKeys; ///< Match trigger names | |
eae6a777 | 88 | |
028d3ff6 | 89 | // Bool_t fUseGhosts; ///< Flag to use also the trigger tracks not matching the tracker in eff. calculation |
eae6a777 | 90 | TList* fList; //!<TList output object |
91 | ||
028d3ff6 | 92 | ClassDef(AliAnalysisTaskTrigChEff, 4); // Trigger chamber efficiencies |
59156747 | 93 | }; |
94 | ||
27de2dfb | 95 | #endif |