Logo ROOT  
Reference Guide
RooFactoryWSTool Class Reference

RooFactoryWSTool is a clase like TTree::MakeClass() that generates skeleton code for RooAbsPdf and RooAbsReal functions given a list of input parameter names.

The factory can also compile the generated code on the fly, and on request also immediate instantiate objects.

Definition at line 47 of file RooFactoryWSTool.h.

Classes

class  IFace
 
class  SpecialsIFace
 

Public Member Functions

 RooFactoryWSTool (RooWorkspace &ws)
 
virtual ~RooFactoryWSTool ()
 Destructor. More...
 
RooAddPdfadd (const char *objName, const char *specList, Bool_t recursiveCoefs=kFALSE)
 
RooAdditionaddfunc (const char *objName, const char *specList)
 
RooRealSumPdfamplAdd (const char *objName, const char *specList)
 
RooAbsArgasARG (const char *)
 CINT constructor interface, return constructor string argument #idx as RooAbsArg reference found in workspace. More...
 
RooCategoryasCAT (const char *)
 CINT constructor interface, return constructor string argument #idx as RooCategory reference found in workspace. More...
 
RooAbsCategoryasCATFUNC (const char *)
 CINT constructor interface, return constructor string argument #idx as RooAbsCategory reference found in workspace. More...
 
RooAbsCategoryLValueasCATLV (const char *)
 CINT constructor interface, return constructor string argument #idx as RooAbsCategoryLValue reference found in workspace. More...
 
RooAbsDataasDATA (const char *)
 CINT constructor interface, return constructor string argument #idx as RooAbsData object found in workspace. More...
 
RooDataHistasDHIST (const char *)
 CINT constructor interface, return constructor string argument #idx as RooDataHist object found in workspace. More...
 
Double_t asDOUBLE (const char *)
 CINT constructor interface, return constructor string argument #idx as Double_t. More...
 
RooDataSetasDSET (const char *)
 CINT constructor interface, return constructor string argument #idx as RooDataSet object found in workspace. More...
 
RooAbsRealasFUNC (const char *)
 CINT constructor interface, return constructor string argument #idx as RooAbsReal reference found in workspace. More...
 
Int_t asINT (const char *)
 CINT constructor interface, return constructor string argument #idx as Int_t. More...
 
RooArgList asLIST (const char *)
 CINT constructor interface, return constructor string argument #idx as RooArgList of objects found in workspace. More...
 
TObjectasOBJ (const char *)
 
RooAbsPdfasPDF (const char *)
 CINT constructor interface, return constructor string argument #idx as RooAbsPdf reference found in workspace. More...
 
RooResolutionModelasRMODEL (const char *)
 CINT constructor interface, return constructor string argument #idx as RooResolutionModel reference found in workspace. More...
 
RooArgSet asSET (const char *)
 CINT constructor interface, return constructor string argument #idx as RooArgSet of objects found in workspace. More...
 
const char * asSTRING (const char *)
 CINT constructor interface, return constructor string argument #idx as const char*. More...
 
RooRealVarasVAR (const char *)
 CINT constructor interface, return constructor string argument #idx as RooRealVar reference found in workspace. More...
 
RooAbsRealLValueasVARLV (const char *)
 CINT constructor interface, return constructor string argument #idx as RooAbsRealLValue reference found in workspace. More...
 
const char * autoClassNamePostFix () const
 
RooAbsArgcreateArg (const char *className, const char *objName, const char *varList)
 Low-level factory interface for creating a RooAbsPdf of a given class with a given list of input variables The variable list varList should be of the form "a,b,c" where the interpretation of the argument is dependent on the p.d.f. More...
 
RooCategorycreateCategory (const char *name, const char *stateNameList=0)
 Low-level factory interface for creating a RooCategory with a given list of state names. More...
 
RooRealVarcreateVariable (const char *name, Double_t xmin, Double_t xmax)
 Low-level factory interface for creating a RooRealVar with a given range and initial value. More...
 
void logError ()
 
RooAbsArgprocess (const char *expr)
 Process high-level object creation syntax Accepted forms of syntax are. More...
 
std::string processExpression (const char *expr)
 Process a single high-level expression or list of expressions. More...
 
RooProdPdfprod (const char *objName, const char *pdfList)
 
RooProductprodfunc (const char *objName, const char *pdfList)
 
void setAutoClassNamePostFix (const char *pfix)
 
RooSimultaneoussimul (const char *objName, const char *indexCat, const char *pdfMap)
 
std::vector< std::string > splitFunctionArgs (const char *funcExpr)
 Allocate and fill work buffer. More...
 
RooWorkspacews ()
 
- Public Member Functions inherited from TNamed
 TNamed ()
 
 TNamed (const char *name, const char *title)
 
 TNamed (const TNamed &named)
 TNamed copy ctor. More...
 
 TNamed (const TString &name, const TString &title)
 
virtual ~TNamed ()
 TNamed destructor. More...
 
virtual void Clear (Option_t *option="")
 Set name and title to empty strings (""). More...
 
virtual TObjectClone (const char *newname="") const
 Make a clone of an object using the Streamer facility. More...
 
virtual Int_t Compare (const TObject *obj) const
 Compare two TNamed objects. More...
 
virtual void Copy (TObject &named) const
 Copy this to obj. More...
 
virtual void FillBuffer (char *&buffer)
 Encode TNamed into output buffer. More...
 
virtual const char * GetName () const
 Returns name of object. More...
 
virtual const char * GetTitle () const
 Returns title of object. More...
 
virtual ULong_t Hash () const
 Return hash value for this object. More...
 
virtual Bool_t IsSortable () const
 
virtual void ls (Option_t *option="") const
 List TNamed name and title. More...
 
TNamedoperator= (const TNamed &rhs)
 TNamed assignment operator. More...
 
virtual void Print (Option_t *option="") const
 Print TNamed name and title. More...
 
virtual void SetName (const char *name)
 Set the name of the TNamed. More...
 
virtual void SetNameTitle (const char *name, const char *title)
 Set all the TNamed parameters (name and title). More...
 
virtual void SetTitle (const char *title="")
 Set the title of the TNamed. More...
 
virtual Int_t Sizeof () const
 Return size of the TNamed part of the TObject. More...
 
- Public Member Functions inherited from TObject
 TObject ()
 TObject constructor. More...
 
 TObject (const TObject &object)
 TObject copy ctor. More...
 
virtual ~TObject ()
 TObject destructor. More...
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract. More...
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad. More...
 
virtual void Browse (TBrowser *b)
 Browse object. May be overridden for another default action. More...
 
ULong_t CheckedHash ()
 Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object. More...
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs. More...
 
virtual void Clear (Option_t *="")
 
virtual TObjectClone (const char *newname="") const
 Make a clone of an object using the Streamer facility. More...
 
virtual Int_t Compare (const TObject *obj) const
 Compare abstract method. More...
 
virtual void Copy (TObject &object) const
 Copy this to obj. More...
 
virtual void Delete (Option_t *option="")
 Delete this object. More...
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Computes distance from point (px,py) to the object. More...
 
virtual void Draw (Option_t *option="")
 Default Draw method for all objects. More...
 
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs. More...
 
virtual TObjectDrawClone (Option_t *option="") const
 Draw a clone of this object in the current selected pad for instance with: gROOT->SetSelectedPad(gPad). More...
 
virtual void Dump () const
 Dump contents of object on stdout. More...
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message. More...
 
virtual void Execute (const char *method, const char *params, Int_t *error=0)
 Execute method on this object with the given parameter string, e.g. More...
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=0)
 Execute method on this object with parameters stored in the TObjArray. More...
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to an event at (px,py). More...
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message. More...
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes. More...
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes. More...
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object. More...
 
virtual const char * GetIconName () const
 Returns mime type name of object. More...
 
virtual const char * GetName () const
 Returns name of object. More...
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py). More...
 
virtual Option_tGetOption () const
 
virtual const char * GetTitle () const
 Returns title of object. More...
 
virtual UInt_t GetUniqueID () const
 Return the unique object id. More...
 
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out. More...
 
virtual ULong_t Hash () const
 Return hash value for this object. More...
 
Bool_t HasInconsistentHash () const
 Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e. More...
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message. More...
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname". More...
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl. More...
 
virtual void Inspect () const
 Dump contents of this object in a graphics canvas. More...
 
void InvertBit (UInt_t f)
 
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory). More...
 
virtual Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects). More...
 
R__ALWAYS_INLINE Bool_t IsOnHeap () const
 
virtual Bool_t IsSortable () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
virtual void ls (Option_t *option="") const
 The ls function lists the contents of a class on stdout. More...
 
void MayNotUse (const char *method) const
 Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary). More...
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification. More...
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete. More...
 
void operator delete (void *ptr)
 Operator delete. More...
 
void operator delete[] (void *ptr)
 Operator delete []. More...
 
voidoperator new (size_t sz)
 
voidoperator new (size_t sz, void *vp)
 
voidoperator new[] (size_t sz)
 
voidoperator new[] (size_t sz, void *vp)
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator. More...
 
virtual void Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself. More...
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list. More...
 
virtual void Print (Option_t *option="") const
 This method must be overridden when a class wants to print itself. More...
 
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory. More...
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list. More...
 
void ResetBit (UInt_t f)
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename. More...
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save a primitive as a C++ statement(s) on output stream "out". More...
 
void SetBit (UInt_t f)
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f. More...
 
virtual void SetDrawOption (Option_t *option="")
 Set drawing option for object. More...
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id. More...
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message. More...
 
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
virtual void UseCurrentStyle ()
 Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked. More...
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory. More...
 
- Public Member Functions inherited from RooPrintable
 RooPrintable ()
 
virtual ~RooPrintable ()
 
virtual Int_t defaultPrintContents (Option_t *opt) const
 Default choice of contents to be printed (name and value) More...
 
virtual StyleOption defaultPrintStyle (Option_t *opt) const
 
virtual void printAddress (std::ostream &os) const
 Print class name of object. More...
 
virtual void printArgs (std::ostream &os) const
 Interface for printing of object arguments. More...
 
virtual void printClassName (std::ostream &os) const
 Print class name of object. More...
 
virtual void printExtras (std::ostream &os) const
 Interface to print extras of object. More...
 
virtual void printMultiline (std::ostream &os, Int_t contents, Bool_t verbose=kFALSE, TString indent="") const
 Interface for detailed printing of object. More...
 
virtual void printName (std::ostream &os) const
 Print name of object. More...
 
virtual void printStream (std::ostream &os, Int_t contents, StyleOption style, TString indent="") const
 Print description of object on ostream, printing contents set by contents integer, which is interpreted as an OR of 'enum ContentsOptions' values and in the style given by 'enum StyleOption'. More...
 
virtual void printTitle (std::ostream &os) const
 Print title of object. More...
 
virtual void printTree (std::ostream &os, TString indent="") const
 Interface for tree structure printing of object. More...
 
virtual void printValue (std::ostream &os) const
 Interface to print value of object. More...
 

Static Public Member Functions

static RooAbsArgas_ARG (UInt_t idx)
 
static RooCategoryas_CAT (UInt_t idx)
 
static RooAbsCategoryas_CATFUNC (UInt_t idx)
 
static RooAbsCategoryLValueas_CATLV (UInt_t idx)
 
static RooAbsDataas_DATA (UInt_t idx)
 
static RooDataHistas_DHIST (UInt_t idx)
 
static Double_t as_DOUBLE (UInt_t idx)
 
static Double_t as_DOUBLE (UInt_t idx, Double_t defVal)
 
static RooDataSetas_DSET (UInt_t idx)
 
static RooAbsRealas_FUNC (UInt_t idx)
 
static Int_t as_INT (UInt_t idx)
 
static Int_t as_INT (UInt_t idx, Int_t defVal)
 
static RooArgList as_LIST (UInt_t idx)
 
static TObjectas_OBJ (UInt_t idx)
 
static RooAbsPdfas_PDF (UInt_t idx)
 
static RooResolutionModelas_RMODEL (UInt_t idx)
 
static RooArgSet as_SET (UInt_t idx)
 
static const char * as_STRING (UInt_t idx)
 
static RooRealVaras_VAR (UInt_t idx)
 
static RooAbsRealLValueas_VARLV (UInt_t idx)
 
static void registerSpecial (const char *typeName, RooFactoryWSTool::IFace *iface)
 Register foreign special objects in factory. More...
 
- Static Public Member Functions inherited from TObject
static Long_t GetDtorOnly ()
 Return destructor only flag. More...
 
static Bool_t GetObjectStat ()
 Get status of object stat flag. More...
 
static void SetDtorOnly (void *obj)
 Set destructor only flag. More...
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable. More...
 
- Static Public Member Functions inherited from RooPrintable
static std::ostream & defaultPrintStream (std::ostream *os=0)
 Return a reference to the current default stream to use in Print(). More...
 
static void nameFieldLength (Int_t newLen)
 Set length of field reserved from printing name of RooAbsArgs in multi-line collection printing to given amount. More...
 

Protected Member Functions

 RooFactoryWSTool (const RooFactoryWSTool &)
 
Bool_t checkSyntax (const char *arg)
 Perform basic syntax on given factory expression. More...
 
void clearError ()
 Associated workspace. More...
 
Int_t errorCount ()
 
std::string processAliasExpression (const char *arg)
 Parse token. More...
 
std::string processCompositeExpression (const char *arg)
 Process a single composite expression. More...
 
std::string processCreateArg (std::string &func, std::vector< std::string > &args)
 Glue function between high-level syntax and low-level factory call to createArg: Process a parsed call to create a p.d.f named func. More...
 
std::string processCreateVar (std::string &func, std::vector< std::string > &args)
 Glue function between high-level syntax and low-level factory call to createVariable: Process a parsed call to create a variable named 'func'. More...
 
std::string processListExpression (const char *arg)
 Process a list of high-level expression. More...
 
std::string processMetaArg (std::string &func, std::vector< std::string > &args)
 Concatenate list of args into comma separated string. More...
 
std::string processSingleExpression (const char *arg)
 Process a single high-level expression. More...
 
TClassresolveClassName (const char *className)
 
std::string varTag (std::string &func, std::vector< std::string > &args)
 
- Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected). More...
 
void MakeZombie ()
 

Static Protected Member Functions

static void checkIndex (UInt_t index)
 
static std::map< std::string, IFace * > & hooks ()
 
static RooFactoryWSToolof ()
 

Protected Attributes

std::vector< std::string > _args
 
std::string _autoClassPostFix
 
std::stack< std::string > _autoNamePrefix
 
Int_t _errorCount
 
std::map< std::string, std::string > _typeAliases
 
RooWorkspace_ws
 
- Protected Attributes inherited from TNamed
TString fName
 
TString fTitle
 

Static Protected Attributes

static std::map< std::string, IFace * > * _hooks =0
 
static RooFactoryWSTool_of = 0
 
- Static Protected Attributes inherited from RooPrintable
static Int_t _nameLength
 

Additional Inherited Members

- Public Types inherited from TObject
enum  {
  kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 ,
  kBitMask = 0x00ffffff
}
 
enum  { kSingleKey = BIT(0) , kOverwrite = BIT(1) , kWriteDelete = BIT(2) }
 
enum  EDeprecatedStatusBits { kObjInCanvas = BIT(3) }
 
enum  EStatusBits {
  kCanDelete = BIT(0) , kMustCleanup = BIT(3) , kIsReferenced = BIT(4) , kHasUUID = BIT(5) ,
  kCannotPick = BIT(6) , kNoContextMenu = BIT(8) , kInvalidObject = BIT(13)
}
 
- Public Types inherited from RooPrintable
enum  ContentsOption {
  kName =1 , kClassName =2 , kValue =4 , kArgs =8 ,
  kExtras =16 , kAddress =32 , kTitle =64 , kCollectionHeader =128
}
 
enum  StyleOption {
  kInline =1 , kSingleLine =2 , kStandard =3 , kVerbose =4 ,
  kTreeStructure =5
}
 

#include <RooFactoryWSTool.h>

Inheritance diagram for RooFactoryWSTool:
[legend]

Constructor & Destructor Documentation

◆ RooFactoryWSTool() [1/2]

RooFactoryWSTool::RooFactoryWSTool ( RooWorkspace ws)

Definition at line 126 of file RooFactoryWSTool.cxx.

◆ ~RooFactoryWSTool()

RooFactoryWSTool::~RooFactoryWSTool ( )
virtual

Destructor.

Definition at line 137 of file RooFactoryWSTool.cxx.

◆ RooFactoryWSTool() [2/2]

RooFactoryWSTool::RooFactoryWSTool ( const RooFactoryWSTool )
protected

Member Function Documentation

◆ add()

RooAddPdf * RooFactoryWSTool::add ( const char *  objName,
const char *  specList,
Bool_t  recursiveCoefs = kFALSE 
)

Definition at line 498 of file RooFactoryWSTool.cxx.

◆ addfunc()

RooAddition * RooFactoryWSTool::addfunc ( const char *  objName,
const char *  specList 
)

Definition at line 699 of file RooFactoryWSTool.cxx.

◆ amplAdd()

RooRealSumPdf * RooFactoryWSTool::amplAdd ( const char *  objName,
const char *  specList 
)

Definition at line 540 of file RooFactoryWSTool.cxx.

◆ as_ARG()

static RooAbsArg & RooFactoryWSTool::as_ARG ( UInt_t  idx)
inlinestatic

Definition at line 87 of file RooFactoryWSTool.h.

◆ as_CAT()

static RooCategory & RooFactoryWSTool::as_CAT ( UInt_t  idx)
inlinestatic

Definition at line 95 of file RooFactoryWSTool.h.

◆ as_CATFUNC()

static RooAbsCategory & RooFactoryWSTool::as_CATFUNC ( UInt_t  idx)
inlinestatic

Definition at line 97 of file RooFactoryWSTool.h.

◆ as_CATLV()

static RooAbsCategoryLValue & RooFactoryWSTool::as_CATLV ( UInt_t  idx)
inlinestatic

Definition at line 96 of file RooFactoryWSTool.h.

◆ as_DATA()

static RooAbsData & RooFactoryWSTool::as_DATA ( UInt_t  idx)
inlinestatic

Definition at line 102 of file RooFactoryWSTool.h.

◆ as_DHIST()

static RooDataHist & RooFactoryWSTool::as_DHIST ( UInt_t  idx)
inlinestatic

Definition at line 103 of file RooFactoryWSTool.h.

◆ as_DOUBLE() [1/2]

static Double_t RooFactoryWSTool::as_DOUBLE ( UInt_t  idx)
inlinestatic

Definition at line 110 of file RooFactoryWSTool.h.

◆ as_DOUBLE() [2/2]

static Double_t RooFactoryWSTool::as_DOUBLE ( UInt_t  idx,
Double_t  defVal 
)
inlinestatic

Definition at line 112 of file RooFactoryWSTool.h.

◆ as_DSET()

static RooDataSet & RooFactoryWSTool::as_DSET ( UInt_t  idx)
inlinestatic

Definition at line 104 of file RooFactoryWSTool.h.

◆ as_FUNC()

static RooAbsReal & RooFactoryWSTool::as_FUNC ( UInt_t  idx)
inlinestatic

Definition at line 90 of file RooFactoryWSTool.h.

◆ as_INT() [1/2]

static Int_t RooFactoryWSTool::as_INT ( UInt_t  idx)
inlinestatic

Definition at line 109 of file RooFactoryWSTool.h.

◆ as_INT() [2/2]

static Int_t RooFactoryWSTool::as_INT ( UInt_t  idx,
Int_t  defVal 
)
inlinestatic

Definition at line 111 of file RooFactoryWSTool.h.

◆ as_LIST()

static RooArgList RooFactoryWSTool::as_LIST ( UInt_t  idx)
inlinestatic

Definition at line 100 of file RooFactoryWSTool.h.

◆ as_OBJ()

static TObject & RooFactoryWSTool::as_OBJ ( UInt_t  idx)
inlinestatic

Definition at line 106 of file RooFactoryWSTool.h.

◆ as_PDF()

static RooAbsPdf & RooFactoryWSTool::as_PDF ( UInt_t  idx)
inlinestatic

Definition at line 89 of file RooFactoryWSTool.h.

◆ as_RMODEL()

static RooResolutionModel & RooFactoryWSTool::as_RMODEL ( UInt_t  idx)
inlinestatic

Definition at line 93 of file RooFactoryWSTool.h.

◆ as_SET()

static RooArgSet RooFactoryWSTool::as_SET ( UInt_t  idx)
inlinestatic

Definition at line 99 of file RooFactoryWSTool.h.

◆ as_STRING()

static const char * RooFactoryWSTool::as_STRING ( UInt_t  idx)
inlinestatic

Definition at line 108 of file RooFactoryWSTool.h.

◆ as_VAR()

static RooRealVar & RooFactoryWSTool::as_VAR ( UInt_t  idx)
inlinestatic

Definition at line 91 of file RooFactoryWSTool.h.

◆ as_VARLV()

static RooAbsRealLValue & RooFactoryWSTool::as_VARLV ( UInt_t  idx)
inlinestatic

Definition at line 92 of file RooFactoryWSTool.h.

◆ asARG()

RooAbsArg & RooFactoryWSTool::asARG ( const char *  arg)

CINT constructor interface, return constructor string argument #idx as RooAbsArg reference found in workspace.

Definition at line 1588 of file RooFactoryWSTool.cxx.

◆ asCAT()

RooCategory & RooFactoryWSTool::asCAT ( const char *  arg)

CINT constructor interface, return constructor string argument #idx as RooCategory reference found in workspace.

Definition at line 1740 of file RooFactoryWSTool.cxx.

◆ asCATFUNC()

RooAbsCategory & RooFactoryWSTool::asCATFUNC ( const char *  arg)

CINT constructor interface, return constructor string argument #idx as RooAbsCategory reference found in workspace.

Definition at line 1703 of file RooFactoryWSTool.cxx.

◆ asCATLV()

RooAbsCategoryLValue & RooFactoryWSTool::asCATLV ( const char *  arg)

CINT constructor interface, return constructor string argument #idx as RooAbsCategoryLValue reference found in workspace.

Definition at line 1721 of file RooFactoryWSTool.cxx.

◆ asDATA()

RooAbsData & RooFactoryWSTool::asDATA ( const char *  arg)

CINT constructor interface, return constructor string argument #idx as RooAbsData object found in workspace.

Definition at line 1841 of file RooFactoryWSTool.cxx.

◆ asDHIST()

RooDataHist & RooFactoryWSTool::asDHIST ( const char *  arg)

CINT constructor interface, return constructor string argument #idx as RooDataHist object found in workspace.

Definition at line 1855 of file RooFactoryWSTool.cxx.

◆ asDOUBLE()

Double_t RooFactoryWSTool::asDOUBLE ( const char *  arg)

CINT constructor interface, return constructor string argument #idx as Double_t.

Definition at line 1942 of file RooFactoryWSTool.cxx.

◆ asDSET()

RooDataSet & RooFactoryWSTool::asDSET ( const char *  arg)

CINT constructor interface, return constructor string argument #idx as RooDataSet object found in workspace.

Definition at line 1872 of file RooFactoryWSTool.cxx.

◆ asFUNC()

RooAbsReal & RooFactoryWSTool::asFUNC ( const char *  arg)

CINT constructor interface, return constructor string argument #idx as RooAbsReal reference found in workspace.

Definition at line 1608 of file RooFactoryWSTool.cxx.

◆ asINT()

Int_t RooFactoryWSTool::asINT ( const char *  arg)

CINT constructor interface, return constructor string argument #idx as Int_t.

Definition at line 1933 of file RooFactoryWSTool.cxx.

◆ asLIST()

RooArgList RooFactoryWSTool::asLIST ( const char *  arg)

CINT constructor interface, return constructor string argument #idx as RooArgList of objects found in workspace.

Definition at line 1805 of file RooFactoryWSTool.cxx.

◆ asOBJ()

TObject & RooFactoryWSTool::asOBJ ( const char *  arg)

Definition at line 1889 of file RooFactoryWSTool.cxx.

◆ asPDF()

RooAbsPdf & RooFactoryWSTool::asPDF ( const char *  arg)

CINT constructor interface, return constructor string argument #idx as RooAbsPdf reference found in workspace.

Definition at line 1669 of file RooFactoryWSTool.cxx.

◆ asRMODEL()

RooResolutionModel & RooFactoryWSTool::asRMODEL ( const char *  arg)

CINT constructor interface, return constructor string argument #idx as RooResolutionModel reference found in workspace.

Definition at line 1684 of file RooFactoryWSTool.cxx.

◆ asSET()

RooArgSet RooFactoryWSTool::asSET ( const char *  arg)

CINT constructor interface, return constructor string argument #idx as RooArgSet of objects found in workspace.

Definition at line 1756 of file RooFactoryWSTool.cxx.

◆ asSTRING()

const char * RooFactoryWSTool::asSTRING ( const char *  arg)

CINT constructor interface, return constructor string argument #idx as const char*.

Definition at line 1903 of file RooFactoryWSTool.cxx.

◆ asVAR()

RooRealVar & RooFactoryWSTool::asVAR ( const char *  arg)

CINT constructor interface, return constructor string argument #idx as RooRealVar reference found in workspace.

Definition at line 1654 of file RooFactoryWSTool.cxx.

◆ asVARLV()

RooAbsRealLValue & RooFactoryWSTool::asVARLV ( const char *  arg)

CINT constructor interface, return constructor string argument #idx as RooAbsRealLValue reference found in workspace.

Definition at line 1631 of file RooFactoryWSTool.cxx.

◆ autoClassNamePostFix()

const char * RooFactoryWSTool::autoClassNamePostFix ( ) const
inline

Definition at line 155 of file RooFactoryWSTool.h.

◆ checkIndex()

void RooFactoryWSTool::checkIndex ( UInt_t  index)
staticprotected

Definition at line 1576 of file RooFactoryWSTool.cxx.

◆ checkSyntax()

Bool_t RooFactoryWSTool::checkSyntax ( const char *  arg)
protected

Perform basic syntax on given factory expression.

If function returns true syntax errors are found.

Definition at line 1543 of file RooFactoryWSTool.cxx.

◆ clearError()

void RooFactoryWSTool::clearError ( )
inlineprotected

Associated workspace.

Definition at line 192 of file RooFactoryWSTool.h.

◆ createArg()

RooAbsArg * RooFactoryWSTool::createArg ( const char *  className,
const char *  objName,
const char *  varList 
)

Low-level factory interface for creating a RooAbsPdf of a given class with a given list of input variables The variable list varList should be of the form "a,b,c" where the interpretation of the argument is dependent on the p.d.f.

Set and List arguments can be passed by substituting a single argument with the form (a,b,c), i.e. one can set varList to "x,(a0,a1,a2)" to pass a RooAbsReal and a RooArgSet as arguments.

Definition at line 301 of file RooFactoryWSTool.cxx.

◆ createCategory()

RooCategory * RooFactoryWSTool::createCategory ( const char *  name,
const char *  stateNameList = 0 
)

Low-level factory interface for creating a RooCategory with a given list of state names.

The State name list can be of the form 'name1,name2,name3' or of the form 'name1=id1,name2=id2,name3=id3'

Definition at line 171 of file RooFactoryWSTool.cxx.

◆ createVariable()

RooRealVar * RooFactoryWSTool::createVariable ( const char *  name,
Double_t  xmin,
Double_t  xmax 
)

Low-level factory interface for creating a RooRealVar with a given range and initial value.

Definition at line 147 of file RooFactoryWSTool.cxx.

◆ errorCount()

Int_t RooFactoryWSTool::errorCount ( )
inlineprotected

Definition at line 193 of file RooFactoryWSTool.h.

◆ hooks()

std::map< std::string, RooFactoryWSTool::IFace * > & RooFactoryWSTool::hooks ( )
staticprotected

Definition at line 1960 of file RooFactoryWSTool.cxx.

◆ logError()

void RooFactoryWSTool::logError ( )
inline

Definition at line 153 of file RooFactoryWSTool.h.

◆ of()

RooFactoryWSTool * RooFactoryWSTool::of ( )
staticprotected

Definition at line 2214 of file RooFactoryWSTool.cxx.

◆ process()

RooAbsArg * RooFactoryWSTool::process ( const char *  expr)

Process high-level object creation syntax Accepted forms of syntax are.

Creating variables

x[-10,10] - Create variable x with given range and put it in workspace x[3,-10,10] - Create variable x with given range and initial value and put it in workspace x[3] - Create variable x with given constant value

<numeric literal> - Numeric literal expressions (0.5, -3 etc..) are converted to a RooConst(<numeric literal>) where ever a RooAbsReal or RooAbsArg argument is expected

Creating categories

c[lep,kao,nt1,nt2] - Create category c with given state names tag[B0=1,B0bar=-1] - Create category tag with given state names and index assignments

Creating functions and p.d.f.s

MyPdf::g(x,m,s) - Create p.d.f or function of type MyPdf with name g with argument x,m,s Interpretation and number of arguments are mapped to the constructor arguments of the class (after the name and title).

MyPdf(x,m,s) - As above, but with an implicitly defined (unique) object name

Creating sets and lists (to be used as inputs above)

{a,b,c} - Create RooArgSet or RooArgList (as determined by context) from given contents

Objects that are not created, are assumed to exist in the workspace Object creation expressions as shown above can be nested, e.g. one can do

RooGaussian::g(x[-10,10],m[0],3)

to create a p.d.f and its variables in one go. This nesting can be applied recursively e.g.

SUM::model( f[0.5,0,1] * RooGaussian::g( x[-10,10], m[0], 3] ), RooChebychev::c( x, {a0[0.1],a1[0.2],a2[-0.3]} ))

creates the sum of a Gaussian and a Chebychev and all its variables

A seperate series of operator meta-type exists to simplify the construction of composite expressions meta-types in all capitals (SUM) create p.d.f.s, meta types in lower case (sum) create functions.

SUM::name(f1*pdf1,f2*pdf2,pdf3] – Create sum p.d.f name with value f1*pdf1+f2*pdf2+(1-f1-f2)*pdf3 RSUM::name(f1*pdf1,f2*pdf2,pdf3] – Create recursive sum p.d.f. name with value f1*pdf1 + (1-f1)(f2*pdf2 + (1-f2)pdf3) ASUM::name(f1*amp1,f2*amp2,amp3] – Create sum p.d.f. name with value f1*amp1+f2*amp2+(1-f1-f2)*amp3 where amplX are amplitudes of type RooAbsReal sum::name(a1,a2,a3] – Create sum function with value a1+a2+a3 sum::name(a1*b1,a2*b2,a3*b 3] – Create sum function with value a1*b1+a2*b2+a3*b3

PROD::name(pdf1,pdf2] – Create product of p.d.f with 'name' with given input p.d.fs PROD::name(pdf1|x,pdf2] – Create product of conditional p.d.f. pdf1 given x and pdf2 prod::name(a,b,c] – Create production function with value a*b*c

SIMUL::name(cat,a=pdf1,b=pdf2] – Create simultaneous p.d.f index category cat. Make pdf1 to state a, pdf2 to state b

EXPR::name('expr',var,...] – Create an generic p.d.f that interprets the given expression expr::name('expr',var,...] – Create an generic function that interprets the given expression

The functionality of high level object creation tools like RooSimWSTool, RooCustomizer and RooClassFactory is also interfaced through meta-types in the factory

Interface to RooSimWSTool

SIMCLONE::name( modelPdf, $ParamSplit(...), $ParamSplitConstrained(...), $Restrict(...) ] – Clone-and-customize modelPdf according to ParamSplit and ParamSplitConstrained() specifications and return a RooSimultaneous p.d.f. of all built clones

MSIMCLONE::name( masterIndex, $AddPdf(mstate1, modelPdf1, $ParamSplit(...)), $AddPdf(mstate2,modelPdf2),...) ] – Clone-and-customize multiple models (modelPdf1,modelPdf2) according to ParamSplit and ParamSplitConstrained() specifications and return a RooSimultaneous p.d.f. of all built clones, using the specified master index to map prototype p.d.f.s to master states Interface to RooCustomizer

EDIT::name( orig, substNode=origNode), ... ] – Create a clone of input object orig, with the specified replacements operations executed EDIT::name( orig, origNode=$REMOVE(), ... ] – Create clone of input removing term origNode from all PROD() terms that contained it EDIT::name( orig, origNode=$REMOVE(prodname,...), ... ] – As above, but restrict removal of origNode to PROD term(s) prodname,...

Interface to RooClassFactory

CEXPR::name('expr',var,...] – Create an custom compiled p.d.f that evaluates the given expression cexpr::name('expr',var,...] – Create an custom compiled function that evaluates the given expression

$MetaType(...) - Meta argument that does not result in construction of an object but is used logically organize input arguments in certain operator p.d.f. constructions. The defined meta arguments are context dependent.

The only meta argument that is defined globally is $Alias(typeName,aliasName) to
define aliases for type names. For the definition of meta arguments in operator p.d.f.s see the definitions below

Definition at line 867 of file RooFactoryWSTool.cxx.

◆ processAliasExpression()

string RooFactoryWSTool::processAliasExpression ( const char *  arg)
protected

Parse token.

Definition at line 1243 of file RooFactoryWSTool.cxx.

◆ processCompositeExpression()

std::string RooFactoryWSTool::processCompositeExpression ( const char *  token)
protected

Process a single composite expression.

e.g. 'A=RooGaussian::g[x,m,s]' --> 'A=g' e.g. 'f[0,1]*RooGaussiang[x,m,s]' --> 'f*g' e.g. 'RooGaussian::g(x,y,s)|x' --> g|x' e.g. '$MetaArg(RooGaussian::g[x,m,s],blah)' --> '$MetaArg(g,blah)'

Definition at line 959 of file RooFactoryWSTool.cxx.

◆ processCreateArg()

string RooFactoryWSTool::processCreateArg ( std::string &  func,
std::vector< std::string > &  args 
)
protected

Glue function between high-level syntax and low-level factory call to createArg: Process a parsed call to create a p.d.f named func.

The func arg is interpreted as ClassName::ObjectName and the arglist is passed verbatim to createArg. The received arglist is expected to be fully reduced (i.e. all inline object creations must have been compiled)

Definition at line 1395 of file RooFactoryWSTool.cxx.

◆ processCreateVar()

string RooFactoryWSTool::processCreateVar ( std::string &  func,
std::vector< std::string > &  args 
)
protected

Glue function between high-level syntax and low-level factory call to createVariable: Process a parsed call to create a variable named 'func'.

If initial token is non-numeric, a RooCategory will be created, and the args are interpreted as either state names or 'name=id' assignments. Otherwise a RooRealvar is created and the arg list is interpreted as follows: If list has two args, these are interpreted as xmin,xmax If list has three args, these are interpreted as xinit,xmin,xmax If list has one arg, this is interpreted as xinit and the variable is set as constant

Definition at line 1325 of file RooFactoryWSTool.cxx.

◆ processExpression()

std::string RooFactoryWSTool::processExpression ( const char *  token)

Process a single high-level expression or list of expressions.

The returned string a the reduced expression where all inline object creations have been executed and substituted with the name of the created object

e.g. 'RooGaussian::g(x,m,s)' --> 'g' '{x(-10,10),s} --> '{x,s}'

Definition at line 932 of file RooFactoryWSTool.cxx.

◆ processListExpression()

string RooFactoryWSTool::processListExpression ( const char *  arg)
protected

Process a list of high-level expression.

The returned string a the reduced expression list where all inline object creations have been executed and substituted with the name of the created object

E.g. '{x(-10,10),s} --> '{x,s}'

Definition at line 1173 of file RooFactoryWSTool.cxx.

◆ processMetaArg()

std::string RooFactoryWSTool::processMetaArg ( std::string &  func,
std::vector< std::string > &  args 
)
protected

Concatenate list of args into comma separated string.

Definition at line 1443 of file RooFactoryWSTool.cxx.

◆ processSingleExpression()

std::string RooFactoryWSTool::processSingleExpression ( const char *  arg)
protected

Process a single high-level expression.

The returned string a the reduced expression where all inline object creations have been executed and substituted with the name of the created object

e.g. 'RooGaussian::g(x,m,s)' --> 'g' e.g. 'x[-10,10]' --> 'x'

Definition at line 1024 of file RooFactoryWSTool.cxx.

◆ prod()

RooProdPdf * RooFactoryWSTool::prod ( const char *  objName,
const char *  pdfList 
)

Definition at line 582 of file RooFactoryWSTool.cxx.

◆ prodfunc()

RooProduct * RooFactoryWSTool::prodfunc ( const char *  objName,
const char *  pdfList 
)

Definition at line 754 of file RooFactoryWSTool.cxx.

◆ registerSpecial()

void RooFactoryWSTool::registerSpecial ( const char *  typeName,
RooFactoryWSTool::IFace iface 
)
static

Register foreign special objects in factory.

Definition at line 1951 of file RooFactoryWSTool.cxx.

◆ resolveClassName()

TClass * RooFactoryWSTool::resolveClassName ( const char *  className)
protected

Definition at line 1263 of file RooFactoryWSTool.cxx.

◆ setAutoClassNamePostFix()

void RooFactoryWSTool::setAutoClassNamePostFix ( const char *  pfix)
inline

Definition at line 156 of file RooFactoryWSTool.h.

◆ simul()

RooSimultaneous * RooFactoryWSTool::simul ( const char *  objName,
const char *  indexCat,
const char *  pdfMap 
)

Definition at line 650 of file RooFactoryWSTool.cxx.

◆ splitFunctionArgs()

vector< string > RooFactoryWSTool::splitFunctionArgs ( const char *  funcExpr)

Allocate and fill work buffer.

Definition at line 1467 of file RooFactoryWSTool.cxx.

◆ varTag()

string RooFactoryWSTool::varTag ( std::string &  func,
std::vector< std::string > &  args 
)
protected

Definition at line 1296 of file RooFactoryWSTool.cxx.

◆ ws()

RooWorkspace & RooFactoryWSTool::ws ( )
inline

Definition at line 74 of file RooFactoryWSTool.h.

Member Data Documentation

◆ _args

std::vector<std::string> RooFactoryWSTool::_args
protected

Definition at line 184 of file RooFactoryWSTool.h.

◆ _autoClassPostFix

std::string RooFactoryWSTool::_autoClassPostFix
protected

Definition at line 197 of file RooFactoryWSTool.h.

◆ _autoNamePrefix

std::stack<std::string> RooFactoryWSTool::_autoNamePrefix
protected

Definition at line 164 of file RooFactoryWSTool.h.

◆ _errorCount

Int_t RooFactoryWSTool::_errorCount
protected

Definition at line 195 of file RooFactoryWSTool.h.

◆ _hooks

map< string, RooFactoryWSTool::IFace * > * RooFactoryWSTool::_hooks =0
staticprotected

Definition at line 188 of file RooFactoryWSTool.h.

◆ _of

RooFactoryWSTool * RooFactoryWSTool::_of = 0
staticprotected

Definition at line 183 of file RooFactoryWSTool.h.

◆ _typeAliases

std::map<std::string,std::string> RooFactoryWSTool::_typeAliases
protected

Definition at line 165 of file RooFactoryWSTool.h.

◆ _ws

RooWorkspace* RooFactoryWSTool::_ws
protected

Definition at line 190 of file RooFactoryWSTool.h.

Libraries for RooFactoryWSTool:
[legend]

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