Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

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 419 of file ISmbios.h.


Member Typedef Documentation

typedef std::ptrdiff_t difference_type
 

Definition at line 429 of file ISmbios.h.

typedef std::forward_iterator_tag iterator_category
 

Definition at line 425 of file ISmbios.h.

typedef value_type* pointer
 

Definition at line 428 of file ISmbios.h.

Referenced by SmbiosTableIterator::operator->().

typedef value_type& reference
 

Definition at line 427 of file ISmbios.h.

Referenced by SmbiosTableIterator::operator *().

typedef ISmbiosItem value_type
 

Definition at line 426 of file ISmbios.h.


Constructor & Destructor Documentation

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

Definition at line 431 of file ISmbios.h.

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

Definition at line 432 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, SmbiosTable::nextSmbiosStruct(), and SmbiosTableIteratorBase::table.

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

reference operator *  )  const [inline]
 

Definition at line 434 of file ISmbios.h.

References SmbiosTableIteratorBase::dereference(), and SmbiosTableIterator::reference.

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

Definition at line 400 of file ISmbios.h.

References SmbiosTableIteratorBase::current.

const SmbiosTableIterator operator++ int   )  [inline]
 

Definition at line 437 of file ISmbios.h.

SmbiosTableIterator& operator++  )  [inline]
 

Definition at line 436 of file ISmbios.h.

References SmbiosTableIteratorBase::incrementIterator().

pointer operator->  )  const [inline]
 

Definition at line 435 of file ISmbios.h.

References SmbiosTableIteratorBase::dereference(), and SmbiosTableIterator::pointer.

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

Definition at line 399 of file ISmbios.h.

References SmbiosTableIteratorBase::current.


Member Data Documentation

const void* current [mutable, protected, inherited]
 

Definition at line 408 of file ISmbios.h.

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

int matchType [protected, inherited]
 

Definition at line 406 of file ISmbios.h.

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

const ISmbiosTable* table [protected, inherited]
 

Definition at line 407 of file ISmbios.h.

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


The documentation for this class was generated from the following file:
Generated on Wed Apr 11 16:25:12 2007 for SMBIOS Library by doxygen 1.3.5