0.9.8.10
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Modules
Pages
home
doug
src
hypertable
src
cc
Hypertable
RangeServer
CellListScanner.h
Go to the documentation of this file.
1
/* -*- c++ -*-
2
* Copyright (C) 2007-2015 Hypertable, Inc.
3
*
4
* This file is part of Hypertable.
5
*
6
* Hypertable is free software; you can redistribute it and/or
7
* modify it under the terms of the GNU General Public License
8
* as published by the Free Software Foundation; version 3 of the
9
* License, or any later version.
10
*
11
* Hypertable is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
15
*
16
* You should have received a copy of the GNU General Public License
17
* along with this program; if not, write to the Free Software
18
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
19
* 02110-1301, USA.
20
*/
21
22
#ifndef Hypertable_RangeServer_CellListScanner_h
23
#define Hypertable_RangeServer_CellListScanner_h
24
25
#include "
ScanContext.h
"
26
27
#include <
Common/ByteString.h
>
28
#include <
Common/DynamicBuffer.h
>
29
30
#include <memory>
31
32
namespace
Hypertable
{
33
34
class
CellListScanner
{
35
public
:
36
CellListScanner
() { }
37
CellListScanner
(
ScanContext
*scan_ctx) :
m_scan_context_ptr
(scan_ctx) { }
38
virtual
~CellListScanner
() {
return
; }
39
40
virtual
void
forward
() = 0;
41
virtual
bool
get
(
Key
&key,
ByteString
&value) = 0;
42
43
ScanContext
*
scan_context
() {
return
m_scan_context_ptr
; }
44
45
virtual
int64_t
get_disk_read
() = 0;
46
void
add_disk_read
(int64_t amount) {
m_disk_read
+= amount; }
47
48
protected
:
49
uint64_t
m_disk_read
{};
50
ScanContext
*
m_scan_context_ptr
{};
51
};
52
53
typedef
std::shared_ptr<CellListScanner>
CellListScannerPtr
;
54
55
}
56
57
#endif // Hypertable_RangeServer_CellListScanner_h
58
Hypertable::CellListScanner::forward
virtual void forward()=0
Hypertable::CellListScanner::scan_context
ScanContext * scan_context()
Definition:
CellListScanner.h:43
Hypertable::CellListScanner::CellListScanner
CellListScanner()
Definition:
CellListScanner.h:36
Hypertable::CellListScanner::m_disk_read
uint64_t m_disk_read
Definition:
CellListScanner.h:49
Hypertable::ScanContext
Scan context information.
Definition:
ScanContext.h:52
Hypertable::CellListScanner::add_disk_read
void add_disk_read(int64_t amount)
Definition:
CellListScanner.h:46
Hypertable::ByteString
A class managing one or more serializable ByteStrings.
Definition:
ByteString.h:47
Hypertable::CellListScanner::get_disk_read
virtual int64_t get_disk_read()=0
DynamicBuffer.h
A dynamic, resizable memory buffer.
ScanContext.h
Declarations for ScanContext.
Hypertable::CellListScanner::m_scan_context_ptr
ScanContext * m_scan_context_ptr
Definition:
CellListScanner.h:50
Hypertable
Hypertable definitions
Definition:
ApplicationHandler.h:36
Hypertable::Key
Provides access to internal components of opaque key.
Definition:
Key.h:40
Hypertable::CellListScanner::~CellListScanner
virtual ~CellListScanner()
Definition:
CellListScanner.h:38
Hypertable::CellListScanner::CellListScanner
CellListScanner(ScanContext *scan_ctx)
Definition:
CellListScanner.h:37
ByteString.h
A serializable ByteString.
Hypertable::CellListScannerPtr
std::shared_ptr< CellListScanner > CellListScannerPtr
Definition:
CellList.h:35
Hypertable::CellListScanner
Definition:
CellListScanner.h:34
Generated on Tue Dec 22 2015 18:43:15 for Hypertable by
1.8.8