doom3-gpl
Doom 3 GPL source release
|
#include <BTree.h>
Public Member Functions | |
idBTree (void) | |
~idBTree (void) | |
void | Init (void) |
void | Shutdown (void) |
idBTreeNode< objType, keyType > * | Add (objType *object, keyType key) |
void | Remove (idBTreeNode< objType, keyType > *node) |
objType * | Find (keyType key) const |
objType * | FindSmallestLargerEqual (keyType key) const |
objType * | FindLargestSmallerEqual (keyType key) const |
idBTreeNode< objType, keyType > * | GetRoot (void) const |
int | GetNodeCount (void) const |
idBTreeNode< objType, keyType > * | GetNext (idBTreeNode< objType, keyType > *node) const |
idBTreeNode< objType, keyType > * | GetNextLeaf (idBTreeNode< objType, keyType > *node) const |
Private Member Functions | |
idBTreeNode< objType, keyType > * | AllocNode (void) |
void | FreeNode (idBTreeNode< objType, keyType > *node) |
void | SplitNode (idBTreeNode< objType, keyType > *node) |
idBTreeNode< objType, keyType > * | MergeNodes (idBTreeNode< objType, keyType > *node1, idBTreeNode< objType, keyType > *node2) |
void | CheckTree_r (idBTreeNode< objType, keyType > *node, int &numNodes) const |
void | CheckTree (void) const |
Private Attributes | |
idBTreeNode< objType, keyType > * | root |
idBlockAlloc< idBTreeNode < objType, keyType >, 128 > | nodeAllocator |
ID_INLINE idBTreeNode< objType, keyType > * idBTree< objType, keyType, maxChildrenPerNode >::Add | ( | objType * | object, |
keyType | key | ||
) |
|
private |
|
private |
ID_INLINE objType * idBTree< objType, keyType, maxChildrenPerNode >::Find | ( | keyType | key | ) | const |
ID_INLINE objType * idBTree< objType, keyType, maxChildrenPerNode >::FindLargestSmallerEqual | ( | keyType | key | ) | const |
ID_INLINE objType * idBTree< objType, keyType, maxChildrenPerNode >::FindSmallestLargerEqual | ( | keyType | key | ) | const |
|
private |
ID_INLINE idBTreeNode< objType, keyType > * idBTree< objType, keyType, maxChildrenPerNode >::GetNext | ( | idBTreeNode< objType, keyType > * | node | ) | const |
ID_INLINE idBTreeNode< objType, keyType > * idBTree< objType, keyType, maxChildrenPerNode >::GetNextLeaf | ( | idBTreeNode< objType, keyType > * | node | ) | const |
ID_INLINE idBTreeNode< objType, keyType > * idBTree< objType, keyType, maxChildrenPerNode >::GetRoot | ( | void | ) | const |
|
private |
ID_INLINE void idBTree< objType, keyType, maxChildrenPerNode >::Remove | ( | idBTreeNode< objType, keyType > * | node | ) |
|
private |
|
private |
|
private |