2cee22c12258d4d3bf0acfdf8f04142f82941987
[u/mrichter/AliRoot.git] / PWG2 / FEMTOSCOPY / AliFemtoUser / AliFemtoModelBPLCMSCorrFctn.h
1 ////////////////////////////////////////////////////////////////////////////////
2 ///                                                                          ///
3 /// AliFemtoModelBPLCMSCorrFctn - the class for correlation function which   ///
4 /// uses the model framework and weight generation and calculated the 3D     ///
5 /// correlation function in the Bertsh-Pratt LCMS system                     ///
6 /// Authors: Adam Kisiel, kisiel@mps.ohio-state.edu                          ///
7 ///                                                                          ///
8 ////////////////////////////////////////////////////////////////////////////////
9 #ifndef ALIFEMTOMODELBPLCMSCORRFCTN_H
10 #define ALIFEMTOMODELBPLCMSCORRFCTN_H
11
12 #include "AliFemtoCorrFctn.h"
13 #include "AliFemtoModelCorrFctn.h"
14 #include "AliFemtoPairCut.h"
15 #include "TH3D.h"
16
17 class AliFemtoModelBPLCMSCorrFctn : public AliFemtoModelCorrFctn {
18  public:
19   AliFemtoModelBPLCMSCorrFctn()  :
20     AliFemtoModelCorrFctn(),
21     fNumerator3DTrue(0),
22     fNumerator3DFake(0),
23     fDenominator3D(0),
24     fQinvHisto(0),
25     fPairCut(0){}
26   AliFemtoModelBPLCMSCorrFctn(char* title, const int& nbins, const float& QLo, const float& QHi);
27   AliFemtoModelBPLCMSCorrFctn(const AliFemtoModelBPLCMSCorrFctn& aCorrFctn);
28   virtual ~AliFemtoModelBPLCMSCorrFctn();
29
30   AliFemtoModelBPLCMSCorrFctn& operator=(const AliFemtoModelBPLCMSCorrFctn& aCorrFctn);
31
32   virtual AliFemtoString Report();
33   virtual void AddRealPair(AliFemtoPair* pair);
34   virtual void AddMixedPair(AliFemtoPair* pair);
35
36   virtual void Finish();
37
38   virtual void Write();
39   virtual TList* GetOutputList();
40
41   void SetSpecificPairCut(AliFemtoPairCut* aCut);
42
43   virtual AliFemtoModelCorrFctn* Clone();
44
45 protected:
46   TH3D* fNumerator3DTrue;            // 3D Numerator with pairs from same event only
47   TH3D* fNumerator3DFake;            // 3D Numerator with pairs from mixed events
48   TH3D* fDenominator3D;              // 3D Denominator with the weight of 1.0
49
50   TH3D* fQinvHisto;                  // Averag qinv histogram
51
52   AliFemtoPairCut* fPairCut;    //! this is a PairCut specific to THIS CorrFctn, not the Analysis
53
54 #ifdef __ROOT__
55   ClassDef(AliFemtoModelBPLCMSCorrFctn, 1)
56 #endif
57 };
58
59 #endif
60