29 #ifndef Hypertable_RangeServer_CellListScannerBuffer_h
30 #define Hypertable_RangeServer_CellListScannerBuffer_h
76 typedef std::pair<SerializedKey, ByteString>
KeyValueT;
86 bool operator()(
const KeyValueT &kv1,
const KeyValueT &kv2)
const {
87 return kv1.first < kv2.first;
110 #endif // Hypertable_RangeServer_CellListScannerBuffer_h
Cell list scanner over a buffer of cells.
ScanContextPtr m_scan_context
Scan context.
PageArena memory allocator.
KeyValueVectorT m_cells
Buffer (array) of cells to be returned.
STL Strict Weak Ordering for KeyValueT.
std::pair< SerializedKey, ByteString > KeyValueT
Key/value type.
Stl compatible memory allocator based on a PageArena.
A class managing one or more serializable ByteStrings.
void initialize_for_scan()
Sorts cells in preparation for scan.
virtual int64_t get_disk_read()
ByteArena m_arena
Memory arena to hold serialized keys and values.
Stl compatible memory allocator based on a PageArena.
void add(const SerializedKey key, const ByteString value)
Adds a key/value pair to the buffer.
bool operator()(const KeyValueT &kv1, const KeyValueT &kv2) const
bool m_initialized_for_scan
Flag indicating if initialize_for_scan has been called.
CellListScannerBuffer(ScanContextPtr &scan_ctx)
Constructor.
Provides access to internal components of opaque key.
virtual ~CellListScannerBuffer()
Destructor.
std::vector< KeyValueT, KeyValueAllocT > KeyValueVectorT
Vector of KeyValueT with allocator.
StlAllocator< KeyValueT > KeyValueAllocT
STL allocator for KeyValueT structure.
KeyValueVectorT::iterator m_iter
Iterator pointing to next cell in m_cells to be returned.
std::shared_ptr< ScanContext > ScanContextPtr