Logo ROOT   6.07/09
Reference Guide
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
RooMultiCatIter Class Reference

RooMultiCatIter iterators 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 30 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...
 
virtual ~RooMultiCatIter ()
 Destructor. More...
 
virtual const TCollectionGetCollection () const
 Dummy implementation, always returns zero. More...
 
virtual TObjectNext ()
 Iterator increment operator. More...
 
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. More...
 
virtual TObjectoperator* () const
 Return current item (dummy) More...
 
virtual void Reset ()
 Rewind master iterator. More...
 
- 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. More...
 
void initialize (const RooArgSet &catList)
 Build iterator array for given catList. More...
 
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 <RooMultiCatIter.h>

Inheritance diagram for RooMultiCatIter:
[legend]

Constructor & Destructor Documentation

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

RooMultiCatIter::RooMultiCatIter ( const RooMultiCatIter other)

Copy constructor.

Definition at line 62 of file RooMultiCatIter.cxx.

RooMultiCatIter::~RooMultiCatIter ( )
virtual

Destructor.

Definition at line 113 of file RooMultiCatIter.cxx.

Member Function Documentation

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

const TCollection * RooMultiCatIter::GetCollection ( ) const
virtual

Dummy implementation, always returns zero.

Implements TIterator.

Definition at line 128 of file RooMultiCatIter.cxx.

void RooMultiCatIter::initialize ( const RooArgSet catList)
protected

Build iterator array for given catList.

Definition at line 72 of file RooMultiCatIter.cxx.

TObject * RooMultiCatIter::Next ( )
virtual

Iterator increment operator.

Implements TIterator.

Definition at line 162 of file RooMultiCatIter.cxx.

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

TObject * RooMultiCatIter::operator* ( ) const
virtual

Return current item (dummy)

Reimplemented from TIterator.

Definition at line 224 of file RooMultiCatIter.cxx.

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

Reimplemented from TIterator.

Definition at line 46 of file RooMultiCatIter.h.

void RooMultiCatIter::Reset ( void  )
virtual

Rewind master iterator.

Implements TIterator.

Definition at line 205 of file RooMultiCatIter.cxx.

Member Data Documentation

RooArgSet RooMultiCatIter::_catList
protected

Definition at line 51 of file RooMultiCatIter.h.

pRooCategory* RooMultiCatIter::_catPtrList
protected

Definition at line 53 of file RooMultiCatIter.h.

TObjString RooMultiCatIter::_compositeLabel
protected

Definition at line 57 of file RooMultiCatIter.h.

TObject* RooMultiCatIter::_curItem
protected

Definition at line 59 of file RooMultiCatIter.h.

Int_t RooMultiCatIter::_curIter
protected

Definition at line 56 of file RooMultiCatIter.h.

RooCatType* RooMultiCatIter::_curTypeList
protected

Definition at line 54 of file RooMultiCatIter.h.

pTIterator* RooMultiCatIter::_iterList
protected

Definition at line 52 of file RooMultiCatIter.h.

Int_t RooMultiCatIter::_nIter
protected

Definition at line 55 of file RooMultiCatIter.h.

TString RooMultiCatIter::_rangeName
protected

Definition at line 58 of file RooMultiCatIter.h.


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