16 #if FW_SERIALIZABLE_TO_STRING 26 :
Serializable(), m_serialize_repr(), m_bufferData(src.m_bufferData), m_size(src.m_size), m_context(src.m_context) {
27 if (src.m_bufferData !=
nullptr) {
28 this->m_serialize_repr.
setExtBuffer(src.m_bufferData, src.m_size);
33 :
Serializable(), m_serialize_repr(), m_bufferData(data), m_size(size), m_context(context) {
34 if (m_bufferData !=
nullptr) {
35 this->m_serialize_repr.
setExtBuffer(this->m_bufferData, this->m_size);
42 this->
set(src.m_bufferData, src.m_size, src.m_context);
48 return (this->m_bufferData == src.m_bufferData) && (this->m_size == src.m_size) &&
49 (this->m_context == src.m_context);
53 return (this->m_bufferData !=
nullptr) && (this->m_size > 0);
57 return this->m_bufferData;
65 return this->m_context;
69 this->m_bufferData = data;
70 if (m_bufferData !=
nullptr) {
71 this->m_serialize_repr.
setExtBuffer(this->m_bufferData, this->m_size);
77 if (m_bufferData !=
nullptr) {
78 this->m_serialize_repr.
setExtBuffer(this->m_bufferData, this->m_size);
83 this->m_context = context;
87 this->m_bufferData = data;
89 if (m_bufferData !=
nullptr) {
90 this->m_serialize_repr.
setExtBuffer(this->m_bufferData, this->m_size);
92 this->m_context = context;
118 #if FW_SERIALIZATION_TYPE_ID 119 stat = buffer.
serialize(static_cast<U32>(Buffer::TYPE_ID));
124 stat = buffer.
serialize(reinterpret_cast<PlatformPointerCastType>(this->m_bufferData));
132 stat = buffer.
serialize(this->m_context);
142 #if FW_SERIALIZATION_TYPE_ID 150 if (typeId != Buffer::TYPE_ID) {
154 PlatformPointerCastType pointer;
159 this->m_bufferData =
reinterpret_cast<U8*
>(pointer);
170 if (this->m_bufferData !=
nullptr) {
171 this->m_serialize_repr.
setExtBuffer(this->m_bufferData, this->m_size);
176 #if FW_SERIALIZABLE_TO_STRING 178 static const char* formatString =
"(data = %p, size = %u, context = %u)";
179 text.
format(formatString, this->m_bufferData, this->m_size, this->m_context);
184 std::ostream& operator<<(std::ostream& os,
const Buffer& obj) {
Serialization/Deserialization operation was successful.
Fw::SerializeStatus serialize(Fw::SerializeBufferBase &serialBuffer) const
void set(U8 *data, FwSizeType size, U32 context=NO_CONTEXT)
PlatformSizeType FwSizeType
void resetSer()
reset to beginning of buffer to reuse for serialization
void setContext(U32 context)
void setSize(FwSizeType size)
SerializeStatus serialize(U8 val)
serialize 8-bit unsigned int
const char * toChar() const
bool operator==(const Buffer &src) const
SerializeStatus
forward declaration for string
ExternalSerializeBufferWithMemberCopy getDeserializer()
Deserialized type ID didn't match.
FormatStatus format(const CHAR *formatString,...)
write formatted string to buffer
uint8_t U8
8-bit unsigned integer
FwSizeType getSize() const
void setExtBuffer(U8 *buffPtr, Serializable::SizeType size)
SerializeStatus deserialize(U8 &val)
deserialize 8-bit unsigned int
Fw::SerializeStatus deserialize(Fw::SerializeBufferBase &buffer)
ExternalSerializeBufferWithMemberCopy getSerializer()
Buffer & operator=(const Buffer &src)
SerializeStatus setBuffLen(Serializable::SizeType length)
sets buffer length manually after filling with data