public TreeNode <K, V> CreateNewRoot(K key, V value, uint leftNodeId, uint rightNodeId) { // Create new node as normal var node = Create(new Tuple <K, V>[] { new Tuple <K, V> (key, value) }, new uint[] { leftNodeId, rightNodeId }); // Make it the root node this.rootNode = node; recordStorage.Update(1u, LittleEndianByteOrder.GetBytes(node.Id)); // Then return it return(this.rootNode); }
/// <summary> /// Makes the specified node a "root node". /// </summary> public void MakeRoot(TreeNode <K, V> node) { rootNode = node; recordStorage.Update(1U, LittleEndian.GetBytes(node.Id)); }