tuningfork::VectorStream

#include <protobuf_nano_util.h>

Una visualizzazione del vettore fornito in vec.

Riepilogo

Non viene acquisita alcuna proprietà.

Dettagli
Parametri
vec
Esempio di utilizzo:
std::vector v;
VectorStream str {&v, 0};
pb_ostream_t stream = {VectorStream::Write, &str, SIZE_MAX, 0};
pb_encode(&stream, ...);

Attributi pubblici

it
size_t
La posizione attuale nel vettore durante la decodifica o la codifica.
vec
std::vector< uint8_t > *
Un vettore di byte che deve essere valido mentre vengono chiamati Read o Write.

Funzioni statiche pubbliche

Read(pb_istream_t *stream, uint8_t *buf, size_t count)
bool
Leggi count byte dallo stream nel buffer specificato.
Write(pb_ostream_t *stream, const uint8_t *buf, size_t count)
bool
Scrivi count byte dal buffer specificato nel flusso.

Attributi pubblici

it

size_t tuningfork::VectorStream::it

La posizione corrente nel vettore durante la decodifica o la codifica.

vec

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

Un vettore di byte che deve essere valido durante l'esecuzione di Read o Write.

Il vettore verrà ridimensionato in base alle necessità da Write.

Funzioni statiche pubbliche

Letto

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

Leggi count byte dallo stream nel buffer specificato.

Dettagli
Parametri
stream
Il flusso da cui leggere.
buf
Il buffer in cui scrivere.
count
Il numero di byte da leggere.
Resi
true se l'operazione è riuscita, false in caso di errore di lettura.

Scrivi

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

Scrivi count byte dal buffer specificato nel flusso.

Dettagli
Parametri
stream
Lo stream in cui scrivere.
buf
Il buffer da cui leggere.
count
Il numero di byte da scrivere.
Resi
true in caso di esito positivo, false in caso di errore di scrittura.