![]() |
F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
|
A variable-length serializable buffer. More...
#include <Fw/Types/SerialBuffer.hpp>
Public Member Functions | |
| SerialBuffer (U8 *const data, const FwSizeType capacity) | |
| DEPRECATED (FwSizeType getBuffCapacity() const, "Use getCapacity() instead") | |
| void | fill () |
| Fill the buffer to capacity with preexisting data. More... | |
| SerializeStatus | pushBytes (const U8 *const addr, const FwSizeType n) |
| Push n bytes onto the buffer. More... | |
| SerializeStatus | popBytes (U8 *const addr, FwSizeType n) |
| Pop n bytes off the buffer. More... | |
Public Member Functions inherited from Fw::LinearBufferBase | |
| virtual | ~LinearBufferBase () |
| Destructor. More... | |
| SerializeStatus | serializeFrom (U8 val, Endianness mode=Endianness::BIG) override |
| Serialize an 8-bit unsigned integer value. More... | |
| SerializeStatus | serializeFrom (I8 val, Endianness mode=Endianness::BIG) override |
| Serialize an 8-bit signed integer value. More... | |
| SerializeStatus | serializeFrom (F32 val, Endianness mode=Endianness::BIG) override |
| Serialize a 32-bit floating point value. More... | |
| SerializeStatus | serializeFrom (F64 val, Endianness mode=Endianness::BIG) override |
| Serialize a 64-bit floating point value. More... | |
| SerializeStatus | serializeFrom (bool val, Endianness mode=Endianness::BIG) override |
| Serialize a boolean value. More... | |
| SerializeStatus | serializeFrom (const void *val, Endianness mode=Endianness::BIG) override |
| Serialize a pointer value. More... | |
| SerializeStatus | serializeFrom (const U8 *buff, FwSizeType length, Endianness endianMode=Endianness::BIG) override |
| Serialize a data buffer. More... | |
| SerializeStatus | serializeFrom (const U8 *buff, FwSizeType length, Serialization::t lengthMode, Endianness endianMode=Endianness::BIG) override |
| Serialize a byte buffer with optional length prefix. More... | |
| SerializeStatus | serializeFrom (const LinearBufferBase &val, Endianness mode=Endianness::BIG) override |
| Serialize another LinearBufferBase object. More... | |
| SerializeStatus | serializeFrom (const Serializable &val, Endianness mode=Endianness::BIG) override |
| Serialize a Serializable object. More... | |
| SerializeStatus | serializeSize (const FwSizeType size, Endianness mode=Endianness::BIG) override |
| Serialize a size value. More... | |
| SerializeStatus | deserializeTo (U8 &val, Endianness mode=Endianness::BIG) override |
| Deserialize an 8-bit unsigned integer value. More... | |
| SerializeStatus | deserializeTo (I8 &val, Endianness mode=Endianness::BIG) override |
| Deserialize an 8-bit signed integer value. More... | |
| SerializeStatus | deserializeTo (F32 &val, Endianness mode=Endianness::BIG) override |
| Deserialize a 32-bit floating point value. More... | |
| SerializeStatus | deserializeTo (F64 &val, Endianness mode=Endianness::BIG) override |
| Deserialize a 64-bit floating point value. More... | |
| SerializeStatus | deserializeTo (bool &val, Endianness mode=Endianness::BIG) override |
| Deserialize a boolean value. More... | |
| SerializeStatus | deserializeTo (void *&val, Endianness mode=Endianness::BIG) override |
| Deserialize a pointer value. More... | |
| SerializeStatus | deserializeTo (U8 *buff, FwSizeType &length, Endianness endianMode=Endianness::BIG) override |
| Deserialize a data buffer. More... | |
| SerializeStatus | deserializeTo (U8 *buff, FwSizeType &length, Serialization::t lengthMode, Endianness endianMode=Endianness::BIG) override |
| Deserialize a byte buffer with optional length prefix. More... | |
| SerializeStatus | deserializeTo (Serializable &val, Endianness mode=Endianness::BIG) override |
| Deserialize a Serializable object. More... | |
| SerializeStatus | deserializeTo (LinearBufferBase &val, Endianness mode=Endianness::BIG) override |
| Deserialize a LinearBufferBase object. More... | |
| SerializeStatus | deserializeSize (FwSizeType &size, Endianness mode=Endianness::BIG) override |
| Deserialize a size value. More... | |
| DEPRECATED (SerializeStatus serialize(const LinearBufferBase &val), "Use serializeFrom(const SerialBufferBase& val) instead") | |
| DEPRECATED (SerializeStatus deserialize(LinearBufferBase &val), "Use deserializeTo(SerialBufferBase& val) instead") | |
| void | resetSer () override |
| Reset serialization pointer to beginning of buffer. More... | |
| void | resetDeser () override |
| Reset deserialization pointer to beginning of buffer. More... | |
| SerializeStatus | moveSerToOffset (FwSizeType offset) override |
| Move serialization pointer to specified offset. More... | |
| SerializeStatus | moveDeserToOffset (FwSizeType offset) override |
| Move deserialization pointer to specified offset. More... | |
| SerializeStatus | serializeSkip (FwSizeType numBytesToSkip) override |
| Skip specified number of bytes during serialization. More... | |
| SerializeStatus | deserializeSkip (FwSizeType numBytesToSkip) override |
| Skip specified number of bytes during deserialization. More... | |
| DEPRECATED (Serializable::SizeType getBuffCapacity() const, "Use getCapacity() instead") | |
| DEPRECATED (Serializable::SizeType getBuffLength() const, "Use getSize() instead") | |
| DEPRECATED (Serializable::SizeType getBuffLeft(), "Use getDeserializeSizeLeft() instead") | |
| Serializable::SizeType | getCapacity () const override |
| Get buffer capacity. More... | |
| Serializable::SizeType | getSize () const override |
| Get current buffer size. More... | |
| Serializable::SizeType | getDeserializeSizeLeft () const override |
| Get remaining deserialization buffer size. More... | |
| Serializable::SizeType | getSerializeSizeLeft () const override |
| Get remaining serialization buffer size. More... | |
| U8 * | getBuffAddr () |
| Get buffer address for data filling (non-const version) More... | |
| const U8 * | getBuffAddr () const |
| Get buffer address for data reading (const version) More... | |
| const U8 * | getBuffAddrLeft () const |
| Get address of remaining non-deserialized data. More... | |
| U8 * | getBuffAddrSer () |
| Get address of end of serialization (DANGEROUS!) More... | |
| SerializeStatus | setBuff (const U8 *src, Serializable::SizeType length) override |
| Set buffer contents from external source. More... | |
| SerializeStatus | setBuffLen (Serializable::SizeType length) override |
| Set buffer length manually. More... | |
| SerializeStatus | copyRaw (SerialBufferBase &dest, Serializable::SizeType size) override |
| Copy raw bytes from this buffer to destination and advance source offset. More... | |
| SerializeStatus | copyRawOffset (SerialBufferBase &dest, Serializable::SizeType size) override |
| Append raw bytes to destination from this buffer and advance source offset. More... | |
| DEPRECATED (SerializeStatus serialize(U8 val), "Use serializeFrom(U8 val) instead") | |
| DEPRECATED (SerializeStatus serialize(I8 val), "Use serializeFrom(I8 val) instead") | |
| DEPRECATED (SerializeStatus serialize(F32 val), "Use serializeFrom(F32 val) instead") | |
| DEPRECATED (SerializeStatus serialize(F64 val), "Use serializeFrom(F64 val) instead") | |
| DEPRECATED (SerializeStatus serialize(bool val), "Use serializeFrom(bool val) instead") | |
| DEPRECATED (SerializeStatus serialize(const void *val), "Use serializeFrom(const void* val) instead") | |
| DEPRECATED (SerializeStatus serialize(const U8 *buff, FwSizeType length, bool noLength), "Use serialize(const U8* buff, FwSizeType length, Serialization::t mode) instead") | |
| DEPRECATED (SerializeStatus serialize(const U8 *buff, FwSizeType length), "Use serializeFrom(const U8* buff, FwSizeType length) instead") | |
| DEPRECATED (SerializeStatus serialize(const U8 *buff, FwSizeType length, Serialization::t mode), "Use serializeFrom(const U8* buff, FwSizeType length, Serialization::t mode) instead") | |
| DEPRECATED (SerializeStatus serialize(const Serializable &val), "Use serializeFrom(const Serializable& val) instead") | |
| DEPRECATED (SerializeStatus deserialize(U8 &val), "Use deserializeTo(U8& val) instead") | |
| DEPRECATED (SerializeStatus deserialize(I8 &val), "Use deserializeTo(I8& val) instead") | |
| DEPRECATED (SerializeStatus deserialize(F32 &val), "Use deserializeTo(F32& val) instead") | |
| DEPRECATED (SerializeStatus deserialize(F64 &val), "Use deserializeTo(F64& val) instead") | |
| DEPRECATED (SerializeStatus deserialize(bool &val), "Use deserializeTo(bool& val) instead") | |
| DEPRECATED (SerializeStatus deserialize(void *&val), "Use deserializeTo(void*& val) instead") | |
| DEPRECATED (SerializeStatus deserialize(U8 *buff, FwSizeType &length, bool noLength), "Use deserialize(U8* buff, FwSizeType& length, Serialization::t mode) instead") | |
| DEPRECATED (SerializeStatus deserialize(U8 *buff, FwSizeType &length), "Use deserializeTo(U8* buff, FwSizeType& length) instead") | |
| DEPRECATED (SerializeStatus deserialize(U8 *buff, FwSizeType &length, Serialization::t mode), "Use deserializeTo(U8* buff, FwSizeType& length, Serialization::t mode) instead") | |
| DEPRECATED (SerializeStatus deserialize(Serializable &val), "Use deserializeTo(Serializable& val) instead") | |
Public Member Functions inherited from Fw::SerialBufferBase | |
| virtual | ~SerialBufferBase () |
| Virtual destructor. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from Fw::LinearBufferBase | |
| static constexpr Serializable::SizeType | STATIC_SERIALIZED_SIZE (Serializable::SizeType maxSize) |
| Get the static serialized size of a buffer This is the max size of the buffer data plus the size of the stored size. More... | |
Protected Member Functions inherited from Fw::LinearBufferBase | |
| LinearBufferBase & | operator= (const LinearBufferBase &src) |
| Copy assignment operator. More... | |
| LinearBufferBase ()=delete | |
| LinearBufferBase (U8 *buffAddr, Serializable::SizeType capacity) | |
| Storage constructor. More... | |
| LinearBufferBase (const LinearBufferBase &src) | |
| Copy constructor (protected) More... | |
| void | copyFrom (const LinearBufferBase &src) |
| Copy data from source buffer. More... | |
| Serializable::SizeType | getSerLoc () const |
| Serializable::SizeType | getDeserLoc () const |
| void | setSerLoc (Serializable::SizeType loc) |
| void | setDeserLoc (Serializable::SizeType loc) |
| void | setBuffAddrInternal (U8 *addr) |
| void | setCapacityInternal (Serializable::SizeType capacity) |
A variable-length serializable buffer.
Definition at line 24 of file SerialBuffer.hpp.
| Fw::SerialBuffer::SerialBuffer | ( | U8 *const | data, |
| const FwSizeType | capacity | ||
| ) |
Construct a SerialBuffer
| data | Pointer to the data |
| capacity | The buffer capacity |
Definition at line 18 of file SerialBuffer.cpp.
| Fw::SerialBuffer::DEPRECATED | ( | FwSizeType getBuffCapacity() | const, |
| "Use getCapacity() instead" | |||
| ) |
| void Fw::SerialBuffer::fill | ( | ) |
Fill the buffer to capacity with preexisting data.
Definition at line 24 of file SerialBuffer.cpp.
| SerializeStatus Fw::SerialBuffer::popBytes | ( | U8 *const | addr, |
| FwSizeType | n | ||
| ) |
Pop n bytes off the buffer.
| addr | Address of bytes to pop |
| n | Number of bytes to pop |
Definition at line 33 of file SerialBuffer.cpp.
| SerializeStatus Fw::SerialBuffer::pushBytes | ( | const U8 *const | addr, |
| const FwSizeType | n | ||
| ) |
Push n bytes onto the buffer.
| addr | Address of bytes to push |
| n | Number of bytes |
Definition at line 29 of file SerialBuffer.cpp.