|
Open CASCADE Technology 6.5.2
|
#include <NCollection_UBTree.hxx>
Public Member Functions | |
| TreeNode (const TheObjType &theObj, const TheBndType &theBnd) | |
| Standard_Boolean | IsLeaf () const |
| Standard_Boolean | IsRoot () const |
| const TheBndType & | Bnd () const |
| TheBndType & | ChangeBnd () |
| const TheObjType & | Object () const |
| const TreeNode & | Child (const Standard_Integer i) const |
| TreeNode & | ChangeChild (const Standard_Integer i) |
| const TreeNode & | Parent () const |
| TreeNode & | ChangeParent () |
| void | Gemmate (const TheBndType &theNewBnd, const TheObjType &theObj, const TheBndType &theBnd, const Handle< NCollection_BaseAllocator > &theAlloc) |
| void | Kill (const Standard_Integer i, const Handle< NCollection_BaseAllocator > &theAlloc) |
| ~TreeNode () | |
| void * | operator new (size_t theSize, const Handle< NCollection_BaseAllocator > &theAllocator) |
| void * | operator new (size_t, void *theMem) |
Static Public Member Functions | |
| static void | delNode (TreeNode *theNode, Handle< NCollection_BaseAllocator > &theAlloc) |
Class describing the node of the tree. Initially the tree consists of one leaf. A node can grow to a branch holding two childs:
| NCollection_UBTree< TheObjType, TheBndType >::TreeNode::TreeNode | ( | const TheObjType & | theObj, |
| const TheBndType & | theBnd | ||
| ) | [inline] |
| NCollection_UBTree< TheObjType, TheBndType >::TreeNode::~TreeNode | ( | ) | [inline] |
| const TheBndType& NCollection_UBTree< TheObjType, TheBndType >::TreeNode::Bnd | ( | ) | const [inline] |
| TheBndType& NCollection_UBTree< TheObjType, TheBndType >::TreeNode::ChangeBnd | ( | ) | [inline] |
| TreeNode& NCollection_UBTree< TheObjType, TheBndType >::TreeNode::ChangeChild | ( | const Standard_Integer | i | ) | [inline] |
| TreeNode& NCollection_UBTree< TheObjType, TheBndType >::TreeNode::ChangeParent | ( | ) | [inline] |
| const TreeNode& NCollection_UBTree< TheObjType, TheBndType >::TreeNode::Child | ( | const Standard_Integer | i | ) | const [inline] |
| static void NCollection_UBTree< TheObjType, TheBndType >::TreeNode::delNode | ( | TreeNode * | theNode, |
| Handle< NCollection_BaseAllocator > & | theAlloc | ||
| ) | [inline, static] |
Deleter of tree node. The whole hierarchy of its children also deleted. This method should be used instead of operator delete.
| void NCollection_UBTree< TheObjType, TheBndType >::TreeNode::Gemmate | ( | const TheBndType & | theNewBnd, |
| const TheObjType & | theObj, | ||
| const TheBndType & | theBnd, | ||
| const Handle< NCollection_BaseAllocator > & | theAlloc | ||
| ) | [inline] |
Forces *this node being gemmated such a way that it becomes a branch holding the previous content of *this node at the first child and theObj at the second child.
| TheNewBnd | new bounding box comprizing both child nodes. |
| theObj | added object. |
| theBnd | bounding box of theObj. allocator providing memory to the new child nodes, provided by the calling Tree instance. |
| Standard_Boolean NCollection_UBTree< TheObjType, TheBndType >::TreeNode::IsLeaf | ( | ) | const [inline] |
| Standard_Boolean NCollection_UBTree< TheObjType, TheBndType >::TreeNode::IsRoot | ( | ) | const [inline] |
| void NCollection_UBTree< TheObjType, TheBndType >::TreeNode::Kill | ( | const Standard_Integer | i, |
| const Handle< NCollection_BaseAllocator > & | theAlloc | ||
| ) | [inline] |
Kills the i-th child, and *this accepts the content of another child
| const TheObjType& NCollection_UBTree< TheObjType, TheBndType >::TreeNode::Object | ( | ) | const [inline] |
| void* NCollection_UBTree< TheObjType, TheBndType >::TreeNode::operator new | ( | size_t | theSize, |
| const Handle< NCollection_BaseAllocator > & | theAllocator | ||
| ) | [inline] |
Allocator of a tree node.
| void* NCollection_UBTree< TheObjType, TheBndType >::TreeNode::operator new | ( | size_t | , |
| void * | theMem | ||
| ) | [inline] |
Allocator of a tree node.
| const TreeNode& NCollection_UBTree< TheObjType, TheBndType >::TreeNode::Parent | ( | ) | const [inline] |
1.7.4