Analysis tasks for single muon analysis v0 (Dieggo)
[u/mrichter/AliRoot.git] / PWG3 / AliAnalysisTaskSingleMu.h
CommitLineData
aad6618e 1#include "TH2.h"
2#include "TObjArray.h"
3
4#include "AliAODEvent.h"
5#include "AliAODVertex.h"
6#include "AliAODTrack.h"
7
8class AliAnalysisTaskSingleMu : public AliAnalysisTask {
9 public:
10 AliAnalysisTaskSingleMu(const char *name = "AliAnalysisTaskSingleMu");
11 virtual ~AliAnalysisTaskSingleMu() {}
12
13 virtual void ConnectInputData(Option_t *);
14 virtual void CreateOutputObjects();
15 virtual void Exec(Option_t *option);
16 virtual void Terminate(Option_t *);
17
18protected:
19 Bool_t MuonPassesCuts(AliAODTrack &muonTrack,
20 TLorentzVector &lorVec,
21 Int_t &trigMatch);
22
23 const AliAODVertex* GetVertex();
24 void ResetHistos();
25
26private:
27 AliAODEvent *fAOD; //!< ESDevent object
28
29 static const Int_t fgkNhistos = 1;
30 static const Int_t fgkNTrigCuts = 4;
31
32 enum
33 {
34 kNoMatchTrig,
35 kAllPtTrig,
36 kLowPtTrig,
37 kHighPtTrig
38 };
39
40 TString trigName[fgkNTrigCuts]; //!< trigger cut names
41
42 TObjArray * fOutputContainer; //!< output data container
43
44 TH2F *fVzVsPt[fgkNTrigCuts]; //!< Single muon spectrum
45
46 ClassDef(AliAnalysisTaskSingleMu, 0); // Single muon analysis
47};
48