tuningfork::VectorStream

#include <protobuf_nano_util.h>

תצוגה של הווקטור שסופק ב-vec.

סיכום

לא מתבצעת העברת בעלות.

פרטים
פרמטרים
vec
דוגמה לשימוש:
std::vector v;
VectorStream str {&v, 0};
pb_ostream_t stream = {VectorStream::Write, &str, SIZE_MAX, 0};
pb_encode(&stream, ...);

מאפיינים ציבוריים

it
size_t
המיקום הנוכחי בווקטור במהלך פענוח או קידוד.
vec
std::vector< uint8_t > *
וקטור של ביטים שצריך להיות תקף בזמן הקריאה של Read או Write.

פונקציות סטטיות ציבוריות

Read(pb_istream_t *stream, uint8_t *buf, size_t count)
bool
קוראים count בייטים מהשידור למאגר הנתונים הזמני.
Write(pb_ostream_t *stream, const uint8_t *buf, size_t count)
bool
כתיבת count בייטים מהמאגר הנתונים הנתון אל המקור.

מאפיינים גלויים לכולם

it

size_t tuningfork::VectorStream::it

המיקום הנוכחי בווקטור במהלך פענוח או קידוד.

Vec

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

וקטור של ביטים שצריך להיות תקף בזמן הקריאה של Read או Write.

גודל הווקטור ישתנה לפי הצורך ב-Write.

פונקציות סטטיות ציבוריות

כבר קראתי

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

קוראים count בייטים מהשידור למאגר הנתונים הזמני.

פרטים
פרמטרים
stream
מקור הנתונים שרוצים לקרוא ממנו.
buf
מאגר הנתונים הזמני שאליו רוצים לכתוב.
count
מספר הבייטים לקריאה.
החזרות
true אם בוצע בהצלחה, false בשגיאת קריאה.

כתיבה

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

כתיבת count בייטים מהמאגר הנתונים הנתון אל המקור.

פרטים
פרמטרים
stream
הסטרימינג שאליו רוצים לכתוב.
buf
מאגר הנתונים הזמני שממנו רוצים לקרוא.
count
מספר הבייטים שרוצים לכתוב.
החזרות
True אם הפעולה בוצעה בהצלחה, FALSE בשגיאת כתיבה.