23#ifndef CORSIX_TH_RLE_H_
24#define CORSIX_TH_RLE_H_
55 void write(uint32_t iValue);
64 const uint32_t*
get_output(
size_t* pCount)
const;
73 void flush(
bool bAll);
75 bool are_ranges_equal(
size_t iObjIdx1,
size_t iObjIdx2,
size_t iOffset,
76 size_t iObjSize)
const;
77 bool move_object_to_output(
size_t iObjSize,
size_t iObjCount);
80 std::vector<uint32_t> buffer;
82 std::vector<uint32_t> output;
88 size_t buffer_offset{};
95 size_t object_copies{};
108 std::vector<uint32_t> buffer;
113 size_t reads_remaining{};
115 size_t object_copies{};
116 size_t object_index{};
117 size_t object_size{};
Definition run_length_encoder.h:100
uint32_t read()
Definition run_length_encoder.cpp:157
bool is_finished() const
Definition run_length_encoder.cpp:178
Encoder for reducing the amount of space to store a sequence of integers.
Definition run_length_encoder.h:44
const uint32_t * get_output(size_t *pCount) const
Definition run_length_encoder.cpp:138
void write(uint32_t iValue)
Supply the next integer in the input sequence to the encoder.
Definition run_length_encoder.cpp:36
void pump_output(lua_persist_writer *pWriter) const
Definition run_length_encoder.cpp:143
void finish()
Inform the encoder that the input sequence has finished.
Definition run_length_encoder.cpp:41
Interface used for depersisting Lua objects.
Definition persist_lua.h:107
Interface used for persisting Lua objects.
Definition persist_lua.h:44