Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
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.
 
 RooMultiCatIter (const RooMultiCatIter &other)
 Copy constructor.
 
virtual ~RooMultiCatIter ()
 Destructor.
 
virtual const TCollectionGetCollection () const
 Dummy implementation, always returns zero.
 
virtual TObjectNext ()
 Iterator increment operator.
 
virtual bool operator!= (const TIterator &aIter) const
 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.
 
virtual TObjectoperator* () const
 Return current item (dummy)
 
virtual void Reset ()
 Rewind master iterator.
 
- Public Member Functions inherited from TIterator
virtual ~TIterator ()
 
virtual Option_tGetOption () const
 
TObjectoperator() ()
 
Bool_t operator== (const TIterator &other) const
 

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.
 
void initialize (const RooArgSet &catList)
 Build iterator array for given catList.
 
TIteratoroperator= (const TIterator &)
 
- 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
 

#include </home/sftnight/build/workspace/root-makedoc-v624/rootspi/rdoc/src/v6-24-00-patches/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 48 of file RooMultiCatIter.cxx.

◆ RooMultiCatIter() [2/2]

RooMultiCatIter::RooMultiCatIter ( const RooMultiCatIter other)

Copy constructor.

Definition at line 61 of file RooMultiCatIter.cxx.

◆ ~RooMultiCatIter()

RooMultiCatIter::~RooMultiCatIter ( )
virtual

Destructor.

Definition at line 112 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 141 of file RooMultiCatIter.cxx.

◆ GetCollection()

const TCollection * RooMultiCatIter::GetCollection ( ) const
virtual

Dummy implementation, always returns zero.

Implements TIterator.

Definition at line 127 of file RooMultiCatIter.cxx.

◆ initialize()

void RooMultiCatIter::initialize ( const RooArgSet catList)
protected

Build iterator array for given catList.

Definition at line 71 of file RooMultiCatIter.cxx.

◆ Next()

TObject * RooMultiCatIter::Next ( )
virtual

Iterator increment operator.

Implements TIterator.

Definition at line 161 of file RooMultiCatIter.cxx.

◆ operator!=()

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

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 235 of file RooMultiCatIter.cxx.

◆ operator*()

TObject * RooMultiCatIter::operator* ( ) const
virtual

Return current item (dummy)

Reimplemented from TIterator.

Definition at line 223 of file RooMultiCatIter.cxx.

◆ operator=()

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

Reimplemented from TIterator.

Definition at line 45 of file RooMultiCatIter.h.

◆ Reset()

void RooMultiCatIter::Reset ( )
virtual

Rewind master iterator.

Implements TIterator.

Definition at line 204 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.

  • roofit/roofitcore/src/RooFitLegacy/RooMultiCatIter.h
  • roofit/roofitcore/src/RooFitLegacy/RooMultiCatIter.cxx