9 #if FW_ENABLE_TEXT_LOGGING 19 CMDRESPONSEIN_CMDRESPONSE,
22 SEQCANCELIN_CMDSEQCANCEL,
23 SEQDISPATCHIN_FILEDISPATCH,
48 class ComponentIpcSerializableBuffer :
58 MAX_DATA_SIZE =
sizeof(BuffUnion),
60 SERIALIZATION_SIZE = DATA_OFFSET + MAX_DATA_SIZE
64 return sizeof(m_buff);
71 const U8* getBuffAddr()
const {
77 U8 m_buff[SERIALIZATION_SIZE];
95 #if !FW_DIRECT_PORT_CALLS 102 this->m_cmdIn_InputPort[port].
init();
107 this->m_cmdIn_InputPort[port].
setPortNum(port);
109 #if FW_OBJECT_NAMES == 1 113 this->m_objName.toChar(),
116 this->m_cmdIn_InputPort[port].setObjName(portName.
toChar());
121 #if !FW_DIRECT_PORT_CALLS 128 this->m_cmdResponseIn_InputPort[port].
init();
133 this->m_cmdResponseIn_InputPort[port].
setPortNum(port);
135 #if FW_OBJECT_NAMES == 1 139 this->m_objName.toChar(),
142 this->m_cmdResponseIn_InputPort[port].setObjName(portName.
toChar());
147 #if !FW_DIRECT_PORT_CALLS 154 this->m_pingIn_InputPort[port].
init();
159 this->m_pingIn_InputPort[port].
setPortNum(port);
161 #if FW_OBJECT_NAMES == 1 165 this->m_objName.toChar(),
168 this->m_pingIn_InputPort[port].setObjName(portName.
toChar());
173 #if !FW_DIRECT_PORT_CALLS 180 this->m_schedIn_InputPort[port].
init();
185 this->m_schedIn_InputPort[port].
setPortNum(port);
187 #if FW_OBJECT_NAMES == 1 191 this->m_objName.toChar(),
194 this->m_schedIn_InputPort[port].setObjName(portName.
toChar());
199 #if !FW_DIRECT_PORT_CALLS 206 this->m_seqCancelIn_InputPort[port].
init();
211 this->m_seqCancelIn_InputPort[port].
setPortNum(port);
213 #if FW_OBJECT_NAMES == 1 217 this->m_objName.toChar(),
220 this->m_seqCancelIn_InputPort[port].setObjName(portName.
toChar());
225 #if !FW_DIRECT_PORT_CALLS 232 this->m_seqDispatchIn_InputPort[port].
init();
237 this->m_seqDispatchIn_InputPort[port].
setPortNum(port);
239 #if FW_OBJECT_NAMES == 1 243 this->m_objName.toChar(),
246 this->m_seqDispatchIn_InputPort[port].setObjName(portName.
toChar());
251 #if !FW_DIRECT_PORT_CALLS 258 this->m_seqRunIn_InputPort[port].
init();
263 this->m_seqRunIn_InputPort[port].
setPortNum(port);
265 #if FW_OBJECT_NAMES == 1 269 this->m_objName.toChar(),
272 this->m_seqRunIn_InputPort[port].setObjName(portName.
toChar());
277 #if !FW_DIRECT_PORT_CALLS && FW_ENABLE_TEXT_LOGGING 281 port < static_cast<FwIndexType>(this->getNum_LogText_OutputPorts());
284 this->m_LogText_OutputPort[port].
init();
286 #if FW_OBJECT_NAMES == 1 290 this->m_objName.toChar(),
293 this->m_LogText_OutputPort[port].setObjName(portName.
toChar());
298 #if !FW_DIRECT_PORT_CALLS 305 this->m_cmdRegOut_OutputPort[port].
init();
307 #if FW_OBJECT_NAMES == 1 311 this->m_objName.toChar(),
314 this->m_cmdRegOut_OutputPort[port].setObjName(portName.
toChar());
319 #if !FW_DIRECT_PORT_CALLS 326 this->m_cmdResponseOut_OutputPort[port].
init();
328 #if FW_OBJECT_NAMES == 1 332 this->m_objName.toChar(),
335 this->m_cmdResponseOut_OutputPort[port].setObjName(portName.
toChar());
340 #if !FW_DIRECT_PORT_CALLS 347 this->m_logOut_OutputPort[port].
init();
349 #if FW_OBJECT_NAMES == 1 353 this->m_objName.toChar(),
356 this->m_logOut_OutputPort[port].setObjName(portName.
toChar());
361 #if !FW_DIRECT_PORT_CALLS 368 this->m_timeCaller_OutputPort[port].
init();
370 #if FW_OBJECT_NAMES == 1 374 this->m_objName.toChar(),
377 this->m_timeCaller_OutputPort[port].setObjName(portName.
toChar());
382 #if !FW_DIRECT_PORT_CALLS 389 this->m_tlmOut_OutputPort[port].
init();
391 #if FW_OBJECT_NAMES == 1 395 this->m_objName.toChar(),
398 this->m_tlmOut_OutputPort[port].setObjName(portName.
toChar());
403 #if !FW_DIRECT_PORT_CALLS 410 this->m_comCmdOut_OutputPort[port].
init();
412 #if FW_OBJECT_NAMES == 1 416 this->m_objName.toChar(),
419 this->m_comCmdOut_OutputPort[port].setObjName(portName.
toChar());
424 #if !FW_DIRECT_PORT_CALLS 431 this->m_pingOut_OutputPort[port].
init();
433 #if FW_OBJECT_NAMES == 1 437 this->m_objName.toChar(),
440 this->m_pingOut_OutputPort[port].setObjName(portName.
toChar());
445 #if !FW_DIRECT_PORT_CALLS 452 this->m_seqDone_OutputPort[port].
init();
454 #if FW_OBJECT_NAMES == 1 458 this->m_objName.toChar(),
461 this->m_seqDone_OutputPort[port].setObjName(portName.
toChar());
466 #if !FW_DIRECT_PORT_CALLS 473 this->m_seqStartOut_OutputPort[port].
init();
475 #if FW_OBJECT_NAMES == 1 479 this->m_objName.toChar(),
482 this->m_seqStartOut_OutputPort[port].setObjName(portName.
toChar());
490 static_cast<FwSizeType>(ComponentIpcSerializableBuffer::SERIALIZATION_SIZE)
494 static_cast<FwAssertArgType>(qStat)
498 #if !FW_DIRECT_PORT_CALLS 509 static_cast<FwAssertArgType>(portNum)
512 return &this->m_cmdIn_InputPort[portNum];
517 #if !FW_DIRECT_PORT_CALLS 528 static_cast<FwAssertArgType>(portNum)
531 return &this->m_cmdResponseIn_InputPort[portNum];
539 static_cast<FwAssertArgType>(portNum)
542 return &this->m_pingIn_InputPort[portNum];
550 static_cast<FwAssertArgType>(portNum)
553 return &this->m_schedIn_InputPort[portNum];
561 static_cast<FwAssertArgType>(portNum)
564 return &this->m_seqCancelIn_InputPort[portNum];
572 static_cast<FwAssertArgType>(portNum)
575 return &this->m_seqDispatchIn_InputPort[portNum];
583 static_cast<FwAssertArgType>(portNum)
586 return &this->m_seqRunIn_InputPort[portNum];
591 #if !FW_DIRECT_PORT_CALLS 597 #if FW_ENABLE_TEXT_LOGGING == 1 599 void CmdSequencerComponentBase ::
600 set_LogText_OutputPort(
606 (0 <= portNum) && (portNum < this->getNum_LogText_OutputPorts()),
607 static_cast<FwAssertArgType>(portNum)
610 this->m_LogText_OutputPort[portNum].addCallPort(port);
623 static_cast<FwAssertArgType>(portNum)
626 this->m_cmdRegOut_OutputPort[portNum].
addCallPort(port);
637 static_cast<FwAssertArgType>(portNum)
640 this->m_cmdResponseOut_OutputPort[portNum].
addCallPort(port);
651 static_cast<FwAssertArgType>(portNum)
654 this->m_logOut_OutputPort[portNum].
addCallPort(port);
665 static_cast<FwAssertArgType>(portNum)
668 this->m_timeCaller_OutputPort[portNum].
addCallPort(port);
679 static_cast<FwAssertArgType>(portNum)
682 this->m_tlmOut_OutputPort[portNum].
addCallPort(port);
687 #if !FW_DIRECT_PORT_CALLS 701 static_cast<FwAssertArgType>(portNum)
704 this->m_comCmdOut_OutputPort[portNum].
addCallPort(port);
715 static_cast<FwAssertArgType>(portNum)
718 this->m_pingOut_OutputPort[portNum].
addCallPort(port);
729 static_cast<FwAssertArgType>(portNum)
732 this->m_seqDone_OutputPort[portNum].
addCallPort(port);
743 static_cast<FwAssertArgType>(portNum)
746 this->m_seqStartOut_OutputPort[portNum].
addCallPort(port);
751 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 757 #if FW_ENABLE_TEXT_LOGGING == 1 759 void CmdSequencerComponentBase ::
760 set_LogText_OutputPort(
762 Fw::InputSerializePort* port
766 (0 <= portNum) && (portNum < this->getNum_LogText_OutputPorts()),
767 static_cast<FwAssertArgType>(portNum)
770 this->m_LogText_OutputPort[portNum].registerSerialPort(port);
778 Fw::InputSerializePort* port
783 static_cast<FwAssertArgType>(portNum)
786 this->m_cmdRegOut_OutputPort[portNum].registerSerialPort(port);
792 Fw::InputSerializePort* port
797 static_cast<FwAssertArgType>(portNum)
800 this->m_cmdResponseOut_OutputPort[portNum].registerSerialPort(port);
806 Fw::InputSerializePort* port
811 static_cast<FwAssertArgType>(portNum)
814 this->m_logOut_OutputPort[portNum].registerSerialPort(port);
820 Fw::InputSerializePort* port
825 static_cast<FwAssertArgType>(portNum)
828 this->m_timeCaller_OutputPort[portNum].registerSerialPort(port);
834 Fw::InputSerializePort* port
839 static_cast<FwAssertArgType>(portNum)
842 this->m_tlmOut_OutputPort[portNum].registerSerialPort(port);
847 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 856 Fw::InputSerializePort* port
861 static_cast<FwAssertArgType>(portNum)
864 this->m_comCmdOut_OutputPort[portNum].registerSerialPort(port);
870 Fw::InputSerializePort* port
875 static_cast<FwAssertArgType>(portNum)
878 this->m_pingOut_OutputPort[portNum].registerSerialPort(port);
884 Fw::InputSerializePort* port
889 static_cast<FwAssertArgType>(portNum)
892 this->m_seqDone_OutputPort[portNum].registerSerialPort(port);
898 Fw::InputSerializePort* port
903 static_cast<FwAssertArgType>(portNum)
906 this->m_seqStartOut_OutputPort[portNum].registerSerialPort(port);
967 Fw::ActiveComponentBase(compName)
978 #if !FW_DIRECT_PORT_CALLS 984 #if FW_ENABLE_TEXT_LOGGING == 1 986 bool CmdSequencerComponentBase ::
987 isConnected_LogText_OutputPort(
FwIndexType portNum)
const 990 (0 <= portNum) && (portNum < this->getNum_LogText_OutputPorts()),
991 static_cast<FwAssertArgType>(portNum)
994 return this->m_LogText_OutputPort[portNum].isConnected();
1004 static_cast<FwAssertArgType>(portNum)
1007 return this->m_cmdRegOut_OutputPort[portNum].
isConnected();
1015 static_cast<FwAssertArgType>(portNum)
1018 return this->m_cmdResponseOut_OutputPort[portNum].
isConnected();
1026 static_cast<FwAssertArgType>(portNum)
1029 return this->m_logOut_OutputPort[portNum].
isConnected();
1037 static_cast<FwAssertArgType>(portNum)
1040 return this->m_timeCaller_OutputPort[portNum].
isConnected();
1048 static_cast<FwAssertArgType>(portNum)
1051 return this->m_tlmOut_OutputPort[portNum].
isConnected();
1056 #if !FW_DIRECT_PORT_CALLS 1067 static_cast<FwAssertArgType>(portNum)
1070 return this->m_comCmdOut_OutputPort[portNum].
isConnected();
1078 static_cast<FwAssertArgType>(portNum)
1081 return this->m_pingOut_OutputPort[portNum].
isConnected();
1089 static_cast<FwAssertArgType>(portNum)
1092 return this->m_seqDone_OutputPort[portNum].
isConnected();
1100 static_cast<FwAssertArgType>(portNum)
1103 return this->m_seqStartOut_OutputPort[portNum].
isConnected();
1124 FW_ASSERT(opCode >= idBase, static_cast<FwAssertArgType>(opCode), static_cast<FwAssertArgType>(idBase));
1127 switch (opCode - idBase) {
1222 static_cast<FwAssertArgType>(portNum)
1232 ComponentIpcSerializableBuffer msg;
1236 _status = msg.serializeFrom(
1237 static_cast<FwEnumStoreType>(CMDRESPONSEIN_CMDRESPONSE)
1241 static_cast<FwAssertArgType>(_status)
1245 _status = msg.serializeFrom(portNum);
1248 static_cast<FwAssertArgType>(_status)
1252 _status = msg.serializeFrom(opCode);
1255 static_cast<FwAssertArgType>(_status)
1259 _status = msg.serializeFrom(cmdSeq);
1262 static_cast<FwAssertArgType>(_status)
1266 _status = msg.serializeFrom(response);
1269 static_cast<FwAssertArgType>(_status)
1278 static_cast<FwAssertArgType>(qStatus)
1291 static_cast<FwAssertArgType>(portNum)
1299 ComponentIpcSerializableBuffer msg;
1303 _status = msg.serializeFrom(
1304 static_cast<FwEnumStoreType>(PINGIN_PING)
1308 static_cast<FwAssertArgType>(_status)
1312 _status = msg.serializeFrom(portNum);
1315 static_cast<FwAssertArgType>(_status)
1319 _status = msg.serializeFrom(key);
1322 static_cast<FwAssertArgType>(_status)
1331 static_cast<FwAssertArgType>(qStatus)
1344 static_cast<FwAssertArgType>(portNum)
1352 ComponentIpcSerializableBuffer msg;
1356 _status = msg.serializeFrom(
1357 static_cast<FwEnumStoreType>(SCHEDIN_SCHED)
1361 static_cast<FwAssertArgType>(_status)
1365 _status = msg.serializeFrom(portNum);
1368 static_cast<FwAssertArgType>(_status)
1372 _status = msg.serializeFrom(context);
1375 static_cast<FwAssertArgType>(_status)
1384 static_cast<FwAssertArgType>(qStatus)
1394 static_cast<FwAssertArgType>(portNum)
1399 ComponentIpcSerializableBuffer msg;
1403 _status = msg.serializeFrom(
1404 static_cast<FwEnumStoreType>(SEQCANCELIN_CMDSEQCANCEL)
1408 static_cast<FwAssertArgType>(_status)
1412 _status = msg.serializeFrom(portNum);
1415 static_cast<FwAssertArgType>(_status)
1424 static_cast<FwAssertArgType>(qStatus)
1437 static_cast<FwAssertArgType>(portNum)
1445 ComponentIpcSerializableBuffer msg;
1449 _status = msg.serializeFrom(
1450 static_cast<FwEnumStoreType>(SEQDISPATCHIN_FILEDISPATCH)
1454 static_cast<FwAssertArgType>(_status)
1458 _status = msg.serializeFrom(portNum);
1461 static_cast<FwAssertArgType>(_status)
1468 static_cast<FwAssertArgType>(_status)
1477 static_cast<FwAssertArgType>(qStatus)
1491 static_cast<FwAssertArgType>(portNum)
1500 ComponentIpcSerializableBuffer msg;
1504 _status = msg.serializeFrom(
1505 static_cast<FwEnumStoreType>(SEQRUNIN_CMDSEQIN)
1509 static_cast<FwAssertArgType>(_status)
1513 _status = msg.serializeFrom(portNum);
1516 static_cast<FwAssertArgType>(_status)
1523 static_cast<FwAssertArgType>(_status)
1527 _status = msg.serializeFrom(args);
1530 static_cast<FwAssertArgType>(_status)
1539 static_cast<FwAssertArgType>(qStatus)
1605 #if !FW_DIRECT_PORT_CALLS 1620 static_cast<FwAssertArgType>(portNum)
1624 this->m_comCmdOut_OutputPort[portNum].isConnected(),
1625 static_cast<FwAssertArgType>(portNum)
1627 this->m_comCmdOut_OutputPort[portNum].
invoke(
1641 static_cast<FwAssertArgType>(portNum)
1645 this->m_pingOut_OutputPort[portNum].isConnected(),
1646 static_cast<FwAssertArgType>(portNum)
1648 this->m_pingOut_OutputPort[portNum].
invoke(
1663 static_cast<FwAssertArgType>(portNum)
1667 this->m_seqDone_OutputPort[portNum].isConnected(),
1668 static_cast<FwAssertArgType>(portNum)
1670 this->m_seqDone_OutputPort[portNum].
invoke(
1686 static_cast<FwAssertArgType>(portNum)
1690 this->m_seqStartOut_OutputPort[portNum].isConnected(),
1691 static_cast<FwAssertArgType>(portNum)
1693 this->m_seqStartOut_OutputPort[portNum].
invoke(
1713 this->cmdResponseOut_out(0, opCode, cmdSeq, response);
1734 ComponentIpcSerializableBuffer msg;
1738 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_CS_RUN));
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_CS_VALIDATE));
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_CS_CANCEL));
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_CS_START));
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_CS_STEP));
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_CS_AUTO));
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)
2088 ComponentIpcSerializableBuffer msg;
2092 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_CS_MANUAL));
2095 static_cast<FwAssertArgType>(_status)
2101 _status = msg.serializeFrom(port);
2104 static_cast<FwAssertArgType>(_status)
2107 _status = msg.serializeFrom(opCode);
2110 static_cast<FwAssertArgType>(_status)
2113 _status = msg.serializeFrom(cmdSeq);
2116 static_cast<FwAssertArgType>(_status)
2119 _status = msg.serializeFrom(args);
2122 static_cast<FwAssertArgType>(_status)
2131 static_cast<FwAssertArgType>(qStatus)
2147 ComponentIpcSerializableBuffer msg;
2151 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_CS_JOIN_WAIT));
2154 static_cast<FwAssertArgType>(_status)
2160 _status = msg.serializeFrom(port);
2163 static_cast<FwAssertArgType>(_status)
2166 _status = msg.serializeFrom(opCode);
2169 static_cast<FwAssertArgType>(_status)
2172 _status = msg.serializeFrom(cmdSeq);
2175 static_cast<FwAssertArgType>(_status)
2178 _status = msg.serializeFrom(args);
2181 static_cast<FwAssertArgType>(_status)
2190 static_cast<FwAssertArgType>(qStatus)
2300 this->timeCaller_out(0, _logTime);
2310 #if FW_AMPCS_COMPATIBLE 2315 static_cast<FwAssertArgType>(_status)
2325 static_cast<FwAssertArgType>(_status)
2338 #if FW_ENABLE_TEXT_LOGGING 2339 if (this->isConnected_LogText_OutputPort(0)) {
2340 #if FW_OBJECT_NAMES == 1 2341 const char* _formatString =
2342 "(%s) %s: Loaded sequence %s";
2344 const char* _formatString =
2345 "%s: Loaded sequence %s";
2352 this->m_objName.toChar(),
2354 "CS_SequenceLoaded ",
2375 this->timeCaller_out(0, _logTime);
2385 #if FW_AMPCS_COMPATIBLE 2390 static_cast<FwAssertArgType>(_status)
2400 static_cast<FwAssertArgType>(_status)
2413 #if FW_ENABLE_TEXT_LOGGING 2414 if (this->isConnected_LogText_OutputPort(0)) {
2415 #if FW_OBJECT_NAMES == 1 2416 const char* _formatString =
2417 "(%s) %s: Sequence file %s canceled";
2419 const char* _formatString =
2420 "%s: Sequence file %s canceled";
2427 this->m_objName.toChar(),
2429 "CS_SequenceCanceled ",
2450 this->timeCaller_out(0, _logTime);
2460 #if FW_AMPCS_COMPATIBLE 2465 static_cast<FwAssertArgType>(_status)
2475 static_cast<FwAssertArgType>(_status)
2488 #if FW_ENABLE_TEXT_LOGGING 2489 if (this->isConnected_LogText_OutputPort(0)) {
2490 #if FW_OBJECT_NAMES == 1 2491 const char* _formatString =
2492 "(%s) %s: Error reading sequence file %s";
2494 const char* _formatString =
2495 "%s: Error reading sequence file %s";
2502 this->m_objName.toChar(),
2504 "CS_FileReadError ",
2529 this->timeCaller_out(0, _logTime);
2539 #if FW_AMPCS_COMPATIBLE 2544 static_cast<FwAssertArgType>(_status)
2554 static_cast<FwAssertArgType>(_status)
2557 #if FW_AMPCS_COMPATIBLE 2564 static_cast<FwAssertArgType>(_status)
2570 static_cast<FwAssertArgType>(_status)
2573 #if FW_AMPCS_COMPATIBLE 2576 static_cast<U8>(
sizeof(I32))
2580 static_cast<FwAssertArgType>(_status)
2586 static_cast<FwAssertArgType>(_status)
2599 #if FW_ENABLE_TEXT_LOGGING 2600 if (this->isConnected_LogText_OutputPort(0)) {
2601 #if FW_OBJECT_NAMES == 1 2602 const char* _formatString =
2603 "(%s) %s: Sequence file %s invalid. Stage: %s Error: %" PRIi32
"";
2605 const char* _formatString =
2606 "%s: Sequence file %s invalid. Stage: %s Error: %" PRIi32
"";
2610 stage.toString(stageStr);
2616 this->m_objName.toChar(),
2645 this->timeCaller_out(0, _logTime);
2655 #if FW_AMPCS_COMPATIBLE 2660 static_cast<FwAssertArgType>(_status)
2670 static_cast<FwAssertArgType>(_status)
2673 #if FW_AMPCS_COMPATIBLE 2676 static_cast<U8>(
sizeof(U32))
2680 static_cast<FwAssertArgType>(_status)
2686 static_cast<FwAssertArgType>(_status)
2689 #if FW_AMPCS_COMPATIBLE 2692 static_cast<U8>(
sizeof(I32))
2696 static_cast<FwAssertArgType>(_status)
2702 static_cast<FwAssertArgType>(_status)
2715 #if FW_ENABLE_TEXT_LOGGING 2716 if (this->isConnected_LogText_OutputPort(0)) {
2717 #if FW_OBJECT_NAMES == 1 2718 const char* _formatString =
2719 "(%s) %s: Sequence file %s: Record %" PRIu32
" invalid. Err: %" PRIi32
"";
2721 const char* _formatString =
2722 "%s: Sequence file %s: Record %" PRIu32
" invalid. Err: %" PRIi32
"";
2729 this->m_objName.toChar(),
2731 "CS_RecordInvalid ",
2757 this->timeCaller_out(0, _logTime);
2767 #if FW_AMPCS_COMPATIBLE 2772 static_cast<FwAssertArgType>(_status)
2782 static_cast<FwAssertArgType>(_status)
2785 #if FW_AMPCS_COMPATIBLE 2788 static_cast<U8>(
sizeof(U32))
2792 static_cast<FwAssertArgType>(_status)
2798 static_cast<FwAssertArgType>(_status)
2811 #if FW_ENABLE_TEXT_LOGGING 2812 if (this->isConnected_LogText_OutputPort(0)) {
2813 #if FW_OBJECT_NAMES == 1 2814 const char* _formatString =
2815 "(%s) %s: Sequence file %s too large. Size: %" PRIu32
"";
2817 const char* _formatString =
2818 "%s: Sequence file %s too large. Size: %" PRIu32
"";
2825 this->m_objName.toChar(),
2827 "CS_FileSizeError ",
2849 this->timeCaller_out(0, _logTime);
2859 #if FW_AMPCS_COMPATIBLE 2864 static_cast<FwAssertArgType>(_status)
2874 static_cast<FwAssertArgType>(_status)
2887 #if FW_ENABLE_TEXT_LOGGING 2888 if (this->isConnected_LogText_OutputPort(0)) {
2889 #if FW_OBJECT_NAMES == 1 2890 const char* _formatString =
2891 "(%s) %s: Sequence file %s not found.";
2893 const char* _formatString =
2894 "%s: Sequence file %s not found.";
2901 this->m_objName.toChar(),
2928 this->timeCaller_out(0, _logTime);
2938 #if FW_AMPCS_COMPATIBLE 2943 static_cast<FwAssertArgType>(_status)
2953 static_cast<FwAssertArgType>(_status)
2956 #if FW_AMPCS_COMPATIBLE 2959 static_cast<U8>(
sizeof(U32))
2963 static_cast<FwAssertArgType>(_status)
2969 static_cast<FwAssertArgType>(_status)
2972 #if FW_AMPCS_COMPATIBLE 2975 static_cast<U8>(
sizeof(U32))
2979 static_cast<FwAssertArgType>(_status)
2985 static_cast<FwAssertArgType>(_status)
2998 #if FW_ENABLE_TEXT_LOGGING 2999 if (this->isConnected_LogText_OutputPort(0)) {
3000 #if FW_OBJECT_NAMES == 1 3001 const char* _formatString =
3002 "(%s) %s: Sequence file %s had invalid CRC. Stored 0x%" PRIx32
", Computed 0x%" PRIx32
".";
3004 const char* _formatString =
3005 "%s: Sequence file %s had invalid CRC. Stored 0x%" PRIx32
", Computed 0x%" PRIx32
".";
3012 this->m_objName.toChar(),
3014 "CS_FileCrcFailure ",
3041 this->timeCaller_out(0, _logTime);
3051 #if FW_AMPCS_COMPATIBLE 3056 static_cast<FwAssertArgType>(_status)
3066 static_cast<FwAssertArgType>(_status)
3069 #if FW_AMPCS_COMPATIBLE 3072 static_cast<U8>(
sizeof(U32))
3076 static_cast<FwAssertArgType>(_status)
3082 static_cast<FwAssertArgType>(_status)
3085 #if FW_AMPCS_COMPATIBLE 3092 static_cast<FwAssertArgType>(_status)
3098 static_cast<FwAssertArgType>(_status)
3111 #if FW_ENABLE_TEXT_LOGGING 3112 if (this->isConnected_LogText_OutputPort(0)) {
3113 #if FW_OBJECT_NAMES == 1 3114 const char* _formatString =
3115 "(%s) %s: Sequence file %s: Command %" PRIu32
" (opcode %" PRIu32
") complete";
3117 const char* _formatString =
3118 "%s: Sequence file %s: Command %" PRIu32
" (opcode %" PRIu32
") complete";
3125 this->m_objName.toChar(),
3127 "CS_CommandComplete ",
3150 this->timeCaller_out(0, _logTime);
3160 #if FW_AMPCS_COMPATIBLE 3165 static_cast<FwAssertArgType>(_status)
3175 static_cast<FwAssertArgType>(_status)
3188 #if FW_ENABLE_TEXT_LOGGING 3189 if (this->isConnected_LogText_OutputPort(0)) {
3190 #if FW_OBJECT_NAMES == 1 3191 const char* _formatString =
3192 "(%s) %s: Sequence file %s complete";
3194 const char* _formatString =
3195 "%s: Sequence file %s complete";
3202 this->m_objName.toChar(),
3204 "CS_SequenceComplete ",
3230 this->timeCaller_out(0, _logTime);
3240 #if FW_AMPCS_COMPATIBLE 3245 static_cast<FwAssertArgType>(_status)
3255 static_cast<FwAssertArgType>(_status)
3258 #if FW_AMPCS_COMPATIBLE 3261 static_cast<U8>(
sizeof(U32))
3265 static_cast<FwAssertArgType>(_status)
3271 static_cast<FwAssertArgType>(_status)
3274 #if FW_AMPCS_COMPATIBLE 3281 static_cast<FwAssertArgType>(_status)
3287 static_cast<FwAssertArgType>(_status)
3290 #if FW_AMPCS_COMPATIBLE 3293 static_cast<U8>(
sizeof(U32))
3297 static_cast<FwAssertArgType>(_status)
3303 static_cast<FwAssertArgType>(_status)
3316 #if FW_ENABLE_TEXT_LOGGING 3317 if (this->isConnected_LogText_OutputPort(0)) {
3318 #if FW_OBJECT_NAMES == 1 3319 const char* _formatString =
3320 "(%s) %s: Sequence file %s: Command %" PRIu32
" (opcode %" PRIu32
") completed with error %" PRIu32
"";
3322 const char* _formatString =
3323 "%s: Sequence file %s: Command %" PRIu32
" (opcode %" PRIu32
") completed with error %" PRIu32
"";
3330 this->m_objName.toChar(),
3356 this->timeCaller_out(0, _logTime);
3365 #if FW_AMPCS_COMPATIBLE 3371 static_cast<FwAssertArgType>(_status)
3385 #if FW_ENABLE_TEXT_LOGGING 3386 if (this->isConnected_LogText_OutputPort(0)) {
3387 #if FW_OBJECT_NAMES == 1 3388 const char* _formatString =
3389 "(%s) %s: Invalid mode";
3391 const char* _formatString =
3399 this->m_objName.toChar(),
3425 this->timeCaller_out(0, _logTime);
3435 #if FW_AMPCS_COMPATIBLE 3440 static_cast<FwAssertArgType>(_status)
3450 static_cast<FwAssertArgType>(_status)
3453 #if FW_AMPCS_COMPATIBLE 3456 static_cast<U8>(
sizeof(U32))
3460 static_cast<FwAssertArgType>(_status)
3466 static_cast<FwAssertArgType>(_status)
3469 #if FW_AMPCS_COMPATIBLE 3472 static_cast<U8>(
sizeof(U32))
3476 static_cast<FwAssertArgType>(_status)
3482 static_cast<FwAssertArgType>(_status)
3495 #if FW_ENABLE_TEXT_LOGGING 3496 if (this->isConnected_LogText_OutputPort(0)) {
3497 #if FW_OBJECT_NAMES == 1 3498 const char* _formatString =
3499 "(%s) %s: Sequence file %s header records mismatch: %" PRIu32
" in header, found %" PRIu32
" extra bytes.";
3501 const char* _formatString =
3502 "%s: Sequence file %s header records mismatch: %" PRIu32
" in header, found %" PRIu32
" extra bytes.";
3509 this->m_objName.toChar(),
3511 "CS_RecordMismatch ",
3538 this->timeCaller_out(0, _logTime);
3548 #if FW_AMPCS_COMPATIBLE 3553 static_cast<FwAssertArgType>(_status)
3563 static_cast<FwAssertArgType>(_status)
3566 #if FW_AMPCS_COMPATIBLE 3569 static_cast<U8>(
sizeof(U16))
3573 static_cast<FwAssertArgType>(_status)
3579 static_cast<FwAssertArgType>(_status)
3582 #if FW_AMPCS_COMPATIBLE 3585 static_cast<U8>(
sizeof(U16))
3589 static_cast<FwAssertArgType>(_status)
3595 static_cast<FwAssertArgType>(_status)
3608 #if FW_ENABLE_TEXT_LOGGING 3609 if (this->isConnected_LogText_OutputPort(0)) {
3610 #if FW_OBJECT_NAMES == 1 3611 const char* _formatString =
3612 "(%s) %s: Sequence file %s: Current time base doesn't match sequence time: base: %" PRIu16
" seq: %" PRIu16
"";
3614 const char* _formatString =
3615 "%s: Sequence file %s: Current time base doesn't match sequence time: base: %" PRIu16
" seq: %" PRIu16
"";
3622 this->m_objName.toChar(),
3624 "CS_TimeBaseMismatch ",
3651 this->timeCaller_out(0, _logTime);
3661 #if FW_AMPCS_COMPATIBLE 3666 static_cast<FwAssertArgType>(_status)
3676 static_cast<FwAssertArgType>(_status)
3679 #if FW_AMPCS_COMPATIBLE 3682 static_cast<U8>(
sizeof(
U8))
3686 static_cast<FwAssertArgType>(_status)
3692 static_cast<FwAssertArgType>(_status)
3695 #if FW_AMPCS_COMPATIBLE 3698 static_cast<U8>(
sizeof(
U8))
3702 static_cast<FwAssertArgType>(_status)
3708 static_cast<FwAssertArgType>(_status)
3721 #if FW_ENABLE_TEXT_LOGGING 3722 if (this->isConnected_LogText_OutputPort(0)) {
3723 #if FW_OBJECT_NAMES == 1 3724 const char* _formatString =
3725 "(%s) %s: Sequence file %s: Current time context doesn't match sequence context: base: %" PRIu8
" seq: %" PRIu8
"";
3727 const char* _formatString =
3728 "%s: Sequence file %s: Current time context doesn't match sequence context: base: %" PRIu8
" seq: %" PRIu8
"";
3735 this->m_objName.toChar(),
3737 "CS_TimeContextMismatch ",
3760 this->timeCaller_out(0, _logTime);
3770 #if FW_AMPCS_COMPATIBLE 3775 static_cast<FwAssertArgType>(_status)
3785 static_cast<FwAssertArgType>(_status)
3798 #if FW_ENABLE_TEXT_LOGGING 3799 if (this->isConnected_LogText_OutputPort(0)) {
3800 #if FW_OBJECT_NAMES == 1 3801 const char* _formatString =
3802 "(%s) %s: Local request for sequence %s started.";
3804 const char* _formatString =
3805 "%s: Local request for sequence %s started.";
3812 this->m_objName.toChar(),
3814 "CS_PortSequenceStarted ",
3835 this->timeCaller_out(0, _logTime);
3845 #if FW_AMPCS_COMPATIBLE 3850 static_cast<FwAssertArgType>(_status)
3854 #if FW_AMPCS_COMPATIBLE 3861 static_cast<FwAssertArgType>(_status)
3867 static_cast<FwAssertArgType>(_status)
3880 #if FW_ENABLE_TEXT_LOGGING 3881 if (this->isConnected_LogText_OutputPort(0)) {
3882 #if FW_OBJECT_NAMES == 1 3883 const char* _formatString =
3884 "(%s) %s: Command complete status received while no sequences active. Opcode: %" PRIu32
"";
3886 const char* _formatString =
3887 "%s: Command complete status received while no sequences active. Opcode: %" PRIu32
"";
3894 this->m_objName.toChar(),
3896 "CS_UnexpectedCompletion ",
3917 this->timeCaller_out(0, _logTime);
3927 #if FW_AMPCS_COMPATIBLE 3932 static_cast<FwAssertArgType>(_status)
3936 #if FW_AMPCS_COMPATIBLE 3943 static_cast<FwAssertArgType>(_status)
3949 static_cast<FwAssertArgType>(_status)
3962 #if FW_ENABLE_TEXT_LOGGING 3963 if (this->isConnected_LogText_OutputPort(0)) {
3964 #if FW_OBJECT_NAMES == 1 3965 const char* _formatString =
3966 "(%s) %s: Sequencer switched to %s step mode";
3968 const char* _formatString =
3969 "%s: Sequencer switched to %s step mode";
3973 mode.toString(modeStr);
3979 this->m_objName.toChar(),
4002 this->timeCaller_out(0, _logTime);
4011 #if FW_AMPCS_COMPATIBLE 4017 static_cast<FwAssertArgType>(_status)
4031 #if FW_ENABLE_TEXT_LOGGING 4032 if (this->isConnected_LogText_OutputPort(0)) {
4033 #if FW_OBJECT_NAMES == 1 4034 const char* _formatString =
4035 "(%s) %s: No sequence active.";
4037 const char* _formatString =
4038 "%s: No sequence active.";
4045 this->m_objName.toChar(),
4047 "CS_NoSequenceActive " 4067 this->timeCaller_out(0, _logTime);
4077 #if FW_AMPCS_COMPATIBLE 4082 static_cast<FwAssertArgType>(_status)
4092 static_cast<FwAssertArgType>(_status)
4105 #if FW_ENABLE_TEXT_LOGGING 4106 if (this->isConnected_LogText_OutputPort(0)) {
4107 #if FW_OBJECT_NAMES == 1 4108 const char* _formatString =
4109 "(%s) %s: Sequence %s is valid.";
4111 const char* _formatString =
4112 "%s: Sequence %s is valid.";
4119 this->m_objName.toChar(),
4121 "CS_SequenceValid ",
4145 this->timeCaller_out(0, _logTime);
4155 #if FW_AMPCS_COMPATIBLE 4160 static_cast<FwAssertArgType>(_status)
4170 static_cast<FwAssertArgType>(_status)
4173 #if FW_AMPCS_COMPATIBLE 4176 static_cast<U8>(
sizeof(U32))
4180 static_cast<FwAssertArgType>(_status)
4186 static_cast<FwAssertArgType>(_status)
4199 #if FW_ENABLE_TEXT_LOGGING 4200 if (this->isConnected_LogText_OutputPort(0)) {
4201 #if FW_OBJECT_NAMES == 1 4202 const char* _formatString =
4203 "(%s) %s: Sequence %s timed out on command %" PRIu32
"";
4205 const char* _formatString =
4206 "%s: Sequence %s timed out on command %" PRIu32
"";
4213 this->m_objName.toChar(),
4215 "CS_SequenceTimeout ",
4240 this->timeCaller_out(0, _logTime);
4250 #if FW_AMPCS_COMPATIBLE 4255 static_cast<FwAssertArgType>(_status)
4265 static_cast<FwAssertArgType>(_status)
4268 #if FW_AMPCS_COMPATIBLE 4271 static_cast<U8>(
sizeof(U32))
4275 static_cast<FwAssertArgType>(_status)
4281 static_cast<FwAssertArgType>(_status)
4294 #if FW_ENABLE_TEXT_LOGGING 4295 if (this->isConnected_LogText_OutputPort(0)) {
4296 #if FW_OBJECT_NAMES == 1 4297 const char* _formatString =
4298 "(%s) %s: Sequence %s command %" PRIu32
" stepped";
4300 const char* _formatString =
4301 "%s: Sequence %s command %" PRIu32
" stepped";
4308 this->m_objName.toChar(),
4332 this->timeCaller_out(0, _logTime);
4342 #if FW_AMPCS_COMPATIBLE 4347 static_cast<FwAssertArgType>(_status)
4357 static_cast<FwAssertArgType>(_status)
4370 #if FW_ENABLE_TEXT_LOGGING 4371 if (this->isConnected_LogText_OutputPort(0)) {
4372 #if FW_OBJECT_NAMES == 1 4373 const char* _formatString =
4374 "(%s) %s: Sequence %s started";
4376 const char* _formatString =
4377 "%s: Sequence %s started";
4384 this->m_objName.toChar(),
4411 this->timeCaller_out(0, _logTime);
4421 #if FW_AMPCS_COMPATIBLE 4426 static_cast<FwAssertArgType>(_status)
4436 static_cast<FwAssertArgType>(_status)
4439 #if FW_AMPCS_COMPATIBLE 4442 static_cast<U8>(
sizeof(U32))
4446 static_cast<FwAssertArgType>(_status)
4452 static_cast<FwAssertArgType>(_status)
4455 #if FW_AMPCS_COMPATIBLE 4462 static_cast<FwAssertArgType>(_status)
4468 static_cast<FwAssertArgType>(_status)
4481 #if FW_ENABLE_TEXT_LOGGING 4482 if (this->isConnected_LogText_OutputPort(0)) {
4483 #if FW_OBJECT_NAMES == 1 4484 const char* _formatString =
4485 "(%s) %s: Start waiting for sequence file %s: Command %" PRIu32
" (opcode %" PRIu32
") to complete";
4487 const char* _formatString =
4488 "%s: Start waiting for sequence file %s: Command %" PRIu32
" (opcode %" PRIu32
") to complete";
4495 this->m_objName.toChar(),
4520 this->timeCaller_out(0, _logTime);
4529 #if FW_AMPCS_COMPATIBLE 4535 static_cast<FwAssertArgType>(_status)
4549 #if FW_ENABLE_TEXT_LOGGING 4550 if (this->isConnected_LogText_OutputPort(0)) {
4551 #if FW_OBJECT_NAMES == 1 4552 const char* _formatString =
4553 "(%s) %s: Still waiting for sequence file to complete";
4555 const char* _formatString =
4556 "%s: Still waiting for sequence file to complete";
4563 this->m_objName.toChar(),
4565 "CS_JoinWaitingNotComplete " 4585 this->timeCaller_out(0, _logTime);
4595 #if FW_AMPCS_COMPATIBLE 4600 static_cast<FwAssertArgType>(_status)
4610 static_cast<FwAssertArgType>(_status)
4623 #if FW_ENABLE_TEXT_LOGGING 4624 if (this->isConnected_LogText_OutputPort(0)) {
4625 #if FW_OBJECT_NAMES == 1 4626 const char* _formatString =
4627 "(%s) %s: Sequence file %s has no records. Ignoring.";
4629 const char* _formatString =
4630 "%s: Sequence file %s has no records. Ignoring.";
4637 this->m_objName.toChar(),
4670 this->timeCaller_out(0, _tlmTime);
4700 static_cast<FwAssertArgType>(_stat)
4722 static_cast<FwAssertArgType>(_stat)
4744 static_cast<FwAssertArgType>(_stat)
4766 static_cast<FwAssertArgType>(_stat)
4788 static_cast<FwAssertArgType>(_stat)
4808 this->timeCaller_out(0, _time);
4823 ComponentIpcSerializableBuffer _msg;
4833 static_cast<FwAssertArgType>(_msgStatus)
4843 static_cast<FwAssertArgType>(_deserStatus)
4846 MsgTypeEnum _msgType =
static_cast<MsgTypeEnum
>(_desMsg);
4848 if (_msgType == CMDSEQUENCER_COMPONENT_EXIT) {
4853 _deserStatus = _msg.deserializeTo(portNum);
4856 static_cast<FwAssertArgType>(_deserStatus)
4861 case CMDRESPONSEIN_CMDRESPONSE: {
4864 _deserStatus = _msg.deserializeTo(opCode);
4867 static_cast<FwAssertArgType>(_deserStatus)
4872 _deserStatus = _msg.deserializeTo(cmdSeq);
4875 static_cast<FwAssertArgType>(_deserStatus)
4880 _deserStatus = _msg.deserializeTo(response);
4883 static_cast<FwAssertArgType>(_deserStatus)
4900 _deserStatus = _msg.deserializeTo(key);
4903 static_cast<FwAssertArgType>(_deserStatus)
4915 case SCHEDIN_SCHED: {
4918 _deserStatus = _msg.deserializeTo(context);
4921 static_cast<FwAssertArgType>(_deserStatus)
4933 case SEQCANCELIN_CMDSEQCANCEL: {
4941 case SEQDISPATCHIN_FILEDISPATCH: {
4944 Fw::ExternalString file_name(__fprime_ac_file_name_buffer,
sizeof __fprime_ac_file_name_buffer);
4945 _deserStatus = _msg.deserializeTo(file_name);
4948 static_cast<FwAssertArgType>(_deserStatus)
4960 case SEQRUNIN_CMDSEQIN: {
4963 Fw::ExternalString filename(__fprime_ac_filename_buffer,
sizeof __fprime_ac_filename_buffer);
4964 _deserStatus = _msg.deserializeTo(filename);
4967 static_cast<FwAssertArgType>(_deserStatus)
4972 _deserStatus = _msg.deserializeTo(args);
4975 static_cast<FwAssertArgType>(_deserStatus)
4991 _deserStatus = _msg.deserializeTo(_opCode);
4994 static_cast<FwAssertArgType>(_deserStatus)
4999 _deserStatus = _msg.deserializeTo(_cmdSeq);
5002 static_cast<FwAssertArgType>(_deserStatus)
5007 _deserStatus = _msg.deserializeTo(args);
5010 static_cast<FwAssertArgType>(_deserStatus)
5048 #if FW_CMD_CHECK_RESIDUAL 5069 case CMD_CS_VALIDATE: {
5072 _deserStatus = _msg.deserializeTo(_opCode);
5075 static_cast<FwAssertArgType>(_deserStatus)
5080 _deserStatus = _msg.deserializeTo(_cmdSeq);
5083 static_cast<FwAssertArgType>(_deserStatus)
5088 _deserStatus = _msg.deserializeTo(args);
5091 static_cast<FwAssertArgType>(_deserStatus)
5114 #if FW_CMD_CHECK_RESIDUAL 5134 case CMD_CS_CANCEL: {
5137 _deserStatus = _msg.deserializeTo(_opCode);
5140 static_cast<FwAssertArgType>(_deserStatus)
5145 _deserStatus = _msg.deserializeTo(_cmdSeq);
5148 static_cast<FwAssertArgType>(_deserStatus)
5153 _deserStatus = _msg.deserializeTo(args);
5156 static_cast<FwAssertArgType>(_deserStatus)
5164 #if FW_CMD_CHECK_RESIDUAL 5181 case CMD_CS_START: {
5184 _deserStatus = _msg.deserializeTo(_opCode);
5187 static_cast<FwAssertArgType>(_deserStatus)
5192 _deserStatus = _msg.deserializeTo(_cmdSeq);
5195 static_cast<FwAssertArgType>(_deserStatus)
5200 _deserStatus = _msg.deserializeTo(args);
5203 static_cast<FwAssertArgType>(_deserStatus)
5211 #if FW_CMD_CHECK_RESIDUAL 5231 _deserStatus = _msg.deserializeTo(_opCode);
5234 static_cast<FwAssertArgType>(_deserStatus)
5239 _deserStatus = _msg.deserializeTo(_cmdSeq);
5242 static_cast<FwAssertArgType>(_deserStatus)
5247 _deserStatus = _msg.deserializeTo(args);
5250 static_cast<FwAssertArgType>(_deserStatus)
5258 #if FW_CMD_CHECK_RESIDUAL 5278 _deserStatus = _msg.deserializeTo(_opCode);
5281 static_cast<FwAssertArgType>(_deserStatus)
5286 _deserStatus = _msg.deserializeTo(_cmdSeq);
5289 static_cast<FwAssertArgType>(_deserStatus)
5294 _deserStatus = _msg.deserializeTo(args);
5297 static_cast<FwAssertArgType>(_deserStatus)
5305 #if FW_CMD_CHECK_RESIDUAL 5322 case CMD_CS_MANUAL: {
5325 _deserStatus = _msg.deserializeTo(_opCode);
5328 static_cast<FwAssertArgType>(_deserStatus)
5333 _deserStatus = _msg.deserializeTo(_cmdSeq);
5336 static_cast<FwAssertArgType>(_deserStatus)
5341 _deserStatus = _msg.deserializeTo(args);
5344 static_cast<FwAssertArgType>(_deserStatus)
5352 #if FW_CMD_CHECK_RESIDUAL 5369 case CMD_CS_JOIN_WAIT: {
5372 _deserStatus = _msg.deserializeTo(_opCode);
5375 static_cast<FwAssertArgType>(_deserStatus)
5380 _deserStatus = _msg.deserializeTo(_cmdSeq);
5383 static_cast<FwAssertArgType>(_deserStatus)
5388 _deserStatus = _msg.deserializeTo(args);
5391 static_cast<FwAssertArgType>(_deserStatus)
5399 #if FW_CMD_CHECK_RESIDUAL 5426 void CmdSequencerComponentBase ::
5437 compPtr->cmdIn_handlerBase(
5449 void CmdSequencerComponentBase ::
5450 m_p_cmdResponseIn_in(
5460 compPtr->cmdResponseIn_handlerBase(
5468 void CmdSequencerComponentBase ::
5477 compPtr->pingIn_handlerBase(
5483 void CmdSequencerComponentBase ::
5492 compPtr->schedIn_handlerBase(
5498 void CmdSequencerComponentBase ::
5506 compPtr->seqCancelIn_handlerBase(portNum);
5509 void CmdSequencerComponentBase ::
5510 m_p_seqDispatchIn_in(
5518 compPtr->seqDispatchIn_handlerBase(
5524 void CmdSequencerComponentBase ::
5534 compPtr->seqRunIn_handlerBase(
5541 #if !FW_DIRECT_PORT_CALLS 5547 #if FW_ENABLE_TEXT_LOGGING 5549 void CmdSequencerComponentBase ::
5559 (0 <= portNum) && (portNum < this->getNum_LogText_OutputPorts()),
5560 static_cast<FwAssertArgType>(portNum)
5564 this->m_LogText_OutputPort[portNum].isConnected(),
5565 static_cast<FwAssertArgType>(portNum)
5567 this->m_LogText_OutputPort[portNum].invoke(
5577 void CmdSequencerComponentBase ::
5585 static_cast<FwAssertArgType>(portNum)
5589 this->m_cmdRegOut_OutputPort[portNum].isConnected(),
5590 static_cast<FwAssertArgType>(portNum)
5592 this->m_cmdRegOut_OutputPort[portNum].
invoke(
5597 void CmdSequencerComponentBase ::
5607 static_cast<FwAssertArgType>(portNum)
5611 this->m_cmdResponseOut_OutputPort[portNum].isConnected(),
5612 static_cast<FwAssertArgType>(portNum)
5614 this->m_cmdResponseOut_OutputPort[portNum].
invoke(
5621 void CmdSequencerComponentBase ::
5632 static_cast<FwAssertArgType>(portNum)
5636 this->m_logOut_OutputPort[portNum].isConnected(),
5637 static_cast<FwAssertArgType>(portNum)
5639 this->m_logOut_OutputPort[portNum].
invoke(
5647 void CmdSequencerComponentBase ::
5655 static_cast<FwAssertArgType>(portNum)
5659 this->m_timeCaller_OutputPort[portNum].isConnected(),
5660 static_cast<FwAssertArgType>(portNum)
5662 this->m_timeCaller_OutputPort[portNum].
invoke(
5667 void CmdSequencerComponentBase ::
5677 static_cast<FwAssertArgType>(portNum)
5681 this->m_tlmOut_OutputPort[portNum].isConnected(),
5682 static_cast<FwAssertArgType>(portNum)
5684 this->m_tlmOut_OutputPort[portNum].
invoke(
void set_timeCaller_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to timeCaller[portNum].
static constexpr FwIndexType getNum_cmdIn_InputPorts()
Serialization/Deserialization operation was successful.
void log_WARNING_HI_CS_TimeContextMismatch(const Fw::StringBase &fileName, U8 currTimeBase, U8 seqTimeBase) const
static constexpr FwIndexType getNum_tlmOut_OutputPorts()
void set_tlmOut_OutputPort(FwIndexType portNum, Fw::InputTlmPort *port)
Connect port to tlmOut[portNum].
void log_WARNING_HI_CS_FileInvalid(const Fw::StringBase &fileName, Svc::CmdSequencer_FileReadStage stage, I32 error) const
A command in a sequence was stepped through.
void addCallPort(InputTimePort *callPort)
Register an input port.
The format of a command record was invalid.
Number of records in header doesn't match number in file.
void tlmWrite_CS_LoadCommands(U32 arg, Fw::Time _tlmTime=Fw::Time()) const
void invoke(Fw::ComBuffer &data, U32 context) const
Invoke a port connection.
void log_WARNING_HI_CS_InvalidMode() const
void init()
Initialization function.
static constexpr FwSizeType CAPACITY
void invoke(const Fw::StringBase &filename, const Svc::SeqArgs &args) const
Invoke a port connection.
static constexpr FwIndexType getNum_cmdResponseIn_InputPorts()
virtual void seqRunIn_handler(FwIndexType portNum, const Fw::StringBase &filename, const Svc::SeqArgs &args)=0
Handler for input port seqRunIn.
static constexpr FwIndexType getNum_timeCaller_OutputPorts()
static constexpr FwIndexType getNum_cmdResponseOut_OutputPorts()
FwIdType FwOpcodeType
The type of a command opcode.
A sequence passed validation.
static constexpr FwIndexType getNum_logOut_OutputPorts()
virtual void seqDispatchIn_handler(FwIndexType portNum, Fw::StringBase &file_name)=0
Handler for input port seqDispatchIn.
SerializeStatus serializeFrom(U8 val, Endianness mode=Endianness::BIG) override
Serialize an 8-bit unsigned integer value.
void log_WARNING_HI_CS_FileSizeError(const Fw::StringBase &fileName, U32 size) const
bool isConnected_cmdResponseOut_OutputPort(FwIndexType portNum) const
void log_ACTIVITY_HI_CS_ModeSwitched(Svc::CmdSequencer_SeqMode mode) const
static constexpr FwSizeType CAPACITY
void cmdResponseIn_handlerBase(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)
Handler base-class function for input port cmdResponseIn.
FwIdType getIdBase() const
PlatformSizeType FwSizeType
Status receive(U8 *destination, FwSizeType capacity, BlockingType blockType, FwSizeType &actualSize, FwQueuePriorityType &priority) override
receive a message from the queue through delegate
A command status came back when no sequence was running.
void tlmWrite_CS_Errors(U32 arg, Fw::Time _tlmTime=Fw::Time()) const
void log_WARNING_HI_CS_FileNotFound(const Fw::StringBase &fileName) const
void CS_VALIDATE_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
static constexpr FwIndexType getNum_seqDispatchIn_InputPorts()
void log_ACTIVITY_HI_CS_JoinWaiting(const Fw::StringBase &filename, U32 recordNumber, FwOpcodeType opCode) const
Status
status returned from the queue send function
void log_WARNING_HI_CS_JoinWaitingNotComplete() const
A local port request to run a sequence was started.
void CS_MANUAL_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Svc::InputPingPort * get_pingIn_InputPort(FwIndexType portNum)
const char * toChar() const
Convert to a C-style char*.
void regCommands()
Register commands with the Command Dispatcher.
void init()
Initialization function.
Set the run mode to MANUAL.
virtual void schedIn_preMsgHook(FwIndexType portNum, U32 context)
Pre-message hook for async input port schedIn.
void log_WARNING_HI_CS_UnexpectedCompletion(FwOpcodeType opcode) const
virtual void CS_AUTO_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CS_AUTO.
The stage of the file read operation.
void log_ACTIVITY_LO_CS_SequenceLoaded(const Fw::StringBase &fileName) const
void CS_STEP_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void invoke(U32 key) const
Invoke a port connection.
virtual void CS_RUN_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &fileName, Svc::BlockState block)=0
static constexpr FwIndexType getNum_seqRunIn_InputPorts()
virtual const CHAR * toChar() const =0
Convert to a C-style char*.
static constexpr FwIndexType getNum_schedIn_InputPorts()
A manual sequence was started.
void log_ACTIVITY_HI_CS_CmdStarted(const Fw::StringBase &filename) const
virtual void CS_VALIDATE_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &fileName)=0
Fw::InputCmdResponsePort * get_cmdResponseIn_InputPort(FwIndexType portNum)
static constexpr FwIndexType getNum_seqDone_OutputPorts()
Cancel a command sequence.
virtual void seqCancelIn_handler(FwIndexType portNum)=0
Handler for input port seqCancelIn.
void set_pingOut_OutputPort(FwIndexType portNum, Svc::InputPingPort *port)
Connect port to pingOut[portNum].
The sequence file was too large.
void pingIn_handlerBase(FwIndexType portNum, U32 key)
Handler base-class function for input port pingIn.
void init()
Initialization function.
Enum representing a command response.
void schedIn_handlerBase(FwIndexType portNum, U32 context)
Handler base-class function for input port schedIn.
No time base has been established (Required)
Wait for the current running sequence file complete.
void addCallPort(InputCmdRegPort *callPort)
Register an input port.
bool isConnected_seqDone_OutputPort(FwIndexType portNum) const
void log_WARNING_LO_CS_NoSequenceActive() const
void CS_START_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
The size of the serial representation.
The size of the serial representation.
void log_WARNING_HI_CS_SequenceTimeout(const Fw::StringBase &filename, U32 command) const
bool isConnected_seqStartOut_OutputPort(FwIndexType portNum) const
virtual void CS_CANCEL_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CS_CANCEL.
Os::Queue m_queue
queue object for active component
void addCallPort(InputTlmPort *callPort)
Register an input port.
void init()
Object initializer.
void cmdIn_handlerBase(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Handler base-class function for input port cmdIn.
Wait for sequences that are running to finish. Allow user to run multiple seq files in SEQ_NO_BLOCK m...
SerializeStatus
forward declaration for string
void set_seqDone_OutputPort(FwIndexType portNum, Fw::InputCmdResponsePort *port)
Connect port to seqDone[portNum].
Message will block until space is available.
virtual void CS_RUN_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CS_RUN.
void tlmWrite_CS_CancelCommands(U32 arg, Fw::Time _tlmTime=Fw::Time()) const
FwIdType FwEventIdType
The type of an event identifier.
virtual ~CmdSequencerComponentBase()
Destroy CmdSequencerComponentBase object.
A command sequence was successfully canceled.
void tlmWrite_CS_CommandsExecuted(U32 arg, Fw::Time _tlmTime=Fw::Time()) const
void invoke(FwOpcodeType opCode) const
Invoke a port connection.
static constexpr FwIndexType getNum_pingOut_OutputPorts()
static constexpr FwSizeType CAPACITY
void log_ACTIVITY_HI_CS_PortSequenceStarted(const Fw::StringBase &filename) const
The Sequence File Loader could not read the sequence file.
void seqStartOut_out(FwIndexType portNum, const Fw::StringBase &filename, const Svc::SeqArgs &args) const
Invoke output port seqStartOut.
void log_WARNING_HI_CS_RecordInvalid(const Fw::StringBase &fileName, U32 recordNumber, I32 error) const
A command sequence successfully completed.
void log_ACTIVITY_HI_CS_SequenceCanceled(const Fw::StringBase &fileName) const
#define FW_OBJECT_NAMES
Indicates whether or not object names are stored (more memory, can be used for tracking objects) ...
void init()
Initialization function.
bool isConnected_logOut_OutputPort(FwIndexType portNum) const
Less important informational events.
Os::Queue::Status createQueue(FwSizeType depth, FwSizeType msgSize)
Channel ID for CS_LoadCommands.
void log_WARNING_HI_CS_RecordMismatch(const Fw::StringBase &fileName, U32 header_records, U32 extra_bytes) const
bool isConnected_cmdRegOut_OutputPort(FwIndexType portNum) const
#define FW_MIN(a, b)
MIN macro (deprecated in C++, use std::min)
A less serious but recoverable event.
void init()
Initialization function.
A sequence passed validation.
virtual void cmdResponseIn_preMsgHook(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)
Pre-message hook for async input port cmdResponseIn.
void invoke(Fw::Time &time) const
Invoke a port connection.
The running time base doesn't match the time base in the sequence files.
message to exit active component task
void CS_JOIN_WAIT_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Svc::InputCmdSeqInPort * get_seqRunIn_InputPort(FwIndexType portNum)
void seqRunIn_handlerBase(FwIndexType portNum, const Fw::StringBase &filename, const Svc::SeqArgs &args)
Handler base-class function for input port seqRunIn.
Serializable::SizeType getDeserializeSizeLeft() const override
Get remaining deserialization buffer size.
Channel ID for CS_Errors.
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.
void set_cmdResponseOut_OutputPort(FwIndexType portNum, Fw::InputCmdResponsePort *port)
Connect port to cmdResponseOut[portNum].
FwIdType FwChanIdType
The type of a telemetry channel identifier.
void set_cmdRegOut_OutputPort(FwIndexType portNum, Fw::InputCmdRegPort *port)
Connect port to cmdRegOut[portNum].
virtual void CS_START_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
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
Sequencer blocking state.
void resetDeser() override
Reset deserialization pointer to beginning of buffer.
static constexpr FwIndexType getNum_cmdRegOut_OutputPorts()
A string backed by an external buffer.
A serious but recoverable event.
Errors dispatching messages.
void invoke(FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val) const
Invoke a port connection.
Enum representing event severity.
The Command Sequencer issued a command and received a success status in return.
void CS_AUTO_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Run a command sequence file.
virtual void CS_START_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CS_START.
FormatStatus format(const CHAR *formatString,...)
write formatted string to buffer
void init()
Initialization function.
Start running a command sequence.
uint8_t U8
8-bit unsigned integer
void set_comCmdOut_OutputPort(FwIndexType portNum, Fw::InputComPort *port)
Connect port to comCmdOut[portNum].
static constexpr FwIndexType getNum_seqStartOut_OutputPorts()
static constexpr FwSizeType CAPACITY
virtual void pingIn_preMsgHook(FwIndexType portNum, U32 key)
Pre-message hook for async input port pingIn.
Svc::InputSchedPort * get_schedIn_InputPort(FwIndexType portNum)
The Command Sequencer issued a command and received an error status in return.
virtual void CS_AUTO_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
The sequence file was not found.
Command failed to deserialize.
PlatformQueuePriorityType FwQueuePriorityType
The type of queue priorities used.
void log_WARNING_HI_CS_FileCrcFailure(const Fw::StringBase &fileName, U32 storedCRC, U32 computedCRC) const
Important informational events.
Validate a command sequence file.
void invoke(FwEventIdType id, Fw::Time &timeTag, const Fw::LogSeverity &severity, Fw::LogBuffer &args) const
Invoke a port connection.
bool isConnected_timeCaller_OutputPort(FwIndexType portNum) const
virtual void CS_MANUAL_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CS_MANUAL.
bool isConnected_pingOut_OutputPort(FwIndexType portNum) const
void CS_CANCEL_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
A sequence related command came with no active sequence.
void set_seqStartOut_OutputPort(FwIndexType portNum, Svc::InputCmdSeqInPort *port)
Connect port to seqStartOut[portNum].
void log_WARNING_HI_CS_TimeBaseMismatch(const Fw::StringBase &fileName, U16 time_base, U16 seq_time_base) const
Set the run mode to AUTO.
A message was sent requesting an exit of the loop.
void tlmWrite(FwChanIdType id, Fw::TlmBuffer &_tlmBuff, Fw::Time _tlmTime=Fw::Time()) const
virtual void CS_STEP_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CS_STEP.
PlatformIndexType FwIndexType
Fw::InputCmdPort * get_cmdIn_InputPort(FwIndexType portNum)
The running time base doesn't match the time base in the sequence files.
Channel ID for CS_SequencesCompleted.
virtual void seqRunIn_preMsgHook(FwIndexType portNum, const Fw::StringBase &filename, const Svc::SeqArgs &args)
Pre-message hook for async input port seqRunIn.
void seqCancelIn_handlerBase(FwIndexType portNum)
Handler base-class function for input port seqCancelIn.
The sequence file validation failed.
void addCallPort(InputLogPort *callPort)
Register an input port.
void addCallPort(InputCmdSeqInPort *callPort)
Register an input port.
Perform one step in a command sequence. Valid only if CmdSequencer is in MANUAL run mode...
void init()
Initialization function.
void CS_RUN_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Svc::InputFileDispatchPort * get_seqDispatchIn_InputPort(FwIndexType portNum)
void comCmdOut_out(FwIndexType portNum, Fw::ComBuffer &data, U32 context) const
Invoke output port comCmdOut.
static constexpr FwIndexType getNum_seqCancelIn_InputPorts()
virtual void pingIn_handler(FwIndexType portNum, U32 key)=0
Handler for input port pingIn.
RateGroupDivider component implementation.
virtual void CS_VALIDATE_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CS_VALIDATE.
void log_ACTIVITY_HI_CS_SequenceComplete(const Fw::StringBase &fileName) const
virtual void CS_STEP_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
void seqDone_out(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response) const
Invoke output port seqDone.
void log_ACTIVITY_LO_CS_CommandComplete(const Fw::StringBase &fileName, U32 recordNumber, FwOpcodeType opCode) const
message sent/received okay
SerializeStatus deserializeTo(U8 &val, Endianness mode=Endianness::BIG) override
Deserialize an 8-bit unsigned integer value.
void addCallPort(InputComPort *callPort)
Register an input port.
virtual void CS_MANUAL_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
CmdSequencerComponentBase(const char *compName="")
Construct CmdSequencerComponentBase object.
void seqDispatchIn_handlerBase(FwIndexType portNum, Fw::StringBase &file_name)
Handler base-class function for input port seqDispatchIn.
Cannot run new sequence when current sequence file is still running.
Message will return with status when space is unavailable.
Implementation of malloc based allocator.
static constexpr FwSizeType CAPACITY
The sequence file format was invalid.
static constexpr FwIndexType getNum_pingIn_InputPorts()
virtual void cmdResponseIn_handler(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)=0
Handler for input port cmdResponseIn.
void log_WARNING_LO_CS_NoRecords(const Fw::StringBase &fileName) const
Log event CS_NoRecords.
virtual void CS_JOIN_WAIT_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
virtual void seqCancelIn_preMsgHook(FwIndexType portNum)
Pre-message hook for async input port seqCancelIn.
virtual void schedIn_handler(FwIndexType portNum, U32 context)=0
Handler for input port schedIn.
static constexpr SizeType BUFFER_SIZE(SizeType maxLength)
Get the size of a null-terminated string buffer.
void log_WARNING_HI_CS_CommandError(const Fw::StringBase &fileName, U32 recordNumber, FwOpcodeType opCode, U32 errorStatus) const
void init()
Initialization function.
Sequence file was successfully loaded.
Channel ID for CS_CommandsExecuted.
virtual void CS_CANCEL_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
void set_logOut_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to logOut[portNum].
static constexpr FwIndexType getNum_comCmdOut_OutputPorts()
Svc::InputCmdSeqCancelPort * get_seqCancelIn_InputPort(FwIndexType portNum)
Channel ID for CS_CancelCommands.
bool isConnected_tlmOut_OutputPort(FwIndexType portNum) const
void pingOut_out(FwIndexType portNum, U32 key) const
Invoke output port pingOut.
static constexpr FwSizeType CAPACITY
virtual void seqDispatchIn_preMsgHook(FwIndexType portNum, Fw::StringBase &file_name)
Pre-message hook for async input port seqDispatchIn.
bool isConnected_comCmdOut_OutputPort(FwIndexType portNum) const
void log_ACTIVITY_HI_CS_SequenceValid(const Fw::StringBase &filename) const
The Command Sequencer received a command that was invalid for its current mode.
void log_WARNING_HI_CS_FileReadError(const Fw::StringBase &fileName) const
void cmdResponse_out(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response)
Emit command response.
void addCallPort(InputCmdResponsePort *callPort)
Register an input port.
void tlmWrite_CS_SequencesCompleted(U32 arg, Fw::Time _tlmTime=Fw::Time()) const
void log_ACTIVITY_HI_CS_CmdStepped(const Fw::StringBase &filename, U32 command) const
SerializeStatus serializeTo(SerialBufferBase &buffer, Endianness mode=Endianness::BIG) const override
Serialize the contents of this object to a buffer.
virtual void CS_JOIN_WAIT_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CS_JOIN_WAIT.