public static void RemoveExternalProperty(HeapOnNode heap, SubnodeBTree subnodeBTree, HeapOrNodeID heapOrNodeID) { if (!heapOrNodeID.IsEmpty) { if (heapOrNodeID.IsHeapID) { heap.RemoveItemFromHeap(heapOrNodeID.HeapID); } else { DataTree dataTree = subnodeBTree.GetSubnode(heapOrNodeID.NodeID).DataTree; dataTree.Delete(); subnodeBTree.DeleteSubnodeEntry(heapOrNodeID.NodeID); } } }
/// <summary> /// The entry will be removed from the parent subnode-BTree /// </summary> public void Delete(SubnodeBTree parentSubnodeBTree) { Delete(); parentSubnodeBTree.DeleteSubnodeEntry(m_subnodeID); }