reverting to prev.
[u/mrichter/AliRoot.git] / HBTAN / AliHBTCorrelFctn.h
CommitLineData
1b446896 1#ifndef ALIHBTCORRELFUNCTION_H
2#define ALIHBTCORRELFUNCTION_H
db21c92b 3//____________________________________________________________________________
4//////////////////////////////////////////////////////////////////////////////
5//
6// class AliHBTQInvCorrelFctn
7// class AliHBTQOutCMSLCCorrelFctn
8// class AliHBTQLongCMSLCCorrelFctn
9// class AliHBTQSideCMSLCCorrelFctn
10// class AliHBTInvMassCorrelFctn
11// class AliHBTTwoKStarCorrelFctn
12//
13// Set of functions:
14// Q Invaraint Correlation Function
15// Invariant Mass Function
16//
17// more info: http://aliweb.cern.ch/people/skowron/analyzer/index.html
18// Piotr.Skowronski@cern.ch
19//
20//////////////////////////////////////////////////////////////////////////////
88cb7938 21
22#include "AliHBTFunction.h"
88cb7938 23#include <Riostream.h>
1b446896 24
953577f3 25/*************************************************************************************/
fc13079c 26class AliHBTQInvCorrelFctn: public AliHBTOnePairFctn1D, public AliHBTCorrelFunction
1b446896 27{
28//Q Invaraint Correlation Function
29//1D two particle function
30 public:
953577f3 31 AliHBTQInvCorrelFctn(Int_t nbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0);
1b446896 32 virtual ~AliHBTQInvCorrelFctn(){};
33 TH1* GetResult();
34 protected:
a22a56ec 35 Double_t GetValue(AliHBTPair * pair) const {return pair->GetQInv();}
db21c92b 36 private:
fc13079c 37 ClassDef(AliHBTQInvCorrelFctn,2)
1b446896 38
39};
3cc1fefe 40/*************************************************************/
41
42class AliHBTOutSideLongFctn: public AliHBTOnePairFctn3D, public AliHBTCorrelFunction
43{
44
45 public:
46 AliHBTOutSideLongFctn(Int_t nXbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0,
087f87e7 47 Int_t nYbins = 100, Double_t maxYval = 0.15, Double_t minYval = 0.0,
48 Int_t nZbins = 100, Double_t maxZval = 0.15, Double_t minZval = 0.0);
3cc1fefe 49 virtual ~AliHBTOutSideLongFctn(){}
50
f78d233e 51 TH1* GetResult();
ed3b923a 52 void UseAbsoluteValues(Bool_t flag){fAbs = flag;}
f78d233e 53
54 protected:
ed3b923a 55 void GetValues(AliHBTPair* pair, Double_t& x, Double_t& y, Double_t& z) const;
56
57 Bool_t fAbs;//flag indicating if absolute values of qout, qside and qlong should be histogrammed
3cc1fefe 58 ClassDef(AliHBTOutSideLongFctn,1)
59};
60
953577f3 61/*************************************************************************************/
62
fc13079c 63class AliHBTQOutCMSLCCorrelFctn: public AliHBTOnePairFctn1D, public AliHBTCorrelFunction
953577f3 64{
65//Q OutCMSLCaraint Correlation Function
66//1D two particle function
67 public:
e6e21fa2 68 AliHBTQOutCMSLCCorrelFctn(Int_t nbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0);
953577f3 69 virtual ~AliHBTQOutCMSLCCorrelFctn(){};
70 TH1* GetResult();
71 protected:
a22a56ec 72 Double_t GetValue(AliHBTPair * pair) const {return pair->GetQOutCMSLC();}
db21c92b 73 private:
fc13079c 74 ClassDef(AliHBTQOutCMSLCCorrelFctn,2)
953577f3 75};
76/*************************************************************************************/
1b446896 77
fc13079c 78class AliHBTQLongCMSLCCorrelFctn: public AliHBTOnePairFctn1D, public AliHBTCorrelFunction
953577f3 79{
80//Q LongCMSLCaraint Correlation Function
81//1D two particle function
82 public:
e6e21fa2 83 AliHBTQLongCMSLCCorrelFctn(Int_t nbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0);
953577f3 84 virtual ~AliHBTQLongCMSLCCorrelFctn(){};
85 TH1* GetResult();
86 protected:
a22a56ec 87 Double_t GetValue(AliHBTPair * pair) const {return pair->GetQLongCMSLC();}
db21c92b 88 private:
fc13079c 89 ClassDef(AliHBTQLongCMSLCCorrelFctn,2)
953577f3 90};
91/*************************************************************************************/
92
fc13079c 93class AliHBTQSideCMSLCCorrelFctn: public AliHBTOnePairFctn1D, public AliHBTCorrelFunction
953577f3 94{
95//Q SideCMSLCaraint Correlation Function
96//1D two particle function
97 public:
e6e21fa2 98 AliHBTQSideCMSLCCorrelFctn(Int_t nbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0);
30b3d8d4 99 virtual ~AliHBTQSideCMSLCCorrelFctn(){}
953577f3 100 TH1* GetResult();
101 protected:
a22a56ec 102 Double_t GetValue(AliHBTPair * pair) const {return pair->GetQSideCMSLC();}
db21c92b 103 private:
fc13079c 104 ClassDef(AliHBTQSideCMSLCCorrelFctn,2)
953577f3 105};
106/*************************************************************************************/
1b446896 107
27b3fe5d 108class AliHBTInvMassCorrelFctn: public AliHBTOnePairFctn1D
1b446896 109{
110// Invariant Mass Function
111 public:
112 AliHBTInvMassCorrelFctn(Int_t nbins = 2000, Double_t maxXval = 2., Double_t minXval = 0.0);
113 virtual ~AliHBTInvMassCorrelFctn(){};
114 TH1* GetResult();
115 protected:
a22a56ec 116 Double_t GetValue(AliHBTPair * pair) const { return pair->GetInvMass();}
db21c92b 117 private:
1b446896 118 ClassDef(AliHBTInvMassCorrelFctn,1)
1b446896 119};
120
4866a439 121/*************************************************************************************/
122
fc13079c 123class AliHBTTwoKStarCorrelFctn: public AliHBTOnePairFctn1D, public AliHBTCorrelFunction
4866a439 124{
125// Correlation Function of 2*KStar
126 public:
127 AliHBTTwoKStarCorrelFctn(Int_t nbins = 200, Double_t maxXval = 0.15, Double_t minXval = 0.0);
128 virtual ~AliHBTTwoKStarCorrelFctn(){};
129 TH1* GetResult();
130 protected:
a22a56ec 131 Double_t GetValue(AliHBTPair * pair) const { return 2.0*pair->GetKStar();}
db21c92b 132 private:
fc13079c 133 ClassDef(AliHBTTwoKStarCorrelFctn,2)
4866a439 134};
1b446896 135
087f87e7 136/*************************************************************************************/
137
138class AliHBTAvSeparCorrelFctn: public AliHBTOnePairFctn1D, public AliHBTCorrelFunction
139{
140// Correlation Function of 2*KStar
141 public:
142 AliHBTAvSeparCorrelFctn(Int_t nbins = 200, Double_t maxXval = 30, Double_t minXval = 0.0);
143 virtual ~AliHBTAvSeparCorrelFctn(){};
144 TH1* GetResult();
145 protected:
a22a56ec 146 Double_t GetValue(AliHBTPair * pair) const { return pair->GetAvarageDistance();}
087f87e7 147 private:
148 ClassDef(AliHBTAvSeparCorrelFctn,2)
149};
150
1b446896 151#endif