ACE_Vector_Iterator< T, DEFAULT_SIZE > Class Template Reference

Implement an iterator over an ACE_Vector. More...

#include <Vector_T.h>

List of all members.

Public Member Functions

 ACE_Vector_Iterator (ACE_Vector< T, DEFAULT_SIZE > &)
int next (T *&next_item)
int advance (void)
int done (void) const
 Returns 1 when all items have been seen, else 0.
void dump (void) const
 Dump the state of an object.

Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks.

Private Attributes

size_t current_
 Pointer to the current item in the iteration.
ACE_Vector< T, DEFAULT_SIZE > & vector_
 Reference to the vector we're iterating over.


Detailed Description

template<class T, size_t DEFAULT_SIZE = ACE_VECTOR_DEFAULT_SIZE>
class ACE_Vector_Iterator< T, DEFAULT_SIZE >

Implement an iterator over an ACE_Vector.

This iterator is safe in the face of vector element deletions. But it is NOT safe if the vector is resized via the assignment operator during iteration. That would be very odd, and dangerous.


Constructor & Destructor Documentation

template<class T, size_t DEFAULT_SIZE>
ACE_INLINE ACE_Vector_Iterator< T, DEFAULT_SIZE >::ACE_Vector_Iterator ( ACE_Vector< T, DEFAULT_SIZE > &  v  )  [inline]


Member Function Documentation

template<class T, size_t DEFAULT_SIZE>
int ACE_Vector_Iterator< T, DEFAULT_SIZE >::next ( T *&  next_item  )  [inline]

Pass back the <next_item> that hasn't been seen in the vector. Returns 0 when all items have been seen, else 1.

template<class T, size_t DEFAULT_SIZE>
ACE_INLINE int ACE_Vector_Iterator< T, DEFAULT_SIZE >::advance ( void   )  [inline]

Move forward by one element in the vector. Returns 0 when all the items in the vector have been seen, else 1.

template<class T, size_t DEFAULT_SIZE>
ACE_INLINE int ACE_Vector_Iterator< T, DEFAULT_SIZE >::done ( void   )  const [inline]

Returns 1 when all items have been seen, else 0.

template<class T, size_t DEFAULT_SIZE>
ACE_INLINE void ACE_Vector_Iterator< T, DEFAULT_SIZE >::dump ( void   )  const [inline]

Dump the state of an object.


Member Data Documentation

template<class T, size_t DEFAULT_SIZE = ACE_VECTOR_DEFAULT_SIZE>
ACE_Vector_Iterator< T, DEFAULT_SIZE >::ACE_ALLOC_HOOK_DECLARE

Declare the dynamic allocation hooks.

template<class T, size_t DEFAULT_SIZE = ACE_VECTOR_DEFAULT_SIZE>
size_t ACE_Vector_Iterator< T, DEFAULT_SIZE >::current_ [private]

Pointer to the current item in the iteration.

template<class T, size_t DEFAULT_SIZE = ACE_VECTOR_DEFAULT_SIZE>
ACE_Vector<T, DEFAULT_SIZE>& ACE_Vector_Iterator< T, DEFAULT_SIZE >::vector_ [private]

Reference to the vector we're iterating over.


The documentation for this class was generated from the following files:

Generated on Wed Apr 23 02:43:03 2008 for ACE by  doxygen 1.5.5