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) |
|
List & | operator= (const List &original_copy) |
| | Assign one list to another.
|
| list_type & | operator[] (const unsigned int position) const |
| list_type & | Get (const unsigned int position) const |
| void | Push (const list_type input, const char *file=__FILE__, unsigned int line=__LINE__) |
| list_type & | Pop (void) |
| void | Insert (const list_type input, const unsigned int position, const char *file=__FILE__, unsigned int line=__LINE__) |
| void | Insert (const list_type input, const char *file=__FILE__, unsigned int line=__LINE__) |
| 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 | RemoveAtIndexFast (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 |
|
void | Clear (bool doNotDeallocateSmallBlocks=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 >
Copy constructor
- Parameters:
-
| [in] | original_copy | The list to duplicate |
Member Function Documentation
template<class list_type >
Frees overallocated members, to use the minimum memory necessary
- Attention:
- This is a slow operation
template<class list_type >
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 >
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 >::Insert |
( |
const list_type |
input, |
|
|
const char * |
file = __FILE__, |
|
|
unsigned int |
line = __LINE__ | |
|
) |
| | [inline] |
Insert at the end of the list.
- Parameters:
-
| [in] | input | The new element. |
template<class list_type >
| void DataStructures::List< list_type >::Insert |
( |
const list_type |
input, |
|
|
const unsigned int |
position, |
|
|
const char * |
file = __FILE__, |
|
|
unsigned int |
line = __LINE__ | |
|
) |
| | [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 >
| 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 >
Pop an element from the end of the stack
- Precondition:
- Size()>0
- Returns:
- The element at the end.
template<class list_type >
| void DataStructures::List< list_type >::Push |
( |
const list_type |
input, |
|
|
const char * |
file = __FILE__, |
|
|
unsigned int |
line = __LINE__ | |
|
) |
| | [inline] |
Push an element at the end of the stack
- Parameters:
-
| [in] | input | The new element. |
template<class list_type >
Delete the element at position position.
- Parameters:
-
| [in] | position | The index of the element to delete |
template<class list_type >
Delete the element at position position.
- Note:
- - swaps middle with end of list, only use if list order does not matter
- Parameters:
-
| [in] | position | The index of the element to delete |
template<class list_type >
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 >::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 >
- Returns:
- The number of elements in the list
The documentation for this class was generated from the following file: