#include <baselist.h>

Template for list head pointing to elements of T.
| T | Content of the list node. |
| NODE | List node containing T. |
Public Member Functions | |
| BaseListHead () | |
| ~BaseListHead () | |
| BaseListHead (BaseListHead &&src) | |
| MAXON_OPERATOR_MOVE_ASSIGNMENT (BaseListHead) | |
| Int | GetCount () const |
| Bool | IsEmpty () const |
| Bool | IsPopulated () const |
| T * | GetElement (Int idx) const |
| NODE * | GetNode (Int idx) const |
| NODE * | GetInsertEraseNode (Int idx) const |
| Int | GetIndex (const T *x) const |
| NODE * | Begin () const |
| NODE * | End () const |
Public Member Functions inherited from BaseListLink< NODE > | |
| BaseListLink (NODE *prev=nullptr, NODE *next=nullptr, Bool is_head=false) | |
| BaseListLink (BaseListLink &&src) | |
| void | MoveFrom (NODE *thisNode, BaseListLink &src) |
| MAXON_OPERATOR_MOVE_ASSIGNMENT (BaseListLink) | |
| NODE * | _GetNext () const |
| NODE * | _GetPrev () const |
| Bool | IsListHead () const |
| Bool | IsInList () const |
| NODE * | _GetNextChecked () const |
| NODE * | _GetPrevChecked () const |
| void | SetNext (NODE *val) |
| void | SetPrev (NODE *val) |
Additional Inherited Members | |
Static Public Member Functions inherited from BaseListLink< NODE > | |
| static void | Remove (NODE *remove) |
| static void | InsertBefore (NODE *insert, NODE *next) |
| static void | InsertAfter (NODE *insert, NODE *prev) |
Public Attributes inherited from BaseListLinkPOD | |
| void * | _next |
| UInt | _prevFlag |
Protected Member Functions inherited from BaseListLink< NODE > | |
| void | SetListHead (Bool val) |
Static Protected Member Functions inherited from BaseListLink< NODE > | |
| static UInt | ComputePrevFlag (const NODE *prev, Bool head) |
Static Protected Attributes inherited from BaseListLink< NODE > | |
| static const UInt | HEAD_FLAG |
| static const UInt | INFO_FLAG |
| static const UInt | INFO_MASK |
| static const UInt | ADDRESS_MASK |
| BaseListHead | ( | ) |
| ~BaseListHead | ( | ) |
| BaseListHead | ( | BaseListHead< T, NODE > && | src | ) |
move constructor
| MAXON_OPERATOR_MOVE_ASSIGNMENT | ( | BaseListHead< T, NODE > | ) |
move assignment operator
| Int GetCount | ( | ) | const |
Gets the number of elements.
| Bool IsEmpty | ( | ) | const |
Checks if the list is empty. This is the same as GetCount() == 0
| Bool IsPopulated | ( | ) | const |
Checks if the list contains anything. This is the same as GetCount() != 0
| T* GetElement | ( | Int | idx | ) | const |
Gets the element by index.
| NODE* GetNode | ( | Int | idx | ) | const |
| NODE* GetInsertEraseNode | ( | Int | idx | ) | const |
| Int GetIndex | ( | const T * | x | ) | const |
Gets the index of the element. The element must be part of the array, otherwise (e.g. if x is a copy of an array element) InvalidArrayIndex will be returned.
| NODE* Begin | ( | ) | const |
Gets the pointer to the first node.
| NODE* End | ( | ) | const |
Gets the pointer to the virtual end node (the node after the last node). This is the address of a virtual (non-existing) node that contains this list head.