11#if FW_ENABLE_TEXT_LOGGING
35 class ComponentIpcSerializableBuffer :
50 return sizeof(m_buff);
57 const U8* getBuffAddr()
const {
63 U8 m_buff[SERIALIZATION_SIZE];
72 void HealthComponentBase ::
84 port < static_cast<PlatformIntType>(this->getNum_CmdDisp_InputPorts());
87 this->m_CmdDisp_InputPort[port].init();
88 this->m_CmdDisp_InputPort[port].addCallComp(
92 this->m_CmdDisp_InputPort[port].setPortNum(port);
94#if FW_OBJECT_NAMES == 1
103 this->m_CmdDisp_InputPort[port].setObjName(portName);
110 port < static_cast<PlatformIntType>(this->getNum_PingReturn_InputPorts());
113 this->m_PingReturn_InputPort[port].init();
114 this->m_PingReturn_InputPort[port].addCallComp(
118 this->m_PingReturn_InputPort[port].setPortNum(port);
120#if FW_OBJECT_NAMES == 1
129 this->m_PingReturn_InputPort[port].setObjName(portName);
136 port < static_cast<PlatformIntType>(this->getNum_Run_InputPorts());
139 this->m_Run_InputPort[port].init();
140 this->m_Run_InputPort[port].addCallComp(
144 this->m_Run_InputPort[port].setPortNum(port);
146#if FW_OBJECT_NAMES == 1
155 this->m_Run_InputPort[port].setObjName(portName);
162 port < static_cast<PlatformIntType>(this->getNum_CmdReg_OutputPorts());
165 this->m_CmdReg_OutputPort[port].init();
167#if FW_OBJECT_NAMES == 1
176 this->m_CmdReg_OutputPort[port].setObjName(portName);
183 port < static_cast<PlatformIntType>(this->getNum_CmdStatus_OutputPorts());
186 this->m_CmdStatus_OutputPort[port].init();
188#if FW_OBJECT_NAMES == 1
197 this->m_CmdStatus_OutputPort[port].setObjName(portName);
204 port < static_cast<PlatformIntType>(this->getNum_Log_OutputPorts());
207 this->m_Log_OutputPort[port].init();
209#if FW_OBJECT_NAMES == 1
218 this->m_Log_OutputPort[port].setObjName(portName);
222#if FW_ENABLE_TEXT_LOGGING == 1
226 port < static_cast<PlatformIntType>(this->getNum_LogText_OutputPorts());
229 this->m_LogText_OutputPort[port].init();
231#if FW_OBJECT_NAMES == 1
240 this->m_LogText_OutputPort[port].setObjName(portName);
248 port < static_cast<PlatformIntType>(this->getNum_Time_OutputPorts());
251 this->m_Time_OutputPort[port].init();
253#if FW_OBJECT_NAMES == 1
262 this->m_Time_OutputPort[port].setObjName(portName);
269 port < static_cast<PlatformIntType>(this->getNum_Tlm_OutputPorts());
272 this->m_Tlm_OutputPort[port].init();
274#if FW_OBJECT_NAMES == 1
283 this->m_Tlm_OutputPort[port].setObjName(portName);
290 port < static_cast<PlatformIntType>(this->getNum_PingSend_OutputPorts());
293 this->m_PingSend_OutputPort[port].init();
295#if FW_OBJECT_NAMES == 1
304 this->m_PingSend_OutputPort[port].setObjName(portName);
311 port < static_cast<PlatformIntType>(this->getNum_WdogStroke_OutputPorts());
314 this->m_WdogStroke_OutputPort[port].init();
316#if FW_OBJECT_NAMES == 1
325 this->m_WdogStroke_OutputPort[port].setObjName(portName);
331 ComponentIpcSerializableBuffer::SERIALIZATION_SIZE
72 void HealthComponentBase :: {
…}
347 portNum < this->getNum_CmdDisp_InputPorts(),
351 return &this->m_CmdDisp_InputPort[portNum];
362 portNum < this->getNum_PingReturn_InputPorts(),
366 return &this->m_PingReturn_InputPort[portNum];
373 portNum < this->getNum_Run_InputPorts(),
377 return &this->m_Run_InputPort[portNum];
384 void HealthComponentBase ::
385 set_CmdReg_OutputPort(
391 portNum < this->getNum_CmdReg_OutputPorts(),
395 this->m_CmdReg_OutputPort[portNum].addCallPort(port);
384 void HealthComponentBase :: {
…}
398 void HealthComponentBase ::
399 set_CmdStatus_OutputPort(
405 portNum < this->getNum_CmdStatus_OutputPorts(),
409 this->m_CmdStatus_OutputPort[portNum].addCallPort(port);
398 void HealthComponentBase :: {
…}
412 void HealthComponentBase ::
419 portNum < this->getNum_Log_OutputPorts(),
423 this->m_Log_OutputPort[portNum].addCallPort(port);
412 void HealthComponentBase :: {
…}
426#if FW_ENABLE_TEXT_LOGGING == 1
428 void HealthComponentBase ::
429 set_LogText_OutputPort(
435 portNum < this->getNum_LogText_OutputPorts(),
439 this->m_LogText_OutputPort[portNum].addCallPort(port);
444 void HealthComponentBase ::
451 portNum < this->getNum_Time_OutputPorts(),
455 this->m_Time_OutputPort[portNum].addCallPort(port);
444 void HealthComponentBase :: {
…}
458 void HealthComponentBase ::
465 portNum < this->getNum_Tlm_OutputPorts(),
469 this->m_Tlm_OutputPort[portNum].addCallPort(port);
458 void HealthComponentBase :: {
…}
476 void HealthComponentBase ::
477 set_PingSend_OutputPort(
483 portNum < this->getNum_PingSend_OutputPorts(),
487 this->m_PingSend_OutputPort[portNum].addCallPort(port);
476 void HealthComponentBase :: {
…}
490 void HealthComponentBase ::
491 set_WdogStroke_OutputPort(
497 portNum < this->getNum_WdogStroke_OutputPorts(),
501 this->m_WdogStroke_OutputPort[portNum].addCallPort(port);
490 void HealthComponentBase :: {
…}
504#if FW_PORT_SERIALIZATION
510 void HealthComponentBase ::
511 set_CmdReg_OutputPort(
513 Fw::InputSerializePort* port
517 portNum < this->getNum_CmdReg_OutputPorts(),
521 this->m_CmdReg_OutputPort[portNum].registerSerialPort(port);
524 void HealthComponentBase ::
525 set_CmdStatus_OutputPort(
527 Fw::InputSerializePort* port
531 portNum < this->getNum_CmdStatus_OutputPorts(),
535 this->m_CmdStatus_OutputPort[portNum].registerSerialPort(port);
538 void HealthComponentBase ::
541 Fw::InputSerializePort* port
545 portNum < this->getNum_Log_OutputPorts(),
549 this->m_Log_OutputPort[portNum].registerSerialPort(port);
552#if FW_ENABLE_TEXT_LOGGING == 1
554 void HealthComponentBase ::
555 set_LogText_OutputPort(
557 Fw::InputSerializePort* port
561 portNum < this->getNum_LogText_OutputPorts(),
565 this->m_LogText_OutputPort[portNum].registerSerialPort(port);
570 void HealthComponentBase ::
573 Fw::InputSerializePort* port
577 portNum < this->getNum_Time_OutputPorts(),
581 this->m_Time_OutputPort[portNum].registerSerialPort(port);
584 void HealthComponentBase ::
587 Fw::InputSerializePort* port
591 portNum < this->getNum_Tlm_OutputPorts(),
595 this->m_Tlm_OutputPort[portNum].registerSerialPort(port);
600#if FW_PORT_SERIALIZATION
606 void HealthComponentBase ::
607 set_PingSend_OutputPort(
609 Fw::InputSerializePort* port
613 portNum < this->getNum_PingSend_OutputPorts(),
617 this->m_PingSend_OutputPort[portNum].registerSerialPort(port);
620 void HealthComponentBase ::
621 set_WdogStroke_OutputPort(
623 Fw::InputSerializePort* port
627 portNum < this->getNum_WdogStroke_OutputPorts(),
631 this->m_WdogStroke_OutputPort[portNum].registerSerialPort(port);
640 void HealthComponentBase ::
643 FW_ASSERT(this->m_CmdReg_OutputPort[0].isConnected());
645 this->m_CmdReg_OutputPort[0].invoke(
646 this->getIdBase() + OPCODE_HLTH_ENABLE
649 this->m_CmdReg_OutputPort[0].invoke(
650 this->getIdBase() + OPCODE_HLTH_PING_ENABLE
653 this->m_CmdReg_OutputPort[0].invoke(
654 this->getIdBase() + OPCODE_HLTH_CHNG_PING
640 void HealthComponentBase :: {
…}
662 HealthComponentBase ::
663 HealthComponentBase(
const char* compName) :
664 Fw::QueuedComponentBase(compName)
662 HealthComponentBase :: {
…}
669 HealthComponentBase ::
670 ~HealthComponentBase()
669 HealthComponentBase :: {
…}
680 getNum_CmdDisp_InputPorts()
690 getNum_PingReturn_InputPorts()
696 getNum_Run_InputPorts()
706 getNum_CmdReg_OutputPorts()
712 getNum_CmdStatus_OutputPorts()
718 getNum_Log_OutputPorts()
723#if FW_ENABLE_TEXT_LOGGING == 1
726 getNum_LogText_OutputPorts()
734 getNum_Time_OutputPorts()
740 getNum_Tlm_OutputPorts()
750 getNum_PingSend_OutputPorts()
756 getNum_WdogStroke_OutputPorts()
765 bool HealthComponentBase ::
769 portNum < this->getNum_CmdReg_OutputPorts(),
773 return this->m_CmdReg_OutputPort[portNum].isConnected();
765 bool HealthComponentBase :: {
…}
776 bool HealthComponentBase ::
780 portNum < this->getNum_CmdStatus_OutputPorts(),
784 return this->m_CmdStatus_OutputPort[portNum].isConnected();
776 bool HealthComponentBase :: {
…}
787 bool HealthComponentBase ::
791 portNum < this->getNum_Log_OutputPorts(),
795 return this->m_Log_OutputPort[portNum].isConnected();
787 bool HealthComponentBase :: {
…}
798#if FW_ENABLE_TEXT_LOGGING == 1
800 bool HealthComponentBase ::
804 portNum < this->getNum_LogText_OutputPorts(),
808 return this->m_LogText_OutputPort[portNum].isConnected();
813 bool HealthComponentBase ::
817 portNum < this->getNum_Time_OutputPorts(),
821 return this->m_Time_OutputPort[portNum].isConnected();
813 bool HealthComponentBase :: {
…}
824 bool HealthComponentBase ::
828 portNum < this->getNum_Tlm_OutputPorts(),
832 return this->m_Tlm_OutputPort[portNum].isConnected();
824 bool HealthComponentBase :: {
…}
839 bool HealthComponentBase ::
843 portNum < this->getNum_PingSend_OutputPorts(),
847 return this->m_PingSend_OutputPort[portNum].isConnected();
839 bool HealthComponentBase :: {
…}
850 bool HealthComponentBase ::
854 portNum < this->getNum_WdogStroke_OutputPorts(),
858 return this->m_WdogStroke_OutputPort[portNum].isConnected();
850 bool HealthComponentBase :: {
…}
867 void HealthComponentBase ::
868 PingReturn_handlerBase(
875 portNum < this->getNum_PingReturn_InputPorts(),
880 PingReturn_preMsgHook(
884 ComponentIpcSerializableBuffer msg;
888 _status = msg.serialize(
897 _status = msg.serialize(portNum);
904 _status = msg.serialize(key);
867 void HealthComponentBase :: {
…}
920 void HealthComponentBase ::
928 portNum < this->getNum_Run_InputPorts(),
920 void HealthComponentBase :: {
…}
947 void HealthComponentBase ::
948 PingReturn_preMsgHook(
947 void HealthComponentBase :: {
…}
960 void HealthComponentBase ::
967 portNum < this->getNum_PingSend_OutputPorts(),
970 this->m_PingSend_OutputPort[portNum].invoke(
960 void HealthComponentBase :: {
…}
975 void HealthComponentBase ::
982 portNum < this->getNum_WdogStroke_OutputPorts(),
985 this->m_WdogStroke_OutputPort[portNum].invoke(
975 void HealthComponentBase :: {
…}
994 void HealthComponentBase ::
1001 FW_ASSERT(this->m_CmdStatus_OutputPort[0].isConnected());
1002 this->m_CmdStatus_OutputPort[0].invoke(opCode, cmdSeq, response);
994 void HealthComponentBase :: {
…}
1011 void HealthComponentBase ::
1012 HLTH_ENABLE_cmdHandlerBase(
1019 this->HLTH_ENABLE_preMsgHook(opCode,cmdSeq);
1023 ComponentIpcSerializableBuffer msg;
1027 _status = msg.serialize(
static_cast<NATIVE_INT_TYPE>(CMD_HLTH_ENABLE));
1036 _status = msg.serialize(port);
1042 _status = msg.serialize(opCode);
1048 _status = msg.serialize(cmdSeq);
1054 _status = msg.serialize(args);
1011 void HealthComponentBase :: {
…}
1070 void HealthComponentBase ::
1071 HLTH_PING_ENABLE_cmdHandlerBase(
1078 this->HLTH_PING_ENABLE_preMsgHook(opCode,cmdSeq);
1082 ComponentIpcSerializableBuffer msg;
1086 _status = msg.serialize(
static_cast<NATIVE_INT_TYPE>(CMD_HLTH_PING_ENABLE));
1095 _status = msg.serialize(port);
1101 _status = msg.serialize(opCode);
1107 _status = msg.serialize(cmdSeq);
1113 _status = msg.serialize(args);
1070 void HealthComponentBase :: {
…}
1129 void HealthComponentBase ::
1130 HLTH_CHNG_PING_cmdHandlerBase(
1137 this->HLTH_CHNG_PING_preMsgHook(opCode,cmdSeq);
1141 ComponentIpcSerializableBuffer msg;
1145 _status = msg.serialize(
static_cast<NATIVE_INT_TYPE>(CMD_HLTH_CHNG_PING));
1154 _status = msg.serialize(port);
1160 _status = msg.serialize(opCode);
1166 _status = msg.serialize(cmdSeq);
1172 _status = msg.serialize(args);
1129 void HealthComponentBase :: {
…}
1196 void HealthComponentBase ::
1197 HLTH_ENABLE_preMsgHook(
1196 void HealthComponentBase :: {
…}
1205 void HealthComponentBase ::
1206 HLTH_PING_ENABLE_preMsgHook(
1205 void HealthComponentBase :: {
…}
1214 void HealthComponentBase ::
1215 HLTH_CHNG_PING_preMsgHook(
1214 void HealthComponentBase :: {
…}
1227 void HealthComponentBase ::
1232 if (this->m_Time_OutputPort[0].isConnected()) {
1233 this->m_Time_OutputPort[0].invoke(_logTime);
1238 _id = this->getIdBase() + EVENTID_HLTH_PING_WARN;
1241 if (this->m_Log_OutputPort[0].isConnected()) {
1245#if FW_AMPCS_COMPATIBLE
1254 _status = entry.
serialize(_logBuff, 40);
1260 this->m_Log_OutputPort[0].invoke(
1269#if FW_ENABLE_TEXT_LOGGING
1270 if (this->m_LogText_OutputPort[0].isConnected()) {
1271#if FW_OBJECT_NAMES == 1
1272 const char* _formatString =
1273 "(%s) %s: Ping entry %s late warning";
1275 const char* _formatString =
1276 "%s: Ping entry %s late warning";
1295 this->m_LogText_OutputPort[0].invoke(
1227 void HealthComponentBase :: {
…}
1305 void HealthComponentBase ::
1310 if (this->m_Time_OutputPort[0].isConnected()) {
1311 this->m_Time_OutputPort[0].invoke(_logTime);
1316 _id = this->getIdBase() + EVENTID_HLTH_PING_LATE;
1319 if (this->m_Log_OutputPort[0].isConnected()) {
1323#if FW_AMPCS_COMPATIBLE
1325 _status = _logBuff.
serialize(
static_cast<U8>(1 + 1));
1338 _status = _logBuff.
serialize(
static_cast<U32
>(0));
1345 _status = entry.
serialize(_logBuff, 40);
1351 this->m_Log_OutputPort[0].invoke(
1360#if FW_ENABLE_TEXT_LOGGING
1361 if (this->m_LogText_OutputPort[0].isConnected()) {
1362#if FW_OBJECT_NAMES == 1
1363 const char* _formatString =
1364 "(%s) %s: Ping entry %s did not respond";
1366 const char* _formatString =
1367 "%s: Ping entry %s did not respond";
1386 this->m_LogText_OutputPort[0].invoke(
1305 void HealthComponentBase :: {
…}
1396 void HealthComponentBase ::
1397 log_FATAL_HLTH_PING_WRONG_KEY(
1404 if (this->m_Time_OutputPort[0].isConnected()) {
1405 this->m_Time_OutputPort[0].invoke(_logTime);
1410 _id = this->getIdBase() + EVENTID_HLTH_PING_WRONG_KEY;
1413 if (this->m_Log_OutputPort[0].isConnected()) {
1417#if FW_AMPCS_COMPATIBLE
1419 _status = _logBuff.
serialize(
static_cast<U8>(2 + 1));
1432 _status = _logBuff.
serialize(
static_cast<U32
>(0));
1439 _status = entry.
serialize(_logBuff, 40);
1445#if FW_AMPCS_COMPATIBLE
1448 static_cast<U8>(
sizeof(U32))
1461 this->m_Log_OutputPort[0].invoke(
1470#if FW_ENABLE_TEXT_LOGGING
1471 if (this->m_LogText_OutputPort[0].isConnected()) {
1472#if FW_OBJECT_NAMES == 1
1473 const char* _formatString =
1474 "(%s) %s: Ping entry %s responded with wrong key 0x%" PRIx32
"";
1476 const char* _formatString =
1477 "%s: Ping entry %s responded with wrong key 0x%" PRIx32
"";
1489 "HLTH_PING_WRONG_KEY ",
1497 this->m_LogText_OutputPort[0].invoke(
1396 void HealthComponentBase :: {
…}
1507 void HealthComponentBase ::
1508 log_ACTIVITY_HI_HLTH_CHECK_ENABLE(
Fw::Enabled enabled)
1512 if (this->m_Time_OutputPort[0].isConnected()) {
1513 this->m_Time_OutputPort[0].invoke(_logTime);
1518 _id = this->getIdBase() + EVENTID_HLTH_CHECK_ENABLE;
1521 if (this->m_Log_OutputPort[0].isConnected()) {
1525#if FW_AMPCS_COMPATIBLE
1534#if FW_AMPCS_COMPATIBLE
1550 this->m_Log_OutputPort[0].invoke(
1559#if FW_ENABLE_TEXT_LOGGING
1560 if (this->m_LogText_OutputPort[0].isConnected()) {
1561#if FW_OBJECT_NAMES == 1
1562 const char* _formatString =
1563 "(%s) %s: Health checking set to %s";
1565 const char* _formatString =
1566 "%s: Health checking set to %s";
1572 enabled.toString(enabledStr);
1581 "HLTH_CHECK_ENABLE ",
1588 this->m_LogText_OutputPort[0].invoke(
1507 void HealthComponentBase :: {
…}
1598 void HealthComponentBase ::
1599 log_ACTIVITY_HI_HLTH_CHECK_PING(
1606 if (this->m_Time_OutputPort[0].isConnected()) {
1607 this->m_Time_OutputPort[0].invoke(_logTime);
1612 _id = this->getIdBase() + EVENTID_HLTH_CHECK_PING;
1615 if (this->m_Log_OutputPort[0].isConnected()) {
1619#if FW_AMPCS_COMPATIBLE
1628#if FW_AMPCS_COMPATIBLE
1644 _status = entry.
serialize(_logBuff, 40);
1650 this->m_Log_OutputPort[0].invoke(
1659#if FW_ENABLE_TEXT_LOGGING
1660 if (this->m_LogText_OutputPort[0].isConnected()) {
1661#if FW_OBJECT_NAMES == 1
1662 const char* _formatString =
1663 "(%s) %s: Health checking set to %s for %s";
1665 const char* _formatString =
1666 "%s: Health checking set to %s for %s";
1672 enabled.toString(enabledStr);
1689 this->m_LogText_OutputPort[0].invoke(
1598 void HealthComponentBase :: {
…}
1699 void HealthComponentBase ::
1704 if (this->m_Time_OutputPort[0].isConnected()) {
1705 this->m_Time_OutputPort[0].invoke(_logTime);
1710 _id = this->getIdBase() + EVENTID_HLTH_CHECK_LOOKUP_ERROR;
1713 if (this->m_Log_OutputPort[0].isConnected()) {
1717#if FW_AMPCS_COMPATIBLE
1726 _status = entry.
serialize(_logBuff, 40);
1732 this->m_Log_OutputPort[0].invoke(
1741#if FW_ENABLE_TEXT_LOGGING
1742 if (this->m_LogText_OutputPort[0].isConnected()) {
1743#if FW_OBJECT_NAMES == 1
1744 const char* _formatString =
1745 "(%s) %s: Couldn't find entry %s";
1747 const char* _formatString =
1748 "%s: Couldn't find entry %s";
1760 "HLTH_CHECK_LOOKUP_ERROR ",
1767 this->m_LogText_OutputPort[0].invoke(
1699 void HealthComponentBase :: {
…}
1777 void HealthComponentBase ::
1778 log_ACTIVITY_HI_HLTH_PING_UPDATED(
1786 if (this->m_Time_OutputPort[0].isConnected()) {
1787 this->m_Time_OutputPort[0].invoke(_logTime);
1792 _id = this->getIdBase() + EVENTID_HLTH_PING_UPDATED;
1795 if (this->m_Log_OutputPort[0].isConnected()) {
1799#if FW_AMPCS_COMPATIBLE
1808 _status = entry.
serialize(_logBuff, 40);
1814#if FW_AMPCS_COMPATIBLE
1817 static_cast<U8>(
sizeof(U32))
1830#if FW_AMPCS_COMPATIBLE
1833 static_cast<U8>(
sizeof(U32))
1846 this->m_Log_OutputPort[0].invoke(
1855#if FW_ENABLE_TEXT_LOGGING
1856 if (this->m_LogText_OutputPort[0].isConnected()) {
1857#if FW_OBJECT_NAMES == 1
1858 const char* _formatString =
1859 "(%s) %s: Health ping for %s changed to WARN %" PRIu32
" FATAL %" PRIu32
"";
1861 const char* _formatString =
1862 "%s: Health ping for %s changed to WARN %" PRIu32
" FATAL %" PRIu32
"";
1874 "HLTH_PING_UPDATED ",
1883 this->m_LogText_OutputPort[0].invoke(
1777 void HealthComponentBase :: {
…}
1893 void HealthComponentBase ::
1894 log_WARNING_HI_HLTH_PING_INVALID_VALUES(
1902 if (this->m_Time_OutputPort[0].isConnected()) {
1903 this->m_Time_OutputPort[0].invoke(_logTime);
1908 _id = this->getIdBase() + EVENTID_HLTH_PING_INVALID_VALUES;
1911 if (this->m_Log_OutputPort[0].isConnected()) {
1915#if FW_AMPCS_COMPATIBLE
1924 _status = entry.
serialize(_logBuff, 40);
1930#if FW_AMPCS_COMPATIBLE
1933 static_cast<U8>(
sizeof(U32))
1946#if FW_AMPCS_COMPATIBLE
1949 static_cast<U8>(
sizeof(U32))
1962 this->m_Log_OutputPort[0].invoke(
1971#if FW_ENABLE_TEXT_LOGGING
1972 if (this->m_LogText_OutputPort[0].isConnected()) {
1973#if FW_OBJECT_NAMES == 1
1974 const char* _formatString =
1975 "(%s) %s: Health ping for %s invalid values: WARN %" PRIu32
" FATAL %" PRIu32
"";
1977 const char* _formatString =
1978 "%s: Health ping for %s invalid values: WARN %" PRIu32
" FATAL %" PRIu32
"";
1990 "HLTH_PING_INVALID_VALUES ",
1999 this->m_LogText_OutputPort[0].invoke(
1893 void HealthComponentBase :: {
…}
2013 void HealthComponentBase ::
2014 tlmWrite_PingLateWarnings(
2019 if (this->m_Tlm_OutputPort[0].isConnected()) {
2021 this->m_Time_OutputPort[0].isConnected() &&
2024 this->m_Time_OutputPort[0].invoke(_tlmTime);
2036 _id = this->getIdBase() + CHANNELID_PINGLATEWARNINGS;
2038 this->m_Tlm_OutputPort[0].invoke(
2013 void HealthComponentBase :: {
…}
2053 if (this->m_Time_OutputPort[0].isConnected()) {
2055 this->m_Time_OutputPort[0].invoke(_time);
2070 ComponentIpcSerializableBuffer msg;
2098 MsgTypeEnum msgType =
static_cast<MsgTypeEnum
>(desMsg);
2100 if (msgType == HEALTH_COMPONENT_EXIT) {
2101 return MSG_DISPATCH_EXIT;
2105 deserStatus = msg.deserialize(portNum);
2113 case PINGRETURN_PING: {
2116 deserStatus = msg.deserialize(key);
2122 this->PingReturn_handler(
2131 case CMD_HLTH_ENABLE: {
2134 deserStatus = msg.deserialize(opCode);
2142 deserStatus = msg.deserialize(cmdSeq);
2150 deserStatus = msg.deserialize(args);
2163 if (this->m_CmdStatus_OutputPort[0].isConnected()) {
2164 this->cmdResponse_out(
2176#if FW_CMD_CHECK_RESIDUAL
2178 if (this->m_CmdStatus_OutputPort[0].isConnected()) {
2187 this->HLTH_ENABLE_cmdHandler(
2196 case CMD_HLTH_PING_ENABLE: {
2199 deserStatus = msg.deserialize(opCode);
2207 deserStatus = msg.deserialize(cmdSeq);
2215 deserStatus = msg.deserialize(args);
2228 if (this->m_CmdStatus_OutputPort[0].isConnected()) {
2229 this->cmdResponse_out(
2243 if (this->m_CmdStatus_OutputPort[0].isConnected()) {
2244 this->cmdResponse_out(
2256#if FW_CMD_CHECK_RESIDUAL
2258 if (this->m_CmdStatus_OutputPort[0].isConnected()) {
2267 this->HLTH_PING_ENABLE_cmdHandler(
2277 case CMD_HLTH_CHNG_PING: {
2280 deserStatus = msg.deserialize(opCode);
2288 deserStatus = msg.deserialize(cmdSeq);
2296 deserStatus = msg.deserialize(args);
2309 if (this->m_CmdStatus_OutputPort[0].isConnected()) {
2310 this->cmdResponse_out(
2324 if (this->m_CmdStatus_OutputPort[0].isConnected()) {
2325 this->cmdResponse_out(
2339 if (this->m_CmdStatus_OutputPort[0].isConnected()) {
2340 this->cmdResponse_out(
2352#if FW_CMD_CHECK_RESIDUAL
2354 if (this->m_CmdStatus_OutputPort[0].isConnected()) {
2363 this->HLTH_CHNG_PING_cmdHandler(
2374 return MSG_DISPATCH_ERROR;
2377 return MSG_DISPATCH_OK;
2384 void HealthComponentBase ::
2396 const U32 idBase = callComp->
getIdBase();
2397 FW_ASSERT(opCode >= idBase, opCode, idBase);
2400 switch (opCode - idBase) {
2401 case OPCODE_HLTH_ENABLE: {
2410 case OPCODE_HLTH_PING_ENABLE: {
2419 case OPCODE_HLTH_CHNG_PING: {
2434 void HealthComponentBase ::
2442 HealthComponentBase* compPtr =
static_cast<HealthComponentBase*
>(callComp);
2449 void HealthComponentBase ::
2457 HealthComponentBase* compPtr =
static_cast<HealthComponentBase*
>(callComp);
2458 compPtr->Run_handlerBase(
PlatformIntType NATIVE_INT_TYPE
uint8_t U8
8-bit unsigned integer
#define FW_NUM_ARRAY_ELEMENTS(a)
number of elements in an array
PlatformUIntType NATIVE_UINT_TYPE
int PlatformIntType
DefaultTypes.hpp provides fallback defaults for the platform types.
#define PRI_PlatformIntType
@ TB_NONE
No time base has been established.
PlatformAssertArgType FwAssertArgType
#define FW_LOG_TEXT_BUFFER_SIZE
Max size of string for text log message.
#define FW_OBJECT_NAMES
Indicates whether or not object names are stored (more memory, can be used for tracking objects)
@ ACTIVE_COMPONENT_EXIT
message to exit active component task
Enum representing a command response.
@ FORMAT_ERROR
Command failed to deserialize.
Enabled and disabled states.
@ SERIALIZED_SIZE
The size of the serial representation.
@ WARNING_HI
A serious but recoverable event.
@ ACTIVITY_HI
Important informational events.
@ FATAL
A fatal non-recoverable event.
@ WARNING_LO
A less serious but recoverable event.
const char * toChar() const override
SerializeStatus serialize(SerializeBufferBase &buffer) const override
serialization function
void init()
Object initializer.
@ MSG_DISPATCH_EMPTY
No more messages in the queue.
NATIVE_UINT_TYPE getBuffLeft() const
returns how much deserialization buffer is left
void resetDeser()
reset deserialization to beginning
SerializeStatus deserialize(U8 &val)
deserialize 8-bit unsigned int
SerializeStatus serialize(U8 val)
serialize 8-bit unsigned int
const char * toChar() const
gets char buffer
@ QUEUE_NO_MORE_MSGS
If non-blocking, all the messages have been drained.
@ QUEUE_OK
message sent/received okay
@ QUEUE_NONBLOCKING
Queue receive always returns even if there is no message.
Auto-generated base for Health component.
void PingReturn_handlerBase(NATIVE_INT_TYPE portNum, U32 key)
Handler base-class function for input port PingReturn.
void HLTH_PING_ENABLE_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void HLTH_CHNG_PING_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void HLTH_ENABLE_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
SerializeStatus
forward declaration for string
@ FW_SERIALIZE_OK
Serialization/Deserialization operation was successful.