// Copyright (c) Microsoft Corporation. All rights reserved. // Licensed under the MIT license. using System; namespace FASTER.core { /// /// Scan buffering mode /// public enum ScanBufferingMode { /// /// Buffer only current page being scanned /// SinglePageBuffering, /// /// Buffer current and next page in scan sequence /// DoublePageBuffering, /// /// Do not buffer - with this mode, you can only scan records already in main memory /// NoBuffering } /// /// Scan iterator interface for FASTER log /// /// /// public interface IFasterScanIterator : IDisposable { /// /// Gets reference to current key /// /// ref Key GetKey(); /// /// Gets reference to current value /// /// ref Value GetValue(); /// /// Get next record /// /// /// True if record found, false if end of scan bool GetNext(out RecordInfo recordInfo); /// /// Get next record /// /// /// /// /// True if record found, false if end of scan bool GetNext(out RecordInfo recordInfo, out Key key, out Value value); /// /// Current address /// long CurrentAddress { get; } } }