map template for associative arrays using a red-black tree More...
#include <irrMap.h>
Classes | |
| class | AccessClass |
| class | ConstIterator |
| Const Iterator. More... | |
| class | Iterator |
| Normal Iterator. More... | |
| class | ParentFirstIterator |
| Parent First Iterator. More... | |
| class | ParentLastIterator |
| Parent Last Iterator. More... | |
Public Types | |
| typedef RBTree< KeyType, ValueType > | Node |
Public Member Functions | |
| map () | |
| ~map () | |
| void | clear () |
| Clear the entire tree. | |
| Node * | delink (const KeyType &k) |
| Removes a node from the tree and returns it. | |
| bool | empty () const |
| Node * | find (const KeyType &keyToFind) const |
| ConstIterator | getConstIterator () const |
| Returns a Constiterator. | |
| Iterator | getIterator () const |
| Returns an iterator. | |
| ParentFirstIterator | getParentFirstIterator () const |
| ParentLastIterator | getParentLastIterator () const |
| Node * | getRoot () const |
| bool | insert (const KeyType &keyNew, const ValueType &v) |
| Inserts a new node into the tree. | |
| _IRR_DEPRECATED_ bool | isEmpty () const |
| AccessClass | operator[] (const KeyType &k) |
| operator [] for access to elements | |
| bool | remove (const KeyType &k) |
| Removes a node from the tree and deletes it. | |
| bool | remove (Node *p) |
| Removes a node from the tree and deletes it. | |
| void | set (const KeyType &k, const ValueType &v) |
| Replaces the value if the key already exists, otherwise inserts a new element. | |
| u32 | size () const |
| Returns the number of nodes in the tree. | |
| void | swap (map< KeyType, ValueType > &other) |
| Swap the content of this map container with the content of another map. | |
map template for associative arrays using a red-black tree
| typedef RBTree<KeyType,ValueType> irr::core::map< KeyType, ValueType >::Node |
|
inline |
|
inline |
|
inline |
Clear the entire tree.
Definition at line 872 of file irrMap.h.
References irr::core::map< KeyType, ValueType >::ParentLastIterator::atEnd(), irr::core::map< KeyType, ValueType >::ParentLastIterator::getNode(), and getParentLastIterator().
Referenced by ~map().
|
inline |
|
inline |
Is the tree empty?
Definition at line 889 of file irrMap.h.
References _IRR_IMPLEMENT_MANAGED_MARSHALLING_BUGFIX.
Referenced by isEmpty().
|
inline |
|
inline |
|
inline |
|
inline |
Returns a ParentFirstIterator. Traverses the tree from top to bottom. Typical usage is when storing the tree structure, because when reading it later (and inserting elements) the tree structure will be the same.
Definition at line 971 of file irrMap.h.
References getRoot().
|
inline |
Returns a ParentLastIterator to traverse the tree from bottom to top. Typical usage is when deleting all elements in the tree because you must delete the children before you delete their parent.
Definition at line 982 of file irrMap.h.
References getRoot().
Referenced by clear().
|
inline |
Gets the root element.
Definition at line 926 of file irrMap.h.
Referenced by getConstIterator(), getIterator(), getParentFirstIterator(), and getParentLastIterator().
|
inline |
Inserts a new node into the tree.
| keyNew | the index for this value |
| v | the value to insert |
Definition at line 689 of file irrMap.h.
References _IRR_IMPLEMENT_MANAGED_MARSHALLING_BUGFIX, and insert().
|
inline |
Definition at line 896 of file irrMap.h.
References _IRR_DEPRECATED_, and empty().
|
inline |
|
inline |
|
inline |
Removes a node from the tree and deletes it.
Definition at line 831 of file irrMap.h.
References _IRR_IMPLEMENT_MANAGED_MARSHALLING_BUGFIX.
|
inline |
|
inline |
|
inline |
Swap the content of this map container with the content of another map.
Afterwards this object will contain the content of the other object and the other object will contain the content of this object. Iterators will afterwards be valid for the swapped object.
| other | Swap content with this object |
Definition at line 942 of file irrMap.h.
References map(), and irr::core::swap().