File indexing completed on 2025-01-18 10:11:20
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 #ifndef ROO_CONV_COEF_VAR
0017 #define ROO_CONV_COEF_VAR
0018
0019 #include <cmath>
0020 #include <cfloat>
0021
0022 #include "RooAbsReal.h"
0023 #include "RooRealVar.h"
0024 #include "RooRealProxy.h"
0025 #include "RooSetProxy.h"
0026 class RooAbsAnaConvPdf ;
0027
0028 class RooConvCoefVar : public RooAbsReal {
0029 public:
0030
0031
0032 inline RooConvCoefVar() {
0033 }
0034 RooConvCoefVar(const char *name, const char *title, const RooAbsAnaConvPdf& input, Int_t coefIdx, const RooArgSet* varList=nullptr) ;
0035 RooConvCoefVar(const RooConvCoefVar& other, const char* name=nullptr);
0036 TObject* clone(const char* newname) const override { return new RooConvCoefVar(*this,newname); }
0037
0038 double getValV(const RooArgSet* nset=nullptr) const override ;
0039
0040 double evaluate() const override ;
0041 Int_t getAnalyticalIntegral(RooArgSet& allVars, RooArgSet& analVars, const char* rangeName=nullptr) const override ;
0042 double analyticalIntegral(Int_t code, const char* rangeName=nullptr) const override ;
0043
0044 protected:
0045
0046 RooSetProxy _varSet ;
0047 RooRealProxy _convPdf ;
0048 Int_t _coefIdx ;
0049
0050 ClassDefOverride(RooConvCoefVar,1)
0051 };
0052
0053 #endif