#include <collection.h>
TrackedCollection is a class which is a "Collection" of T=C* or T = Ptr< C > (not sorted, not unique).
We keep a track of index in Collection to allow direct removal of internal element if T = C* or T = Ptr< C >, object C must have this two functions implemented : KyUInt32 GetIndexInCollection() const; void SetIndexInCollection(KyUInt32 indexInCollection)
Public Member Functions | |
| T & | PushBack (const T &value) |
| T & | PushBack () |
| T & | PushBackUnique (const T &value) |
| void | Clear () |
| void | ClearAndReleaseMemory () |
| void | Reserve (KyUInt32 size) |
| KyUInt32 | GetCount () const |
| KyUInt32 | GetCapacity () const |
| bool | IsEmpty () const |
| const T & | operator[] (KyUInt32 index) const |
| T & | operator[] (KyUInt32 index) |
| const T * | GetDataPtr () const |
| T * | GetDataPtr () |
| KyUInt32 | RemoveAt (KyUInt32 index) |
| KyUInt32 | FindFirstOccurrence (const T &value, KyUInt32 startIndex=0) |
| KyUInt32 | RemoveFirstOccurrence (const T &value, KyUInt32 startIndex=0) |
| bool | DoesContain (const T &value) const |
| KyUInt32 | Remove (const T &value) |
For internal use only | |
| CollectionImpl< T, CollectionIndexTrackerPtr< T >, SID > | m_collectionImpl |
|
inline |
Removes the element at specified index in the container.