|
| plDeque (plAllocator *pAllocator) |
|
| plDeque (const plDeque< T, AllocatorWrapper, Construct > &other) |
|
| plDeque (const plDequeBase< T, Construct > &other) |
|
| plDeque (plDeque< T, AllocatorWrapper, Construct > &&other) |
|
| plDeque (plDequeBase< T, Construct > &&other) |
|
void | operator= (const plDeque< T, AllocatorWrapper, Construct > &rhs) |
|
void | operator= (const plDequeBase< T, Construct > &rhs) |
|
void | operator= (plDeque< T, AllocatorWrapper, Construct > &&rhs) |
|
void | operator= (plDequeBase< T, Construct > &&rhs) |
|
void | Clear () |
| Destructs all elements and sets the count to zero. Does not deallocate any data.
|
|
void | Reserve (plUInt32 uiCount) |
| Rearranges the internal data structures such that the amount of reserved elements can be appended with as few allocations, as possible.
|
|
void | Compact () |
| This function deallocates as much memory as possible to shrink the deque to the bare minimum size that it needs to work.
|
|
void | Swap (plDequeBase< T, Construct > &other) |
| swaps the contents of this deque with another one
|
|
void | SetCount (plUInt32 uiCount) |
| Sets the number of active elements in the deque. All new elements are default constructed. If the deque is shrunk, elements at the end of the deque are destructed.
|
|
void | SetCountUninitialized (plUInt32 uiCount) |
| \Same as SetCount(), but new elements do not get default constructed.
|
|
void | EnsureCount (plUInt32 uiCount) |
| Ensures the container has at least uiCount elements. Ie. calls SetCount() if the container has fewer elements, does nothing otherwise.
|
|
T & | operator[] (plUInt32 uiIndex) |
| Accesses the n-th element in the deque.
|
|
const T & | operator[] (plUInt32 uiIndex) const |
| Accesses the n-th element in the deque.
|
|
T & | ExpandAndGetRef () |
| Grows the deque by one element and returns a reference to the newly created element.
|
|
void | PushBack () |
| Adds one default constructed element to the back of the deque.
|
|
void | PushBack (const T &element) |
| Adds one element to the back of the deque.
|
|
void | PushBack (T &&value) |
| Adds one element at the end of the deque.
|
|
void | PopBack (plUInt32 uiElements=1) |
| Removes the last element from the deque.
|
|
void | PushFront (const T &element) |
| Adds one element to the front of the deque.
|
|
void | PushFront (T &&element) |
| Adds one element to the front of the deque.
|
|
void | PushFront () |
| Adds one default constructed element to the front of the deque.
|
|
void | PopFront (plUInt32 uiElements=1) |
| Removes the first element from the deque.
|
|
bool | IsEmpty () const |
| Checks whether no elements are active in the deque.
|
|
plUInt32 | GetCount () const |
| Returns the number of active elements in the deque.
|
|
const T & | PeekFront () const |
| Returns the first element.
|
|
T & | PeekFront () |
| Returns the first element.
|
|
const T & | PeekBack () const |
| Returns the last element.
|
|
T & | PeekBack () |
| Returns the last element.
|
|
bool | Contains (const T &value) const |
| Checks whether there is any element in the deque with the given value.
|
|
plUInt32 | IndexOf (const T &value, plUInt32 uiStartIndex=0) const |
| Returns the first index at which an element with the given value could be found or plInvalidIndex if nothing was found.
|
|
plUInt32 | LastIndexOf (const T &value, plUInt32 uiStartIndex=plInvalidIndex) const |
| Returns the last index at which an element with the given value could be found or plInvalidIndex if nothing was found.
|
|
void | RemoveAtAndSwap (plUInt32 uiIndex) |
| Removes the element at the given index and fills the gap with the last element in the deque.
|
|
void | RemoveAtAndCopy (plUInt32 uiIndex) |
| Removes the element at index and fills the gap by shifting all following elements.
|
|
bool | RemoveAndCopy (const T &value) |
| Removes the first occurrence of value and fills the gap by shifting all following elements.
|
|
bool | RemoveAndSwap (const T &value) |
| Removes the first occurrence of value and fills the gap with the last element in the deque.
|
|
void | InsertAt (plUInt32 uiIndex, const T &value) |
| Inserts value at index by shifting all following elements. Valid insert positions are [0; GetCount].
|
|
void | Sort (const Comparer &comparer) |
| Sort with explicit comparer.
|
|
void | Sort () |
| Sort with default comparer.
|
|
plAllocator * | GetAllocator () const |
| Returns the allocator that is used by this instance.
|
|
plUInt32 | GetContiguousRange (plUInt32 uiStartIndex) const |
| Returns the number of elements after uiStartIndex that are stored in contiguous memory.
|
|
bool | operator== (const plDequeBase< T, Construct > &rhs) const |
| Comparison operator.
|
|
| PL_ADD_DEFAULT_OPERATOR_NOTEQUAL (const plDequeBase< T, Construct > &) |
|
plUInt64 | GetHeapMemoryUsage () const |
| Returns the amount of bytes that are currently allocated on the heap.
|
|
template<typename T, typename AllocatorWrapper = plDefaultAllocatorWrapper, bool Construct = true>
class plDeque< T, AllocatorWrapper, Construct >
- See also
- plDequeBase