26 static std::vector<uint8_t>
get_entry(
const uint8_t*& data,
size_t& size)
29 serialized::peek<ccf::kv::SerialisedEntryHeader>(data, size);
30 size_t entry_size = ccf::kv::serialised_entry_header_size + header.size;
31 std::vector<uint8_t> entry(data, data + entry_size);
41 to_host(writer_factory_.create_writer_to_outside())
53 const std::vector<uint8_t>& entry,
54 bool globally_committable,
58 put_entry(entry.data(), entry.size(), globally_committable, term, index);
75 bool globally_committable,
81 ::consensus::ledger_append, to_host, globally_committable, byte_range);
92 static void skip_entry(
const uint8_t*& data,
size_t& size)
95 serialized::read<ccf::kv::SerialisedEntryHeader>(data, size);
107 ::consensus::ledger_truncate, to_host, idx,
false );
129 ::consensus::ledger_init, to_host, idx, recovery_start_idx);
Definition ledger_enclave.h:14
LedgerEnclave(ringbuffer::AbstractWriterFactory &writer_factory_)
Definition ledger_enclave.h:40
static constexpr size_t FRAME_SIZE
Definition ledger_enclave.h:16
void put_entry(const std::vector< uint8_t > &entry, bool globally_committable, ccf::kv::Term term, ccf::kv::Version index)
Definition ledger_enclave.h:52
void truncate(Index idx)
Definition ledger_enclave.h:104
static void skip_entry(const uint8_t *&data, size_t &size)
Definition ledger_enclave.h:92
static std::vector< uint8_t > get_entry(const uint8_t *&data, size_t &size)
Definition ledger_enclave.h:26
void put_entry(const uint8_t *data, size_t size, bool globally_committable, ccf::kv::Term term, ccf::kv::Version index)
Definition ledger_enclave.h:72
void init(Index idx=0, Index recovery_start_idx=0)
Definition ledger_enclave.h:126
void commit(Index idx)
Definition ledger_enclave.h:115
Definition ring_buffer_types.h:153
uint64_t Term
Definition kv_types.h:48
uint64_t Version
Definition version.h:8
Definition consensus_types.h:23
uint64_t Index
Definition ledger_enclave_types.h:11
std::shared_ptr< AbstractWriter > WriterPtr
Definition ring_buffer_types.h:150
void skip(const uint8_t *&data, size_t &size, size_t skip)
Definition serialized.h:166
#define RINGBUFFER_WRITE_MESSAGE(MSG,...)
Definition ring_buffer_types.h:255
Definition serializer.h:27