SmbiosTableIterator Class Reference

Iterator for ISmbiosTable objects. More...

#include <ISmbios.h>

Inheritance diagram for SmbiosTableIterator:

SmbiosTableIteratorBase List of all members.

Public Types

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

Public Member Functions

virtual ~SmbiosTableIterator () throw ()
 SmbiosTableIterator (ISmbiosTable *initialTable=0, int typeToMatch=-1)
reference operator * () const
pointer operator-> () const
SmbiosTableIteratoroperator++ ()
const SmbiosTableIterator 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 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 499 of file ISmbios.h.


Member Typedef Documentation

typedef std::ptrdiff_t difference_type

Definition at line 509 of file ISmbios.h.

typedef std::forward_iterator_tag iterator_category

Definition at line 505 of file ISmbios.h.

typedef value_type* pointer

Definition at line 508 of file ISmbios.h.

typedef value_type& reference

Definition at line 507 of file ISmbios.h.

typedef ISmbiosItem value_type

Definition at line 506 of file ISmbios.h.


Constructor & Destructor Documentation

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

Definition at line 511 of file ISmbios.h.

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

Definition at line 512 of file ISmbios.h.


Member Function Documentation

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->().

void incrementIterator (  )  [protected, inherited]

Definition at line 55 of file SmbiosTableIterator.cpp.

References SmbiosTableIteratorBase::current, SmbiosTableIteratorBase::matchType, SmbiosTableIteratorBase::table, and smbios_structure_header::type.

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

reference operator * (  )  const [inline]

Definition at line 514 of file ISmbios.h.

References SmbiosTableIteratorBase::dereference().

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

Definition at line 480 of file ISmbios.h.

References SmbiosTableIteratorBase::current.

const SmbiosTableIterator operator++ ( int   )  [inline]

Definition at line 517 of file ISmbios.h.

SmbiosTableIterator& operator++ (  )  [inline]

Definition at line 516 of file ISmbios.h.

References SmbiosTableIteratorBase::incrementIterator().

pointer operator-> (  )  const [inline]

Definition at line 515 of file ISmbios.h.

References SmbiosTableIteratorBase::dereference().

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

Definition at line 479 of file ISmbios.h.

References SmbiosTableIteratorBase::current.


Member Data Documentation

const void* current [mutable, protected, inherited]

Definition at line 488 of file ISmbios.h.

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

int matchType [protected, inherited]

Definition at line 486 of file ISmbios.h.

Referenced by SmbiosTableIteratorBase::incrementIterator().

const ISmbiosTable* table [protected, inherited]

Definition at line 487 of file ISmbios.h.

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


The documentation for this class was generated from the following file:
Generated on Tue Jul 11 20:46:47 2006 for SMBIOS Library by  doxygen 1.4.7