Joedb
10.0.1
The Journal-Only Embedded Database
Loading...
Searching...
No Matches
src
joedb
journal
Readonly_Encoded_File.h
Go to the documentation of this file.
1
#ifndef joedb_Readonly_Encoded_File_declared
2
#define joedb_Readonly_Encoded_File_declared
3
4
#include "
joedb/db/encoded_file/Database.h
"
5
#include "
joedb/journal/Buffered_File.h
"
6
#include "
joedb/journal/Decoder.h
"
7
8
namespace
joedb
9
{
10
/// @ingroup journal
11
class
Readonly_Encoded_File
:
public
Buffered_File
12
{
13
private
:
14
const
db::encoded_file::Database
&db;
15
const
Buffered_File
&blob_reader;
16
17
mutable
std::vector<char> read_buffer;
18
mutable
db::encoded_file::id_of_buffer
decoded_buffer;
19
20
protected
:
21
Decoder
&
decoder
;
22
23
size_t
pread
(
char
* buffer,
size_t
size, int64_t offset)
const override
;
24
25
Readonly_Encoded_File
26
(
27
Decoder
&
decoder
,
28
const
db::encoded_file::Database
&db,
29
const
Buffered_File
&blob_reader,
30
Open_Mode
mode
31
);
32
33
public
:
34
Readonly_Encoded_File
35
(
36
Decoder
&
decoder
,
37
const
db::encoded_file::Database
&db,
38
const
Buffered_File
&blob_reader
39
);
40
41
int64_t
get_size
()
const override
;
42
};
43
}
44
45
#endif
Buffered_File.h
Decoder.h
joedb::Buffered_File
Definition
Buffered_File.h:18
joedb::Decoder
Definition
Decoder.h:10
joedb::Readonly_Encoded_File
Definition
Readonly_Encoded_File.h:12
joedb::Readonly_Encoded_File::decoder
Decoder & decoder
Definition
Readonly_Encoded_File.h:21
joedb::Readonly_Encoded_File::pread
size_t pread(char *buffer, size_t size, int64_t offset) const override
Read a range of bytes.
Definition
Readonly_Encoded_File.cpp:8
joedb::Readonly_Encoded_File::get_size
int64_t get_size() const override
Get the size of the file, or -1 if it is unknown.
Definition
Readonly_Encoded_File.cpp:90
joedb::db::encoded_file::Database
Store all the tables of the database.
Definition
Database.h:68
joedb::db::encoded_file::id_of_buffer
Strongly-typed wrapper around an integer representing a row of the buffer table.
Definition
ids.h:25
joedb::Open_Mode
Open_Mode
Definition
Open_Mode.h:8
joedb
Definition
Blob.h:7
Database.h
Generated by
1.9.8