Warning, file /include/root/RooParamHistFunc.h was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011 #ifndef ROO_PARAM_HIST_FUNC
0012 #define ROO_PARAM_HIST_FUNC
0013
0014 #include "RooAbsPdf.h"
0015 #include "RooRealProxy.h"
0016 #include "RooCategoryProxy.h"
0017 #include "RooAbsReal.h"
0018 #include "RooAbsCategory.h"
0019 #include "RooListProxy.h"
0020 #include "RooSetProxy.h"
0021 #include "RooDataHist.h"
0022 #include <list>
0023
0024 class RooParamHistFunc : public RooAbsReal {
0025 public:
0026 RooParamHistFunc() {} ;
0027 RooParamHistFunc(const char *name, const char *title, RooDataHist &dh, const RooAbsArg &x,
0028 const RooParamHistFunc *paramSource = nullptr, bool paramRelative = true);
0029 RooParamHistFunc(const RooParamHistFunc& other, const char* name=nullptr) ;
0030 TObject* clone(const char* newname=nullptr) const override { return new RooParamHistFunc(*this,newname); }
0031
0032 std::list<double>* binBoundaries(RooAbsRealLValue& , double , double ) const override ;
0033 std::list<double>* plotSamplingHint(RooAbsRealLValue& obs, double xlo, double xhi) const override ;
0034 bool isBinnedDistribution(const RooArgSet&) const override { return true ; }
0035
0036
0037 bool forceAnalyticalInt(const RooAbsArg&) const override { return true ; }
0038 Int_t getAnalyticalIntegralWN(RooArgSet& allVars, RooArgSet& analVars, const RooArgSet* normSet,const char* rangeName=nullptr) const override ;
0039 double analyticalIntegralWN(Int_t code, const RooArgSet* normSet, const char* rangeName=nullptr) const override ;
0040
0041 double getActual(Int_t ibin) ;
0042 void setActual(Int_t ibin, double newVal) ;
0043 double getNominal(Int_t ibin) const ;
0044 double getNominalError(Int_t ibin) const ;
0045
0046 const RooArgList& xList() const { return _x ; }
0047 const RooArgList& paramList() const { return _p ; }
0048 const RooDataHist& dataHist() const { return _dh ; }
0049 bool relParam() const { return _relParam; }
0050
0051 protected:
0052
0053 friend class RooHistConstraint ;
0054
0055 RooListProxy _x ;
0056 RooListProxy _p ;
0057 RooDataHist _dh ;
0058 bool _relParam ;
0059
0060 double evaluate() const override ;
0061
0062 private:
0063
0064 ClassDefOverride(RooParamHistFunc,1);
0065 };
0066
0067 #endif