tuningfork::VectorStream

#include <protobuf_nano_util.h>

Quan sát vectơ được cung cấp trong vec.

Tóm tắt

Chưa có người nhận quyền sở hữu.

Thông tin chi tiết
Thông số
vec
Ví dụ về cách sử dụng:
std::vector v;
VectorStream str {&v, 0};
pb_ostream_t stream = {VectorStream::Write, &str, SIZE_MAX, 0};
pb_encode(&stream, ...);

Thuộc tính công khai

it
size_t
Vị trí hiện tại trong vectơ khi giải mã hoặc mã hoá.
vec
std::vector< uint8_t > *
Vectơ của byte phải hợp lệ trong khi Read hoặc Write được gọi.

Hàm tĩnh công khai

Read(pb_istream_t *stream, uint8_t *buf, size_t count)
bool
Đọc các byte count từ luồng đến vùng đệm nhất định.
Write(pb_ostream_t *stream, const uint8_t *buf, size_t count)
bool
Ghi các byte count từ vùng đệm nhất định vào luồng.

Thuộc tính công khai

it

size_t tuningfork::VectorStream::it

Vị trí hiện tại trong vectơ khi giải mã hoặc mã hoá.

vec

std::vector< uint8_t > * tuningfork::VectorStream::vec

Vectơ của byte phải hợp lệ trong khi Read hoặc Write được gọi.

Write sẽ đổi kích thước vectơ nếu cần.

Hàm tĩnh công khai

Đọc

bool tuningfork::VectorStream::Read(
  pb_istream_t *stream,
  uint8_t *buf,
  size_t count
)

Đọc các byte count từ luồng đến vùng đệm nhất định.

Thông tin chi tiết
Thông số
stream
Luồng cần đọc.
buf
Vùng đệm cần ghi vào.
count
Số byte cần đọc.
Trả về
true nếu thành công, false nếu gặp lỗi khi đọc.

Viết

bool tuningfork::VectorStream::Write(
  pb_ostream_t *stream,
  const uint8_t *buf,
  size_t count
)

Ghi các byte count từ vùng đệm nhất định vào luồng.

Thông tin chi tiết
Thông số
stream
Luồng cần ghi vào.
buf
Vùng đệm cần đọc.
count
Số byte cần ghi.
Trả về
true nếu thành công, false nếu gặp lỗi khi ghi.