]>
Commit | Line | Data |
---|---|---|
662e37fe | 1 | /// \ingroup "PWG3muon" |
2 | /// \class AliAnalysisTaskSingleMu | |
3 | /// \brief Analysis task for single muons in the spectrometer | |
4 | /// | |
5 | // Author Diego Stocco | |
aad6618e | 6 | |
9728bcfd | 7 | class TList; |
8 | class AliMCParticle; | |
9 | class AluMCEvent; | |
aad6618e | 10 | |
9728bcfd | 11 | class AliAnalysisTaskSingleMu : public AliAnalysisTaskSE { |
aad6618e | 12 | public: |
13 | AliAnalysisTaskSingleMu(const char *name = "AliAnalysisTaskSingleMu"); | |
9728bcfd | 14 | virtual ~AliAnalysisTaskSingleMu(); |
aad6618e | 15 | |
8b8b0b7a | 16 | AliAnalysisTaskSingleMu(const AliAnalysisTaskSingleMu&); |
17 | AliAnalysisTaskSingleMu& operator=(const AliAnalysisTaskSingleMu&); | |
9728bcfd | 18 | |
19 | virtual void UserCreateOutputObjects(); | |
20 | virtual void UserExec(Option_t *option); | |
21 | virtual void Terminate(Option_t *option); | |
22 | ||
23 | private: | |
8b8b0b7a | 24 | |
9728bcfd | 25 | void SetFlagsFromHandler (); |
aad6618e | 26 | |
9728bcfd | 27 | enum { |
28 | kNoMatchTrig, // No match with trigger | |
29 | kAllPtTrig, // Match All Pt | |
30 | kLowPtTrig, // Match Low Pt | |
31 | kHighPtTrig, // Match High Pt | |
32 | kNtrigCuts // Total number of trigger types | |
33 | }; | |
34 | ||
35 | // Histograms for data | |
36 | enum { | |
37 | // 1D histos | |
38 | kHistoPt, ///< Pt distribution | |
39 | kHistoDCA, ///< DCA distribution | |
40 | kHistoVz, ///< Interaction vertex distribution | |
41 | kHistoEta, ///< Eta distribution | |
42 | kHistoRapidity, ///< Rapidity distribution | |
43 | // 2D histos | |
44 | kHistoPtDCA, ///< DCA vs Pt distribution | |
45 | kHistoPtVz, ///< Interaction vertex vs Pt distribution | |
46 | kHistoPtRapidity ///< Rapidity vs Pt distribution | |
47 | }; | |
aad6618e | 48 | |
9728bcfd | 49 | // Histograms for MC |
662e37fe | 50 | enum { |
9728bcfd | 51 | kHistoPtResolution, ///< Pt resolution |
52 | kHistoPtDCAType, ///< DCA vs Pt distribution | |
53 | kHistoPtVzType ///< Interaction vertex vs Pt distribution | |
aad6618e | 54 | }; |
55 | ||
662e37fe | 56 | enum { |
9728bcfd | 57 | kCharmMu, ///< Mu from charm |
58 | kBeautyMu, ///< Mu from beauty | |
59 | kPrimaryMu, ///< Primary mu | |
60 | kSecondaryMu, ///< Secondary mu | |
61 | kRecoHadron, ///< Reconstructed hadron | |
62 | kUnknownPart, ///< Particle that fails matching kine | |
63 | kNtrackSources ///< Total number of track sources | |
662e37fe | 64 | }; |
aad6618e | 65 | |
9728bcfd | 66 | Int_t GetHistoIndex(Int_t histoTypeIndex, Int_t trigIndex, Int_t srcIndex = -1); |
67 | ||
68 | void FillTriggerHistos(Int_t histoIndex, Int_t matchTrig, Int_t motherType, | |
69 | Float_t var1, Float_t var2 = 0. , Float_t var3 = 0.); | |
662e37fe | 70 | |
9728bcfd | 71 | Int_t RecoTrackMother(AliMCParticle* mcTrack, AliMCEvent* mcEvent); |
72 | ||
73 | Bool_t fUseMC; //!< Flag indicating that Monte Carlo information is available | |
74 | TList* fHistoList; //!< List of histograms for data | |
75 | TList* fHistoListMC; //!< List of histograms for MC | |
aad6618e | 76 | |
9728bcfd | 77 | ClassDef(AliAnalysisTaskSingleMu, 1); // Single muon analysis |
aad6618e | 78 | }; |
79 |