StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
QoslCMSCorrFctnRPkT.h
1 #ifndef QoslCMSCorrFctnRPkT_hh
2 #define QoslCMSCorrFctnRPkT_hh
3 
4 #include "StHbtMaker/Base/StHbtCorrFctn.hh"
5 #include "StHbtMaker/Base/StHbtPairCut.h"
6 #include "StHbtMaker/Infrastructure/StHbtCoulomb.h"
7 
8 class TH3S;
9 
11 public:
12  QoslCMSCorrFctnRPkT(char* title, const int& nbinso, const float& QoLo, const float& QoHi,
13  const int& nbinss, const float& QsLo, const float& QsHi,
14  const int& nbinsl, const float& QlLo, const float& QlHi, const int& rpBins);
15  virtual ~QoslCMSCorrFctnRPkT();
16 
17  virtual StHbtString Report();
18  virtual void AddRealPair(const StHbtPair*);
19  virtual void AddMixedPair(const StHbtPair*);
20  void SetCorrection(StHbtCoulomb*);
21  void SetSpecificPairCut(StHbtPairCut*);
22 
23  virtual void Finish();
24 
25  float qMax;
26 
27  int nRPbins;
28  int nKtBins;
29 
30  TH3S* Numerator3D(const int& rpBin, const int& ktBin);
31  TH3S* Denominator3D(const int& rpBin, const int& ktBin);
32  StHbt3DHisto* QinvHisto3D(const int& rpBin, const int& ktBin);
33  StHbt3DHisto* CoulHisto3D(const int& rpBin, const int& ktBin);
34 
35 private:
36  TH3S* mNumerator[12][4];
37  TH3S* mDenominator[12][4];
38  StHbt3DHisto* mQinvHisto[12][4];
39  StHbt3DHisto* mCoulHisto[12][4];
40 
41  StHbtCoulomb* mCorrection;
42  StHbtPairCut* mPairCut;
43 
44  int GetRPBin(const StHbtPair*);
45  int GetKtBin(const StHbtPair*);
46 
47 #ifdef __ROOT__
48  ClassDef(QoslCMSCorrFctnRPkT, 1)
49 #endif
50 };
51 
52 inline TH3S* QoslCMSCorrFctnRPkT::Numerator3D(const int& rpBin, const int& ktBin){return mNumerator[rpBin][ktBin];}
53 inline TH3S* QoslCMSCorrFctnRPkT::Denominator3D(const int& rpBin, const int& ktBin){return mDenominator[rpBin][ktBin];}
54 inline StHbt3DHisto* QoslCMSCorrFctnRPkT::QinvHisto3D(const int& rpBin, const int& ktBin){return mQinvHisto[rpBin][ktBin];}
55 inline StHbt3DHisto* QoslCMSCorrFctnRPkT::CoulHisto3D(const int& rpBin, const int& ktBin){return mCoulHisto[rpBin][ktBin];}
56 inline void QoslCMSCorrFctnRPkT::SetSpecificPairCut(StHbtPairCut* pc){mPairCut=pc;}
57 
58 #endif
59