ROOT » ROOFIT » ROOFITCORE » RooFormula

class RooFormula: public TFormula, public RooPrintable



RooFormula an implementation of TFormula that interfaces it to RooAbsArg value objects. It allows to use the value of a given list of RooAbsArg objects in the formula expression. Reference is done either by the RooAbsArgs name or by list ordinal postion ('@0,@1,...'). State information of RooAbsCategories can be accessed used the '::' operator, e.g. 'tagCat::Kaon' will resolve to the numerical value of the 'Kaon' state of the RooAbsCategory object named tagCat.

Function Members (Methods)

public:
virtual~RooFormula()
voidTObject::AbstractMethod(const char* method) const
RooArgSet&actualDependents() const
virtual voidTFormula::Analyze(const char* schain, Int_t& err, Int_t offset = 0)
virtual Bool_tTFormula::AnalyzeFunction(TString& chaine, Int_t& err, Int_t offset = 0)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
Bool_tchangeDependents(const RooAbsCollection& newDeps, Bool_t mustReplaceAll, Bool_t nameChange)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTFormula::Clear(Option_t* option = "")
virtual TObject*Clone(const char* newName = 0) const
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual Int_tTFormula::Compile(const char* expression = "")
virtual voidTFormula::Copy(TObject& formula) 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 char*TFormula::DefinedString(Int_t code)
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
voiddump()
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
Double_teval(const RooArgSet* nset = 0)
virtual Double_tTFormula::Eval(Double_t x, Double_t y = 0, Double_t z = 0, Double_t t = 0) const
virtual Double_tTFormula::EvalPar(const Double_t* x, const Double_t* params = 0)
virtual Double_tTFormula::EvalParOld(const Double_t* x, const Double_t* params = 0)
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 TStringTFormula::GetExpFormula(Option_t* option = "") const
virtual const char*TObject::GetIconName() const
virtual const TObject*TFormula::GetLinearPart(Int_t i)
static voidTFormula::GetMaxima(Int_t& maxop, Int_t& maxpar, Int_t& maxconst)
virtual const char*TNamed::GetName() const
virtual Int_tTFormula::GetNdim() const
virtual Int_tTFormula::GetNpar() const
virtual Int_tTFormula::GetNumber() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
RooAbsArg*getParameter(const char* name) const
RooAbsArg*getParameter(Int_t index) const
Double_tTFormula::GetParameter(Int_t ipar) const
Double_tTFormula::GetParameter(const char* name) const
virtual Double_t*TFormula::GetParameters() const
virtual voidTFormula::GetParameters(Double_t* params)
virtual const char*TFormula::GetParName(Int_t ipar) const
virtual Int_tTFormula::GetParNumber(const char* name) const
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::Hash() 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 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
virtual Bool_tTFormula::IsLinear() const
virtual Bool_tTFormula::IsNormalized() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTNamed::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTNamed::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
static voidRooPrintable::nameFieldLength(Int_t newLen)
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
Bool_tok()
voidTObject::operator delete(void* ptr)
voidTObject::operator delete(void* ptr, void* vp)
voidTObject::operator delete[](void* ptr)
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)
voidTFormula::Optimize()
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidPrint(Option_t* options = 0) const
virtual voidRooPrintable::printAddress(ostream& os) const
virtual voidprintArgs(ostream& os) const
virtual voidprintClassName(ostream& os) const
virtual voidRooPrintable::printExtras(ostream& os) const
virtual voidprintMultiline(ostream& os, Int_t contents, Bool_t verbose = kFALSE, TString indent = "") const
virtual voidprintName(ostream& os) const
virtual voidRooPrintable::printStream(ostream& os, Int_t contents, RooPrintable::StyleOption style, TString indent = "") const
virtual voidprintTitle(ostream& os) const
virtual voidRooPrintable::printTree(ostream& os, TString indent = "") const
virtual voidprintValue(ostream& os) const
virtual voidTFormula::ProcessLinear(TString& replaceformula)
virtual Int_tTObject::Read(const char* name)
Bool_treCompile(const char* newFormula)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
RooFormula()
RooFormula(const RooFormula& other, const char* name = 0)
RooFormula(const char* name, const char* formula, const RooArgList& varList)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(ostream& 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)
static voidTFormula::SetMaxima(Int_t maxop = 1000, Int_t maxpar = 1000, Int_t maxconst = 1000)
virtual voidTFormula::SetName(const char* name)
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
virtual voidTFormula::SetNumber(Int_t number)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTFormula::SetParameter(const char* name, Double_t parvalue)
virtual voidTFormula::SetParameter(Int_t ipar, Double_t parvalue)
virtual voidTFormula::SetParameters(const Double_t* params)
virtual voidTFormula::SetParameters(Double_t p0, Double_t p1, Double_t p2 = 0, Double_t p3 = 0, Double_t p4 = 0, Double_t p5 = 0, Double_t p6 = 0, Double_t p7 = 0, Double_t p8 = 0, Double_t p9 = 0, Double_t p10 = 0)MENU
virtual voidTFormula::SetParName(Int_t ipar, const char* name)
virtual voidTFormula::SetParNames(const char* name0 = "p0", const char* name1 = "p1", const char* name2 = "p2", const char* name3 = "p3", const char* name4 = "p4", const char* name5 = "p5", const char* name6 = "p6", const char* name7 = "p7", const char* name8 = "p8", const char* name9 = "p9", const char* name10 = "p10")MENU
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp) const
virtual Int_tTNamed::Sizeof() const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_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 voidTFormula::Update()
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 Bool_tTFormula::CheckOperands(Int_t operation, Int_t& err)
virtual Bool_tTFormula::CheckOperands(Int_t leftoperand, Int_t rightoperartion, Int_t& err)
voidTFormula::ClearFormula(Option_t* option = "")
virtual voidTFormula::Convert(UInt_t fromVersion)
virtual Double_tDefinedValue(Int_t code)
Int_tDefinedVariable(TString& name)
virtual Int_tDefinedVariable(TString& name, int& action)
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
Double_tTFormula::EvalParFast(const Double_t* x, const Double_t* params)
Double_tTFormula::EvalPrimitive(const Double_t* x, const Double_t* params)
Double_tTFormula::EvalPrimitive0(const Double_t* x, const Double_t* params)
Double_tTFormula::EvalPrimitive1(const Double_t* x, const Double_t* params)
Double_tTFormula::EvalPrimitive2(const Double_t* x, const Double_t* params)
Double_tTFormula::EvalPrimitive3(const Double_t* x, const Double_t* params)
Double_tTFormula::EvalPrimitive4(const Double_t* x, const Double_t* params)
Short_tTFormula::GetAction(Int_t code) const
Short_tTFormula::GetActionOptimized(Int_t code) const
Int_tTFormula::GetActionParam(Int_t code) const
Int_tTFormula::GetActionParamOptimized(Int_t code) const
Int_t*TFormula::GetOper() const
Int_t*TFormula::GetOperOptimized() const
voidinitCopy(const RooFormula& other)
virtual Bool_tTFormula::IsString(Int_t oper) const
voidTFormula::MakePrimitive(const char* expr, Int_t pos)
voidTObject::MakeZombie()
RooFormula&operator=(const RooFormula& other)
Int_tTFormula::PreCompile()
voidTFormula::SetAction(Int_t code, Int_t value, Int_t param = 0)
voidTFormula::SetActionOptimized(Int_t code, Int_t value, Int_t param = 0)
virtual Bool_tTFormula::StringToNumber(Int_t code)

Data Members

public:
static RooPrintable::ContentsOptionRooPrintable::kAddress
static RooPrintable::ContentsOptionRooPrintable::kArgs
static TObject::(anonymous)TObject::kBitMask
static TObject::EStatusBitsTObject::kCanDelete
static TObject::EStatusBitsTObject::kCannotPick
static RooPrintable::ContentsOptionRooPrintable::kClassName
static RooPrintable::ContentsOptionRooPrintable::kCollectionHeader
static RooPrintable::ContentsOptionRooPrintable::kExtras
static TObject::EStatusBitsTObject::kHasUUID
static RooPrintable::StyleOptionRooPrintable::kInline
static TObject::EStatusBitsTObject::kInvalidObject
static TObject::(anonymous)TObject::kIsOnHeap
static TObject::EStatusBitsTObject::kIsReferenced
static TFormula::(anonymous)TFormula::kLinear
static TObject::EStatusBitsTObject::kMustCleanup
static RooPrintable::ContentsOptionRooPrintable::kName
static TObject::EStatusBitsTObject::kNoContextMenu
static TFormula::(anonymous)TFormula::kNormalized
static TObject::(anonymous)TObject::kNotDeleted
static TFormula::(anonymous)TFormula::kNotGlobal
static TObject::EStatusBitsTObject::kObjInCanvas
static TObject::(anonymous)TObject::kOverwrite
static TObject::(anonymous)TObject::kSingleKey
static RooPrintable::StyleOptionRooPrintable::kSingleLine
static RooPrintable::StyleOptionRooPrintable::kStandard
static RooPrintable::ContentsOptionRooPrintable::kTitle
static RooPrintable::StyleOptionRooPrintable::kTreeStructure
static RooPrintable::ContentsOptionRooPrintable::kValue
static RooPrintable::StyleOptionRooPrintable::kVerbose
static TObject::(anonymous)TObject::kWriteDelete
static TObject::(anonymous)TObject::kZombie
protected:
RooArgSet_actual! Set of actual dependents
Bool_t_compiledFlag set if formula is compiled
Bool_t_isOKIs internal state OK?
RooLinkedList_labelListList of label names for category objects
static Int_tRooPrintable::_nameLength
RooArgSet*_nset
RooLinkedList_origList! Original list of dependents
vector<Bool_t>_useIsCat! Is given slot in _useList a category?
RooLinkedList_useList! List of actual dependents
TBitsTFormula::fAlreadyFound! cache for information
Double_t*TFormula::fConst[fNconst] Array of fNconst formula constants
TString*TFormula::fExpr[fNoper] List of expressions
TString*TFormula::fExprOptimized![fNOperOptimized] List of expressions
TObjArrayTFormula::fFunctionsArray of function calls to make
TObjArrayTFormula::fLinearPartsLinear parts if the formula is linear (contains '|' or "++")
Int_tTFormula::fNOperOptimized!Number of operators after optimization
TStringTNamed::fNameobject identifier
TString*TFormula::fNames[fNpar] Array of parameter names
Int_tTFormula::fNconstNumber of constants
Int_tTFormula::fNdimDimension of function (1=1-Dim, 2=2-Dim,etc)
Int_tTFormula::fNoperNumber of operators
Int_tTFormula::fNparNumber of parameters
Int_tTFormula::fNstringNumber of different constants character strings
Int_tTFormula::fNumberformula number identifier
Int_tTFormula::fNvalNumber of different variables in expression
TOperOffset*TFormula::fOperOffset![fNOperOptimized] Offsets of operrands
Int_t*TFormula::fOperOptimized![fNOperOptimized] List of operators. (See documentation for changes made at version 7)
TFormula::TFuncGTFormula::fOptimal!pointer to optimal function
Double_t*TFormula::fParams[fNpar] Array of fNpar parameters
TFormulaPrimitive**TFormula::fPredefined![fNPar] predefined function
TStringTNamed::fTitleobject title
static TFormula::(anonymous)TFormula::kAdd
static TFormula::(anonymous)TFormula::kAnd
static TFormula::(anonymous)TFormula::kBinary
static TFormula::(anonymous)TFormula::kBitAnd
static TFormula::(anonymous)TFormula::kBitOr
static TFormula::(anonymous)TFormula::kBoolOptimize
static TFormula::(anonymous)TFormula::kBoolOptimizeAnd
static TFormula::(anonymous)TFormula::kBoolOptimizeOr
static TFormula::(anonymous)TFormula::kBoolSet
static TFormula::(anonymous)TFormula::kConstant
static TFormula::(anonymous)TFormula::kData
static TFormula::(anonymous)TFormula::kDefinedString
static TFormula::(anonymous)TFormula::kDefinedVariable
static TFormula::(anonymous)TFormula::kDivide
static TFormula::(anonymous)TFormula::kEnd
static TFormula::(anonymous)TFormula::kEqual
static TFormula::(anonymous)TFormula::kFD0
static TFormula::(anonymous)TFormula::kFD1
static TFormula::(anonymous)TFormula::kFD2
static TFormula::(anonymous)TFormula::kFD3
static TFormula::(anonymous)TFormula::kFDM
static TFormula::(anonymous)TFormula::kFunctionCall
static TFormula::(anonymous)TFormula::kGreater
static TFormula::(anonymous)TFormula::kGreaterThan
static TFormula::(anonymous)TFormula::kJump
static TFormula::(anonymous)TFormula::kJumpIf
static TFormula::(anonymous)TFormula::kLeftShift
static TFormula::(anonymous)TFormula::kLess
static TFormula::(anonymous)TFormula::kLessThan
static TFormula::(anonymous)TFormula::kModulo
static TFormula::(anonymous)TFormula::kMultD
static TFormula::(anonymous)TFormula::kMultDD
static TFormula::(anonymous)TFormula::kMultiply
static TFormula::(anonymous)TFormula::kNot
static TFormula::(anonymous)TFormula::kNotEqual
static TFormula::(anonymous)TFormula::kOr
static TFormula::(anonymous)TFormula::kParameter
static TFormula::(anonymous)TFormula::kPlusD
static TFormula::(anonymous)TFormula::kPlusDD
static TFormula::(anonymous)TFormula::kRightShift
static TFormula::(anonymous)TFormula::kSignInv
static TFormula::(anonymous)TFormula::kStringConst
static TFormula::(anonymous)TFormula::kStringEqual
static TFormula::(anonymous)TFormula::kStringNotEqual
static TFormula::(anonymous)TFormula::kSubstract
static TFormula::(anonymous)TFormula::kThree
static TFormula::(anonymous)TFormula::kUnary
static TFormula::(anonymous)TFormula::kVariable
static TFormula::(anonymous)TFormula::kabs
static TFormula::(anonymous)TFormula::kacos
static TFormula::(anonymous)TFormula::kacosh
static TFormula::(anonymous)TFormula::kasin
static TFormula::(anonymous)TFormula::kasinh
static TFormula::(anonymous)TFormula::katan
static TFormula::(anonymous)TFormula::katan2
static TFormula::(anonymous)TFormula::katanh
static TFormula::(anonymous)TFormula::kcos
static TFormula::(anonymous)TFormula::kcosh
static TFormula::(anonymous)TFormula::kexp
static TFormula::(anonymous)TFormula::kexpo
static TFormula::(anonymous)TFormula::kfmod
static TFormula::(anonymous)TFormula::kgaus
static TFormula::(anonymous)TFormula::kint
static TFormula::(anonymous)TFormula::klandau
static TFormula::(anonymous)TFormula::klog
static TFormula::(anonymous)TFormula::klog10
static TFormula::(anonymous)TFormula::kmax
static TFormula::(anonymous)TFormula::kmin
static TFormula::(anonymous)TFormula::kpi
static TFormula::(anonymous)TFormula::kpol
static TFormula::(anonymous)TFormula::kpow
static TFormula::(anonymous)TFormula::krndm
static TFormula::(anonymous)TFormula::ksign
static TFormula::(anonymous)TFormula::ksin
static TFormula::(anonymous)TFormula::ksinh
static TFormula::(anonymous)TFormula::ksq
static TFormula::(anonymous)TFormula::ksqrt
static TFormula::(anonymous)TFormula::kstrstr
static TFormula::(anonymous)TFormula::ktan
static TFormula::(anonymous)TFormula::ktanh
static TFormula::(anonymous)TFormula::kxexpo
static TFormula::(anonymous)TFormula::kxgaus
static TFormula::(anonymous)TFormula::kxlandau
static TFormula::(anonymous)TFormula::kxpol
static TFormula::(anonymous)TFormula::kxyexpo
static TFormula::(anonymous)TFormula::kxygaus
static TFormula::(anonymous)TFormula::kxylandau
static TFormula::(anonymous)TFormula::kyexpo
static TFormula::(anonymous)TFormula::kygaus
static TFormula::(anonymous)TFormula::kylandau
static TFormula::(anonymous)TFormula::kypol
static TFormula::(anonymous)TFormula::kzexpo
static TFormula::(anonymous)TFormula::kzgaus
static TFormula::(anonymous)TFormula::kzlandau
static TFormula::(anonymous)TFormula::kzpol

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

RooFormula()
 Default constructor
 coverity[UNINIT_CTOR]
RooFormula(const char* name, const char* formula, const RooArgList& varList)
 Constructor with expression string and list of RooAbsArg variables
RooFormula(const RooFormula& other, const char* name = 0)
 Copy constructor
Bool_t reCompile(const char* newFormula)
 Recompile formula with new expression
~RooFormula()
 Destructor
RooArgSet& actualDependents() const
 Return list of RooAbsArg dependents that is actually used by formula expression
void dump()
 DEBUG: Dump state information
Bool_t changeDependents(const RooAbsCollection& newDeps, Bool_t mustReplaceAll, Bool_t nameChange)
 Change used variables to those with the same name in given list
 If mustReplaceAll is true and error is generated if one of the
 elements of newDeps is not found as a server
Double_t eval(const RooArgSet* nset = 0)
 Evaluate TFormula using given normalization set to be used as
 observables definition passed to RooAbsReal::getVal()
DefinedValue(Int_t code)
 Interface to TFormula, return value defined by object with id 'code'
 Object ids are mapped from object names by method DefinedVariable()
Int_t DefinedVariable(TString& name, int& action)
 Interface to TFormula. If name passed by TFormula is recognized
 as one of our RooAbsArg servers, return a unique id integer
 that represent this variable.
Int_t DefinedVariable(TString& name)
 Interface to TFormula. If name passed by TFormula is recognized
 as one of our RooAbsArg servers, return a unique id integer
 that represent this variable.
void printMultiline(ostream& os, Int_t contents, Bool_t verbose = kFALSE, TString indent = "") const
 Printing interface
void printValue(ostream& os) const
 Print value of formula
void printName(ostream& os) const
 Print name of formula
void printTitle(ostream& os) const
 Print title of formula
void printClassName(ostream& os) const
 Print class name of formula
void printArgs(ostream& os) const
 Print arguments of formula, i.e. dependents that are actually used
TObject* Clone(const char* newName = 0) const
{ return new RooFormula(*this,newName) ; }
RooAbsArg* getParameter(const char* name) const
 Return pointer to parameter with given name
RooAbsArg* getParameter(Int_t index) const
 Return pointer to parameter at given index
Bool_t ok()
 Function value accessor
{ return _isOK ; }
void Print(Option_t* options = 0) const
 Printing interface (human readable)
RooFormula& operator=(const RooFormula& other)
void initCopy(const RooFormula& other)