Om  1.0.0
A universal framework for multimedia simulation
Public Member Functions | List of all members
om::util::ArrayList< T, SizeType, AllocatorType >::Iterator Class Reference

Iterator class for an array list. More...

#include <omArrayList.h>

Public Member Functions

 Iterator (ArrayList &newList)
 Create a new ArrayList iterator from a reference to a list. More...
 
void operator++ ()
 Prefix increment operator. More...
 
void operator++ (int)
 Postfix increment operator. More...
 
 operator Bool () const
 Return whether or not the iterator is at the end of the list. More...
 
T & operator* () const
 Return a reference to the current iterator element. More...
 
T * operator-> () const
 Access the current iterator element. More...
 
void remove ()
 Remove the current element from the list. More...
 
void removeUnordered ()
 Remove the current element from the list. More...
 
void reset ()
 Reset the iterator to the beginning of the list. More...
 
SizeType getIndex () const
 Return the index of the next element to be iterated over. More...
 

Detailed Description

template<typename T, typename SizeType = Size, typename AllocatorType = Allocator>
class om::util::ArrayList< T, SizeType, AllocatorType >::Iterator

Iterator class for an array list.

The purpose of this class is to iterate through all or some of the elements in the array list, making changes as necessary to the elements.

Constructor & Destructor Documentation

template<typename T, typename SizeType = Size, typename AllocatorType = Allocator>
om::util::ArrayList< T, SizeType, AllocatorType >::Iterator::Iterator ( ArrayList newList)
inline

Create a new ArrayList iterator from a reference to a list.

Member Function Documentation

template<typename T, typename SizeType = Size, typename AllocatorType = Allocator>
void om::util::ArrayList< T, SizeType, AllocatorType >::Iterator::operator++ ( )
inline

Prefix increment operator.

template<typename T, typename SizeType = Size, typename AllocatorType = Allocator>
void om::util::ArrayList< T, SizeType, AllocatorType >::Iterator::operator++ ( int  )
inline

Postfix increment operator.

template<typename T, typename SizeType = Size, typename AllocatorType = Allocator>
om::util::ArrayList< T, SizeType, AllocatorType >::Iterator::operator Bool ( ) const
inline

Return whether or not the iterator is at the end of the list.

If the iterator is at the end of the list, return FALSE. Otherwise, return TRUE, indicating that there are more elements to iterate over.

Returns
FALSE if at the end of list, otherwise TRUE.
template<typename T, typename SizeType = Size, typename AllocatorType = Allocator>
T& om::util::ArrayList< T, SizeType, AllocatorType >::Iterator::operator* ( ) const
inline

Return a reference to the current iterator element.

template<typename T, typename SizeType = Size, typename AllocatorType = Allocator>
T* om::util::ArrayList< T, SizeType, AllocatorType >::Iterator::operator-> ( ) const
inline

Access the current iterator element.

template<typename T, typename SizeType = Size, typename AllocatorType = Allocator>
void om::util::ArrayList< T, SizeType, AllocatorType >::Iterator::remove ( )
inline

Remove the current element from the list.

This method calls the removeAtSizeType() method of the iterated array list, and therefore has an average time complexity of O(n/2) where n is the size of the array list.

template<typename T, typename SizeType = Size, typename AllocatorType = Allocator>
void om::util::ArrayList< T, SizeType, AllocatorType >::Iterator::removeUnordered ( )
inline

Remove the current element from the list.

This method calls the removeAtSizeTypeUnordered() method of the iterated array list, and therefore has an average time complexity of O(1).

template<typename T, typename SizeType = Size, typename AllocatorType = Allocator>
void om::util::ArrayList< T, SizeType, AllocatorType >::Iterator::reset ( )
inline

Reset the iterator to the beginning of the list.

template<typename T, typename SizeType = Size, typename AllocatorType = Allocator>
SizeType om::util::ArrayList< T, SizeType, AllocatorType >::Iterator::getIndex ( ) const
inline

Return the index of the next element to be iterated over.


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