]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG/muon/AliAnalysisMuMuMinv.h
Split the TaskMuMu into more manageable sub-analysis (Laurent)
[u/mrichter/AliRoot.git] / PWG / muon / AliAnalysisMuMuMinv.h
1 #ifndef ALIANALYSISMUMUMINV_H
2 #define ALIANALYSISMUMUMINV_H
3
4 /**
5  * \class AliAnalysisMuMuMinv
6  * \brief Invariant mass analysis of muon pairs
7  * \author L. Aphecetche (Subatech)
8  */
9
10 #include "AliAnalysisMuMuBase.h"
11 #include "AliAnalysisMuMuBinning.h"
12 #include "TString.h"
13
14 class TH2F;
15 class AliVParticle;
16
17 class AliAnalysisMuMuMinv : public AliAnalysisMuMuBase
18 {
19 public:
20
21   AliAnalysisMuMuMinv();
22   virtual ~AliAnalysisMuMuMinv();
23   
24   Bool_t IsRapidityInRange(const AliVParticle& t1, const AliVParticle& t2,
25                            Double_t& ymin, Double_t& ymax) const;
26
27   virtual void FillHistosForMCEvent(const char* /*eventSelection*/,const char* /*triggerClassName*/,const char* /*centrality*/);
28
29   void NameOfIsRapidityInRange(TString& name, Double_t& ymin, Double_t& ymax) const;
30
31   Bool_t ShouldCorrectDimuonForAccEff() const { return (fAccEffHisto != 0x0); }
32   
33   void DefineHistogramCollection(const char* eventSelection, const char* triggerClassName,
34                                  const char* centrality);
35
36   virtual void FillHistosForPair(const char* eventSelection,const char* triggerClassName,
37                                  const char* centrality,
38                                  const char* pairCutName,
39                                  const AliVParticle& part,
40                                  const AliVParticle& part2);
41   
42 private:
43   
44   /// not implemented on purpose
45   AliAnalysisMuMuMinv(const AliAnalysisMuMuMinv& rhs);
46   /// not implemented on purpose
47   AliAnalysisMuMuMinv& operator=(const AliAnalysisMuMuMinv& rhs);
48   
49   void CreateMinvHistograms(const char* eventSelection, const char* triggerClassName, const char* centrality);
50   
51   TString GetMinvHistoName(const AliAnalysisMuMuBinning::Range& r, Bool_t accEffCorrected) const;
52   
53
54 private:
55   TH2F* fAccEffHisto; // input Acc x Eff (optional)
56   
57   ClassDef(AliAnalysisMuMuMinv,1) // implementation of AliAnalysisMuMuBase for muon pairs
58 };
59
60 #endif
61