9 #if FW_ENABLE_TEXT_LOGGING 20 CONFIGURESECTIONGROUPRATE_CONFIGUREGROUPRATE,
21 CONTROLIN_ENABLESECTION,
28 CMD_CONFIGURE_GROUP_RATES,
43 class ComponentIpcSerializableBuffer :
53 MAX_DATA_SIZE =
sizeof(BuffUnion),
55 SERIALIZATION_SIZE = DATA_OFFSET + MAX_DATA_SIZE
59 return sizeof(m_buff);
66 const U8* getBuffAddr()
const {
72 U8 m_buff[SERIALIZATION_SIZE];
90 #if !FW_DIRECT_PORT_CALLS 97 this->m_cmdIn_InputPort[port].
init();
102 this->m_cmdIn_InputPort[port].
setPortNum(port);
104 #if FW_OBJECT_NAMES == 1 108 this->m_objName.toChar(),
111 this->m_cmdIn_InputPort[port].setObjName(portName.
toChar());
116 #if !FW_DIRECT_PORT_CALLS 123 this->m_Run_InputPort[port].
init();
130 #if FW_OBJECT_NAMES == 1 134 this->m_objName.toChar(),
137 this->m_Run_InputPort[port].setObjName(portName.
toChar());
142 #if !FW_DIRECT_PORT_CALLS 149 this->m_TlmGet_InputPort[port].
init();
154 this->m_TlmGet_InputPort[port].
setPortNum(port);
156 #if FW_OBJECT_NAMES == 1 160 this->m_objName.toChar(),
163 this->m_TlmGet_InputPort[port].setObjName(portName.
toChar());
168 #if !FW_DIRECT_PORT_CALLS 175 this->m_TlmRecv_InputPort[port].
init();
180 this->m_TlmRecv_InputPort[port].
setPortNum(port);
182 #if FW_OBJECT_NAMES == 1 186 this->m_objName.toChar(),
189 this->m_TlmRecv_InputPort[port].setObjName(portName.
toChar());
194 #if !FW_DIRECT_PORT_CALLS 201 this->m_configureSectionGroupRate_InputPort[port].
init();
202 this->m_configureSectionGroupRate_InputPort[port].
addCallComp(
204 m_p_configureSectionGroupRate_in
206 this->m_configureSectionGroupRate_InputPort[port].
setPortNum(port);
208 #if FW_OBJECT_NAMES == 1 212 this->m_objName.toChar(),
215 this->m_configureSectionGroupRate_InputPort[port].setObjName(portName.
toChar());
220 #if !FW_DIRECT_PORT_CALLS 227 this->m_controlIn_InputPort[port].
init();
232 this->m_controlIn_InputPort[port].
setPortNum(port);
234 #if FW_OBJECT_NAMES == 1 238 this->m_objName.toChar(),
241 this->m_controlIn_InputPort[port].setObjName(portName.
toChar());
246 #if !FW_DIRECT_PORT_CALLS 253 this->m_pingIn_InputPort[port].
init();
258 this->m_pingIn_InputPort[port].
setPortNum(port);
260 #if FW_OBJECT_NAMES == 1 264 this->m_objName.toChar(),
267 this->m_pingIn_InputPort[port].setObjName(portName.
toChar());
272 #if !FW_DIRECT_PORT_CALLS 279 this->m_cmdRegOut_OutputPort[port].
init();
281 #if FW_OBJECT_NAMES == 1 285 this->m_objName.toChar(),
288 this->m_cmdRegOut_OutputPort[port].setObjName(portName.
toChar());
293 #if !FW_DIRECT_PORT_CALLS 300 this->m_cmdResponseOut_OutputPort[port].
init();
302 #if FW_OBJECT_NAMES == 1 306 this->m_objName.toChar(),
309 this->m_cmdResponseOut_OutputPort[port].setObjName(portName.
toChar());
314 #if !FW_DIRECT_PORT_CALLS 321 this->m_eventOut_OutputPort[port].
init();
323 #if FW_OBJECT_NAMES == 1 327 this->m_objName.toChar(),
330 this->m_eventOut_OutputPort[port].setObjName(portName.
toChar());
335 #if !FW_DIRECT_PORT_CALLS 342 this->m_paramGetOut_OutputPort[port].
init();
344 #if FW_OBJECT_NAMES == 1 348 this->m_objName.toChar(),
351 this->m_paramGetOut_OutputPort[port].setObjName(portName.
toChar());
356 #if !FW_DIRECT_PORT_CALLS 363 this->m_paramSetOut_OutputPort[port].
init();
365 #if FW_OBJECT_NAMES == 1 369 this->m_objName.toChar(),
372 this->m_paramSetOut_OutputPort[port].setObjName(portName.
toChar());
377 #if !FW_DIRECT_PORT_CALLS && FW_ENABLE_TEXT_LOGGING 381 port < static_cast<FwIndexType>(this->getNum_textEventOut_OutputPorts());
384 this->m_textEventOut_OutputPort[port].
init();
386 #if FW_OBJECT_NAMES == 1 390 this->m_objName.toChar(),
393 this->m_textEventOut_OutputPort[port].setObjName(portName.
toChar());
398 #if !FW_DIRECT_PORT_CALLS 405 this->m_timeGetOut_OutputPort[port].
init();
407 #if FW_OBJECT_NAMES == 1 411 this->m_objName.toChar(),
414 this->m_timeGetOut_OutputPort[port].setObjName(portName.
toChar());
419 #if !FW_DIRECT_PORT_CALLS 426 this->m_tlmOut_OutputPort[port].
init();
428 #if FW_OBJECT_NAMES == 1 432 this->m_objName.toChar(),
435 this->m_tlmOut_OutputPort[port].setObjName(portName.
toChar());
440 #if !FW_DIRECT_PORT_CALLS 447 this->m_PktSend_OutputPort[port].
init();
449 #if FW_OBJECT_NAMES == 1 453 this->m_objName.toChar(),
456 this->m_PktSend_OutputPort[port].setObjName(portName.
toChar());
461 #if !FW_DIRECT_PORT_CALLS 468 this->m_pingOut_OutputPort[port].
init();
470 #if FW_OBJECT_NAMES == 1 474 this->m_objName.toChar(),
477 this->m_pingOut_OutputPort[port].setObjName(portName.
toChar());
485 static_cast<FwSizeType>(ComponentIpcSerializableBuffer::SERIALIZATION_SIZE)
489 static_cast<FwAssertArgType>(qStat)
493 #if !FW_DIRECT_PORT_CALLS 504 static_cast<FwAssertArgType>(portNum)
507 return &this->m_cmdIn_InputPort[portNum];
512 #if !FW_DIRECT_PORT_CALLS 523 static_cast<FwAssertArgType>(portNum)
526 return &this->m_Run_InputPort[portNum];
534 static_cast<FwAssertArgType>(portNum)
537 return &this->m_TlmGet_InputPort[portNum];
545 static_cast<FwAssertArgType>(portNum)
548 return &this->m_TlmRecv_InputPort[portNum];
556 static_cast<FwAssertArgType>(portNum)
559 return &this->m_configureSectionGroupRate_InputPort[portNum];
567 static_cast<FwAssertArgType>(portNum)
570 return &this->m_controlIn_InputPort[portNum];
578 static_cast<FwAssertArgType>(portNum)
581 return &this->m_pingIn_InputPort[portNum];
586 #if !FW_DIRECT_PORT_CALLS 600 static_cast<FwAssertArgType>(portNum)
603 this->m_cmdRegOut_OutputPort[portNum].
addCallPort(port);
614 static_cast<FwAssertArgType>(portNum)
617 this->m_cmdResponseOut_OutputPort[portNum].
addCallPort(port);
628 static_cast<FwAssertArgType>(portNum)
631 this->m_eventOut_OutputPort[portNum].
addCallPort(port);
642 static_cast<FwAssertArgType>(portNum)
645 this->m_paramGetOut_OutputPort[portNum].
addCallPort(port);
656 static_cast<FwAssertArgType>(portNum)
659 this->m_paramSetOut_OutputPort[portNum].
addCallPort(port);
662 #if FW_ENABLE_TEXT_LOGGING == 1 664 void TlmPacketizerComponentBase ::
665 set_textEventOut_OutputPort(
671 (0 <= portNum) && (portNum < this->getNum_textEventOut_OutputPorts()),
672 static_cast<FwAssertArgType>(portNum)
675 this->m_textEventOut_OutputPort[portNum].addCallPort(port);
688 static_cast<FwAssertArgType>(portNum)
691 this->m_timeGetOut_OutputPort[portNum].
addCallPort(port);
702 static_cast<FwAssertArgType>(portNum)
705 this->m_tlmOut_OutputPort[portNum].
addCallPort(port);
710 #if !FW_DIRECT_PORT_CALLS 724 static_cast<FwAssertArgType>(portNum)
727 this->m_PktSend_OutputPort[portNum].
addCallPort(port);
738 static_cast<FwAssertArgType>(portNum)
741 this->m_pingOut_OutputPort[portNum].
addCallPort(port);
746 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 755 Fw::InputSerializePort* port
760 static_cast<FwAssertArgType>(portNum)
763 this->m_cmdRegOut_OutputPort[portNum].registerSerialPort(port);
769 Fw::InputSerializePort* port
774 static_cast<FwAssertArgType>(portNum)
777 this->m_cmdResponseOut_OutputPort[portNum].registerSerialPort(port);
783 Fw::InputSerializePort* port
788 static_cast<FwAssertArgType>(portNum)
791 this->m_eventOut_OutputPort[portNum].registerSerialPort(port);
797 Fw::InputSerializePort* port
802 static_cast<FwAssertArgType>(portNum)
805 this->m_paramSetOut_OutputPort[portNum].registerSerialPort(port);
808 #if FW_ENABLE_TEXT_LOGGING == 1 810 void TlmPacketizerComponentBase ::
811 set_textEventOut_OutputPort(
813 Fw::InputSerializePort* port
817 (0 <= portNum) && (portNum < this->getNum_textEventOut_OutputPorts()),
818 static_cast<FwAssertArgType>(portNum)
821 this->m_textEventOut_OutputPort[portNum].registerSerialPort(port);
829 Fw::InputSerializePort* port
834 static_cast<FwAssertArgType>(portNum)
837 this->m_timeGetOut_OutputPort[portNum].registerSerialPort(port);
843 Fw::InputSerializePort* port
848 static_cast<FwAssertArgType>(portNum)
851 this->m_tlmOut_OutputPort[portNum].registerSerialPort(port);
856 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 865 Fw::InputSerializePort* port
870 static_cast<FwAssertArgType>(portNum)
873 this->m_PktSend_OutputPort[portNum].registerSerialPort(port);
879 Fw::InputSerializePort* port
884 static_cast<FwAssertArgType>(portNum)
887 this->m_pingOut_OutputPort[portNum].registerSerialPort(port);
971 _paramValid = this->paramGetOut_out(
982 FW_ASSERT(this->paramDelegatePtr !=
nullptr);
984 _stat = this->paramDelegatePtr->
deserializeParam(_baseId, _localId, _paramValid, _buff);
996 _paramValid = this->paramGetOut_out(
1007 FW_ASSERT(this->paramDelegatePtr !=
nullptr);
1009 _stat = this->paramDelegatePtr->
deserializeParam(_baseId, _localId, _paramValid, _buff);
1028 Fw::ActiveComponentBase(compName),
1029 paramDelegatePtr(nullptr)
1040 #if !FW_DIRECT_PORT_CALLS 1051 static_cast<FwAssertArgType>(portNum)
1054 return this->m_cmdRegOut_OutputPort[portNum].
isConnected();
1062 static_cast<FwAssertArgType>(portNum)
1065 return this->m_cmdResponseOut_OutputPort[portNum].
isConnected();
1073 static_cast<FwAssertArgType>(portNum)
1076 return this->m_eventOut_OutputPort[portNum].
isConnected();
1084 static_cast<FwAssertArgType>(portNum)
1087 return this->m_paramGetOut_OutputPort[portNum].
isConnected();
1095 static_cast<FwAssertArgType>(portNum)
1098 return this->m_paramSetOut_OutputPort[portNum].
isConnected();
1101 #if FW_ENABLE_TEXT_LOGGING == 1 1103 bool TlmPacketizerComponentBase ::
1104 isConnected_textEventOut_OutputPort(
FwIndexType portNum)
const 1107 (0 <= portNum) && (portNum < this->getNum_textEventOut_OutputPorts()),
1108 static_cast<FwAssertArgType>(portNum)
1111 return this->m_textEventOut_OutputPort[portNum].isConnected();
1121 static_cast<FwAssertArgType>(portNum)
1124 return this->m_timeGetOut_OutputPort[portNum].
isConnected();
1132 static_cast<FwAssertArgType>(portNum)
1135 return this->m_tlmOut_OutputPort[portNum].
isConnected();
1140 #if !FW_DIRECT_PORT_CALLS 1151 static_cast<FwAssertArgType>(portNum)
1154 return this->m_PktSend_OutputPort[portNum].
isConnected();
1162 static_cast<FwAssertArgType>(portNum)
1165 return this->m_pingOut_OutputPort[portNum].
isConnected();
1186 FW_ASSERT(opCode >= idBase, static_cast<FwAssertArgType>(opCode), static_cast<FwAssertArgType>(idBase));
1189 switch (opCode - idBase) {
1304 static_cast<FwAssertArgType>(portNum)
1312 ComponentIpcSerializableBuffer msg;
1316 _status = msg.serializeFrom(
1317 static_cast<FwEnumStoreType>(RUN_SCHED)
1321 static_cast<FwAssertArgType>(_status)
1325 _status = msg.serializeFrom(portNum);
1328 static_cast<FwAssertArgType>(_status)
1332 _status = msg.serializeFrom(context);
1335 static_cast<FwAssertArgType>(_status)
1344 static_cast<FwAssertArgType>(qStatus)
1359 static_cast<FwAssertArgType>(portNum)
1386 static_cast<FwAssertArgType>(portNum)
1411 static_cast<FwAssertArgType>(portNum)
1423 ComponentIpcSerializableBuffer msg;
1427 _status = msg.serializeFrom(
1428 static_cast<FwEnumStoreType>(CONFIGURESECTIONGROUPRATE_CONFIGUREGROUPRATE)
1432 static_cast<FwAssertArgType>(_status)
1436 _status = msg.serializeFrom(portNum);
1439 static_cast<FwAssertArgType>(_status)
1443 _status = msg.serializeFrom(section);
1446 static_cast<FwAssertArgType>(_status)
1450 _status = msg.serializeFrom(tlmGroup);
1453 static_cast<FwAssertArgType>(_status)
1457 _status = msg.serializeFrom(rateLogic);
1460 static_cast<FwAssertArgType>(_status)
1464 _status = msg.serializeFrom(minDelta);
1467 static_cast<FwAssertArgType>(_status)
1471 _status = msg.serializeFrom(maxDelta);
1474 static_cast<FwAssertArgType>(_status)
1483 static_cast<FwAssertArgType>(qStatus)
1497 static_cast<FwAssertArgType>(portNum)
1506 ComponentIpcSerializableBuffer msg;
1510 _status = msg.serializeFrom(
1511 static_cast<FwEnumStoreType>(CONTROLIN_ENABLESECTION)
1515 static_cast<FwAssertArgType>(_status)
1519 _status = msg.serializeFrom(portNum);
1522 static_cast<FwAssertArgType>(_status)
1526 _status = msg.serializeFrom(section);
1529 static_cast<FwAssertArgType>(_status)
1533 _status = msg.serializeFrom(enabled);
1536 static_cast<FwAssertArgType>(_status)
1545 static_cast<FwAssertArgType>(qStatus)
1558 static_cast<FwAssertArgType>(portNum)
1566 ComponentIpcSerializableBuffer msg;
1570 _status = msg.serializeFrom(
1571 static_cast<FwEnumStoreType>(PINGIN_PING)
1575 static_cast<FwAssertArgType>(_status)
1579 _status = msg.serializeFrom(portNum);
1582 static_cast<FwAssertArgType>(_status)
1586 _status = msg.serializeFrom(key);
1589 static_cast<FwAssertArgType>(_status)
1598 static_cast<FwAssertArgType>(qStatus)
1651 #if !FW_DIRECT_PORT_CALLS 1666 static_cast<FwAssertArgType>(portNum)
1670 this->m_PktSend_OutputPort[portNum].isConnected(),
1671 static_cast<FwAssertArgType>(portNum)
1673 this->m_PktSend_OutputPort[portNum].
invoke(
1687 static_cast<FwAssertArgType>(portNum)
1691 this->m_pingOut_OutputPort[portNum].isConnected(),
1692 static_cast<FwAssertArgType>(portNum)
1694 this->m_pingOut_OutputPort[portNum].
invoke(
1713 this->cmdResponseOut_out(0, opCode, cmdSeq, response);
1734 ComponentIpcSerializableBuffer msg;
1738 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_SET_LEVEL));
1741 static_cast<FwAssertArgType>(_status)
1747 _status = msg.serializeFrom(port);
1750 static_cast<FwAssertArgType>(_status)
1753 _status = msg.serializeFrom(opCode);
1756 static_cast<FwAssertArgType>(_status)
1759 _status = msg.serializeFrom(cmdSeq);
1762 static_cast<FwAssertArgType>(_status)
1765 _status = msg.serializeFrom(args);
1768 static_cast<FwAssertArgType>(_status)
1777 static_cast<FwAssertArgType>(qStatus)
1793 ComponentIpcSerializableBuffer msg;
1797 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_SEND_PKT));
1800 static_cast<FwAssertArgType>(_status)
1806 _status = msg.serializeFrom(port);
1809 static_cast<FwAssertArgType>(_status)
1812 _status = msg.serializeFrom(opCode);
1815 static_cast<FwAssertArgType>(_status)
1818 _status = msg.serializeFrom(cmdSeq);
1821 static_cast<FwAssertArgType>(_status)
1824 _status = msg.serializeFrom(args);
1827 static_cast<FwAssertArgType>(_status)
1836 static_cast<FwAssertArgType>(qStatus)
1852 ComponentIpcSerializableBuffer msg;
1856 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_ENABLE_SECTION));
1859 static_cast<FwAssertArgType>(_status)
1865 _status = msg.serializeFrom(port);
1868 static_cast<FwAssertArgType>(_status)
1871 _status = msg.serializeFrom(opCode);
1874 static_cast<FwAssertArgType>(_status)
1877 _status = msg.serializeFrom(cmdSeq);
1880 static_cast<FwAssertArgType>(_status)
1883 _status = msg.serializeFrom(args);
1886 static_cast<FwAssertArgType>(_status)
1895 static_cast<FwAssertArgType>(qStatus)
1911 ComponentIpcSerializableBuffer msg;
1915 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_ENABLE_GROUP));
1918 static_cast<FwAssertArgType>(_status)
1924 _status = msg.serializeFrom(port);
1927 static_cast<FwAssertArgType>(_status)
1930 _status = msg.serializeFrom(opCode);
1933 static_cast<FwAssertArgType>(_status)
1936 _status = msg.serializeFrom(cmdSeq);
1939 static_cast<FwAssertArgType>(_status)
1942 _status = msg.serializeFrom(args);
1945 static_cast<FwAssertArgType>(_status)
1954 static_cast<FwAssertArgType>(qStatus)
1970 ComponentIpcSerializableBuffer msg;
1974 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_FORCE_GROUP));
1977 static_cast<FwAssertArgType>(_status)
1983 _status = msg.serializeFrom(port);
1986 static_cast<FwAssertArgType>(_status)
1989 _status = msg.serializeFrom(opCode);
1992 static_cast<FwAssertArgType>(_status)
1995 _status = msg.serializeFrom(cmdSeq);
1998 static_cast<FwAssertArgType>(_status)
2001 _status = msg.serializeFrom(args);
2004 static_cast<FwAssertArgType>(_status)
2013 static_cast<FwAssertArgType>(qStatus)
2029 ComponentIpcSerializableBuffer msg;
2033 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_CONFIGURE_GROUP_RATES));
2036 static_cast<FwAssertArgType>(_status)
2042 _status = msg.serializeFrom(port);
2045 static_cast<FwAssertArgType>(_status)
2048 _status = msg.serializeFrom(opCode);
2051 static_cast<FwAssertArgType>(_status)
2054 _status = msg.serializeFrom(cmdSeq);
2057 static_cast<FwAssertArgType>(_status)
2060 _status = msg.serializeFrom(args);
2063 static_cast<FwAssertArgType>(_status)
2072 static_cast<FwAssertArgType>(qStatus)
2160 this->timeGetOut_out(0, _logTime);
2170 #if FW_AMPCS_COMPATIBLE 2175 static_cast<FwAssertArgType>(_status)
2179 #if FW_AMPCS_COMPATIBLE 2186 static_cast<FwAssertArgType>(_status)
2192 static_cast<FwAssertArgType>(_status)
2205 #if FW_ENABLE_TEXT_LOGGING 2206 if (this->isConnected_textEventOut_OutputPort(0)) {
2207 #if FW_OBJECT_NAMES == 1 2208 const char* _formatString =
2209 "(%s) %s: Telemetry ID 0x%" PRIx32
" not packetized";
2211 const char* _formatString =
2212 "%s: Telemetry ID 0x%" PRIx32
" not packetized";
2219 this->m_objName.toChar(),
2225 this->textEventOut_out(
2242 this->timeGetOut_out(0, _logTime);
2252 #if FW_AMPCS_COMPATIBLE 2257 static_cast<FwAssertArgType>(_status)
2261 #if FW_AMPCS_COMPATIBLE 2268 static_cast<FwAssertArgType>(_status)
2274 static_cast<FwAssertArgType>(_status)
2287 #if FW_ENABLE_TEXT_LOGGING 2288 if (this->isConnected_textEventOut_OutputPort(0)) {
2289 #if FW_OBJECT_NAMES == 1 2290 const char* _formatString =
2291 "(%s) %s: Telemetry send level to %" PRIu32
"";
2293 const char* _formatString =
2294 "%s: Telemetry send level to %" PRIu32
"";
2301 this->m_objName.toChar(),
2307 this->textEventOut_out(
2327 this->timeGetOut_out(0, _logTime);
2337 #if FW_AMPCS_COMPATIBLE 2342 static_cast<FwAssertArgType>(_status)
2346 #if FW_AMPCS_COMPATIBLE 2353 static_cast<FwAssertArgType>(_status)
2359 static_cast<FwAssertArgType>(_status)
2362 #if FW_AMPCS_COMPATIBLE 2369 static_cast<FwAssertArgType>(_status)
2375 static_cast<FwAssertArgType>(_status)
2388 #if FW_ENABLE_TEXT_LOGGING 2389 if (this->isConnected_textEventOut_OutputPort(0)) {
2390 #if FW_OBJECT_NAMES == 1 2391 const char* _formatString =
2392 "(%s) %s: Requested send level %" PRIu32
" higher than max packet level of %" PRIu32
"";
2394 const char* _formatString =
2395 "%s: Requested send level %" PRIu32
" higher than max packet level of %" PRIu32
"";
2402 this->m_objName.toChar(),
2409 this->textEventOut_out(
2426 this->timeGetOut_out(0, _logTime);
2436 #if FW_AMPCS_COMPATIBLE 2441 static_cast<FwAssertArgType>(_status)
2445 #if FW_AMPCS_COMPATIBLE 2448 static_cast<U8>(
sizeof(U32))
2452 static_cast<FwAssertArgType>(_status)
2458 static_cast<FwAssertArgType>(_status)
2471 #if FW_ENABLE_TEXT_LOGGING 2472 if (this->isConnected_textEventOut_OutputPort(0)) {
2473 #if FW_OBJECT_NAMES == 1 2474 const char* _formatString =
2475 "(%s) %s: Sent packet ID %" PRIu32
"";
2477 const char* _formatString =
2478 "%s: Sent packet ID %" PRIu32
"";
2485 this->m_objName.toChar(),
2491 this->textEventOut_out(
2508 this->timeGetOut_out(0, _logTime);
2518 #if FW_AMPCS_COMPATIBLE 2523 static_cast<FwAssertArgType>(_status)
2527 #if FW_AMPCS_COMPATIBLE 2530 static_cast<U8>(
sizeof(U32))
2534 static_cast<FwAssertArgType>(_status)
2540 static_cast<FwAssertArgType>(_status)
2553 #if FW_ENABLE_TEXT_LOGGING 2554 if (this->isConnected_textEventOut_OutputPort(0)) {
2555 #if FW_OBJECT_NAMES == 1 2556 const char* _formatString =
2557 "(%s) %s: Could not find packet ID %" PRIu32
"";
2559 const char* _formatString =
2560 "%s: Could not find packet ID %" PRIu32
"";
2567 this->m_objName.toChar(),
2573 this->textEventOut_out(
2593 this->timeGetOut_out(0, _logTime);
2603 #if FW_AMPCS_COMPATIBLE 2608 static_cast<FwAssertArgType>(_status)
2612 #if FW_AMPCS_COMPATIBLE 2619 static_cast<FwAssertArgType>(_status)
2625 static_cast<FwAssertArgType>(_status)
2628 #if FW_AMPCS_COMPATIBLE 2635 static_cast<FwAssertArgType>(_status)
2641 static_cast<FwAssertArgType>(_status)
2654 #if FW_ENABLE_TEXT_LOGGING 2655 if (this->isConnected_textEventOut_OutputPort(0)) {
2656 #if FW_OBJECT_NAMES == 1 2657 const char* _formatString =
2658 "(%s) %s: Section %s is unconfigurable and cannot be set to %s";
2660 const char* _formatString =
2661 "%s: Section %s is unconfigurable and cannot be set to %s";
2665 section.toString(sectionStr);
2667 enable.toString(enableStr);
2673 this->m_objName.toChar(),
2675 "SectionUnconfigurable ",
2680 this->textEventOut_out(
2707 this->timeGetOut_out(0, _tlmTime);
2737 static_cast<FwAssertArgType>(_stat)
2759 static_cast<FwAssertArgType>(_stat)
2800 FW_ASSERT(this->paramDelegatePtr !=
nullptr);
2823 FW_ASSERT(this->paramDelegatePtr !=
nullptr);
2843 FW_ASSERT(paramExternalDelegatePtr !=
nullptr);
2844 this->paramDelegatePtr = paramExternalDelegatePtr;
2856 this->timeGetOut_out(0, _time);
2871 ComponentIpcSerializableBuffer _msg;
2881 static_cast<FwAssertArgType>(_msgStatus)
2891 static_cast<FwAssertArgType>(_deserStatus)
2894 MsgTypeEnum _msgType =
static_cast<MsgTypeEnum
>(_desMsg);
2896 if (_msgType == TLMPACKETIZER_COMPONENT_EXIT) {
2901 _deserStatus = _msg.deserializeTo(portNum);
2904 static_cast<FwAssertArgType>(_deserStatus)
2912 _deserStatus = _msg.deserializeTo(context);
2915 static_cast<FwAssertArgType>(_deserStatus)
2927 case CONFIGURESECTIONGROUPRATE_CONFIGUREGROUPRATE: {
2930 _deserStatus = _msg.deserializeTo(section);
2933 static_cast<FwAssertArgType>(_deserStatus)
2938 _deserStatus = _msg.deserializeTo(tlmGroup);
2941 static_cast<FwAssertArgType>(_deserStatus)
2946 _deserStatus = _msg.deserializeTo(rateLogic);
2949 static_cast<FwAssertArgType>(_deserStatus)
2954 _deserStatus = _msg.deserializeTo(minDelta);
2957 static_cast<FwAssertArgType>(_deserStatus)
2962 _deserStatus = _msg.deserializeTo(maxDelta);
2965 static_cast<FwAssertArgType>(_deserStatus)
2981 case CONTROLIN_ENABLESECTION: {
2984 _deserStatus = _msg.deserializeTo(section);
2987 static_cast<FwAssertArgType>(_deserStatus)
2992 _deserStatus = _msg.deserializeTo(enabled);
2995 static_cast<FwAssertArgType>(_deserStatus)
3011 _deserStatus = _msg.deserializeTo(key);
3014 static_cast<FwAssertArgType>(_deserStatus)
3026 case CMD_SET_LEVEL: {
3029 _deserStatus = _msg.deserializeTo(_opCode);
3032 static_cast<FwAssertArgType>(_deserStatus)
3037 _deserStatus = _msg.deserializeTo(_cmdSeq);
3040 static_cast<FwAssertArgType>(_deserStatus)
3045 _deserStatus = _msg.deserializeTo(args);
3048 static_cast<FwAssertArgType>(_deserStatus)
3071 #if FW_CMD_CHECK_RESIDUAL 3091 case CMD_SEND_PKT: {
3094 _deserStatus = _msg.deserializeTo(_opCode);
3097 static_cast<FwAssertArgType>(_deserStatus)
3102 _deserStatus = _msg.deserializeTo(_cmdSeq);
3105 static_cast<FwAssertArgType>(_deserStatus)
3110 _deserStatus = _msg.deserializeTo(args);
3113 static_cast<FwAssertArgType>(_deserStatus)
3151 #if FW_CMD_CHECK_RESIDUAL 3172 case CMD_ENABLE_SECTION: {
3175 _deserStatus = _msg.deserializeTo(_opCode);
3178 static_cast<FwAssertArgType>(_deserStatus)
3183 _deserStatus = _msg.deserializeTo(_cmdSeq);
3186 static_cast<FwAssertArgType>(_deserStatus)
3191 _deserStatus = _msg.deserializeTo(args);
3194 static_cast<FwAssertArgType>(_deserStatus)
3232 #if FW_CMD_CHECK_RESIDUAL 3253 case CMD_ENABLE_GROUP: {
3256 _deserStatus = _msg.deserializeTo(_opCode);
3259 static_cast<FwAssertArgType>(_deserStatus)
3264 _deserStatus = _msg.deserializeTo(_cmdSeq);
3267 static_cast<FwAssertArgType>(_deserStatus)
3272 _deserStatus = _msg.deserializeTo(args);
3275 static_cast<FwAssertArgType>(_deserStatus)
3328 #if FW_CMD_CHECK_RESIDUAL 3350 case CMD_FORCE_GROUP: {
3353 _deserStatus = _msg.deserializeTo(_opCode);
3356 static_cast<FwAssertArgType>(_deserStatus)
3361 _deserStatus = _msg.deserializeTo(_cmdSeq);
3364 static_cast<FwAssertArgType>(_deserStatus)
3369 _deserStatus = _msg.deserializeTo(args);
3372 static_cast<FwAssertArgType>(_deserStatus)
3425 #if FW_CMD_CHECK_RESIDUAL 3447 case CMD_CONFIGURE_GROUP_RATES: {
3450 _deserStatus = _msg.deserializeTo(_opCode);
3453 static_cast<FwAssertArgType>(_deserStatus)
3458 _deserStatus = _msg.deserializeTo(_cmdSeq);
3461 static_cast<FwAssertArgType>(_deserStatus)
3466 _deserStatus = _msg.deserializeTo(args);
3469 static_cast<FwAssertArgType>(_deserStatus)
3552 #if FW_CMD_CHECK_RESIDUAL 3586 void TlmPacketizerComponentBase ::
3597 compPtr->cmdIn_handlerBase(
3609 void TlmPacketizerComponentBase ::
3618 compPtr->Run_handlerBase(
3635 return compPtr->TlmGet_handlerBase(
3643 void TlmPacketizerComponentBase ::
3654 compPtr->TlmRecv_handlerBase(
3662 void TlmPacketizerComponentBase ::
3663 m_p_configureSectionGroupRate_in(
3675 compPtr->configureSectionGroupRate_handlerBase(
3685 void TlmPacketizerComponentBase ::
3695 compPtr->controlIn_handlerBase(
3702 void TlmPacketizerComponentBase ::
3711 compPtr->pingIn_handlerBase(
3717 #if !FW_DIRECT_PORT_CALLS 3723 void TlmPacketizerComponentBase ::
3731 static_cast<FwAssertArgType>(portNum)
3735 this->m_cmdRegOut_OutputPort[portNum].isConnected(),
3736 static_cast<FwAssertArgType>(portNum)
3738 this->m_cmdRegOut_OutputPort[portNum].
invoke(
3743 void TlmPacketizerComponentBase ::
3753 static_cast<FwAssertArgType>(portNum)
3757 this->m_cmdResponseOut_OutputPort[portNum].isConnected(),
3758 static_cast<FwAssertArgType>(portNum)
3760 this->m_cmdResponseOut_OutputPort[portNum].
invoke(
3767 void TlmPacketizerComponentBase ::
3778 static_cast<FwAssertArgType>(portNum)
3782 this->m_eventOut_OutputPort[portNum].isConnected(),
3783 static_cast<FwAssertArgType>(portNum)
3785 this->m_eventOut_OutputPort[portNum].
invoke(
3802 static_cast<FwAssertArgType>(portNum)
3806 this->m_paramGetOut_OutputPort[portNum].isConnected(),
3807 static_cast<FwAssertArgType>(portNum)
3809 return this->m_paramGetOut_OutputPort[portNum].
invoke(
3815 void TlmPacketizerComponentBase ::
3824 static_cast<FwAssertArgType>(portNum)
3828 this->m_paramSetOut_OutputPort[portNum].isConnected(),
3829 static_cast<FwAssertArgType>(portNum)
3831 this->m_paramSetOut_OutputPort[portNum].
invoke(
3837 #if FW_ENABLE_TEXT_LOGGING 3839 void TlmPacketizerComponentBase ::
3849 (0 <= portNum) && (portNum < this->getNum_textEventOut_OutputPorts()),
3850 static_cast<FwAssertArgType>(portNum)
3854 this->m_textEventOut_OutputPort[portNum].isConnected(),
3855 static_cast<FwAssertArgType>(portNum)
3857 this->m_textEventOut_OutputPort[portNum].invoke(
3867 void TlmPacketizerComponentBase ::
3875 static_cast<FwAssertArgType>(portNum)
3879 this->m_timeGetOut_OutputPort[portNum].isConnected(),
3880 static_cast<FwAssertArgType>(portNum)
3882 this->m_timeGetOut_OutputPort[portNum].
invoke(
3887 void TlmPacketizerComponentBase ::
3897 static_cast<FwAssertArgType>(portNum)
3901 this->m_tlmOut_OutputPort[portNum].isConnected(),
3902 static_cast<FwAssertArgType>(portNum)
3904 this->m_tlmOut_OutputPort[portNum].
invoke(
3923 FW_ASSERT(this->paramDelegatePtr !=
nullptr);
3946 FW_ASSERT(this->paramDelegatePtr !=
nullptr);
3968 paramSave_SECTION_ENABLED()
3978 FW_ASSERT(this->paramDelegatePtr !=
nullptr);
3979 _stat = this->paramDelegatePtr->
serializeParam(_baseId, _id, _saveBuff);
3987 this->paramSetOut_out(
4000 paramSave_SECTION_CONFIGS()
4010 FW_ASSERT(this->paramDelegatePtr !=
nullptr);
4011 _stat = this->paramDelegatePtr->
serializeParam(_baseId, _id, _saveBuff);
4019 this->paramSetOut_out(
bool isConnected_PktSend_OutputPort(FwIndexType portNum) const
static constexpr FwSizeType CAPACITY
Serialization/Deserialization operation was successful.
void SEND_PKT_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Channel ID for GroupConfigs.
void addCallPort(InputTimePort *callPort)
Register an input port.
Svc::InputEnableSectionPort * get_controlIn_InputPort(FwIndexType portNum)
void invoke(Fw::ComBuffer &data, U32 context) const
Invoke a port connection.
void init()
Initialization function.
static constexpr FwSizeType CAPACITY
void set_PktSend_OutputPort(FwIndexType portNum, Fw::InputComPort *port)
Connect port to PktSend[portNum].
Set telemetry send level.
FwIdType FwOpcodeType
The type of a command opcode.
bool isConnected_eventOut_OutputPort(FwIndexType portNum) const
SerializeStatus serializeFrom(U8 val, Endianness mode=Endianness::BIG) override
Serialize an 8-bit unsigned integer value.
void pingIn_handlerBase(FwIndexType portNum, U32 key)
Handler base-class function for input port pingIn.
FwIdType getIdBase() const
PlatformSizeType FwSizeType
void tlmWrite_GroupConfigs(const Svc::TlmPacketizer_SectionConfigs &arg, Fw::Time _tlmTime=Fw::Time()) const
bool isConnected_tlmOut_OutputPort(FwIndexType portNum) const
void FORCE_GROUP_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Status receive(U8 *destination, FwSizeType capacity, BlockingType blockType, FwSizeType &actualSize, FwQueuePriorityType &priority) override
receive a message from the queue through delegate
Fw::InputCmdPort * get_cmdIn_InputPort(FwIndexType portNum)
static constexpr FwIndexType getNum_cmdResponseOut_OutputPorts()
bool isConnected_paramGetOut_OutputPort(FwIndexType portNum) const
Svc::InputConfigureGroupRatePort * get_configureSectionGroupRate_InputPort(FwIndexType portNum)
virtual void TlmRecv_handler(FwIndexType portNum, FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val)=0
Handler for input port TlmRecv.
void Run_handlerBase(FwIndexType portNum, U32 context)
Handler base-class function for input port Run.
Status
status returned from the queue send function
static constexpr FwIndexType getNum_PktSend_OutputPorts()
const char * toChar() const
Convert to a C-style char*.
virtual SerializeStatus deserializeParam(const FwPrmIdType base_id, const FwPrmIdType local_id, const ParamValid prmStat, SerialBufferBase &buff)=0
FwIdType FwPrmIdType
The type of a parameter identifier.
void log_WARNING_LO_NoChan(FwChanIdType Id) const
Opcode to set parameter SECTION_ENABLED.
static constexpr FwIndexType getNum_pingIn_InputPorts()
void addCallPort(InputPrmSetPort *callPort)
Register an input port.
virtual void configureSectionGroupRate_handler(FwIndexType portNum, const Svc::TelemetrySection §ion, FwChanIdType tlmGroup, const Svc::RateLogic &rateLogic, U32 minDelta, U32 maxDelta)=0
Handler for input port configureSectionGroupRate.
virtual void FORCE_GROUP_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, Svc::TelemetrySection section, FwChanIdType tlmGroup, Fw::Enabled enable)=0
virtual SerializeStatus serializeParam(const FwPrmIdType base_id, const FwPrmIdType local_id, SerialBufferBase &buff) const =0
void invoke(U32 key) const
Invoke a port connection.
void TlmRecv_handlerBase(FwIndexType portNum, FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val)
Handler base-class function for input port TlmRecv.
void controlIn_handlerBase(FwIndexType portNum, const Svc::TelemetrySection §ion, const Fw::Enabled &enabled)
Handler base-class function for input port controlIn.
The size of the serial representation.
bool isConnected_pingOut_OutputPort(FwIndexType portNum) const
virtual void controlIn_handler(FwIndexType portNum, const Svc::TelemetrySection §ion, const Fw::Enabled &enabled)=0
Handler for input port controlIn.
Opcode to save parameter SECTION_CONFIGS.
Telemetry channel is not part of a telemetry packet.
virtual void SEND_PKT_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, U32 id, Svc::TelemetrySection section)=0
void init()
Initialization function.
void cmdResponse_out(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response)
Emit command response.
Enum representing a command response.
No time base has been established (Required)
bool isConnected_paramSetOut_OutputPort(FwIndexType portNum) const
void addCallPort(InputCmdRegPort *callPort)
Register an input port.
void cmdIn_handlerBase(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Handler base-class function for input port cmdIn.
virtual void pingIn_preMsgHook(FwIndexType portNum, U32 key)
Pre-message hook for async input port pingIn.
virtual void SET_LEVEL_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, FwChanIdType level)=0
void init()
Initialization function.
Os::Queue m_queue
queue object for active component
void loadParameters()
Load the parameters from a parameter source.
void set_paramSetOut_OutputPort(FwIndexType portNum, Fw::InputPrmSetPort *port)
Connect port to paramSetOut[portNum].
void addCallPort(InputTlmPort *callPort)
Register an input port.
virtual ~TlmPacketizerComponentBase()
Destroy TlmPacketizerComponentBase object.
void addCallPort(InputPrmGetPort *callPort)
Register an input port.
Opcode to save parameter SECTION_ENABLED.
void tlmWrite_SectionEnabled(const Svc::TlmPacketizer_SectionEnabled &arg, Fw::Time _tlmTime=Fw::Time()) const
Write telemetry channel SectionEnabled.
void set_pingOut_OutputPort(FwIndexType portNum, Svc::InputPingPort *port)
Connect port to pingOut[portNum].
void init()
Object initializer.
virtual void CONFIGURE_GROUP_RATES_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, Svc::TelemetrySection section, FwChanIdType tlmGroup, Svc::RateLogic rateLogic, U32 minDelta, U32 maxDelta)=0
SerializeStatus
forward declaration for string
void registerExternalParameters(Fw::ParamExternalDelegate *paramExternalDelegatePtr)
Initialize the external parameter delegate.
Message will block until space is available.
virtual void configureSectionGroupRate_preMsgHook(FwIndexType portNum, const Svc::TelemetrySection §ion, FwChanIdType tlmGroup, const Svc::RateLogic &rateLogic, U32 minDelta, U32 maxDelta)
Pre-message hook for async input port configureSectionGroupRate.
Telemetry send level set.
FwIdType FwEventIdType
The type of an event identifier.
virtual void FORCE_GROUP_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command FORCE_GROUP.
void invoke(FwOpcodeType opCode) const
Invoke a port connection.
static constexpr FwSizeType CAPACITY
Force a packet to be sent.
#define FW_OBJECT_NAMES
Indicates whether or not object names are stored (more memory, can be used for tracking objects) ...
Svc::InputPingPort * get_pingIn_InputPort(FwIndexType portNum)
void init()
Initialization function.
static constexpr FwIndexType getNum_cmdRegOut_OutputPorts()
Fw::InputTlmGetPort * get_TlmGet_InputPort(FwIndexType portNum)
bool isConnected_timeGetOut_OutputPort(FwIndexType portNum) const
virtual void CONFIGURE_GROUP_RATES_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CONFIGURE_GROUP_RATES.
Less important informational events.
Os::Queue::Status createQueue(FwSizeType depth, FwSizeType msgSize)
virtual void Run_preMsgHook(FwIndexType portNum, U32 context)
Pre-message hook for async input port Run.
Enumeration for rate logic types for telemetry groups.
A less serious but recoverable event.
Fw::ParamValid invoke(FwPrmIdType id, Fw::ParamBuffer &val) const
void tlmWrite(FwChanIdType id, Fw::TlmBuffer &_tlmBuff, Fw::Time _tlmTime=Fw::Time()) const
void init()
Initialization function.
bool isConnected_cmdResponseOut_OutputPort(FwIndexType portNum) const
static constexpr FwIndexType getNum_timeGetOut_OutputPorts()
void invoke(Fw::Time &time) const
Invoke a port connection.
static constexpr FwIndexType getNum_paramGetOut_OutputPorts()
Serializable::SizeType getDeserializeSizeLeft() const override
Get remaining deserialization buffer size.
const char * toChar() const
Convert to a C-style char*.
void invoke(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response) const
Invoke a port connection.
virtual void ENABLE_GROUP_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, Svc::TelemetrySection section, FwChanIdType tlmGroup, Fw::Enabled enable)=0
Force telemetering a group on a section, even if disabled.
FwIdType FwChanIdType
The type of a telemetry channel identifier.
void addCallPort(InputPingPort *callPort)
Register an input port.
Status send(const U8 *buffer, FwSizeType size, FwQueuePriorityType priority, BlockingType blockType) override
send a message into the queue through delegate
void log_WARNING_LO_PacketNotFound(U32 id) const
void resetDeser() override
Reset deserialization pointer to beginning of buffer.
virtual void pingIn_handler(FwIndexType portNum, U32 key)=0
Handler for input port pingIn.
virtual void ENABLE_GROUP_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command ENABLE_GROUP.
Errors dispatching messages.
void invoke(FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val) const
Invoke a port connection.
void set_eventOut_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to eventOut[portNum].
Enum representing event severity.
static constexpr FwIndexType getNum_tlmOut_OutputPorts()
virtual void ENABLE_SECTION_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, Svc::TelemetrySection section, Fw::Enabled enable)=0
Couldn't find the packet to send.
void set_tlmOut_OutputPort(FwIndexType portNum, Fw::InputTlmPort *port)
Connect port to tlmOut[portNum].
Enabled and disabled states.
FormatStatus format(const CHAR *formatString,...)
write formatted string to buffer
Fw::TlmValid TlmGet_handlerBase(FwIndexType portNum, FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val)
Handler base-class function for input port TlmGet.
void init()
Initialization function.
Command successfully executed.
virtual void Run_handler(FwIndexType portNum, U32 context)=0
Handler for input port Run.
Enable / disable telemetry of a group on a section.
uint8_t U8
8-bit unsigned integer
static constexpr FwIndexType getNum_eventOut_OutputPorts()
void ENABLE_GROUP_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Set Min and Max Deltas between successive packets.
Command failed to deserialize.
PlatformQueuePriorityType FwQueuePriorityType
The type of queue priorities used.
Command had execution error.
Important informational events.
Svc::TlmPacketizer_SectionEnabled paramGet_SECTION_ENABLED(Fw::ParamValid &valid)
void invoke(FwEventIdType id, Fw::Time &timeTag, const Fw::LogSeverity &severity, Fw::LogBuffer &args) const
Invoke a port connection.
void PktSend_out(FwIndexType portNum, Fw::ComBuffer &data, U32 context) const
Invoke output port PktSend.
Opcode to set parameter SECTION_CONFIGS.
void log_WARNING_LO_SectionUnconfigurable(Svc::TelemetrySection section, Fw::Enabled enable) const
Log event SectionUnconfigurable.
static constexpr FwIndexType getNum_paramSetOut_OutputPorts()
void log_WARNING_LO_MaxLevelExceed(FwChanIdType level, FwChanIdType max) const
virtual void controlIn_preMsgHook(FwIndexType portNum, const Svc::TelemetrySection §ion, const Fw::Enabled &enabled)
Pre-message hook for async input port controlIn.
Channel ID for SectionEnabled.
A message was sent requesting an exit of the loop.
Parameter to control section enable flags.
PlatformIndexType FwIndexType
TlmPacketizerComponentBase(const char *compName="")
Construct TlmPacketizerComponentBase object.
The size of the serial representation.
static constexpr FwIndexType getNum_configureSectionGroupRate_InputPorts()
virtual void parametersLoaded()
Called whenever parameters are loaded.
void log_ACTIVITY_HI_LevelSet(FwChanIdType id) const
void set_timeGetOut_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to timeGetOut[portNum].
void addCallPort(InputLogPort *callPort)
Register an input port.
void ENABLE_SECTION_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void init()
Initialization function.
virtual void SEND_PKT_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command SEND_PKT.
Command failed validation.
void configureSectionGroupRate_handlerBase(FwIndexType portNum, const Svc::TelemetrySection §ion, FwChanIdType tlmGroup, const Svc::RateLogic &rateLogic, U32 minDelta, U32 maxDelta)
Handler base-class function for input port configureSectionGroupRate.
RateGroupDivider component implementation.
Enable / disable telemetry of a group on a section.
virtual void parameterUpdated(FwPrmIdType id)
Called whenever a parameter is updated.
message sent/received okay
SerializeStatus deserializeTo(U8 &val, Endianness mode=Endianness::BIG) override
Deserialize an 8-bit unsigned integer value.
Enum representing parameter validity.
bool isConnected_cmdRegOut_OutputPort(FwIndexType portNum) const
Svc::InputSchedPort * get_Run_InputPort(FwIndexType portNum)
static constexpr FwIndexType getNum_TlmGet_InputPorts()
void invoke(FwPrmIdType id, Fw::ParamBuffer &val) const
Invoke a port connection.
Telemetry send level set.
void addCallPort(InputComPort *callPort)
Register an input port.
Fw::InputTlmPort * get_TlmRecv_InputPort(FwIndexType portNum)
Svc::TlmPacketizer_SectionConfigs paramGet_SECTION_CONFIGS(Fw::ParamValid &valid)
static constexpr FwIndexType getNum_controlIn_InputPorts()
virtual void ENABLE_SECTION_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command ENABLE_SECTION.
void regCommands()
Register commands with the Command Dispatcher.
Message will return with status when space is unavailable.
Implementation of malloc based allocator.
void init()
Initialization function.
void init()
Initialization function.
void pingOut_out(FwIndexType portNum, U32 key) const
Invoke output port pingOut.
void CONFIGURE_GROUP_RATES_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void log_ACTIVITY_LO_PacketSent(U32 id) const
void SET_LEVEL_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
virtual void SET_LEVEL_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command SET_LEVEL.
static constexpr FwIndexType getNum_pingOut_OutputPorts()
static constexpr FwSizeType CAPACITY
void set_paramGetOut_OutputPort(FwIndexType portNum, Fw::InputPrmGetPort *port)
Connect port to paramGetOut[portNum].
static constexpr FwIndexType getNum_Run_InputPorts()
void set_cmdResponseOut_OutputPort(FwIndexType portNum, Fw::InputCmdResponsePort *port)
Connect port to cmdResponseOut[portNum].
Parameter to control section configuration.
void addCallPort(InputCmdResponsePort *callPort)
Register an input port.
virtual Fw::TlmValid TlmGet_handler(FwIndexType portNum, FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val)=0
Handler for input port TlmGet.
static constexpr FwIndexType getNum_TlmRecv_InputPorts()
message to exit active component task
void set_cmdRegOut_OutputPort(FwIndexType portNum, Fw::InputCmdRegPort *port)
Connect port to cmdRegOut[portNum].
static constexpr FwIndexType getNum_cmdIn_InputPorts()