CRAB added
[u/mrichter/AliRoot.git] / HBTAN / AliHBTCorrelFctn.h
1 #ifndef ALIHBTCORRELFUNCTION_H
2 #define ALIHBTCORRELFUNCTION_H
3
4 #include "AliHBTFunction.h"
5 #include "AliHBTParticle.h"
6 #include <Riostream.h>
7 //Set of functions:
8 //   Q Invaraint Correlation Function
9 //   Invariant Mass Function
10 //
11 //more info: http://alisoft.cern.ch/people/skowron/analyzer/index.html
12 //Piotr.Skowronski@cern.ch
13
14 /*************************************************************************************/ 
15 class AliHBTQInvCorrelFctn: public AliHBTOnePairFctn1D
16 {
17 //Q Invaraint Correlation Function
18 //1D two particle function 
19  public:
20    AliHBTQInvCorrelFctn(Int_t nbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0);
21    virtual ~AliHBTQInvCorrelFctn(){};
22    TH1* GetResult();
23  protected:
24    Double_t GetValue(AliHBTPair * pair){return pair->GetQInv();}
25   public:
26     ClassDef(AliHBTQInvCorrelFctn,1)
27  
28 };
29 /*************************************************************************************/ 
30
31 class AliHBTQOutCMSLCCorrelFctn: public AliHBTOnePairFctn1D
32 {
33 //Q OutCMSLCaraint Correlation Function
34 //1D two particle function 
35  public:
36    AliHBTQOutCMSLCCorrelFctn(Int_t nbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0);
37    virtual ~AliHBTQOutCMSLCCorrelFctn(){};
38    TH1* GetResult();
39  protected:
40    Double_t GetValue(AliHBTPair * pair){return pair->GetQOutCMSLC();}
41   public:
42     ClassDef(AliHBTQOutCMSLCCorrelFctn,1)
43  
44 };
45 /*************************************************************************************/ 
46
47 class AliHBTQLongCMSLCCorrelFctn: public AliHBTOnePairFctn1D
48 {
49 //Q LongCMSLCaraint Correlation Function
50 //1D two particle function 
51  public:
52    AliHBTQLongCMSLCCorrelFctn(Int_t nbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0);
53    virtual ~AliHBTQLongCMSLCCorrelFctn(){};
54    TH1* GetResult();
55  protected:
56    Double_t GetValue(AliHBTPair * pair){return pair->GetQLongCMSLC();}
57   public:
58     ClassDef(AliHBTQLongCMSLCCorrelFctn,1)
59  
60 };
61 /*************************************************************************************/ 
62
63 class AliHBTQSideCMSLCCorrelFctn: public AliHBTOnePairFctn1D
64 {
65 //Q SideCMSLCaraint Correlation Function
66 //1D two particle function 
67  public:
68    AliHBTQSideCMSLCCorrelFctn(Int_t nbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0);
69    virtual ~AliHBTQSideCMSLCCorrelFctn(){}
70    TH1* GetResult();
71  protected:
72    Double_t GetValue(AliHBTPair * pair){return pair->GetQSideCMSLC();}
73   public:
74     ClassDef(AliHBTQSideCMSLCCorrelFctn,1)
75  
76 };
77 /*************************************************************************************/ 
78
79 class AliHBTInvMassCorrelFctn: public AliHBTOnePairFctn1D
80 {
81 //   Invariant Mass Function 
82  public:
83    AliHBTInvMassCorrelFctn(Int_t nbins = 2000, Double_t maxXval = 2., Double_t minXval = 0.0);
84    virtual ~AliHBTInvMassCorrelFctn(){};
85    TH1* GetResult();
86  protected:
87    Double_t GetValue(AliHBTPair * pair) { return pair->GetInvMass();}
88   public:
89     ClassDef(AliHBTInvMassCorrelFctn,1)
90  
91 };
92
93 /*************************************************************************************/ 
94
95 class AliHBTTwoKStarCorrelFctn: public AliHBTOnePairFctn1D
96 {
97 //   Correlation Function of 2*KStar
98  public:
99    AliHBTTwoKStarCorrelFctn(Int_t nbins = 200, Double_t maxXval = 0.15, Double_t minXval = 0.0);
100    virtual ~AliHBTTwoKStarCorrelFctn(){};
101    TH1* GetResult();
102  protected:
103    Double_t GetValue(AliHBTPair * pair) { return 2.0*pair->GetKStar();}
104   public:
105     ClassDef(AliHBTTwoKStarCorrelFctn,1)
106  
107 };
108
109
110 #endif