39 status = serializer.serialize(size);
43 status = serializer.serialize(data, size,
true);
61 for (U32 i = 0; i < size; i++) {
67 hash.
final(hashBuffer);
100 const U32 maxU32 = std::numeric_limits<U32>::max();
void update(const void *const data, const FwSizeType len)
Serialization/Deserialization operation was successful.
abstract class representing a framing protocol
#define HASH_DIGEST_LENGTH
virtual void route(Fw::Buffer &data)=0
send deframed data into the system
PlatformSizeType FwSizeType
DeframingProtocolInterface * m_interface
SerializeStatus serialize(U8 val)
serialize 8-bit unsigned int
void setSize(SizeType size)
SerializeStatus
forward declaration for string
void final(HashBuffer &buffer)
void frame(const U8 *const data, const U32 size, Fw::ComPacket::ComPacketType packet_type) override
Implements the frame method.
Abstract base class representing a deframing protocol.
FprimeDeframing()
Constructor.
FprimeFraming()
Constructor.
A generic interface for creating and comparing hash values.
DeframingStatus deframe(Types::CircularBuffer &buffer, U32 &needed) override
FwSizeType get_allocated_size() const
virtual Fw::Buffer allocate(const U32 size)=0
called to allocate memory, typically delegating to an allocate port call
uint8_t U8
8-bit unsigned integer
FwSizeType get_capacity() const
virtual void send(Fw::Buffer &outgoing)=0
send framed data out of the framer
DeframingStatus
Status of the deframing call.
static void hash(const void *data, const FwSizeType len, HashBuffer &buffer)
FramingProtocolInterface * m_interface
Fw::SerializeStatus peek(char &value, FwSizeType offset=0) const
A container class for holding a hash buffer.
RateGroupDivider component implementation.
ExternalSerializeBufferWithMemberCopy getSerializer()
virtual Fw::Buffer allocate(const U32 size)=0
allocation callback to allocate memory when framing
bool validate(Types::CircularBuffer &buffer, U32 size)