16#ifndef ROO_SUPER_CATEGORY
17#define ROO_SUPER_CATEGORY
#define ClassDef(name, id)
static void indent(ostringstream &buf, int indent_level)
RooAbsCategoryLValue is the common abstract base class for objects that represent a discrete value th...
TIterator * createIterator(Bool_t dir=kIterForward) const R__SUGGEST_ALTERNATIVE("begin()
TIterator-style iteration over contained elements.
RooArgSet is a container object that can hold multiple RooAbsArg objects.
RooCatType is an auxilary class for RooAbsCategory and defines a a single category state.
RooSetProxy is the concrete proxy for RooArgSet objects.
RooSuperCategory can join several RooAbsCategoryLValue objects into a single category.
virtual Bool_t inRange(const char *rangeName) const
Return true of all of the input category states are in the given range.
virtual void writeToStream(std::ostream &os, Bool_t compact) const
Write object contents to given stream.
TString currentLabel() const
Return the name of the current state, constructed from the state names of the input categories.
virtual Bool_t setIndex(Int_t index, Bool_t printError=kTRUE)
Set the value of the super category by specifying the state index code by setting the states of the c...
Bool_t setType(const RooCatType *type, Bool_t prinError=kTRUE)
Set the value of the super category by specifying the state object by setting the state names of the ...
virtual ~RooSuperCategory()
Destructor.
virtual Bool_t setLabel(const char *label, Bool_t printError=kTRUE)
Set the value of the super category by specifying the state name by setting the state names of the co...
TIterator * MakeIterator() const
Make an iterator over all state permutations of the input categories of this supercategory.
const RooArgSet & inputCatList() const
virtual Bool_t readFromStream(std::istream &is, Bool_t compact, Bool_t verbose=kFALSE)
Read object contents from given stream.
virtual TObject * clone(const char *newname) const
virtual Bool_t hasRange(const char *rangeName) const
Return true if any of the input categories has a range named 'rangeName'.
virtual void printMultiline(std::ostream &os, Int_t content, Bool_t verbose=kFALSE, TString indent="") const
Print the state of this object to the specified output stream.
void updateIndexList()
Update the list of possible states of this super category.
virtual RooCatType evaluate() const
Iterator over set of input categories.
Iterator abstract base class.
Mother of all ROOT objects.