24 U16 ApidManager ::validateApidSeqCountIn_handler(
FwIndexType portNum,
const ComCfg::APID& apid, U16 receivedSeqCount) {
25 U16 expectedSequenceCount = this->getAndIncrementSeqCount(apid);
30 this->setNextSeqCount(apid, static_cast<U16>(receivedSeqCount + 1));
32 return receivedSeqCount;
36 return this->getAndIncrementSeqCount(apid);
47 if (this->m_apidSequences[i].apid == apid) {
48 seqCount = this->m_apidSequences[i].sequenceCount;
50 this->m_apidSequences[i].sequenceCount =
58 this->m_apidSequences[i].apid = apid;
59 seqCount = this->m_apidSequences[i].sequenceCount;
61 this->m_apidSequences[i].sequenceCount =
72 if (this->m_apidSequences[i].apid == apid) {
73 this->m_apidSequences[i].sequenceCount = seqCount;
78 FW_ASSERT(
false, static_cast<FwAssertArgType>(apid));
void log_WARNING_LO_UnexpectedSequenceCount(U16 transmitted, U16 expected) const
void log_WARNING_HI_ApidTableFull(U16 invalidApidValue) const
ApidManager(const char *const compName)
Construct ApidManager object.
static constexpr U16 MAX_TRACKED_APIDS
Auto-generated base for ApidManager component.
PlatformIndexType FwIndexType
APIDs are 11 bits in the Space Packet protocol, so we use U16. Max value 7FF.
static constexpr U16 SEQUENCE_COUNT_ERROR
RateGroupDivider component implementation.
Anything equal or higher value is invalid and should not be used.