#ifndef ROOT_TBinomialEfficiencyFitter
#define ROOT_TBinomialEfficiencyFitter
#ifndef ROOT_TObject
#include "TObject.h"
#endif
#ifndef ROOT_TFitResultPtr
#include "TFitResultPtr.h"
#endif
class TH1;
class TF1;
namespace ROOT {
namespace Fit {
class Fitter;
}
}
class TBinomialEfficiencyFitter: public TObject {
protected:
TH1 *fDenominator;
TH1 *fNumerator;
TF1 *fFunction;
Double_t fEpsilon;
Bool_t fFitDone;
Bool_t fAverage;
Bool_t fRange;
ROOT::Fit::Fitter *fFitter;
private:
void ComputeFCN(Double_t& f, const Double_t* par);
public:
TBinomialEfficiencyFitter();
TBinomialEfficiencyFitter(const TH1 *numerator, const TH1 *denominator);
virtual ~TBinomialEfficiencyFitter();
void Set(const TH1 *numerator, const TH1 *denominator);
void SetPrecision(Double_t epsilon);
TFitResultPtr Fit(TF1 *f1, Option_t* option = "");
ROOT::Fit::Fitter * GetFitter();
Double_t EvaluateFCN(const Double_t * par) {
Double_t f = 0;
ComputeFCN(f, par);
return f;
}
ClassDef(TBinomialEfficiencyFitter, 1)
};
#endif
TBinomialEfficiencyFitter.h:1 TBinomialEfficiencyFitter.h:2 TBinomialEfficiencyFitter.h:3 TBinomialEfficiencyFitter.h:4 TBinomialEfficiencyFitter.h:5 TBinomialEfficiencyFitter.h:6 TBinomialEfficiencyFitter.h:7 TBinomialEfficiencyFitter.h:8 TBinomialEfficiencyFitter.h:9 TBinomialEfficiencyFitter.h:10 TBinomialEfficiencyFitter.h:11 TBinomialEfficiencyFitter.h:12 TBinomialEfficiencyFitter.h:13 TBinomialEfficiencyFitter.h:14 TBinomialEfficiencyFitter.h:15 TBinomialEfficiencyFitter.h:16 TBinomialEfficiencyFitter.h:17 TBinomialEfficiencyFitter.h:18 TBinomialEfficiencyFitter.h:19 TBinomialEfficiencyFitter.h:20 TBinomialEfficiencyFitter.h:21 TBinomialEfficiencyFitter.h:22 TBinomialEfficiencyFitter.h:23 TBinomialEfficiencyFitter.h:24 TBinomialEfficiencyFitter.h:25 TBinomialEfficiencyFitter.h:26 TBinomialEfficiencyFitter.h:27 TBinomialEfficiencyFitter.h:28 TBinomialEfficiencyFitter.h:29 TBinomialEfficiencyFitter.h:30 TBinomialEfficiencyFitter.h:31 TBinomialEfficiencyFitter.h:32 TBinomialEfficiencyFitter.h:33 TBinomialEfficiencyFitter.h:34 TBinomialEfficiencyFitter.h:35 TBinomialEfficiencyFitter.h:36 TBinomialEfficiencyFitter.h:37 TBinomialEfficiencyFitter.h:38 TBinomialEfficiencyFitter.h:39 TBinomialEfficiencyFitter.h:40 TBinomialEfficiencyFitter.h:41 TBinomialEfficiencyFitter.h:42 TBinomialEfficiencyFitter.h:43 TBinomialEfficiencyFitter.h:44 TBinomialEfficiencyFitter.h:45 TBinomialEfficiencyFitter.h:46 TBinomialEfficiencyFitter.h:47 TBinomialEfficiencyFitter.h:48 TBinomialEfficiencyFitter.h:49 TBinomialEfficiencyFitter.h:50 TBinomialEfficiencyFitter.h:51 TBinomialEfficiencyFitter.h:52 TBinomialEfficiencyFitter.h:53 TBinomialEfficiencyFitter.h:54 TBinomialEfficiencyFitter.h:55 TBinomialEfficiencyFitter.h:56 TBinomialEfficiencyFitter.h:57 TBinomialEfficiencyFitter.h:58 TBinomialEfficiencyFitter.h:59 TBinomialEfficiencyFitter.h:60 TBinomialEfficiencyFitter.h:61 TBinomialEfficiencyFitter.h:62 TBinomialEfficiencyFitter.h:63 TBinomialEfficiencyFitter.h:64 TBinomialEfficiencyFitter.h:65 TBinomialEfficiencyFitter.h:66 TBinomialEfficiencyFitter.h:67 TBinomialEfficiencyFitter.h:68 TBinomialEfficiencyFitter.h:69 TBinomialEfficiencyFitter.h:70 TBinomialEfficiencyFitter.h:71 TBinomialEfficiencyFitter.h:72 TBinomialEfficiencyFitter.h:73 TBinomialEfficiencyFitter.h:74 TBinomialEfficiencyFitter.h:75 TBinomialEfficiencyFitter.h:76 TBinomialEfficiencyFitter.h:77 TBinomialEfficiencyFitter.h:78 TBinomialEfficiencyFitter.h:79 TBinomialEfficiencyFitter.h:80 TBinomialEfficiencyFitter.h:81 TBinomialEfficiencyFitter.h:82 TBinomialEfficiencyFitter.h:83