1#ifndef joedb_Readonly_Journal_declared 
    2#define joedb_Readonly_Journal_declared 
   14 class Writable_Journal;
 
   22   void read_checkpoint(
const std::array<int64_t, 4> &pos, int64_t file_size);
 
   23   void pull_without_locking();
 
   25   #define TYPE_MACRO(cpp_type, return_type, type_id, read_method, W)\ 
   26   void perform_update_##type_id(Writable &writable); 
 
   47   #define TYPE_MACRO(cpp_type, return_type, type_id, read_method, W)\ 
   48   void read_vector_of_##type_id(cpp_type *data, size_t size); 
   74    #define TYPE_MACRO(t, rt, type_id, r, w)\ 
   76    update_last_##type_id,\ 
   77    update_next_##type_id,\ 
   78    update_vector_##type_id, 
 
 
virtual int64_t get_size() const
Get the size of the file, or -1 if it is unknown.
 
bool is_shared() const noexcept
 
virtual bool equal_to(const Abstract_File &destination, int64_t from, int64_t until) const
 
int64_t get_position() const noexcept
 
void set_position(int64_t position)
 
int64_t get_hard_checkpoint() const
 
Readonly_Journal(Abstract_File &file)
 
void play_until(Writable &writable, int64_t end)
 
void one_step(Writable &writable)
 
static constexpr uint32_t format_version
 
std::string safe_read_string()
 
Record_Id record_of_last_operation
 
Readonly_Journal(Journal_Construction_Lock &&lock)
 
int64_t get_position() const
 
void replay_with_checkpoint_comments(Writable &writable)
 
bool equal_to(Readonly_Journal &journal, int64_t from, int64_t until) const
 
const Abstract_File & get_file() const
 
int64_t hard_checkpoint_position
 
void replay_log(Writable &writable)
 
void raw_play_until(Writable &writable, int64_t end)
 
Async_Reader get_async_reader(int64_t start_position, int64_t until_position) const
 
Field_Id field_of_last_update
 
int64_t checkpoint_position
 
void play_until_checkpoint(Writable &writable)
 
void raw_play_until_checkpoint(Writable &writable)
 
int64_t get_checkpoint() const
 
Async_Reader get_async_tail_reader(int64_t start_position) const
 
void skip_directly_to(int64_t position)
 
Table_Id table_of_last_operation
 
Superclass with all joedb journal event listeners as virtual functions.