#include <joedb/journal/Readonly_Encoded_File.h>
|
| Readonly_Encoded_File (Decoder &decoder, const db::encoded_file::Database &db, const Abstract_File &blob_reader) |
|
int64_t | get_size () const override |
| Get the size of the file, or -1 if it is unknown.
|
|
| Abstract_File (Open_Mode mode) |
|
bool | is_shared () const noexcept |
|
bool | is_readonly () const noexcept |
|
Open_Mode | get_mode () const noexcept |
|
virtual void | pwrite (const char *data, size_t size, int64_t offset) |
| Write a range of bytes. Extend file size if necessary.
|
|
virtual void | sync () |
| Write data durably (including file-size change)
|
|
virtual void | datasync () |
| Write data durably (no file-size change)
|
|
virtual void | shared_lock (int64_t start, int64_t size) |
| Lock a range of bytes for reading (prevents writes, not reads)
|
|
virtual void | exclusive_lock (int64_t start, int64_t size) |
| Lock a range of bytes for writing (prevents both writes and reads)
|
|
virtual void | unlock (int64_t start, int64_t size) noexcept |
| Remove a lock. The range should match the range of a corresponding lock.
|
|
void | exclusive_lock_tail () |
|
void | unlock_tail () noexcept |
|
bool | tail_is_locked () const noexcept |
|
void | shared_lock_head () |
|
void | exclusive_lock_head () |
|
void | unlock_head () noexcept |
|
std::string | read_blob (Blob blob) const |
|
virtual void | copy_to (Abstract_File &destination, int64_t start, int64_t size) const |
|
virtual bool | equal_to (const Abstract_File &destination, int64_t from, int64_t until) const |
|
void | copy_to (Abstract_File &destination) const |
|
virtual | ~Abstract_File ()=default |
|
Definition at line 11 of file Readonly_Encoded_File.h.
◆ Readonly_Encoded_File() [1/2]
◆ Readonly_Encoded_File() [2/2]
◆ get_size()
int64_t joedb::Readonly_Encoded_File::get_size |
( |
| ) |
const |
|
overridevirtual |
◆ pread()
size_t joedb::Readonly_Encoded_File::pread |
( |
char * |
data, |
|
|
size_t |
size, |
|
|
int64_t |
offset |
|
) |
| const |
|
overrideprotectedvirtual |
The returned value may be less than size, even if the end of the file is not reached. 0 is returned if the end of the file is reached.
Reimplemented from joedb::Abstract_File.
Definition at line 6 of file Readonly_Encoded_File.cpp.
◆ decoder
Decoder& joedb::Readonly_Encoded_File::decoder |
|
protected |
The documentation for this class was generated from the following files: