IModelIterator interface (dbgmodel.h)

An iterator of contained objects (client implemented and returned by IIterableConcept).

Inheritance

IModelIterator inherits from IUnknown.

Methods

The IModelIterator interface has these methods.

 
IModelIterator::AddRef

The IModelIterator::AddRef method increments the reference count for an interface on an object.
IModelIterator::GetNext

The GetNext method moves the iterator forward and fetches the next iterated element.
IModelIterator::QueryInterface

The IModelIterator::QueryInterface method retrieves pointers to the supported interfaces on an object.
IModelIterator::Release

The IModelIterator::Release method decrements the reference count for an interface on an object.
IModelIterator::Reset

The Reset method on an iterator returned from the iterable concept will restore the position of the iterator to where it was when the iterator was first created (before the first element).

Remarks

Iterable Concept

An object which is a container of other objects and wishes to express the ability to iterate over those contained objects can support the iterable concept by an implementation of the IIterableConcept and IModelIterator interfaces. There is a very important relationship between support of the iterable concept and support of the indexable concept. An object which supports random access to the contained objects can support the indexable concept in addition to the iterable concept. In this case, the iterated elements must also produce a default index which, when passed to the indexable concept refer to the same object. A failure to satisfy this invariant will result in undefined behavior in the debug host.

Requirements

Requirement Value
Header dbgmodel.h