]>
Commit | Line | Data |
---|---|---|
e4dddba1 | 1 | #ifndef ALIANALYSISTASKMUONDISTRIBUTIONS_H |
2 | #define ALIANALYSISTASKMUONDISTRIBUTIONS_H | |
3 | ||
4 | #include "AliAnalysisTaskSE.h" | |
5 | #include "TMath.h" | |
6 | ||
7 | class TH1D; | |
8 | class TParticle ; | |
9 | class TLorentzVector ; | |
10 | class TFile ; | |
11 | class AliStack ; | |
12 | class AliESDtrack; | |
13 | class AliVParticle; | |
14 | ||
15 | class AliAnalysisTaskMuonDistributions : public AliAnalysisTaskSE { | |
16 | public: | |
17 | ||
18 | AliAnalysisTaskMuonDistributions(); | |
19 | AliAnalysisTaskMuonDistributions(const Char_t* name); | |
20 | AliAnalysisTaskMuonDistributions& operator= (const AliAnalysisTaskMuonDistributions& c); | |
21 | AliAnalysisTaskMuonDistributions(const AliAnalysisTaskMuonDistributions& c); | |
22 | virtual ~AliAnalysisTaskMuonDistributions(); | |
23 | ||
24 | // ANALYSIS FRAMEWORK STUFF to loop on data and fill output objects | |
25 | void UserExec(Option_t *option); | |
26 | void Terminate(Option_t *); | |
27 | void UserCreateOutputObjects(); | |
28 | ||
29 | void SetBeamEnergy(Double_t en) {fBeamEnergy=en;} | |
30 | void SetAnalysisType(const char* type) {fAnalysisType=type;} | |
31 | void SetInvMassFitLimits(Double_t xmin, Double_t xmax) {fInvMassFitLimitMin=xmin; fInvMassFitLimitMax=xmax;} | |
32 | void SetPsiFitLimits(Double_t xmin, Double_t xmax) {fPsiFitLimitMin=xmin; fPsiFitLimitMax=xmax;} | |
33 | void SetBckFitLimits(Double_t xmin, Double_t xmax) {fBckFitLimitMin=xmin; fBckFitLimitMax=xmax;} | |
34 | void FitInvariantMassSpectrum(Bool_t massfit=kFALSE) {fInvariantMassFit=massfit;} | |
35 | ||
36 | protected: | |
37 | ||
38 | Double_t fBeamEnergy; // Energy of the beam (required for the CS angle) | |
39 | Double_t fInvMassFitLimitMin; // invariant mass spectrum fit limits | |
40 | Double_t fInvMassFitLimitMax; | |
41 | Double_t fPsiFitLimitMin; // psi fit limits | |
42 | Double_t fPsiFitLimitMax; | |
43 | Double_t fBckFitLimitMin; // bck fit limits | |
44 | Double_t fBckFitLimitMax; | |
45 | Bool_t fInvariantMassFit; // flag to perform or not inv. mass fit | |
46 | ||
47 | const char* fAnalysisType; //ESD or AOD based analysis | |
48 | TList *fOutput; | |
49 | ||
50 | Float_t InvMass (Float_t, Float_t, Float_t, Float_t, Float_t, Float_t, Float_t, Float_t); | |
51 | Float_t Rapidity (Float_t, Float_t); | |
52 | Double_t CostCS (Double_t, Double_t, Double_t, Double_t, Double_t, Double_t, Double_t, Double_t, Double_t); | |
53 | Double_t CostHE (Double_t, Double_t, Double_t, Double_t, Double_t, Double_t, Double_t, Double_t, Double_t); | |
54 | void FitInvMass(TH1D* ); | |
55 | ||
56 | ClassDef(AliAnalysisTaskMuonDistributions,1); | |
57 | }; | |
58 | ||
59 | #endif |