Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
RooRealBinding Class Reference

Lightweight interface adaptor that binds a RooAbsReal object to a subset of its servers and present it as a simple array oriented interface.

Definition at line 30 of file RooRealBinding.h.

Public Member Functions

 RooRealBinding (const RooAbsReal &func, const RooArgSet &vars, const RooArgSet *nset=nullptr, bool clipInvalid=false, const TNamed *rangeName=nullptr)
 Construct a lightweight function binding of RooAbsReal func to variables 'vars'.
 
 RooRealBinding (const RooRealBinding &other, const RooArgSet *nset=nullptr)
 Construct a lightweight function binding of RooAbsReal func to variables 'vars'.
 
 ~RooRealBinding () override
 
std::list< double > * binBoundaries (Int_t) const override
 
double getMaxLimit (UInt_t dimension) const override
 Return upper limit on i-th variable.
 
double getMinLimit (UInt_t dimension) const override
 Return lower limit on i-th variable.
 
const char * getName () const override
 Return name of function.
 
TClassIsA () const override
 
RooAbsRealLValueobservable (unsigned int i) const
 Return a pointer to the observable that defines the i-th dimension of the function.
 
double operator() (const double xvector[]) const override
 Evaluate the bound RooAbsReal at the variable values provided in xvector.
 
std::list< double > * plotSamplingHint (RooAbsRealLValue &, double, double) const override
 Interface for returning an optional hint for initial sampling points when constructing a curve projected on observable.
 
void restoreXVec () const override
 Restore value of all variables to previously saved values by saveXVec()
 
void saveXVec () const override
 Save value of all variables.
 
void Streamer (TBuffer &) override
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from RooAbsFunc
 RooAbsFunc (const RooAbsFunc &other)
 
 RooAbsFunc (UInt_t dimension)
 
virtual ~RooAbsFunc ()
 
UInt_t getDimension () const
 
bool isValid () const
 
Int_t numCall () const
 Return number of function calls since last reset.
 
void resetNumCall () const
 Reset function call counter.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 

Static Public Member Functions

static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
- Static Public Member Functions inherited from RooAbsFunc
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 

Protected Member Functions

void loadValues (const double xvector[]) const
 Load the vector of variable values into the RooRealVars associated as variables with the bound RooAbsReal function.
 

Protected Attributes

bool _clipInvalid
 
std::vector< RooAbsReal * > _compList
 !
 
std::vector< double_compSave
 !
 
const RooAbsReal_func
 
double _funcSave
 !
 
const RooArgSet_nset
 
const TNamed_rangeName
 !
 
std::vector< RooAbsRealLValue * > _vars
 Non-owned pointers to variables.
 
std::vector< double_xsave
 
bool _xvecValid
 
- Protected Attributes inherited from RooAbsFunc
UInt_t _dimension
 Number of observables.
 
Int_t _ncall
 Function call counter.
 
bool _valid
 Is binding in valid state?
 

#include <RooRealBinding.h>

Inheritance diagram for RooRealBinding:
[legend]

Constructor & Destructor Documentation

◆ RooRealBinding() [1/2]

RooRealBinding::RooRealBinding ( const RooAbsReal func,
const RooArgSet vars,
const RooArgSet nset = nullptr,
bool  clipInvalid = false,
const TNamed rangeName = nullptr 
)

Construct a lightweight function binding of RooAbsReal func to variables 'vars'.

Use the provided nset as normalization set to be passed to RooAbsReal::getVal() If rangeName is not null, use the range of with that name as range associated with the variables of this function binding. If clipInvalid is true, values requested to the function binding that are outside the defined range of the variables are clipped to fit in the defined range.

Definition at line 54 of file RooRealBinding.cxx.

◆ RooRealBinding() [2/2]

RooRealBinding::RooRealBinding ( const RooRealBinding other,
const RooArgSet nset = nullptr 
)

Construct a lightweight function binding of RooAbsReal func to variables 'vars'.

Use the provided nset as normalization set to be passed to RooAbsReal::getVal() If rangeName is not null, use the range of with that name as range associated with the variables of this function binding. If clipInvalid is true, values requested to the function binding that are outside the defined range of the variables are clipped to fit in the defined range.

Definition at line 86 of file RooRealBinding.cxx.

◆ ~RooRealBinding()

RooRealBinding::~RooRealBinding ( )
overridedefault

Member Function Documentation

◆ binBoundaries()

std::list< double > * RooRealBinding::binBoundaries ( Int_t  index) const
overridevirtual

Reimplemented from RooAbsFunc.

Definition at line 227 of file RooRealBinding.cxx.

◆ Class()

static TClass * RooRealBinding::Class ( )
static
Returns
TClass describing this class

◆ Class_Name()

static const char * RooRealBinding::Class_Name ( )
static
Returns
Name of this class

◆ Class_Version()

static constexpr Version_t RooRealBinding::Class_Version ( )
inlinestaticconstexpr
Returns
Version of this class

Definition at line 65 of file RooRealBinding.h.

◆ DeclFileName()

static const char * RooRealBinding::DeclFileName ( )
inlinestatic
Returns
Name of the file containing the class declaration

Definition at line 65 of file RooRealBinding.h.

◆ getMaxLimit()

double RooRealBinding::getMaxLimit ( UInt_t  dimension) const
overridevirtual

Return upper limit on i-th variable.

Implements RooAbsFunc.

Definition at line 201 of file RooRealBinding.cxx.

◆ getMinLimit()

double RooRealBinding::getMinLimit ( UInt_t  dimension) const
overridevirtual

Return lower limit on i-th variable.

Implements RooAbsFunc.

Definition at line 190 of file RooRealBinding.cxx.

◆ getName()

const char * RooRealBinding::getName ( ) const
overridevirtual

Return name of function.

Reimplemented from RooAbsFunc.

Definition at line 211 of file RooRealBinding.cxx.

◆ IsA()

TClass * RooRealBinding::IsA ( ) const
inlineoverridevirtual
Returns
TClass describing current object

Reimplemented from RooAbsFunc.

Definition at line 65 of file RooRealBinding.h.

◆ loadValues()

void RooRealBinding::loadValues ( const double  xvector[]) const
protected

Load the vector of variable values into the RooRealVars associated as variables with the bound RooAbsReal function.

Warning
This will load as many values as the dimensionality of the function requires. The size of xvector is not checked.

Definition at line 160 of file RooRealBinding.cxx.

◆ observable()

RooAbsRealLValue * RooRealBinding::observable ( unsigned int  i) const
inline

Return a pointer to the observable that defines the i-th dimension of the function.

Definition at line 47 of file RooRealBinding.h.

◆ operator()()

double RooRealBinding::operator() ( const double  xvector[]) const
overridevirtual

Evaluate the bound RooAbsReal at the variable values provided in xvector.

Implements RooAbsFunc.

Definition at line 178 of file RooRealBinding.cxx.

◆ plotSamplingHint()

std::list< double > * RooRealBinding::plotSamplingHint ( RooAbsRealLValue ,
double  ,
double   
) const
overridevirtual

Interface for returning an optional hint for initial sampling points when constructing a curve projected on observable.

Reimplemented from RooAbsFunc.

Definition at line 219 of file RooRealBinding.cxx.

◆ restoreXVec()

void RooRealBinding::restoreXVec ( ) const
overridevirtual

Restore value of all variables to previously saved values by saveXVec()

Reimplemented from RooAbsFunc.

Definition at line 132 of file RooRealBinding.cxx.

◆ saveXVec()

void RooRealBinding::saveXVec ( ) const
overridevirtual

Save value of all variables.

Reimplemented from RooAbsFunc.

Definition at line 100 of file RooRealBinding.cxx.

◆ Streamer()

void RooRealBinding::Streamer ( TBuffer )
overridevirtual

Reimplemented from RooAbsFunc.

◆ StreamerNVirtual()

void RooRealBinding::StreamerNVirtual ( TBuffer ClassDef_StreamerNVirtual_b)
inline

Definition at line 65 of file RooRealBinding.h.

Member Data Documentation

◆ _clipInvalid

bool RooRealBinding::_clipInvalid
protected

Definition at line 57 of file RooRealBinding.h.

◆ _compList

std::vector<RooAbsReal*> RooRealBinding::_compList
mutableprotected

!

Definition at line 61 of file RooRealBinding.h.

◆ _compSave

std::vector<double> RooRealBinding::_compSave
mutableprotected

!

Definition at line 62 of file RooRealBinding.h.

◆ _func

const RooAbsReal* RooRealBinding::_func
protected

Definition at line 53 of file RooRealBinding.h.

◆ _funcSave

double RooRealBinding::_funcSave
mutableprotected

!

Definition at line 63 of file RooRealBinding.h.

◆ _nset

const RooArgSet* RooRealBinding::_nset
protected

Definition at line 55 of file RooRealBinding.h.

◆ _rangeName

const TNamed* RooRealBinding::_rangeName
protected

!

Definition at line 59 of file RooRealBinding.h.

◆ _vars

std::vector<RooAbsRealLValue*> RooRealBinding::_vars
protected

Non-owned pointers to variables.

Definition at line 54 of file RooRealBinding.h.

◆ _xsave

std::vector<double> RooRealBinding::_xsave
mutableprotected

Definition at line 58 of file RooRealBinding.h.

◆ _xvecValid

bool RooRealBinding::_xvecValid
mutableprotected

Definition at line 56 of file RooRealBinding.h.

Libraries for RooRealBinding:

The documentation for this class was generated from the following files: