9 #if FW_ENABLE_TEXT_LOGGING 35 class ComponentIpcSerializableBuffer :
45 MAX_DATA_SIZE =
sizeof(BuffUnion),
47 SERIALIZATION_SIZE = DATA_OFFSET + MAX_DATA_SIZE
51 return sizeof(m_buff);
58 const U8* getBuffAddr()
const {
64 U8 m_buff[SERIALIZATION_SIZE];
88 this->m_cmdIn_InputPort[port].
init();
93 this->m_cmdIn_InputPort[port].
setPortNum(port);
95 #if FW_OBJECT_NAMES == 1 99 this->m_objName.toChar(),
102 this->m_cmdIn_InputPort[port].setObjName(portName.
toChar());
112 this->m_Run_InputPort[port].
init();
119 #if FW_OBJECT_NAMES == 1 123 this->m_objName.toChar(),
126 this->m_Run_InputPort[port].setObjName(portName.
toChar());
136 this->m_TlmGet_InputPort[port].
init();
141 this->m_TlmGet_InputPort[port].
setPortNum(port);
143 #if FW_OBJECT_NAMES == 1 147 this->m_objName.toChar(),
150 this->m_TlmGet_InputPort[port].setObjName(portName.
toChar());
160 this->m_TlmRecv_InputPort[port].
init();
165 this->m_TlmRecv_InputPort[port].
setPortNum(port);
167 #if FW_OBJECT_NAMES == 1 171 this->m_objName.toChar(),
174 this->m_TlmRecv_InputPort[port].setObjName(portName.
toChar());
184 this->m_pingIn_InputPort[port].
init();
189 this->m_pingIn_InputPort[port].
setPortNum(port);
191 #if FW_OBJECT_NAMES == 1 195 this->m_objName.toChar(),
198 this->m_pingIn_InputPort[port].setObjName(portName.
toChar());
208 this->m_cmdRegOut_OutputPort[port].
init();
210 #if FW_OBJECT_NAMES == 1 214 this->m_objName.toChar(),
217 this->m_cmdRegOut_OutputPort[port].setObjName(portName.
toChar());
227 this->m_cmdResponseOut_OutputPort[port].
init();
229 #if FW_OBJECT_NAMES == 1 233 this->m_objName.toChar(),
236 this->m_cmdResponseOut_OutputPort[port].setObjName(portName.
toChar());
246 this->m_eventOut_OutputPort[port].
init();
248 #if FW_OBJECT_NAMES == 1 252 this->m_objName.toChar(),
255 this->m_eventOut_OutputPort[port].setObjName(portName.
toChar());
259 #if FW_ENABLE_TEXT_LOGGING == 1 263 port < static_cast<FwIndexType>(this->getNum_textEventOut_OutputPorts());
266 this->m_textEventOut_OutputPort[port].
init();
268 #if FW_OBJECT_NAMES == 1 272 this->m_objName.toChar(),
275 this->m_textEventOut_OutputPort[port].setObjName(portName.
toChar());
286 this->m_timeGetOut_OutputPort[port].
init();
288 #if FW_OBJECT_NAMES == 1 292 this->m_objName.toChar(),
295 this->m_timeGetOut_OutputPort[port].setObjName(portName.
toChar());
305 this->m_tlmOut_OutputPort[port].
init();
307 #if FW_OBJECT_NAMES == 1 311 this->m_objName.toChar(),
314 this->m_tlmOut_OutputPort[port].setObjName(portName.
toChar());
324 this->m_PktSend_OutputPort[port].
init();
326 #if FW_OBJECT_NAMES == 1 330 this->m_objName.toChar(),
333 this->m_PktSend_OutputPort[port].setObjName(portName.
toChar());
343 this->m_pingOut_OutputPort[port].
init();
345 #if FW_OBJECT_NAMES == 1 349 this->m_objName.toChar(),
352 this->m_pingOut_OutputPort[port].setObjName(portName.
toChar());
359 static_cast<FwSizeType>(ComponentIpcSerializableBuffer::SERIALIZATION_SIZE)
363 static_cast<FwAssertArgType>(qStat)
376 static_cast<FwAssertArgType>(portNum)
379 return &this->m_cmdIn_InputPort[portNum];
391 static_cast<FwAssertArgType>(portNum)
394 return &this->m_Run_InputPort[portNum];
402 static_cast<FwAssertArgType>(portNum)
405 return &this->m_TlmGet_InputPort[portNum];
413 static_cast<FwAssertArgType>(portNum)
416 return &this->m_TlmRecv_InputPort[portNum];
424 static_cast<FwAssertArgType>(portNum)
427 return &this->m_pingIn_InputPort[portNum];
442 static_cast<FwAssertArgType>(portNum)
445 this->m_cmdRegOut_OutputPort[portNum].
addCallPort(port);
456 static_cast<FwAssertArgType>(portNum)
459 this->m_cmdResponseOut_OutputPort[portNum].
addCallPort(port);
470 static_cast<FwAssertArgType>(portNum)
473 this->m_eventOut_OutputPort[portNum].
addCallPort(port);
476 #if FW_ENABLE_TEXT_LOGGING == 1 478 void TlmPacketizerComponentBase ::
479 set_textEventOut_OutputPort(
485 (0 <= portNum) && (portNum < this->getNum_textEventOut_OutputPorts()),
486 static_cast<FwAssertArgType>(portNum)
489 this->m_textEventOut_OutputPort[portNum].addCallPort(port);
502 static_cast<FwAssertArgType>(portNum)
505 this->m_timeGetOut_OutputPort[portNum].
addCallPort(port);
516 static_cast<FwAssertArgType>(portNum)
519 this->m_tlmOut_OutputPort[portNum].
addCallPort(port);
534 static_cast<FwAssertArgType>(portNum)
537 this->m_PktSend_OutputPort[portNum].
addCallPort(port);
548 static_cast<FwAssertArgType>(portNum)
551 this->m_pingOut_OutputPort[portNum].
addCallPort(port);
554 #if FW_PORT_SERIALIZATION 563 Fw::InputSerializePort* port
568 static_cast<FwAssertArgType>(portNum)
571 this->m_cmdRegOut_OutputPort[portNum].registerSerialPort(port);
577 Fw::InputSerializePort* port
582 static_cast<FwAssertArgType>(portNum)
585 this->m_cmdResponseOut_OutputPort[portNum].registerSerialPort(port);
591 Fw::InputSerializePort* port
596 static_cast<FwAssertArgType>(portNum)
599 this->m_eventOut_OutputPort[portNum].registerSerialPort(port);
602 #if FW_ENABLE_TEXT_LOGGING == 1 604 void TlmPacketizerComponentBase ::
605 set_textEventOut_OutputPort(
607 Fw::InputSerializePort* port
611 (0 <= portNum) && (portNum < this->getNum_textEventOut_OutputPorts()),
612 static_cast<FwAssertArgType>(portNum)
615 this->m_textEventOut_OutputPort[portNum].registerSerialPort(port);
623 Fw::InputSerializePort* port
628 static_cast<FwAssertArgType>(portNum)
631 this->m_timeGetOut_OutputPort[portNum].registerSerialPort(port);
637 Fw::InputSerializePort* port
642 static_cast<FwAssertArgType>(portNum)
645 this->m_tlmOut_OutputPort[portNum].registerSerialPort(port);
650 #if FW_PORT_SERIALIZATION 659 Fw::InputSerializePort* port
664 static_cast<FwAssertArgType>(portNum)
667 this->m_PktSend_OutputPort[portNum].registerSerialPort(port);
673 Fw::InputSerializePort* port
678 static_cast<FwAssertArgType>(portNum)
681 this->m_pingOut_OutputPort[portNum].registerSerialPort(port);
693 FW_ASSERT(this->m_cmdRegOut_OutputPort[0].isConnected());
695 this->m_cmdRegOut_OutputPort[0].
invoke(
699 this->m_cmdRegOut_OutputPort[0].
invoke(
710 Fw::ActiveComponentBase(compName)
781 #if FW_ENABLE_TEXT_LOGGING == 1 784 getNum_textEventOut_OutputPorts()
const 828 static_cast<FwAssertArgType>(portNum)
831 return this->m_cmdRegOut_OutputPort[portNum].
isConnected();
839 static_cast<FwAssertArgType>(portNum)
842 return this->m_cmdResponseOut_OutputPort[portNum].
isConnected();
850 static_cast<FwAssertArgType>(portNum)
853 return this->m_eventOut_OutputPort[portNum].
isConnected();
856 #if FW_ENABLE_TEXT_LOGGING == 1 858 bool TlmPacketizerComponentBase ::
859 isConnected_textEventOut_OutputPort(
FwIndexType portNum)
862 (0 <= portNum) && (portNum < this->getNum_textEventOut_OutputPorts()),
863 static_cast<FwAssertArgType>(portNum)
866 return this->m_textEventOut_OutputPort[portNum].isConnected();
876 static_cast<FwAssertArgType>(portNum)
879 return this->m_timeGetOut_OutputPort[portNum].
isConnected();
887 static_cast<FwAssertArgType>(portNum)
890 return this->m_tlmOut_OutputPort[portNum].
isConnected();
902 static_cast<FwAssertArgType>(portNum)
905 return this->m_PktSend_OutputPort[portNum].
isConnected();
913 static_cast<FwAssertArgType>(portNum)
916 return this->m_pingOut_OutputPort[portNum].
isConnected();
934 static_cast<FwAssertArgType>(portNum)
942 ComponentIpcSerializableBuffer msg;
946 _status = msg.serialize(
947 static_cast<FwEnumStoreType>(RUN_SCHED)
951 static_cast<FwAssertArgType>(_status)
955 _status = msg.serialize(portNum);
958 static_cast<FwAssertArgType>(_status)
962 _status = msg.serialize(context);
965 static_cast<FwAssertArgType>(_status)
974 static_cast<FwAssertArgType>(qStatus)
989 static_cast<FwAssertArgType>(portNum)
1016 static_cast<FwAssertArgType>(portNum)
1037 static_cast<FwAssertArgType>(portNum)
1045 ComponentIpcSerializableBuffer msg;
1049 _status = msg.serialize(
1050 static_cast<FwEnumStoreType>(PINGIN_PING)
1054 static_cast<FwAssertArgType>(_status)
1058 _status = msg.serialize(portNum);
1061 static_cast<FwAssertArgType>(_status)
1065 _status = msg.serialize(key);
1068 static_cast<FwAssertArgType>(_status)
1077 static_cast<FwAssertArgType>(qStatus)
1120 static_cast<FwAssertArgType>(portNum)
1124 this->m_PktSend_OutputPort[portNum].isConnected(),
1125 static_cast<FwAssertArgType>(portNum)
1127 this->m_PktSend_OutputPort[portNum].
invoke(
1141 static_cast<FwAssertArgType>(portNum)
1145 this->m_pingOut_OutputPort[portNum].isConnected(),
1146 static_cast<FwAssertArgType>(portNum)
1148 this->m_pingOut_OutputPort[portNum].
invoke(
1164 FW_ASSERT(this->m_cmdResponseOut_OutputPort[0].isConnected());
1165 this->m_cmdResponseOut_OutputPort[0].
invoke(opCode, cmdSeq, response);
1186 ComponentIpcSerializableBuffer msg;
1190 _status = msg.serialize(static_cast<FwEnumStoreType>(CMD_SET_LEVEL));
1193 static_cast<FwAssertArgType>(_status)
1199 _status = msg.serialize(port);
1202 static_cast<FwAssertArgType>(_status)
1205 _status = msg.serialize(opCode);
1208 static_cast<FwAssertArgType>(_status)
1211 _status = msg.serialize(cmdSeq);
1214 static_cast<FwAssertArgType>(_status)
1217 _status = msg.serialize(args);
1220 static_cast<FwAssertArgType>(_status)
1229 static_cast<FwAssertArgType>(qStatus)
1245 ComponentIpcSerializableBuffer msg;
1249 _status = msg.serialize(static_cast<FwEnumStoreType>(CMD_SEND_PKT));
1252 static_cast<FwAssertArgType>(_status)
1258 _status = msg.serialize(port);
1261 static_cast<FwAssertArgType>(_status)
1264 _status = msg.serialize(opCode);
1267 static_cast<FwAssertArgType>(_status)
1270 _status = msg.serialize(cmdSeq);
1273 static_cast<FwAssertArgType>(_status)
1276 _status = msg.serialize(args);
1279 static_cast<FwAssertArgType>(_status)
1288 static_cast<FwAssertArgType>(qStatus)
1331 if (this->m_timeGetOut_OutputPort[0].isConnected()) {
1332 this->m_timeGetOut_OutputPort[0].
invoke(_logTime);
1340 if (this->m_eventOut_OutputPort[0].isConnected()) {
1344 #if FW_AMPCS_COMPATIBLE 1346 _status = _logBuff.
serialize(static_cast<U8>(1));
1349 static_cast<FwAssertArgType>(_status)
1353 #if FW_AMPCS_COMPATIBLE 1356 static_cast<U8>(
sizeof(U32))
1360 static_cast<FwAssertArgType>(_status)
1366 static_cast<FwAssertArgType>(_status)
1369 this->m_eventOut_OutputPort[0].
invoke(
1378 #if FW_ENABLE_TEXT_LOGGING 1379 if (this->m_textEventOut_OutputPort[0].isConnected()) {
1380 #if FW_OBJECT_NAMES == 1 1381 const char* _formatString =
1382 "(%s) %s: Telemetry ID 0x%" PRIx32
" not packetized";
1384 const char* _formatString =
1385 "%s: Telemetry ID 0x%" PRIx32
" not packetized";
1392 this->m_objName.toChar(),
1398 this->m_textEventOut_OutputPort[0].invoke(
1413 if (this->m_timeGetOut_OutputPort[0].isConnected()) {
1414 this->m_timeGetOut_OutputPort[0].
invoke(_logTime);
1422 if (this->m_eventOut_OutputPort[0].isConnected()) {
1426 #if FW_AMPCS_COMPATIBLE 1428 _status = _logBuff.
serialize(static_cast<U8>(1));
1431 static_cast<FwAssertArgType>(_status)
1435 #if FW_AMPCS_COMPATIBLE 1438 static_cast<U8>(
sizeof(U32))
1442 static_cast<FwAssertArgType>(_status)
1448 static_cast<FwAssertArgType>(_status)
1451 this->m_eventOut_OutputPort[0].
invoke(
1460 #if FW_ENABLE_TEXT_LOGGING 1461 if (this->m_textEventOut_OutputPort[0].isConnected()) {
1462 #if FW_OBJECT_NAMES == 1 1463 const char* _formatString =
1464 "(%s) %s: Telemetry send level to %" PRIu32
"";
1466 const char* _formatString =
1467 "%s: Telemetry send level to %" PRIu32
"";
1474 this->m_objName.toChar(),
1480 this->m_textEventOut_OutputPort[0].invoke(
1498 if (this->m_timeGetOut_OutputPort[0].isConnected()) {
1499 this->m_timeGetOut_OutputPort[0].
invoke(_logTime);
1507 if (this->m_eventOut_OutputPort[0].isConnected()) {
1511 #if FW_AMPCS_COMPATIBLE 1513 _status = _logBuff.
serialize(static_cast<U8>(2));
1516 static_cast<FwAssertArgType>(_status)
1520 #if FW_AMPCS_COMPATIBLE 1523 static_cast<U8>(
sizeof(U32))
1527 static_cast<FwAssertArgType>(_status)
1533 static_cast<FwAssertArgType>(_status)
1536 #if FW_AMPCS_COMPATIBLE 1539 static_cast<U8>(
sizeof(U32))
1543 static_cast<FwAssertArgType>(_status)
1549 static_cast<FwAssertArgType>(_status)
1552 this->m_eventOut_OutputPort[0].
invoke(
1561 #if FW_ENABLE_TEXT_LOGGING 1562 if (this->m_textEventOut_OutputPort[0].isConnected()) {
1563 #if FW_OBJECT_NAMES == 1 1564 const char* _formatString =
1565 "(%s) %s: Requested send level %" PRIu32
" higher than max packet level of %" PRIu32
"";
1567 const char* _formatString =
1568 "%s: Requested send level %" PRIu32
" higher than max packet level of %" PRIu32
"";
1575 this->m_objName.toChar(),
1582 this->m_textEventOut_OutputPort[0].invoke(
1597 if (this->m_timeGetOut_OutputPort[0].isConnected()) {
1598 this->m_timeGetOut_OutputPort[0].
invoke(_logTime);
1606 if (this->m_eventOut_OutputPort[0].isConnected()) {
1610 #if FW_AMPCS_COMPATIBLE 1612 _status = _logBuff.
serialize(static_cast<U8>(1));
1615 static_cast<FwAssertArgType>(_status)
1619 #if FW_AMPCS_COMPATIBLE 1622 static_cast<U8>(
sizeof(U32))
1626 static_cast<FwAssertArgType>(_status)
1632 static_cast<FwAssertArgType>(_status)
1635 this->m_eventOut_OutputPort[0].
invoke(
1644 #if FW_ENABLE_TEXT_LOGGING 1645 if (this->m_textEventOut_OutputPort[0].isConnected()) {
1646 #if FW_OBJECT_NAMES == 1 1647 const char* _formatString =
1648 "(%s) %s: Sent packet ID %" PRIu32
"";
1650 const char* _formatString =
1651 "%s: Sent packet ID %" PRIu32
"";
1658 this->m_objName.toChar(),
1664 this->m_textEventOut_OutputPort[0].invoke(
1679 if (this->m_timeGetOut_OutputPort[0].isConnected()) {
1680 this->m_timeGetOut_OutputPort[0].
invoke(_logTime);
1688 if (this->m_eventOut_OutputPort[0].isConnected()) {
1692 #if FW_AMPCS_COMPATIBLE 1694 _status = _logBuff.
serialize(static_cast<U8>(1));
1697 static_cast<FwAssertArgType>(_status)
1701 #if FW_AMPCS_COMPATIBLE 1704 static_cast<U8>(
sizeof(U32))
1708 static_cast<FwAssertArgType>(_status)
1714 static_cast<FwAssertArgType>(_status)
1717 this->m_eventOut_OutputPort[0].
invoke(
1726 #if FW_ENABLE_TEXT_LOGGING 1727 if (this->m_textEventOut_OutputPort[0].isConnected()) {
1728 #if FW_OBJECT_NAMES == 1 1729 const char* _formatString =
1730 "(%s) %s: Could not find packet ID %" PRIu32
"";
1732 const char* _formatString =
1733 "%s: Could not find packet ID %" PRIu32
"";
1740 this->m_objName.toChar(),
1746 this->m_textEventOut_OutputPort[0].invoke(
1766 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1768 this->m_timeGetOut_OutputPort[0].isConnected() &&
1771 this->m_timeGetOut_OutputPort[0].
invoke(_tlmTime);
1778 static_cast<FwAssertArgType>(_stat)
1785 this->m_tlmOut_OutputPort[0].
invoke(
1800 if (this->m_timeGetOut_OutputPort[0].isConnected()) {
1802 this->m_timeGetOut_OutputPort[0].
invoke(_time);
1817 ComponentIpcSerializableBuffer _msg;
1827 static_cast<FwAssertArgType>(_msgStatus)
1837 static_cast<FwAssertArgType>(_deserStatus)
1840 MsgTypeEnum _msgType =
static_cast<MsgTypeEnum
>(_desMsg);
1842 if (_msgType == TLMPACKETIZER_COMPONENT_EXIT) {
1847 _deserStatus = _msg.deserialize(portNum);
1850 static_cast<FwAssertArgType>(_deserStatus)
1858 _deserStatus = _msg.deserialize(context);
1861 static_cast<FwAssertArgType>(_deserStatus)
1876 _deserStatus = _msg.deserialize(key);
1879 static_cast<FwAssertArgType>(_deserStatus)
1891 case CMD_SET_LEVEL: {
1894 _deserStatus = _msg.deserialize(_opCode);
1897 static_cast<FwAssertArgType>(_deserStatus)
1902 _deserStatus = _msg.deserialize(_cmdSeq);
1905 static_cast<FwAssertArgType>(_deserStatus)
1910 _deserStatus = _msg.deserialize(args);
1913 static_cast<FwAssertArgType>(_deserStatus)
1923 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
1936 #if FW_CMD_CHECK_RESIDUAL 1938 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
1956 case CMD_SEND_PKT: {
1959 _deserStatus = _msg.deserialize(_opCode);
1962 static_cast<FwAssertArgType>(_deserStatus)
1967 _deserStatus = _msg.deserialize(_cmdSeq);
1970 static_cast<FwAssertArgType>(_deserStatus)
1975 _deserStatus = _msg.deserialize(args);
1978 static_cast<FwAssertArgType>(_deserStatus)
1988 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
2001 #if FW_CMD_CHECK_RESIDUAL 2003 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
2031 void TlmPacketizerComponentBase ::
2043 const U32 idBase = callComp->
getIdBase();
2044 FW_ASSERT(opCode >= idBase, static_cast<FwAssertArgType>(opCode), static_cast<FwAssertArgType>(idBase));
2047 switch (opCode - idBase) {
2049 compPtr->SET_LEVEL_cmdHandlerBase(
2058 compPtr->SEND_PKT_cmdHandlerBase(
2072 void TlmPacketizerComponentBase ::
2081 compPtr->Run_handlerBase(
2098 return compPtr->TlmGet_handlerBase(
2106 void TlmPacketizerComponentBase ::
2117 compPtr->TlmRecv_handlerBase(
2125 void TlmPacketizerComponentBase ::
2134 compPtr->pingIn_handlerBase(
Serialization/Deserialization operation was successful.
void SEND_PKT_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
FwIndexType getNum_cmdRegOut_OutputPorts() const
void addCallPort(InputTimePort *callPort)
Register an input port.
void invoke(Fw::ComBuffer &data, U32 context) const
Invoke a port interface.
void init()
Initialization function.
void set_PktSend_OutputPort(FwIndexType portNum, Fw::InputComPort *port)
Connect port to PktSend[portNum].
void pingIn_handlerBase(FwIndexType portNum, U32 key)
Handler base-class function for input port pingIn.
PlatformSizeType FwSizeType
FwIndexType getNum_Run_InputPorts() const
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)
Telemetry send level set.
FwIndexType getNum_pingIn_InputPorts() const
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
SerializeStatus serialize(U8 val)
serialize 8-bit unsigned int
Channel ID for SendLevel.
U32 FwChanIdType
The type of a telemetry channel identifier.
void invoke(U32 key) const
Invoke a port interface.
void TlmRecv_handlerBase(FwIndexType portNum, FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val)
Handler base-class function for input port TlmRecv.
FwIndexType getNum_eventOut_OutputPorts() const
void PktSend_out(FwIndexType portNum, Fw::ComBuffer &data, U32 context)
Invoke output port PktSend.
bool isConnected_tlmOut_OutputPort(FwIndexType portNum)
void init()
Initialization function.
void cmdResponse_out(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response)
Emit command response.
Enum representing a command response.
void addCallPort(InputCmdRegPort *callPort)
Register an input port.
virtual void pingIn_preMsgHook(FwIndexType portNum, U32 key)
Pre-message hook for async input port pingIn.
FwIndexType getNum_timeGetOut_OutputPorts() const
Os::Queue m_queue
queue object for active component
void addCallPort(InputTlmPort *callPort)
Register an input port.
virtual ~TlmPacketizerComponentBase()
Destroy TlmPacketizerComponentBase object.
void set_pingOut_OutputPort(FwIndexType portNum, Svc::InputPingPort *port)
Connect port to pingOut[portNum].
void init()
Object initializer.
U32 FwEventIdType
The type of an event identifier.
SerializeStatus
forward declaration for string
Message will block until space is available.
Force a packet to be sent.
void invoke(FwOpcodeType opCode) const
Invoke a port interface.
void log_WARNING_LO_NoChan(U32 Id) const
U32 FwOpcodeType
The type of a command opcode.
#define FW_OBJECT_NAMES
Indicates whether or not object names are stored (more memory, can be used for tracking objects) ...
Serializable::SizeType getBuffLeft() const
returns how much deserialization buffer is left
Svc::InputPingPort * get_pingIn_InputPort(FwIndexType portNum)
void init()
Initialization function.
Telemetry send level set.
Fw::InputTlmGetPort * get_TlmGet_InputPort(FwIndexType portNum)
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.
Couldn't find the packet to send.
A less serious but recoverable event.
void init()
Initialization function.
void invoke(Fw::Time &time) const
Invoke a port interface.
const char * toChar() const
void invoke(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response) const
Invoke a port interface.
void addCallPort(InputPingPort *callPort)
Register an input port.
FwIndexType getNum_TlmGet_InputPorts() const
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()
reset deserialization to beginning
message to exit active component task
virtual void pingIn_handler(FwIndexType portNum, U32 key)=0
Handler for input port pingIn.
Errors dispatching messages.
void invoke(FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val) const
Invoke a port interface.
bool isConnected_cmdRegOut_OutputPort(FwIndexType portNum)
void set_eventOut_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to eventOut[portNum].
void set_tlmOut_OutputPort(FwIndexType portNum, Fw::InputTlmPort *port)
Connect port to tlmOut[portNum].
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.
void log_WARNING_LO_MaxLevelExceed(U32 level, U32 max) const
virtual void Run_handler(FwIndexType portNum, U32 context)=0
Handler for input port Run.
uint8_t U8
8-bit unsigned integer
Set telemetry send level.
Command failed to deserialize.
PlatformQueuePriorityType FwQueuePriorityType
The type of queue priorities used.
Important informational events.
virtual void SET_LEVEL_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, U32 level)=0
void invoke(FwEventIdType id, Fw::Time &timeTag, const Fw::LogSeverity &severity, Fw::LogBuffer &args) const
Invoke a port interface.
virtual void SEND_PKT_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, U32 id)=0
A message was sent requesting an exit of the loop.
FwIndexType getNum_TlmRecv_InputPorts() const
No time base has been established.
void tlmWrite_SendLevel(U32 arg, Fw::Time _tlmTime=Fw::Time()) const
FwIndexType getNum_cmdResponseOut_OutputPorts() const
SerializeStatus deserialize(U8 &val)
deserialize 8-bit unsigned int
PlatformIndexType FwIndexType
TlmPacketizerComponentBase(const char *compName="")
Construct TlmPacketizerComponentBase object.
#define FW_NUM_ARRAY_ELEMENTS(a)
number of elements in an array
void set_timeGetOut_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to timeGetOut[portNum].
void addCallPort(InputLogPort *callPort)
Register an input port.
void init()
Initialization function.
virtual void SEND_PKT_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command SEND_PKT.
FwIndexType getNum_cmdIn_InputPorts() const
RateGroupDivider component implementation.
message sent/received okay
bool isConnected_PktSend_OutputPort(FwIndexType portNum)
Svc::InputSchedPort * get_Run_InputPort(FwIndexType portNum)
bool isConnected_pingOut_OutputPort(FwIndexType portNum)
FwIndexType getNum_PktSend_OutputPorts() const
void addCallPort(InputComPort *callPort)
Register an input port.
Fw::InputTlmPort * get_TlmRecv_InputPort(FwIndexType portNum)
void log_ACTIVITY_HI_LevelSet(U32 id) const
FwIndexType getNum_tlmOut_OutputPorts() const
bool isConnected_timeGetOut_OutputPort(FwIndexType portNum)
void regCommands()
Register commands with the Command Dispatcher.
bool isConnected_eventOut_OutputPort(FwIndexType portNum)
Message will return with status when space is unavailable.
FwIndexType getNum_pingOut_OutputPorts() const
bool isConnected_cmdResponseOut_OutputPort(FwIndexType portNum)
void init()
Initialization function.
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.
void set_cmdResponseOut_OutputPort(FwIndexType portNum, Fw::InputCmdResponsePort *port)
Connect port to cmdResponseOut[portNum].
void pingOut_out(FwIndexType portNum, U32 key)
Invoke output port pingOut.
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.
void set_cmdRegOut_OutputPort(FwIndexType portNum, Fw::InputCmdRegPort *port)
Connect port to cmdRegOut[portNum].
Telemetry channel is not part of a telemetry packet.