- Setting Z positions of the tracking chamber to values given in Alain TOURNAIRE...
[u/mrichter/AliRoot.git] / HBTAN / AliHBTTwoTrackEffFctn.h
1 #ifndef AliHBTTwoTrackEffFctn_H
2 #define AliHBTTwoTrackEffFctn_H
3 //____________________________________________________________________
4 //////////////////////////////////////////////////////////////////////
5 //                                                                  //
6 //  class AliHBTTwoTrackEffFctn                                     //
7 //                                                                  //
8 //  classes for calculating two track efficiency of the tracking    //
9 //  binning is done using value of simulated pair montum difference // 
10 //  pair must be recontructed, that is why we need both pairs       //
11 //  (simulated and recontructed), thus functions are "two pair"     //
12 //  Piotr.Skowronski@cern.ch                                        //
13 //                                                                  //
14 //////////////////////////////////////////////////////////////////////
15 #include "AliHBTPair.h"
16 #include "AliHBTFunction.h"
17
18 class AliHBTTwoTrackEffFctn: public AliHBTOnePairFctn1D, public AliHBTCorrelFunction
19  {
20   public:
21     AliHBTTwoTrackEffFctn();
22     AliHBTTwoTrackEffFctn(Int_t nbins, Double_t maxval, Double_t minval);
23     virtual ~AliHBTTwoTrackEffFctn(){}
24     TH1* GetResult();
25   protected:
26     Double_t GetValue(AliHBTPair* pair) const {return pair->GetDeltaPvector();}
27   private:
28     ClassDef(AliHBTTwoTrackEffFctn,2)
29  };
30 /******************************************************************/
31
32 class AliHBTTwoTrackEffFctnPxPyPz: public AliHBTOnePairFctn3D, public AliHBTCorrelFunction
33  {
34   public:
35     AliHBTTwoTrackEffFctnPxPyPz(Int_t nXbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0,
36                                 Int_t nYbins = 100, Double_t maxYval = 0.15, Double_t minYval = 0.0,
37                     Int_t nZbins = 100, Double_t maxZval = 0.15, Double_t minZval = 0.0);
38     virtual ~AliHBTTwoTrackEffFctnPxPyPz(){}
39     TH1* GetResult();
40   protected:
41     void GetValues(AliHBTPair* pair,Double_t& x, Double_t& y,Double_t& z) const;
42   private:
43     ClassDef(AliHBTTwoTrackEffFctnPxPyPz,2)
44  };
45 /******************************************************************/
46
47 class AliHBTTwoTrackEffFctnPtThetaPhi: public AliHBTOnePairFctn3D, public AliHBTCorrelFunction
48  {
49   public:
50     AliHBTTwoTrackEffFctnPtThetaPhi(Int_t nXbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0,
51                                     Int_t nYbins = 100, Double_t maxYval = 0.3, Double_t minYval = 0.0,
52                         Int_t nZbins = 100, Double_t maxZval = 0.3, Double_t minZval = 0.0);
53     virtual ~AliHBTTwoTrackEffFctnPtThetaPhi(){}
54     TH1* GetResult();
55   protected:
56     void GetValues(AliHBTPair* pair,Double_t& x, Double_t& y,Double_t& z) const;
57   private:
58     ClassDef(AliHBTTwoTrackEffFctnPtThetaPhi,1)
59  };
60
61 #endif