ROOT logo
ROOT » ROOFIT » ROOFITCORE » RooParamBinning

class RooParamBinning: public RooAbsBinning



Class RooParamBinning is an implementation of RooAbsBinning that constructs a binning with a range definition that depends on external RooAbsReal objects. The external RooAbsReal definitions are explicitly allowed to depend on other observables and parameters, and make it possible to define non-rectangular range definitions in RooFit. Objects of class RooParamBinning are made by the RooRealVar::setRange() that takes RooAbsReal references as arguments

Function Members (Methods)

public:
RooParamBinning(const char* name = 0)
RooParamBinning(const RooParamBinning& other, const char* name = 0)
RooParamBinning(RooAbsReal& xlo, RooAbsReal& xhi, Int_t nBins, const char* name = 0)
virtual~RooParamBinning()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual Double_t*array() const
virtual Double_taverageBinWidth() const
virtual Double_tbinCenter(Int_t bin) const
virtual Double_tbinHigh(Int_t bin) const
virtual Double_tbinLow(Int_t bin) const
virtual Int_tbinNumber(Double_t x) const
virtual Double_tbinWidth(Int_t bin) const
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTNamed::Clear(Option_t* option = "")
virtual RooAbsBinning*clone(const char* name = 0) const
virtual TObject*RooAbsBinning::Clone(const char* newname = 0) const
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual voidTNamed::Copy(TObject& named) const
virtual Int_tRooPrintable::defaultPrintContents(Option_t* opt) const
static ostream&RooPrintable::defaultPrintStream(ostream* os = 0)
virtual RooPrintable::StyleOptionRooPrintable::defaultPrintStyle(Option_t* opt) const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual voidTNamed::FillBuffer(char*& buffer)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
virtual const char*TNamed::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::Hash() const
virtual Double_thighBound() const
virtual RooAbsReal*highBoundFunc() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidinsertHook(RooAbsRealLValue&) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tisParameterized() const
virtual Bool_tisShareable() const
virtual Bool_tTNamed::IsSortable() const
virtual Bool_tRooAbsBinning::isUniform() const
Bool_tTObject::IsZombie() const
virtual Double_tlowBound() const
virtual RooAbsReal*lowBoundFunc() const
virtual voidTNamed::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
static voidRooPrintable::nameFieldLength(Int_t newLen)
virtual Bool_tTObject::Notify()
Int_tRooAbsBinning::numBins() const
virtual Int_tnumBoundaries() const
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
RooParamBinning&operator=(const RooParamBinning&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidRooAbsBinning::Print(Option_t* options = 0) const
virtual voidRooPrintable::printAddress(ostream& os) const
virtual voidRooAbsBinning::printArgs(ostream& os) const
virtual voidRooAbsBinning::printClassName(ostream& os) const
virtual voidRooPrintable::printExtras(ostream& os) const
virtual voidprintMultiline(ostream& os, Int_t content, Bool_t verbose = kFALSE, TString indent = "") const
virtual voidRooAbsBinning::printName(ostream& os) const
virtual voidRooPrintable::printStream(ostream& os, Int_t contents, RooPrintable::StyleOption style, TString indent = "") const
virtual voidRooAbsBinning::printTitle(ostream& os) const
virtual voidRooPrintable::printTree(ostream& os, TString indent = "") const
virtual voidRooAbsBinning::printValue(ostream& os) const
virtual Int_tRooAbsBinning::rawBinNumber(Double_t x) const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
virtual voidremoveHook(RooAbsRealLValue&) const
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
virtual voidRooAbsBinning::setMax(Double_t xhi)
virtual voidRooAbsBinning::setMin(Double_t xlo)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidsetRange(Double_t xlo, Double_t xhi)
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp)
virtual Int_tTNamed::Sizeof() const
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()
RooAbsReal*xhi() const
RooAbsReal*xlo() const

Data Members

protected:
Double_t*_array! do not persist
Double_t_binw
RooListProxy*_lp
static Int_tRooPrintable::_nameLength
Int_t_nbins
RooAbsArg*_owner
RooAbsReal*_xhi!
RooAbsReal*_xlo!
TStringTNamed::fNameobject identifier
TStringTNamed::fTitleobject title

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

RooParamBinning(const char* name = 0)
 Default constructor
   cout << "RooParamBinning(" << this << ") default ctor" << endl ;
RooParamBinning(RooAbsReal& xlo, RooAbsReal& xhi, Int_t nBins, const char* name = 0)
 Construct binning with 'nBins' bins and with a range
 parameterized by external RooAbsReals xloIn and xhiIn.
~RooParamBinning()
 Destructor
RooParamBinning(const RooParamBinning& other, const char* name = 0)
 Copy constructor
   cout << "RooParamBinning::cctor(" << this << ") orig = " << &other << endl ;
void insertHook(RooAbsRealLValue& ) const
 Hook function called by RooAbsRealLValue when this binning
 is inserted as binning for into given owner. Create
 list proxy registered with owner that will track and implement
 server directs to external RooAbsReals of this binning
void removeHook(RooAbsRealLValue& ) const
 Hook function called by RooAbsRealLValue when this binning
 is removed as binning for into given owner. Delete list
 proxy that was inserted in owner
void setRange(Double_t xlo, Double_t xhi)
 Adjust range by adjusting values of external RooAbsReal values
 Only functional when external representations are lvalues
Int_t binNumber(Double_t x) const
 Return the fit bin index for the current value
Double_t binCenter(Int_t bin) const
 Return the central value of the 'i'-th fit bin
Double_t binWidth(Int_t bin) const
 Return average bin width
Double_t binLow(Int_t bin) const
 Return the low edge of the 'i'-th fit bin
Double_t binHigh(Int_t bin) const
 Return the high edge of the 'i'-th fit bin
Double_t* array() const
 Return array of bin boundaries
void printMultiline(ostream& os, Int_t content, Bool_t verbose = kFALSE, TString indent = "") const
 Print details of binning
RooAbsBinning* clone(const char* name = 0) const
{ return new RooParamBinning(*this,name?name:GetName()) ; }
Int_t numBoundaries() const
{ return _nbins + 1 ; }
Double_t lowBound() const
{ return xlo()->getVal() ; }
Double_t highBound() const
{ return xhi()->getVal() ; }
Double_t averageBinWidth() const
{ return _binw ; }
Bool_t isShareable() const
{ return kFALSE ; }
Bool_t isParameterized() const
{ return kTRUE ; }
RooAbsReal* lowBoundFunc() const
{ return xlo() ; }
RooAbsReal* highBoundFunc() const
{ return xhi() ; }
RooAbsReal* xlo() const
{ return _lp ? ((RooAbsReal*)_lp->at(0)) : _xlo ; }
RooAbsReal* xhi() const
{ return _lp ? ((RooAbsReal*)_lp->at(1)) : _xhi ; }