26 std::vector<uint8_t>&
m_v;
33 size_t write(
const void* d,
size_t n)
override
35 const size_t idx = m_v.size();
40 size_t read(
void* d,
size_t n)
override
42 const int avail =
static_cast<int>(m_v.size()) - m_pos_read;
43 if (avail <
static_cast<int>(n))
44 throw std::runtime_error(
45 "CArchiveStreamBase: EOF reading from std::vector!");
55 const std::vector<uint8_t>&
m_v;
62 size_t write(
const void* d,
size_t n)
override
64 throw std::runtime_error(
65 "CArchiveStreamBase: Attempt to write to read-only vector.");
67 size_t read(
void* d,
size_t n)
override
69 const int avail =
static_cast<int>(m_v.size()) - m_pos_read;
70 if (avail <
static_cast<int>(n))
71 throw std::runtime_error(
72 "CArchiveStreamBase: EOF reading from std::vector!");