public bool BeginIteration(int initialBlock) { PhysicalBlock = initialBlock; Fat.ReadEntry(initialBlock, out _nextBlock, out _prevBlock, out _currentSegmentSize); return(_prevBlock == -1); }
public bool MoveNext() { if (_nextBlock == -1) { return(false); } VirtualBlock += _currentSegmentSize; PhysicalBlock = _nextBlock; Fat.ReadEntry(_nextBlock, out _nextBlock, out _prevBlock, out _currentSegmentSize); return(true); }
public bool MovePrevious() { if (_prevBlock == -1) { return(false); } PhysicalBlock = _prevBlock; Fat.ReadEntry(_prevBlock, out _nextBlock, out _prevBlock, out _currentSegmentSize); VirtualBlock -= _currentSegmentSize; return(true); }