tuningfork::VectorStream

#include <protobuf_nano_util.h>

vec içinde sağlanan vektördeki bir görünüm.

Özet

Sahiplik alınmaz.

Ayrıntılar
Parametreler
vec
Örnek kullanım:
std::vector v;
VectorStream str {&v, 0};
pb_ostream_t stream = {VectorStream::Write, &str, SIZE_MAX, 0};
pb_encode(&stream, ...);

Herkese açık özellikler

it
size_t
Kod çözme veya kodlama sırasında vektördeki mevcut konum.
vec
std::vector< uint8_t > *
Read veya Write çağrılırken geçerli olması gereken bir bayt vektörü.

Herkese açık statik işlevler

Read(pb_istream_t *stream, uint8_t *buf, size_t count)
bool
Akıştan count bayt okuyup belirtilen arabelleğe aktarın.
Write(pb_ostream_t *stream, const uint8_t *buf, size_t count)
bool
Belirtilen arabellekten akışa count bayt yazın.

Herkese açık özellikler

it

size_t tuningfork::VectorStream::it

Kod çözme veya kodlama sırasında vektördeki mevcut konum.

vec

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

Read veya Write çağrılırken geçerli olması gereken bayt vektörü.

Vektör, Write tarafından gereken şekilde yeniden boyutlandırılır.

Herkese açık statik işlevler

Okunanlar

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

Akıştan belirtilen arabelleğe count bayt okuma.

Ayrıntılar
Parametreler
stream
Okunacak akış.
buf
Yazılacak arabellek.
count
Okunan bayt sayısı.
İadeler
İşlem başarılıysa true (doğru), okuma hatası varsa false (yanlış) değerini alır.

Yaz

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

Belirtilen arabellekten akışa count bayt yazın.

Ayrıntılar
Parametreler
stream
Yazılacak akış.
buf
Okunacak arabellek.
count
Yazılacak bayt sayısı.
İadeler
true (başarılıysa), yazma hatasında false (yanlış) değerini alır.