Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
PackedList< nBits >::iteratorBase Class Reference

The iterator base for PackedList. More...

Inheritance diagram for PackedList< nBits >::iteratorBase:
Inheritance graph
[legend]
Collaboration diagram for PackedList< nBits >::iteratorBase:
Collaboration graph
[legend]

Public Member Functions

label key () const
 Return the element index corresponding to the iterator. More...
 
bool writeIfSet (Ostream &) const
 Write index/value for a non-zero entry. More...
 
bool operator== (const iteratorBase &) const
 Compare values (not positions) More...
 
bool operator!= (const iteratorBase &) const
 
void operator= (const iteratorBase &)
 Assign value, not position. More...
 
void operator= (const unsigned int val)
 Assign value. More...
 
 operator unsigned int () const
 Conversion operator. More...
 
OstreamprintInfo (Ostream &) const
 Print information and values. More...
 
template<>
bool writeIfSet (Ostream &os) const
 

Protected Member Functions

unsigned int get () const
 Get value as unsigned, no range-checking. More...
 
bool set (unsigned int)
 Set value, returning true if changed, no range-checking. More...
 
 iteratorBase ()
 Construct null. More...
 
 iteratorBase (const PackedList *, const label)
 Construct from base list and position index. More...
 

Protected Attributes

PackedListlist_
 Pointer to original list. More...
 
label index_
 Element index. More...
 

Friends

class PackedList
 

Detailed Description

template<unsigned nBits = 1>
class Foam::PackedList< nBits >::iteratorBase

The iterator base for PackedList.

Note: data and functions are protected, to allow reuse by iterator and prevent most external usage.

Definition at line 421 of file PackedList.H.

Constructor & Destructor Documentation

iteratorBase ( )
inlineprotected
iteratorBase ( const PackedList ,
const label   
)
inlineprotected

Construct from base list and position index.

Member Function Documentation

unsigned int get ( ) const
inlineprotected

Get value as unsigned, no range-checking.

Definition at line 290 of file PackedListI.H.

References PackedList< nBits >::iteratorBase::index_, PackedList< nBits >::iteratorBase::list_, PackedList< nBits >::max_value(), and PackedList< nBits >::packing().

Here is the call graph for this function:

bool set ( unsigned int  val)
inlineprotected

Set value, returning true if changed, no range-checking.

Definition at line 302 of file PackedListI.H.

References PackedList< nBits >::iteratorBase::index_, PackedList< nBits >::iteratorBase::list_, PackedList< nBits >::max_value(), and PackedList< nBits >::packing().

Here is the call graph for this function:

Foam::label key ( ) const
inline

Return the element index corresponding to the iterator.

Definition at line 329 of file PackedListI.H.

References PackedList< nBits >::iteratorBase::index_.

bool writeIfSet ( Ostream os) const
inline

Write index/value for a non-zero entry.

The bool specialization writes the index only

Definition at line 146 of file PackedListI.H.

References token::BEGIN_LIST, token::END_LIST, and token::SPACE.

bool operator== ( const iteratorBase iter) const
inline

Compare values (not positions)

Definition at line 337 of file PackedListI.H.

References PackedList< nBits >::get().

Here is the call graph for this function:

bool operator!= ( const iteratorBase iter) const
inline

Definition at line 347 of file PackedListI.H.

References PackedList< nBits >::get().

Here is the call graph for this function:

void operator= ( const iteratorBase iter)
inline

Assign value, not position.

This allows packed[0] = packed[3] for assigning values

Definition at line 357 of file PackedListI.H.

References PackedList< nBits >::get().

Here is the call graph for this function:

void operator= ( const unsigned int  val)
inline

Assign value.

A non-existent entry will be auto-vivified.

Definition at line 368 of file PackedListI.H.

References PackedList< nBits >::iteratorBase::index_, PackedList< nBits >::iteratorBase::list_, and PackedList< nBits >::resize().

Here is the call graph for this function:

operator unsigned int ( ) const
inline

Conversion operator.

Never auto-vivify entries.

Definition at line 384 of file PackedListI.H.

References PackedList< nBits >::iteratorBase::index_, and PackedList< nBits >::iteratorBase::list_.

Foam::Ostream & printInfo ( Ostream os) const

Print information and values.

Definition at line 149 of file PackedList.C.

References Foam::nl, and PackedList< nBits >::printBits().

Referenced by PackedList< nBits >::values().

Here is the call graph for this function:

Here is the caller graph for this function:

bool writeIfSet ( Ostream os) const
inline

Definition at line 86 of file PackedListI.H.

Friends And Related Function Documentation

friend class PackedList
friend

Definition at line 423 of file PackedList.H.

Member Data Documentation

PackedList* list_
protected
label index_
protected

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