]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG3/muon/AliAnalysisTaskTrigChEff.h
Fixing algorithm for efficiency calculation (Diego)
[u/mrichter/AliRoot.git] / PWG3 / muon / AliAnalysisTaskTrigChEff.h
CommitLineData
ebbabac1 1/// \ingroup "PWG3muon"
2/// \class AliAnalysisTaskTrigChEff
3/// \brief Analysis task for trigger chamber efficiency determination
4///
5// Author Diego Stocco
59156747 6
ebbabac1 7class TList;
59156747 8
ebbabac1 9class AliAnalysisTaskTrigChEff : public AliAnalysisTaskSE {
59156747 10 public:
11 AliAnalysisTaskTrigChEff(const char *name = "AliAnalysisTaskTrigChEff");
12 virtual ~AliAnalysisTaskTrigChEff() {}
ebbabac1 13
14 virtual void UserCreateOutputObjects();
15 virtual void UserExec(Option_t *option);
59156747 16 virtual void Terminate(Option_t *);
17
ebbabac1 18 /// Use ghost tracks in calculations
73a0c99f 19 void SetUseGhostTracks(Bool_t useGhosts = kTRUE) { fUseGhosts = useGhosts; }
59156747 20
21protected:
22 void ResetHistos();
59156747 23
24private:
3ea2ed28 25 /// Not implemented
26 AliAnalysisTaskTrigChEff(const AliAnalysisTaskTrigChEff& rhs);
27 /// Not implemented
28 AliAnalysisTaskTrigChEff& operator = (const AliAnalysisTaskTrigChEff& rhs);
29
ebbabac1 30 Bool_t fUseGhosts; ///< Flag to use also the trigger tracks not matching the tracker in eff. calculation
59156747 31
ebbabac1 32 TList* fList; ///<TList output object
59156747 33
34 enum {
35 kNcathodes = 2, ///< Number of cathodes
36 kNchambers = 4, ///< Number of chambers
37 kNplanes = 8, ///< Number of planes
38 kNslats = 18 ///< Number of slats
39 };
40
ebbabac1 41 enum {kChHit, kChNonHit, kNcounts};
59156747 42
59156747 43 enum {
44 kHtracksInSlat = 0, ///< Tracks in slat histogram index
45 kHtracksInBoard = 1, ///< Tracks in board histogram index
ebbabac1 46 kHchamberEff = 2, ///< N44 per cathode histogram index
59156747 47 kHchamberNonEff = 4, ///< N33 per cathode histogram index
ebbabac1 48 kHslatEff = 6, ///< N44 per slat histogram index
59156747 49 kHslatNonEff = 14, ///< N33 per slat histogram index
ebbabac1 50 kHboardEff = 22, ///< N44 per board histogram index
73a0c99f 51 kHboardNonEff = 30, ///< N33 per board histogram index
52 kHthetaX = 38, ///< Angular distribution theta_x
53 kHthetaY = 39 ///< Angular distribution theta_y
59156747 54 };
55
56 /// Given cathode and chamber, return plane number
57 Int_t GetPlane(Int_t cathode, Int_t chamber) { return kNchambers*cathode + chamber; }
58
ebbabac1 59 ClassDef(AliAnalysisTaskTrigChEff, 1); // Trigger chamber efficiency analysis
59156747 60};
61