13 #ifndef Svc_Ccsds_AosDeframer_HPP 14 #define Svc_Ccsds_AosDeframer_HPP 53 bool frameErrorControlField,
103 void abandonSpanningPacket(AosDeframerVc& vc);
108 void extractPackets(AosDeframerVc& vc,
Fw::Buffer& data);
132 static U8 getPacketVersion(
U8 firstByte);
145 AosDeframerVc* getVcStruct(
const U8 vcId);
148 struct AosDeframerVc {
149 U8 vcStructIndex = 0xFF;
150 U8 virtualChannelId = 0;
154 U32 framesProcessed = 0;
155 U32 packetsExtracted = 0;
156 U32 vcFrameCount = 0;
179 U32 m_fixedFrameSize = 0;
180 bool m_fecfEnabled =
true;
181 U16 m_spacecraftId = 0;
184 U32 m_crcErrorCount = 0;
PlatformSizeType FwSizeType
FwSizeType bytesReceived
Bytes received so far.
~AosDeframer()
Destroy AosDeframer object.
ComCfg::FrameContext context
void configure(U32 fixedFrameSize, bool frameErrorControlField, U16 spacecraftId=ComCfg::SpacecraftId, U8 vcId=0, U8 pvnMask=PvnBitfield::SPP_MASK|PvnBitfield::EPP_MASK)
Configure the AosDeframer with mission-specific parameters.
Auto-generated base for AosDeframer component.
static constexpr FwSizeType HEADER_BUF_SIZE
Max header bytes needed to determine size (8 bytes is largest EPP Header)
U8 headerBuf[HEADER_BUF_SIZE]
Header bytes accumulated before allocation.
uint8_t U8
8-bit unsigned integer
AosDeframer(const char *const compName)
Construct AosDeframer object.
Fw::Buffer buffer
Dynamically-allocated packet buffer.
PlatformIndexType FwIndexType
Type used to pass context info between components during framing/deframing.
RateGroupDivider component implementation.