17 #ifndef ROO_PDF_CUSTOMIZER
18 #define ROO_PDF_CUSTOMIZER
62 virtual void printName(std::ostream& os)
const ;
63 virtual void printTitle(std::ostream& os)
const ;
65 virtual void printArgs(std::ostream& os)
const ;
80 std::string
create(
RooFactoryWSTool& ft,
const char* typeName,
const char* instanceName, std::vector<std::string> args) ;
virtual void printTitle(std::ostream &os) const
Print title of customizer.
const RooArgSet & cloneBranchList() const
RooArgSet * _cloneBranchList
virtual void Print(Option_t *options=0) const
Print TNamed name and title.
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'.
void splitArg(const RooAbsArg &arg, const RooAbsCategory &splitCat)
Split all argument 'arg' into individualized clones for each defined state of 'splitCat'.
virtual void printMultiline(std::ostream &os, Int_t content, Bool_t verbose=kFALSE, TString indent="") const
Print customizer configuration details.
RooCustomizer(const RooAbsArg &pdf, const RooAbsCategoryLValue &masterCat, RooArgSet &splitLeafListOwned, RooArgSet *splitLeafListAll=0)
Constructor with a prototype and masterCat index category.
virtual StyleOption defaultPrintStyle(Option_t *opt) const
virtual Int_t defaultPrintContents(Option_t *opt) const
Default choice of contents to be printed (name and value)
Iterator abstract base class.
#define ClassDef(name, id)
RooArgSet _masterLeafList
The TNamed class is the base class for all named ROOT classes.
void setOwning(Bool_t flag)
RooArgSet _masterBranchList
RooArgSet _internalCloneBranchList
virtual void printClassName(std::ostream &os) const
Print class name of customizer.
TIterator * _masterLeafListIter
TIterator * _masterBranchListIter
virtual void printArgs(std::ostream &os) const
Print arguments of customizer, i.e. input p.d.f and input master category (if any) ...
static void indent(ostringstream &buf, int indent_level)
RooAbsCategoryLValue * _masterCat
void replaceArg(const RooAbsArg &orig, const RooAbsArg &subst)
Replace any occurence of arg 'orig' with arg 'subst'.
static std::ostream & defaultPrintStream(std::ostream *os=0)
Return a reference to the current default stream to use in Print().
RooAbsArg * doBuild(const char *masterCatState, Bool_t verbose)
Back-end implementation of the p.d.f building functionality.
void setCloneBranchSet(RooArgSet &cloneBranchSet)
Install the input RooArgSet as container in which all cloned branches will be stored.
void splitArgs(const RooArgSet &argSet, const RooAbsCategory &splitCat)
Split all arguments in 'set' into individualized clones for each defined state of 'splitCat'...
RooAbsPdf is the abstract interface for all probability density functions The class provides hybrid a...
RooArgSet * _cloneNodeListOwned
RooAbsArg * build(const char *masterCatState, Bool_t verbose=kFALSE)
Build a clone of the prototype executing all registered 'replace' rules and 'split' rules for the mas...
std::string create(RooFactoryWSTool &ft, const char *typeName, const char *instanceName, std::vector< std::string > args)
RooArgSet * _cloneNodeListAll
virtual void printName(std::ostream &os) const
Print name of customizer.
RooAbsArg is the common abstract base class for objects that represent a value (of arbitrary type) an...
virtual ~RooCustomizer()
Destructor.
void initialize()
Initialize the customizer.
const RooArgSet & cloneLeafList() const