Logo ROOT  
Reference Guide
RooMultiCatIter Class Reference

Deprecated:
RooMultiCatIter is unnecessary, since all multi category classes know how to generate their own states. Use begin() / end() and range-based for loops on instances of these classes.

RooMultiCatIter iterates over all state permutations of a list of categories. It serves as the state iterator for a RooSuperCategory or a RooMultiCategory. Since this iterator only constructs state labels and does not change the value of its input categories, it is not required that its inputs are LValues. For cases where all inputs are LValues (such as for RooSuperCategory) the values of the input can be changes by assigning the super category the string label generated by this iterator

Definition at line 29 of file RooMultiCatIter.h.

Public Member Functions

 RooMultiCatIter (const RooArgSet &catList, const char *rangeName=0)
 Construct iterator over all permutations of states of categories in catList. More...
 
 RooMultiCatIter (const RooMultiCatIter &other)
 Copy constructor. More...
 
 ~RooMultiCatIter () override
 Destructor. More...
 
const TCollectionGetCollection () const override
 Dummy implementation, always returns zero. More...
 
TObjectNext () override
 Iterator increment operator. More...
 
bool operator!= (const TIterator &aIter) const override
 Comparison operator to other iterator Returns true if both iterator iterate over the same set of input categories and are not at the same sequential position. More...
 
TObjectoperator* () const override
 Return current item (dummy) More...
 
void Reset () override
 Rewind master iterator. More...
 
- Public Member Functions inherited from TIterator
virtual ~TIterator ()
 
virtual const TCollectionGetCollection () const =0
 
virtual Option_tGetOption () const
 
virtual TClassIsA () const
 
virtual TObjectNext ()=0
 
virtual Bool_t operator!= (const TIterator &) const
 Compare two iterator objects. More...
 
TObjectoperator() ()
 
virtual TObjectoperator* () const
 Return current object or nullptr. More...
 
virtual TIteratoroperator= (const TIterator &)=0
 
Bool_t operator== (const TIterator &other) const
 
virtual void Reset ()=0
 
virtual void Streamer (TBuffer &)
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 

Protected Member Functions

TObjStringcompositeLabel ()
 Construct string with composite object label corresponding to the state name of a RooMultiCategory or RooSuperCategory constructed from this set of input categories. More...
 
void initialize (const RooArgSet &catList)
 Build iterator array for given catList. More...
 
TIteratoroperator= (const TIterator &) override
 
- Protected Member Functions inherited from TIterator
 TIterator ()
 
 TIterator (const TIterator &)
 

Protected Attributes

RooArgSet _catList
 
pRooCategory_catPtrList
 
TObjString _compositeLabel
 
TObject_curItem
 
Int_t _curIter
 
RooCatType_curTypeList
 
pTIterator_iterList
 
Int_t _nIter
 
TString _rangeName
 

Additional Inherited Members

- Static Public Member Functions inherited from TIterator
static TClassClass ()
 
static const char * Class_Name ()
 
static Version_t Class_Version ()
 
static const char * DeclFileName ()
 

#include </home/sftnight/build/workspace/root-makedoc-master/rootspi/rdoc/src/master/roofit/roofitcore/src/RooFitLegacy/RooMultiCatIter.h>

Inheritance diagram for RooMultiCatIter:
[legend]

Constructor & Destructor Documentation

◆ RooMultiCatIter() [1/2]

RooMultiCatIter::RooMultiCatIter ( const RooArgSet catList,
const char *  rangeName = 0 
)

Construct iterator over all permutations of states of categories in catList.

If rangeName is not null, iteration is restricted to states that are selected in the given range name

Definition at line 47 of file RooMultiCatIter.cxx.

◆ RooMultiCatIter() [2/2]

RooMultiCatIter::RooMultiCatIter ( const RooMultiCatIter other)

Copy constructor.

Definition at line 60 of file RooMultiCatIter.cxx.

◆ ~RooMultiCatIter()

RooMultiCatIter::~RooMultiCatIter ( )
override

Destructor.

Definition at line 105 of file RooMultiCatIter.cxx.

Member Function Documentation

◆ compositeLabel()

TObjString * RooMultiCatIter::compositeLabel ( )
protected

Construct string with composite object label corresponding to the state name of a RooMultiCategory or RooSuperCategory constructed from this set of input categories.

Definition at line 134 of file RooMultiCatIter.cxx.

◆ GetCollection()

const TCollection * RooMultiCatIter::GetCollection ( ) const
overridevirtual

Dummy implementation, always returns zero.

Implements TIterator.

Definition at line 120 of file RooMultiCatIter.cxx.

◆ initialize()

void RooMultiCatIter::initialize ( const RooArgSet catList)
protected

Build iterator array for given catList.

Definition at line 70 of file RooMultiCatIter.cxx.

◆ Next()

TObject * RooMultiCatIter::Next ( )
overridevirtual

Iterator increment operator.

Implements TIterator.

Definition at line 154 of file RooMultiCatIter.cxx.

◆ operator!=()

bool RooMultiCatIter::operator!= ( const TIterator aIter) const
overridevirtual

Comparison operator to other iterator Returns true if both iterator iterate over the same set of input categories and are not at the same sequential position.

Reimplemented from TIterator.

Definition at line 228 of file RooMultiCatIter.cxx.

◆ operator*()

TObject * RooMultiCatIter::operator* ( ) const
overridevirtual

Return current item (dummy)

Reimplemented from TIterator.

Definition at line 216 of file RooMultiCatIter.cxx.

◆ operator=()

TIterator & RooMultiCatIter::operator= ( const TIterator )
inlineoverrideprotectedvirtual

Implements TIterator.

Definition at line 45 of file RooMultiCatIter.h.

◆ Reset()

void RooMultiCatIter::Reset ( void  )
overridevirtual

Rewind master iterator.

Implements TIterator.

Definition at line 197 of file RooMultiCatIter.cxx.

Member Data Documentation

◆ _catList

RooArgSet RooMultiCatIter::_catList
protected

Definition at line 50 of file RooMultiCatIter.h.

◆ _catPtrList

pRooCategory* RooMultiCatIter::_catPtrList
protected

Definition at line 52 of file RooMultiCatIter.h.

◆ _compositeLabel

TObjString RooMultiCatIter::_compositeLabel
protected

Definition at line 56 of file RooMultiCatIter.h.

◆ _curItem

TObject* RooMultiCatIter::_curItem
protected

Definition at line 58 of file RooMultiCatIter.h.

◆ _curIter

Int_t RooMultiCatIter::_curIter
protected

Definition at line 55 of file RooMultiCatIter.h.

◆ _curTypeList

RooCatType* RooMultiCatIter::_curTypeList
protected

Definition at line 53 of file RooMultiCatIter.h.

◆ _iterList

pTIterator* RooMultiCatIter::_iterList
protected

Definition at line 51 of file RooMultiCatIter.h.

◆ _nIter

Int_t RooMultiCatIter::_nIter
protected

Definition at line 54 of file RooMultiCatIter.h.

◆ _rangeName

TString RooMultiCatIter::_rangeName
protected

Definition at line 57 of file RooMultiCatIter.h.


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