DataStructures::List< list_type > Class Template Reference

Array based implementation of a list. More...

#include <DS_List.h>

List of all members.

Public Member Functions

 List ()
 Default constructor.
 ~List ()
 Destructor.
 List (const List &original_copy)
Listoperator= (const List &original_copy)
 Assign one list to another.
list_type & operator[] (const unsigned int position) const
void Insert (const list_type input, const unsigned int position)
void Insert (const list_type input)
void Replace (const list_type input, const list_type filler, const unsigned int position)
void Replace (const list_type input)
void RemoveAtIndex (const unsigned int position)
void RemoveFromEnd (const unsigned num=1)
 Delete the element at the end of the list.
unsigned int GetIndexOf (const list_type input) const
unsigned int Size (void) const
 
Returns:
The number of elements in the list

void Clear (bool doNotDeallocate=false)
 Clear the list.
void Compress (void)


Detailed Description

template<class list_type>
class DataStructures::List< list_type >

Array based implementation of a list.

Note:
ONLY USE THIS FOR SHALLOW COPIES. I don't bother with operator= to improve performance.

Constructor & Destructor Documentation

template<class list_type>
DataStructures::List< list_type >::List ( const List< list_type > &  original_copy  )  [inline]

Copy constructor

Parameters:
[in] original_copy The list to duplicate


Member Function Documentation

template<class list_type>
list_type & DataStructures::List< list_type >::operator[] ( const unsigned int  position  )  const [inline]

Access an element by its index in the array

Parameters:
[in] position The index into the array.
Returns:
The element at position position.

template<class list_type>
void DataStructures::List< list_type >::Insert ( const list_type  input,
const unsigned int  position 
) [inline]

Insert an element at position position in the list

Parameters:
[in] input The new element.
[in] position The position of the new element.

template<class list_type>
void DataStructures::List< list_type >::Insert ( const list_type  input  )  [inline]

Insert at the end of the list.

Parameters:
[in] input The new element.

template<class list_type>
void DataStructures::List< list_type >::Replace ( const list_type  input,
const list_type  filler,
const unsigned int  position 
) [inline]

Replace the value at position by input. If the size of the list is less than position, it increase the capacity of the list and fill slot with filler.

Parameters:
[in] input The element to replace at position position.
[in] filler The element use to fill new allocated capacity.
[in] position The position of input in the list.

template<class list_type>
void DataStructures::List< list_type >::Replace ( const list_type  input  )  [inline]

Replace the last element of the list by input .

Parameters:
[in] input The element used to replace the last element.

template<class list_type>
void DataStructures::List< list_type >::RemoveAtIndex ( const unsigned int  position  )  [inline]

Delete the element at position position.

Parameters:
[in] position The index of the element to delete

template<class list_type>
unsigned int DataStructures::List< list_type >::GetIndexOf ( const list_type  input  )  const [inline]

Returns the index of the specified item or MAX_UNSIGNED_LONG if not found

Parameters:
[in] input The element to check for
Returns:
The index or position of input in the list.
Return values:
MAX_UNSIGNED_LONG The object is not in the list
[Integer] The index of the element in the list

template<class list_type>
void DataStructures::List< list_type >::Compress ( void   )  [inline]

Frees overallocated members, to use the minimum memory necessary

Attention:
This is a slow operation


The documentation for this class was generated from the following file:
Generated on Mon Mar 31 21:15:54 2008 for RakNet by  doxygen 1.5.4