TSceneSelectionIterator< T > Class Template Reference
[Data Structures]

Inheritance diagram for TSceneSelectionIterator< T >:
TMCObject

List of all members.

Public Member Functions

 TSceneSelectionIterator (ISceneSelection *selection, const MCIID &iid, IDType objectKind, boolean alwaysQuery)
 ~TSceneSelectionIterator ()
T * First ()
 returns NULL if there are no elements with the wanted interface
T * Next ()
 returns NULL if there are no more elements
uint32 GetElemCount ()
 Return the number of elements that we shall scan (slow).
boolean IsElemCountEqualTo (uint32 count)
 if you are interested in a specific count.
boolean IsElemCountMoreThan (uint32 count)
 Same idea as IsElemCountEqualTo(). Return true if (GetElemCount() > count).
boolean IsSelectionUniform ()
 Returns true if all the elements have the same iid (or objectKind).

Protected Member Functions

T * FindNextFromCurrentPosition ()
boolean GetElemCount (uint32 minCount, uint32 maxCount, uint32 &count)
virtual boolean IsValidObject (T *object)

Private Attributes

ISceneSelectionfSelection
MCIID fIID
IDType fObjectKind
uint32 fCurrentIndex
boolean fAlwaysQuery

Detailed Description

template<class T>
class TSceneSelectionIterator< T >

Iterates only over the elements of the scene selection that support a given interface


Constructor & Destructor Documentation

template<class T >
TSceneSelectionIterator< T >::TSceneSelectionIterator ( ISceneSelection selection,
const MCIID iid,
IDType  objectKind,
boolean  alwaysQuery 
) [inline]
template<class T >
TSceneSelectionIterator< T >::~TSceneSelectionIterator (  )  [inline]

Member Function Documentation

template<class T >
T * TSceneSelectionIterator< T >::FindNextFromCurrentPosition (  )  [inline, protected]
template<class T >
T * TSceneSelectionIterator< T >::First (  )  [inline]

returns NULL if there are no elements with the wanted interface

template<class T >
boolean TSceneSelectionIterator< T >::GetElemCount ( uint32  minCount,
uint32  maxCount,
uint32 count 
) [inline, protected]
template<class T >
uint32 TSceneSelectionIterator< T >::GetElemCount (  )  [inline]

Return the number of elements that we shall scan (slow).

template<class T >
boolean TSceneSelectionIterator< T >::IsElemCountEqualTo ( uint32  count  )  [inline]

if you are interested in a specific count.

Use this to bail out more quickly than when using GetElemCount(), which can be a waste

template<class T >
boolean TSceneSelectionIterator< T >::IsElemCountMoreThan ( uint32  count  )  [inline]

Same idea as IsElemCountEqualTo(). Return true if (GetElemCount() > count).

template<class T >
boolean TSceneSelectionIterator< T >::IsSelectionUniform (  )  [inline]

Returns true if all the elements have the same iid (or objectKind).

template<class T>
virtual boolean TSceneSelectionIterator< T >::IsValidObject ( T *  object  )  [inline, protected, virtual]

Reimplemented in TMasterObjectSelectionIterator.

template<class T >
T * TSceneSelectionIterator< T >::Next (  )  [inline]

returns NULL if there are no more elements


Member Data Documentation

template<class T>
boolean TSceneSelectionIterator< T >::fAlwaysQuery [private]
template<class T>
uint32 TSceneSelectionIterator< T >::fCurrentIndex [private]
template<class T>
MCIID TSceneSelectionIterator< T >::fIID [private]
template<class T>
IDType TSceneSelectionIterator< T >::fObjectKind [private]
template<class T>
ISceneSelection* TSceneSelectionIterator< T >::fSelection [private]

The documentation for this class was generated from the following file:
Generated on Mon Apr 26 22:48:09 2010 for Carrara SDK Doc by  doxygen 1.6.3