8 #ifndef Svc_Ccsds_AosFramer_HPP 9 #define Svc_Ccsds_AosFramer_HPP 26 static constexpr
U8 SPP_IDLE_DATA_PATTERN = 0x44;
27 static constexpr
U8 MIN_SPP_LENGTH = 7;
32 enum class BufferOwnershipState {
44 U8 vc_struct_index = 0xFF;
45 U8 virtualChannelId = 1;
47 U32 virtualFrameCount = 0;
54 BufferOwnershipState
state = BufferOwnershipState::OWNED;
73 U16 current_payload_offset = 0;
74 bool past_first_fresh_packet =
false;
92 bool frameErrorControlField,
152 void check_and_send_vc(AosFramer::AosVc& currentVc);
158 void compute_and_inject_fecf(AosVc& currentVc);
PlatformSizeType FwSizeType
U8 backer[ComCfg::AosMaxFrameFixedSize]
Buffer to hold the frame data.
~AosFramer()
Destroy AosFramer object.
Auto-generated base for AosFramer component.
AosFramer(const char *const compName)
Construct AosFramer object.
BufferOwnershipState state
whether m_frameBuffer is owned by AosFramer
friend class AosFramerTester
uint8_t U8
8-bit unsigned integer
U8 backer[MIN_SPP_LENGTH]
PlatformIndexType FwIndexType
Type used to pass context info between components during framing/deframing.
RateGroupDivider component implementation.
void configure(U32 fixedFixedSize, bool frameErrorControlField, U8 idlePvns=PvnBitfield::SPP_MASK)
Fw::Buffer buffer
Buffer object pointing at frameBufferBacker.