00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #ifndef Q3invCorrFctn_hh
00028 #define Q3invCorrFctn_hh
00029
00030 #include "StHbtMaker/Base/StHbtCorrFctn.hh"
00031 #include "StHbtMaker/Infrastructure/StHbtCoulomb.h"
00032
00033
00034 class Q3invCorrFctn : public StHbtCorrFctn {
00035 public:
00036 Q3invCorrFctn(char* title, const int& nbinsQ, const float& QinvLo, const float& QinvHi, const int& nbinsMerge, const float& MergeLo, const float& MergeHi, const float& Split);
00037 virtual ~Q3invCorrFctn();
00038
00039 virtual StHbtString Report();
00040 virtual void AddRealTriplet(const StHbtTriplet*);
00041 virtual void AddMixedTriplet(const StHbtTriplet*);
00042
00043 void AddCorrection(StHbtCoulomb*);
00044 void AddPHisto(TH1D*);
00045
00046 virtual void Finish();
00047
00048 StHbt2DHisto* Numerator();
00049 StHbt2DHisto* Denominator();
00050 StHbt2DHisto* Ratio();
00051
00052 private:
00053 StHbt2DHisto* mNumerator;
00054 StHbt2DHisto* mDenominator;
00055 StHbt2DHisto* mRatio;
00056 TH1D* mPHist;
00057
00058 ClassDef(Q3invCorrFctn, 1)
00059
00060 float mSplit;
00061 StHbtCoulomb mCorrection;
00062
00063 };
00064
00065 inline StHbt2DHisto* Q3invCorrFctn::Numerator(){return mNumerator;}
00066 inline StHbt2DHisto* Q3invCorrFctn::Denominator(){return mDenominator;}
00067 inline StHbt2DHisto* Q3invCorrFctn::Ratio(){return mRatio;}
00068 inline void Q3invCorrFctn::AddPHisto(TH1D *x){mPHist = x;}
00069
00070 #endif
00071