]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG3/muon/AliAnalysisTaskSingleMu.h
Update of Single Muon analysis to be included in the official ESD->AOD analysis train...
[u/mrichter/AliRoot.git] / PWG3 / muon / AliAnalysisTaskSingleMu.h
CommitLineData
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 7class TList;
8class AliMCParticle;
9class AluMCEvent;
aad6618e 10
9728bcfd 11class 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