16#ifndef ROO_MULTI_CATEGORY
17#define ROO_MULTI_CATEGORY
#define ClassDefOverride(name, id)
static void indent(ostringstream &buf, int indent_level)
void setShapeDirty()
Notify that a shape-like property (e.g. binning) has changed.
RooAbsCategory is the base class for objects that represent a discrete value with a finite number of ...
int value_type
The type used to denote a specific category state.
RooArgSet is a container object that can hold multiple RooAbsArg objects.
RooMultiCategory connects several RooAbsCategory objects into a single category.
virtual TObject * clone(const char *newname) const override
value_type evaluate() const override
Calculate the current value.
virtual Bool_t readFromStream(std::istream &, Bool_t, Bool_t) override
Multi categories cannot be read from streams.
const char * getCurrentLabel() const override
Get current label.
std::string createLabel() const
Compile a string with all the labels of the serving categories, such as {1Jet;1Lepton;2Tag}.
virtual ~RooMultiCategory()
Destructor.
void recomputeShape() override
Inspect all the subcategories, and enumerate and name their states.
virtual void writeToStream(std::ostream &os, Bool_t compact) const override
Write object contents to given stream.
const RooArgSet & inputCatList() const
virtual void printMultiline(std::ostream &os, Int_t content, Bool_t verbose=kFALSE, TString indent="") const override
Print the state of this object to the specified output stream.
RooSetProxy is the concrete proxy for RooArgSet objects.
The RooSuperCategory can join several RooAbsCategoryLValue objects into a single category.
Mother of all ROOT objects.