ConstSmbiosTableIterator Class Reference

Iterator for const ISmbiosTable objects. More...

#include <ISmbios.h>

Inheritance diagram for ConstSmbiosTableIterator:

SmbiosTableIteratorBase List of all members.

Public Types

typedef std::forward_iterator_tag iterator_category
typedef const ISmbiosItem value_type
typedef value_typereference
typedef value_typepointer
typedef std::ptrdiff_t difference_type

Public Member Functions

virtual ~ConstSmbiosTableIterator () throw ()
 ConstSmbiosTableIterator (const ISmbiosTable *initialTable=0, int typeToMatch=-1)
reference operator * () const
pointer operator-> () const
ConstSmbiosTableIteratoroperator++ ()
const ConstSmbiosTableIterator operator++ (int)
bool operator== (const SmbiosTableIteratorBase other) const
bool operator!= (const SmbiosTableIteratorBase other) const

Protected Member Functions

void incrementIterator ()
ISmbiosItemdereference () const

Protected Attributes

int matchType
const ISmbiosTabletable
const void * current

Detailed Description

Iterator for const ISmbiosTable objects.

In order to properly enforce difference between iterator and const_iterator, we need to derive them both separately from the base iterator class. the const_iterator cannot inherit from iterator, or compiler will automatically convert between the two, which is not good.

This class is stable. Do not add or remove any members from it.

Definition at line 453 of file ISmbios.h.


Member Typedef Documentation

typedef std::forward_iterator_tag iterator_category

Definition at line 458 of file ISmbios.h.

typedef const ISmbiosItem value_type

Definition at line 459 of file ISmbios.h.

typedef value_type& reference

Definition at line 460 of file ISmbios.h.

typedef value_type* pointer

Definition at line 461 of file ISmbios.h.

typedef std::ptrdiff_t difference_type

Definition at line 462 of file ISmbios.h.


Constructor & Destructor Documentation

virtual ~ConstSmbiosTableIterator (  )  throw () [inline, virtual]

Definition at line 464 of file ISmbios.h.

ConstSmbiosTableIterator ( const ISmbiosTable initialTable = 0,
int  typeToMatch = -1 
) [inline, explicit]

Definition at line 465 of file ISmbios.h.


Member Function Documentation

reference operator * (  )  const [inline]

Definition at line 467 of file ISmbios.h.

References SmbiosTableIteratorBase::dereference().

pointer operator-> (  )  const [inline]

Definition at line 468 of file ISmbios.h.

References SmbiosTableIteratorBase::dereference().

ConstSmbiosTableIterator& operator++ (  )  [inline]

Definition at line 469 of file ISmbios.h.

References SmbiosTableIteratorBase::incrementIterator().

const ConstSmbiosTableIterator operator++ ( int   )  [inline]

Definition at line 470 of file ISmbios.h.

bool operator== ( const SmbiosTableIteratorBase  other  )  const [inline, inherited]

Definition at line 399 of file ISmbios.h.

References SmbiosTableIteratorBase::current.

bool operator!= ( const SmbiosTableIteratorBase  other  )  const [inline, inherited]

Definition at line 400 of file ISmbios.h.

References SmbiosTableIteratorBase::current.

void incrementIterator (  )  [protected, inherited]

Definition at line 55 of file SmbiosTableIterator.cpp.

References SmbiosTableIteratorBase::current, SmbiosTableIteratorBase::matchType, SmbiosTable::nextSmbiosStruct(), and SmbiosTableIteratorBase::table.

Referenced by ConstSmbiosTableIterator::operator++(), SmbiosTableIterator::operator++(), and SmbiosTableIteratorBase::SmbiosTableIteratorBase().

ISmbiosItem & dereference (  )  const [protected, inherited]

Definition at line 30 of file SmbiosTableIterator.cpp.

References _, SmbiosTable::cacheItem(), SmbiosTableIteratorBase::current, SmbiosTable::getCachedItem(), SmbiosTable::makeItem(), and SmbiosTableIteratorBase::table.

Referenced by ConstSmbiosTableIterator::operator *(), SmbiosTableIterator::operator *(), ConstSmbiosTableIterator::operator->(), and SmbiosTableIterator::operator->().


Member Data Documentation

int matchType [protected, inherited]

Definition at line 406 of file ISmbios.h.

Referenced by SmbiosTableIteratorBase::incrementIterator().

const ISmbiosTable* table [protected, inherited]

Definition at line 407 of file ISmbios.h.

Referenced by SmbiosTableIteratorBase::dereference(), and SmbiosTableIteratorBase::incrementIterator().

const void* current [mutable, protected, inherited]

Definition at line 408 of file ISmbios.h.

Referenced by SmbiosTableIteratorBase::dereference(), SmbiosTableIteratorBase::incrementIterator(), SmbiosTableIteratorBase::operator!=(), and SmbiosTableIteratorBase::operator==().


The documentation for this class was generated from the following file:
Generated on Sat Apr 21 11:36:10 2007 for SMBIOS Library by  doxygen 1.5.2