C# Class BTDB.KVDBLayer.BTree.BTreeRoot

Inheritance: IBTreeRootNode
Mostra file Open project: Bobris/BTDB

Public Methods

Method Description
BTreeRoot ( long transactionId ) : System
BuildTree ( long keyCount, Func memberGenerator ) : void
CalcKeyCount ( ) : long
CloneRoot ( ) : IBTreeRootNode
CreateOrUpdate ( BTDB.KVDBLayer.BTree.CreateOrUpdateCtx ctx ) : void
EraseRange ( long transactionId, long firstKeyIndex, long lastKeyIndex ) : IBTreeNode
EraseRange ( long firstKeyIndex, long lastKeyIndex ) : void
FillStackByIndex ( List stack, long keyIndex ) : void
FillStackByLeftMost ( List stack, int idx ) : void
FillStackByRightMost ( List stack, int idx ) : void
FindKey ( List stack, long &keyIndex, byte prefix, ByteBuffer key ) : FindResult
FindLastWithPrefix ( byte prefix ) : long
FindNextKey ( List stack ) : bool
FindPreviousKey ( List stack ) : bool
GetLastChildrenIdx ( ) : int
GetLeftMostKey ( ) : byte[]
Iterate ( BTreeIterateAction action ) : void
NewTransactionRoot ( ) : IBTreeRootNode
NextIdxValid ( int idx ) : bool
RemappingIterate ( long transactionId, BTreeRemappingIterateAction action ) : IBTreeNode
RemappingIterate ( BTreeRemappingIterateAction action ) : void

Private Methods

Method Description
BuildBranchNode ( long count, Func generator ) : IBTreeNode
BuildTreeNode ( long keyCount, Func memberGenerator ) : IBTreeNode
GetKeyFromStack ( List stack ) : ByteBuffer
KeyStartsWithPrefix ( byte prefix, ByteBuffer key ) : bool

Method Details

BTreeRoot() public method

public BTreeRoot ( long transactionId ) : System
transactionId long
return System

BuildTree() public method

public BuildTree ( long keyCount, Func memberGenerator ) : void
keyCount long
memberGenerator Func
return void

CalcKeyCount() public method

public CalcKeyCount ( ) : long
return long

CloneRoot() public method

public CloneRoot ( ) : IBTreeRootNode
return IBTreeRootNode

CreateOrUpdate() public method

public CreateOrUpdate ( BTDB.KVDBLayer.BTree.CreateOrUpdateCtx ctx ) : void
ctx BTDB.KVDBLayer.BTree.CreateOrUpdateCtx
return void

EraseRange() public method

public EraseRange ( long transactionId, long firstKeyIndex, long lastKeyIndex ) : IBTreeNode
transactionId long
firstKeyIndex long
lastKeyIndex long
return IBTreeNode

EraseRange() public method

public EraseRange ( long firstKeyIndex, long lastKeyIndex ) : void
firstKeyIndex long
lastKeyIndex long
return void

FillStackByIndex() public method

public FillStackByIndex ( List stack, long keyIndex ) : void
stack List
keyIndex long
return void

FillStackByLeftMost() public method

public FillStackByLeftMost ( List stack, int idx ) : void
stack List
idx int
return void

FillStackByRightMost() public method

public FillStackByRightMost ( List stack, int idx ) : void
stack List
idx int
return void

FindKey() public method

public FindKey ( List stack, long &keyIndex, byte prefix, ByteBuffer key ) : FindResult
stack List
keyIndex long
prefix byte
key ByteBuffer
return FindResult

FindLastWithPrefix() public method

public FindLastWithPrefix ( byte prefix ) : long
prefix byte
return long

FindNextKey() public method

public FindNextKey ( List stack ) : bool
stack List
return bool

FindPreviousKey() public method

public FindPreviousKey ( List stack ) : bool
stack List
return bool

GetLastChildrenIdx() public method

public GetLastChildrenIdx ( ) : int
return int

GetLeftMostKey() public method

public GetLeftMostKey ( ) : byte[]
return byte[]

Iterate() public method

public Iterate ( BTreeIterateAction action ) : void
action BTreeIterateAction
return void

NewTransactionRoot() public method

public NewTransactionRoot ( ) : IBTreeRootNode
return IBTreeRootNode

NextIdxValid() public method

public NextIdxValid ( int idx ) : bool
idx int
return bool

RemappingIterate() public method

public RemappingIterate ( long transactionId, BTreeRemappingIterateAction action ) : IBTreeNode
transactionId long
action BTreeRemappingIterateAction
return IBTreeNode

RemappingIterate() public method

public RemappingIterate ( BTreeRemappingIterateAction action ) : void
action BTreeRemappingIterateAction
return void