40 status = serializer.
serialize(real_data_size);
45 status = serializer.
serialize(
static_cast<I32
>(packet_type));
49 status = serializer.
serialize(data, size,
true);
67 for (U32 i = 0; i < size; i++) {
73 hash.
final(hashBuffer);
106 const U32 maxU32 = std::numeric_limits<U32>::max();
PlatformIntType NATIVE_INT_TYPE
uint8_t U8
8-bit unsigned integer
#define HASH_DIGEST_LENGTH
C++-compatible configuration header for fprime configuration.
SerializeBufferBase & getSerializeRepr()
SerializeStatus serialize(U8 val)
serialize 8-bit unsigned int
Abstract base class representing a deframing protocol.
DeframingProtocolInterface * m_interface
DeframingStatus
Status of the deframing call.
@ DEFRAMING_STATUS_SUCCESS
@ DEFRAMING_INVALID_FORMAT
@ DEFRAMING_INVALID_CHECKSUM
virtual Fw::Buffer allocate(const U32 size)=0
called to allocate memory, typically delegating to an allocate port call
virtual void route(Fw::Buffer &data)=0
send deframed data into the system
FprimeDeframing()
Constructor.
bool validate(Types::CircularBuffer &buffer, U32 size)
DeframingStatus deframe(Types::CircularBuffer &buffer, U32 &needed) override
FprimeFraming()
Constructor.
void frame(const U8 *const data, const U32 size, Fw::ComPacket::ComPacketType packet_type) override
Implements the frame method.
abstract class representing a framing protocol
FramingProtocolInterface * m_interface
virtual void send(Fw::Buffer &outgoing)=0
send framed data out of the framer
virtual Fw::Buffer allocate(const U32 size)=0
allocation callback to allocate memory when framing
NATIVE_UINT_TYPE get_allocated_size() const
NATIVE_UINT_TYPE get_capacity() const
Fw::SerializeStatus peek(char &value, NATIVE_UINT_TYPE offset=0) const
A container class for holding a hash buffer.
A generic interface for creating and comparing hash values.
static void hash(const void *data, const NATIVE_INT_TYPE len, HashBuffer &buffer)
void update(const void *const data, const NATIVE_INT_TYPE len)
void final(HashBuffer &buffer)
SerializeStatus
forward declaration for string
@ FW_SERIALIZE_OK
Serialization/Deserialization operation was successful.