public SubNodesEnumerator( IDataBlockReader dataBlockReader, IBTreeNodeLoader <SubnodeBlock, BID> subnodeBlockLoader, IExtractor <SubnodeBlock, SIEntry[]> entriesFromIntermediateSubnodeBlockExtractor, IExtractor <SubnodeBlock, SLEntry[]> entriesFromLeafSubnodeBlockExtractor) { this.dataBlockReader = dataBlockReader; this.subnodeBlockLoader = subnodeBlockLoader; this.entriesFromIntermediateSubnodeBlockExtractor = entriesFromIntermediateSubnodeBlockExtractor; this.entriesFromLeafSubnodeBlockExtractor = entriesFromLeafSubnodeBlockExtractor; }
public ExternalDataBlockIdsReader( IDataReader dataReader, IHeaderReader headerReader, IExtractor <InternalDataBlock, BID[]> blockIdsFromInternalDataBlockExtractor, IBTreeNodeLoader <InternalDataBlock, LBBTEntry> internalDataBlockLoader, IBTreeEntryFinder <BID, LBBTEntry, BREF> blockBTreeEntryFinder) { this.dataReader = dataReader; this.headerReader = headerReader; this.blockIdsFromInternalDataBlockExtractor = blockIdsFromInternalDataBlockExtractor; this.internalDataBlockLoader = internalDataBlockLoader; this.blockBTreeEntryFinder = blockBTreeEntryFinder; }
public BTreeEntryFinder( IExtractor <TLeafEntry, TEntryKey> entryKeyFromLeafEntryExtractor, IExtractor <TIntermediateEntry, TEntryKey> entryKeyFromIntermediateEntryExtractor, IExtractor <TIntermediateEntry, TNodeReference> nodeReferenceFromIntermediateEntryExtractor, IExtractor <TNode, TIntermediateEntry[]> intermediateEntriesFromNodeExtractor, IExtractor <TNode, TLeafEntry[]> leafEntriesFromNodeExtractor, IExtractor <TNode, int> nodeLevelFromNodeExtractor, IBTreeNodeLoader <TNode, TNodeReference> nodeLoader) { this.entryKeyFromLeafEntryExtractor = entryKeyFromLeafEntryExtractor; this.entryKeyFromIntermediateEntryExtractor = entryKeyFromIntermediateEntryExtractor; this.nodeReferenceFromIntermediateEntryExtractor = nodeReferenceFromIntermediateEntryExtractor; this.intermediateEntriesFromNodeExtractor = intermediateEntriesFromNodeExtractor; this.leafEntriesFromNodeExtractor = leafEntriesFromNodeExtractor; this.nodeLevelFromNodeExtractor = nodeLevelFromNodeExtractor; this.nodeLoader = nodeLoader; }