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];
101 this->m_cmdIn_InputPort[port].
init();
106 this->m_cmdIn_InputPort[port].
setPortNum(port);
108 #if FW_OBJECT_NAMES == 1 112 this->m_objName.toChar(),
115 this->m_cmdIn_InputPort[port].setObjName(portName.
toChar());
125 this->m_cmdResponseIn_InputPort[port].
init();
130 this->m_cmdResponseIn_InputPort[port].
setPortNum(port);
132 #if FW_OBJECT_NAMES == 1 136 this->m_objName.toChar(),
139 this->m_cmdResponseIn_InputPort[port].setObjName(portName.
toChar());
149 this->m_pingIn_InputPort[port].
init();
154 this->m_pingIn_InputPort[port].
setPortNum(port);
156 #if FW_OBJECT_NAMES == 1 160 this->m_objName.toChar(),
163 this->m_pingIn_InputPort[port].setObjName(portName.
toChar());
173 this->m_schedIn_InputPort[port].
init();
178 this->m_schedIn_InputPort[port].
setPortNum(port);
180 #if FW_OBJECT_NAMES == 1 184 this->m_objName.toChar(),
187 this->m_schedIn_InputPort[port].setObjName(portName.
toChar());
197 this->m_seqCancelIn_InputPort[port].
init();
202 this->m_seqCancelIn_InputPort[port].
setPortNum(port);
204 #if FW_OBJECT_NAMES == 1 208 this->m_objName.toChar(),
211 this->m_seqCancelIn_InputPort[port].setObjName(portName.
toChar());
221 this->m_seqDispatchIn_InputPort[port].
init();
226 this->m_seqDispatchIn_InputPort[port].
setPortNum(port);
228 #if FW_OBJECT_NAMES == 1 232 this->m_objName.toChar(),
235 this->m_seqDispatchIn_InputPort[port].setObjName(portName.
toChar());
245 this->m_seqRunIn_InputPort[port].
init();
250 this->m_seqRunIn_InputPort[port].
setPortNum(port);
252 #if FW_OBJECT_NAMES == 1 256 this->m_objName.toChar(),
259 this->m_seqRunIn_InputPort[port].setObjName(portName.
toChar());
263 #if FW_ENABLE_TEXT_LOGGING == 1 267 port < static_cast<FwIndexType>(this->getNum_LogText_OutputPorts());
270 this->m_LogText_OutputPort[port].
init();
272 #if FW_OBJECT_NAMES == 1 276 this->m_objName.toChar(),
279 this->m_LogText_OutputPort[port].setObjName(portName.
toChar());
290 this->m_cmdRegOut_OutputPort[port].
init();
292 #if FW_OBJECT_NAMES == 1 296 this->m_objName.toChar(),
299 this->m_cmdRegOut_OutputPort[port].setObjName(portName.
toChar());
309 this->m_cmdResponseOut_OutputPort[port].
init();
311 #if FW_OBJECT_NAMES == 1 315 this->m_objName.toChar(),
318 this->m_cmdResponseOut_OutputPort[port].setObjName(portName.
toChar());
328 this->m_logOut_OutputPort[port].
init();
330 #if FW_OBJECT_NAMES == 1 334 this->m_objName.toChar(),
337 this->m_logOut_OutputPort[port].setObjName(portName.
toChar());
347 this->m_timeCaller_OutputPort[port].
init();
349 #if FW_OBJECT_NAMES == 1 353 this->m_objName.toChar(),
356 this->m_timeCaller_OutputPort[port].setObjName(portName.
toChar());
366 this->m_tlmOut_OutputPort[port].
init();
368 #if FW_OBJECT_NAMES == 1 372 this->m_objName.toChar(),
375 this->m_tlmOut_OutputPort[port].setObjName(portName.
toChar());
385 this->m_comCmdOut_OutputPort[port].
init();
387 #if FW_OBJECT_NAMES == 1 391 this->m_objName.toChar(),
394 this->m_comCmdOut_OutputPort[port].setObjName(portName.
toChar());
404 this->m_pingOut_OutputPort[port].
init();
406 #if FW_OBJECT_NAMES == 1 410 this->m_objName.toChar(),
413 this->m_pingOut_OutputPort[port].setObjName(portName.
toChar());
423 this->m_seqDone_OutputPort[port].
init();
425 #if FW_OBJECT_NAMES == 1 429 this->m_objName.toChar(),
432 this->m_seqDone_OutputPort[port].setObjName(portName.
toChar());
442 this->m_seqStartOut_OutputPort[port].
init();
444 #if FW_OBJECT_NAMES == 1 448 this->m_objName.toChar(),
451 this->m_seqStartOut_OutputPort[port].setObjName(portName.
toChar());
458 static_cast<FwSizeType>(ComponentIpcSerializableBuffer::SERIALIZATION_SIZE)
462 static_cast<FwAssertArgType>(qStat)
475 static_cast<FwAssertArgType>(portNum)
478 return &this->m_cmdIn_InputPort[portNum];
490 static_cast<FwAssertArgType>(portNum)
493 return &this->m_cmdResponseIn_InputPort[portNum];
501 static_cast<FwAssertArgType>(portNum)
504 return &this->m_pingIn_InputPort[portNum];
512 static_cast<FwAssertArgType>(portNum)
515 return &this->m_schedIn_InputPort[portNum];
523 static_cast<FwAssertArgType>(portNum)
526 return &this->m_seqCancelIn_InputPort[portNum];
534 static_cast<FwAssertArgType>(portNum)
537 return &this->m_seqDispatchIn_InputPort[portNum];
545 static_cast<FwAssertArgType>(portNum)
548 return &this->m_seqRunIn_InputPort[portNum];
555 #if FW_ENABLE_TEXT_LOGGING == 1 557 void CmdSequencerComponentBase ::
558 set_LogText_OutputPort(
564 (0 <= portNum) && (portNum < this->getNum_LogText_OutputPorts()),
565 static_cast<FwAssertArgType>(portNum)
568 this->m_LogText_OutputPort[portNum].addCallPort(port);
581 static_cast<FwAssertArgType>(portNum)
584 this->m_cmdRegOut_OutputPort[portNum].
addCallPort(port);
595 static_cast<FwAssertArgType>(portNum)
598 this->m_cmdResponseOut_OutputPort[portNum].
addCallPort(port);
609 static_cast<FwAssertArgType>(portNum)
612 this->m_logOut_OutputPort[portNum].
addCallPort(port);
623 static_cast<FwAssertArgType>(portNum)
626 this->m_timeCaller_OutputPort[portNum].
addCallPort(port);
637 static_cast<FwAssertArgType>(portNum)
640 this->m_tlmOut_OutputPort[portNum].
addCallPort(port);
655 static_cast<FwAssertArgType>(portNum)
658 this->m_comCmdOut_OutputPort[portNum].
addCallPort(port);
669 static_cast<FwAssertArgType>(portNum)
672 this->m_pingOut_OutputPort[portNum].
addCallPort(port);
683 static_cast<FwAssertArgType>(portNum)
686 this->m_seqDone_OutputPort[portNum].
addCallPort(port);
697 static_cast<FwAssertArgType>(portNum)
700 this->m_seqStartOut_OutputPort[portNum].
addCallPort(port);
703 #if FW_PORT_SERIALIZATION 709 #if FW_ENABLE_TEXT_LOGGING == 1 711 void CmdSequencerComponentBase ::
712 set_LogText_OutputPort(
714 Fw::InputSerializePort* port
718 (0 <= portNum) && (portNum < this->getNum_LogText_OutputPorts()),
719 static_cast<FwAssertArgType>(portNum)
722 this->m_LogText_OutputPort[portNum].registerSerialPort(port);
730 Fw::InputSerializePort* port
735 static_cast<FwAssertArgType>(portNum)
738 this->m_cmdRegOut_OutputPort[portNum].registerSerialPort(port);
744 Fw::InputSerializePort* port
749 static_cast<FwAssertArgType>(portNum)
752 this->m_cmdResponseOut_OutputPort[portNum].registerSerialPort(port);
758 Fw::InputSerializePort* port
763 static_cast<FwAssertArgType>(portNum)
766 this->m_logOut_OutputPort[portNum].registerSerialPort(port);
772 Fw::InputSerializePort* port
777 static_cast<FwAssertArgType>(portNum)
780 this->m_timeCaller_OutputPort[portNum].registerSerialPort(port);
786 Fw::InputSerializePort* port
791 static_cast<FwAssertArgType>(portNum)
794 this->m_tlmOut_OutputPort[portNum].registerSerialPort(port);
799 #if FW_PORT_SERIALIZATION 808 Fw::InputSerializePort* port
813 static_cast<FwAssertArgType>(portNum)
816 this->m_comCmdOut_OutputPort[portNum].registerSerialPort(port);
822 Fw::InputSerializePort* port
827 static_cast<FwAssertArgType>(portNum)
830 this->m_pingOut_OutputPort[portNum].registerSerialPort(port);
836 Fw::InputSerializePort* port
841 static_cast<FwAssertArgType>(portNum)
844 this->m_seqDone_OutputPort[portNum].registerSerialPort(port);
850 Fw::InputSerializePort* port
855 static_cast<FwAssertArgType>(portNum)
858 this->m_seqStartOut_OutputPort[portNum].registerSerialPort(port);
870 FW_ASSERT(this->m_cmdRegOut_OutputPort[0].isConnected());
872 this->m_cmdRegOut_OutputPort[0].
invoke(
876 this->m_cmdRegOut_OutputPort[0].
invoke(
880 this->m_cmdRegOut_OutputPort[0].
invoke(
884 this->m_cmdRegOut_OutputPort[0].
invoke(
888 this->m_cmdRegOut_OutputPort[0].
invoke(
892 this->m_cmdRegOut_OutputPort[0].
invoke(
896 this->m_cmdRegOut_OutputPort[0].
invoke(
900 this->m_cmdRegOut_OutputPort[0].
invoke(
911 Fw::ActiveComponentBase(compName)
926 #if FW_ENABLE_TEXT_LOGGING == 1 928 bool CmdSequencerComponentBase ::
929 isConnected_LogText_OutputPort(
FwIndexType portNum)
932 (0 <= portNum) && (portNum < this->getNum_LogText_OutputPorts()),
933 static_cast<FwAssertArgType>(portNum)
936 return this->m_LogText_OutputPort[portNum].isConnected();
946 static_cast<FwAssertArgType>(portNum)
949 return this->m_cmdRegOut_OutputPort[portNum].
isConnected();
957 static_cast<FwAssertArgType>(portNum)
960 return this->m_cmdResponseOut_OutputPort[portNum].
isConnected();
968 static_cast<FwAssertArgType>(portNum)
971 return this->m_logOut_OutputPort[portNum].
isConnected();
979 static_cast<FwAssertArgType>(portNum)
982 return this->m_timeCaller_OutputPort[portNum].
isConnected();
990 static_cast<FwAssertArgType>(portNum)
993 return this->m_tlmOut_OutputPort[portNum].
isConnected();
1005 static_cast<FwAssertArgType>(portNum)
1008 return this->m_comCmdOut_OutputPort[portNum].
isConnected();
1016 static_cast<FwAssertArgType>(portNum)
1019 return this->m_pingOut_OutputPort[portNum].
isConnected();
1027 static_cast<FwAssertArgType>(portNum)
1030 return this->m_seqDone_OutputPort[portNum].
isConnected();
1038 static_cast<FwAssertArgType>(portNum)
1041 return this->m_seqStartOut_OutputPort[portNum].
isConnected();
1061 static_cast<FwAssertArgType>(portNum)
1071 ComponentIpcSerializableBuffer msg;
1075 _status = msg.serializeFrom(
1076 static_cast<FwEnumStoreType>(CMDRESPONSEIN_CMDRESPONSE)
1080 static_cast<FwAssertArgType>(_status)
1084 _status = msg.serializeFrom(portNum);
1087 static_cast<FwAssertArgType>(_status)
1091 _status = msg.serializeFrom(opCode);
1094 static_cast<FwAssertArgType>(_status)
1098 _status = msg.serializeFrom(cmdSeq);
1101 static_cast<FwAssertArgType>(_status)
1105 _status = msg.serializeFrom(response);
1108 static_cast<FwAssertArgType>(_status)
1117 static_cast<FwAssertArgType>(qStatus)
1130 static_cast<FwAssertArgType>(portNum)
1138 ComponentIpcSerializableBuffer msg;
1142 _status = msg.serializeFrom(
1143 static_cast<FwEnumStoreType>(PINGIN_PING)
1147 static_cast<FwAssertArgType>(_status)
1151 _status = msg.serializeFrom(portNum);
1154 static_cast<FwAssertArgType>(_status)
1158 _status = msg.serializeFrom(key);
1161 static_cast<FwAssertArgType>(_status)
1170 static_cast<FwAssertArgType>(qStatus)
1183 static_cast<FwAssertArgType>(portNum)
1191 ComponentIpcSerializableBuffer msg;
1195 _status = msg.serializeFrom(
1196 static_cast<FwEnumStoreType>(SCHEDIN_SCHED)
1200 static_cast<FwAssertArgType>(_status)
1204 _status = msg.serializeFrom(portNum);
1207 static_cast<FwAssertArgType>(_status)
1211 _status = msg.serializeFrom(context);
1214 static_cast<FwAssertArgType>(_status)
1223 static_cast<FwAssertArgType>(qStatus)
1233 static_cast<FwAssertArgType>(portNum)
1238 ComponentIpcSerializableBuffer msg;
1242 _status = msg.serializeFrom(
1243 static_cast<FwEnumStoreType>(SEQCANCELIN_CMDSEQCANCEL)
1247 static_cast<FwAssertArgType>(_status)
1251 _status = msg.serializeFrom(portNum);
1254 static_cast<FwAssertArgType>(_status)
1263 static_cast<FwAssertArgType>(qStatus)
1276 static_cast<FwAssertArgType>(portNum)
1284 ComponentIpcSerializableBuffer msg;
1288 _status = msg.serializeFrom(
1289 static_cast<FwEnumStoreType>(SEQDISPATCHIN_FILEDISPATCH)
1293 static_cast<FwAssertArgType>(_status)
1297 _status = msg.serializeFrom(portNum);
1300 static_cast<FwAssertArgType>(_status)
1307 static_cast<FwAssertArgType>(_status)
1316 static_cast<FwAssertArgType>(qStatus)
1329 static_cast<FwAssertArgType>(portNum)
1337 ComponentIpcSerializableBuffer msg;
1341 _status = msg.serializeFrom(
1342 static_cast<FwEnumStoreType>(SEQRUNIN_CMDSEQIN)
1346 static_cast<FwAssertArgType>(_status)
1350 _status = msg.serializeFrom(portNum);
1353 static_cast<FwAssertArgType>(_status)
1360 static_cast<FwAssertArgType>(_status)
1369 static_cast<FwAssertArgType>(qStatus)
1447 static_cast<FwAssertArgType>(portNum)
1451 this->m_comCmdOut_OutputPort[portNum].isConnected(),
1452 static_cast<FwAssertArgType>(portNum)
1454 this->m_comCmdOut_OutputPort[portNum].
invoke(
1468 static_cast<FwAssertArgType>(portNum)
1472 this->m_pingOut_OutputPort[portNum].isConnected(),
1473 static_cast<FwAssertArgType>(portNum)
1475 this->m_pingOut_OutputPort[portNum].
invoke(
1490 static_cast<FwAssertArgType>(portNum)
1494 this->m_seqDone_OutputPort[portNum].isConnected(),
1495 static_cast<FwAssertArgType>(portNum)
1497 this->m_seqDone_OutputPort[portNum].
invoke(
1512 static_cast<FwAssertArgType>(portNum)
1516 this->m_seqStartOut_OutputPort[portNum].isConnected(),
1517 static_cast<FwAssertArgType>(portNum)
1519 this->m_seqStartOut_OutputPort[portNum].
invoke(
1535 FW_ASSERT(this->m_cmdResponseOut_OutputPort[0].isConnected());
1536 this->m_cmdResponseOut_OutputPort[0].
invoke(opCode, cmdSeq, response);
1557 ComponentIpcSerializableBuffer msg;
1561 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_CS_RUN));
1564 static_cast<FwAssertArgType>(_status)
1570 _status = msg.serializeFrom(port);
1573 static_cast<FwAssertArgType>(_status)
1576 _status = msg.serializeFrom(opCode);
1579 static_cast<FwAssertArgType>(_status)
1582 _status = msg.serializeFrom(cmdSeq);
1585 static_cast<FwAssertArgType>(_status)
1588 _status = msg.serializeFrom(args);
1591 static_cast<FwAssertArgType>(_status)
1600 static_cast<FwAssertArgType>(qStatus)
1616 ComponentIpcSerializableBuffer msg;
1620 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_CS_VALIDATE));
1623 static_cast<FwAssertArgType>(_status)
1629 _status = msg.serializeFrom(port);
1632 static_cast<FwAssertArgType>(_status)
1635 _status = msg.serializeFrom(opCode);
1638 static_cast<FwAssertArgType>(_status)
1641 _status = msg.serializeFrom(cmdSeq);
1644 static_cast<FwAssertArgType>(_status)
1647 _status = msg.serializeFrom(args);
1650 static_cast<FwAssertArgType>(_status)
1659 static_cast<FwAssertArgType>(qStatus)
1675 ComponentIpcSerializableBuffer msg;
1679 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_CS_CANCEL));
1682 static_cast<FwAssertArgType>(_status)
1688 _status = msg.serializeFrom(port);
1691 static_cast<FwAssertArgType>(_status)
1694 _status = msg.serializeFrom(opCode);
1697 static_cast<FwAssertArgType>(_status)
1700 _status = msg.serializeFrom(cmdSeq);
1703 static_cast<FwAssertArgType>(_status)
1706 _status = msg.serializeFrom(args);
1709 static_cast<FwAssertArgType>(_status)
1718 static_cast<FwAssertArgType>(qStatus)
1734 ComponentIpcSerializableBuffer msg;
1738 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_CS_START));
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_STEP));
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_AUTO));
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_MANUAL));
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_JOIN_WAIT));
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)
2122 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2123 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
2131 if (this->m_logOut_OutputPort[0].isConnected()) {
2135 #if FW_AMPCS_COMPATIBLE 2140 static_cast<FwAssertArgType>(_status)
2147 static_cast<FwAssertArgType>(_status)
2150 this->m_logOut_OutputPort[0].
invoke(
2159 #if FW_ENABLE_TEXT_LOGGING 2160 if (this->m_LogText_OutputPort[0].isConnected()) {
2161 #if FW_OBJECT_NAMES == 1 2162 const char* _formatString =
2163 "(%s) %s: Loaded sequence %s";
2165 const char* _formatString =
2166 "%s: Loaded sequence %s";
2173 this->m_objName.toChar(),
2175 "CS_SequenceLoaded ",
2179 this->m_LogText_OutputPort[0].invoke(
2194 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2195 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
2203 if (this->m_logOut_OutputPort[0].isConnected()) {
2207 #if FW_AMPCS_COMPATIBLE 2212 static_cast<FwAssertArgType>(_status)
2219 static_cast<FwAssertArgType>(_status)
2222 this->m_logOut_OutputPort[0].
invoke(
2231 #if FW_ENABLE_TEXT_LOGGING 2232 if (this->m_LogText_OutputPort[0].isConnected()) {
2233 #if FW_OBJECT_NAMES == 1 2234 const char* _formatString =
2235 "(%s) %s: Sequence file %s canceled";
2237 const char* _formatString =
2238 "%s: Sequence file %s canceled";
2245 this->m_objName.toChar(),
2247 "CS_SequenceCanceled ",
2251 this->m_LogText_OutputPort[0].invoke(
2266 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2267 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
2275 if (this->m_logOut_OutputPort[0].isConnected()) {
2279 #if FW_AMPCS_COMPATIBLE 2284 static_cast<FwAssertArgType>(_status)
2291 static_cast<FwAssertArgType>(_status)
2294 this->m_logOut_OutputPort[0].
invoke(
2303 #if FW_ENABLE_TEXT_LOGGING 2304 if (this->m_LogText_OutputPort[0].isConnected()) {
2305 #if FW_OBJECT_NAMES == 1 2306 const char* _formatString =
2307 "(%s) %s: Error reading sequence file %s";
2309 const char* _formatString =
2310 "%s: Error reading sequence file %s";
2317 this->m_objName.toChar(),
2319 "CS_FileReadError ",
2323 this->m_LogText_OutputPort[0].invoke(
2342 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2343 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
2351 if (this->m_logOut_OutputPort[0].isConnected()) {
2355 #if FW_AMPCS_COMPATIBLE 2360 static_cast<FwAssertArgType>(_status)
2367 static_cast<FwAssertArgType>(_status)
2370 #if FW_AMPCS_COMPATIBLE 2377 static_cast<FwAssertArgType>(_status)
2383 static_cast<FwAssertArgType>(_status)
2386 #if FW_AMPCS_COMPATIBLE 2389 static_cast<U8>(
sizeof(I32))
2393 static_cast<FwAssertArgType>(_status)
2399 static_cast<FwAssertArgType>(_status)
2402 this->m_logOut_OutputPort[0].
invoke(
2411 #if FW_ENABLE_TEXT_LOGGING 2412 if (this->m_LogText_OutputPort[0].isConnected()) {
2413 #if FW_OBJECT_NAMES == 1 2414 const char* _formatString =
2415 "(%s) %s: Sequence file %s invalid. Stage: %s Error: %" PRIi32
"";
2417 const char* _formatString =
2418 "%s: Sequence file %s invalid. Stage: %s Error: %" PRIi32
"";
2422 stage.toString(stageStr);
2428 this->m_objName.toChar(),
2436 this->m_LogText_OutputPort[0].invoke(
2455 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2456 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
2464 if (this->m_logOut_OutputPort[0].isConnected()) {
2468 #if FW_AMPCS_COMPATIBLE 2473 static_cast<FwAssertArgType>(_status)
2480 static_cast<FwAssertArgType>(_status)
2483 #if FW_AMPCS_COMPATIBLE 2486 static_cast<U8>(
sizeof(U32))
2490 static_cast<FwAssertArgType>(_status)
2496 static_cast<FwAssertArgType>(_status)
2499 #if FW_AMPCS_COMPATIBLE 2502 static_cast<U8>(
sizeof(I32))
2506 static_cast<FwAssertArgType>(_status)
2512 static_cast<FwAssertArgType>(_status)
2515 this->m_logOut_OutputPort[0].
invoke(
2524 #if FW_ENABLE_TEXT_LOGGING 2525 if (this->m_LogText_OutputPort[0].isConnected()) {
2526 #if FW_OBJECT_NAMES == 1 2527 const char* _formatString =
2528 "(%s) %s: Sequence file %s: Record %" PRIu32
" invalid. Err: %" PRIi32
"";
2530 const char* _formatString =
2531 "%s: Sequence file %s: Record %" PRIu32
" invalid. Err: %" PRIi32
"";
2538 this->m_objName.toChar(),
2540 "CS_RecordInvalid ",
2546 this->m_LogText_OutputPort[0].invoke(
2564 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2565 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
2573 if (this->m_logOut_OutputPort[0].isConnected()) {
2577 #if FW_AMPCS_COMPATIBLE 2582 static_cast<FwAssertArgType>(_status)
2589 static_cast<FwAssertArgType>(_status)
2592 #if FW_AMPCS_COMPATIBLE 2595 static_cast<U8>(
sizeof(U32))
2599 static_cast<FwAssertArgType>(_status)
2605 static_cast<FwAssertArgType>(_status)
2608 this->m_logOut_OutputPort[0].
invoke(
2617 #if FW_ENABLE_TEXT_LOGGING 2618 if (this->m_LogText_OutputPort[0].isConnected()) {
2619 #if FW_OBJECT_NAMES == 1 2620 const char* _formatString =
2621 "(%s) %s: Sequence file %s too large. Size: %" PRIu32
"";
2623 const char* _formatString =
2624 "%s: Sequence file %s too large. Size: %" PRIu32
"";
2631 this->m_objName.toChar(),
2633 "CS_FileSizeError ",
2638 this->m_LogText_OutputPort[0].invoke(
2653 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2654 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
2662 if (this->m_logOut_OutputPort[0].isConnected()) {
2666 #if FW_AMPCS_COMPATIBLE 2671 static_cast<FwAssertArgType>(_status)
2678 static_cast<FwAssertArgType>(_status)
2681 this->m_logOut_OutputPort[0].
invoke(
2690 #if FW_ENABLE_TEXT_LOGGING 2691 if (this->m_LogText_OutputPort[0].isConnected()) {
2692 #if FW_OBJECT_NAMES == 1 2693 const char* _formatString =
2694 "(%s) %s: Sequence file %s not found.";
2696 const char* _formatString =
2697 "%s: Sequence file %s not found.";
2704 this->m_objName.toChar(),
2710 this->m_LogText_OutputPort[0].invoke(
2729 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2730 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
2738 if (this->m_logOut_OutputPort[0].isConnected()) {
2742 #if FW_AMPCS_COMPATIBLE 2747 static_cast<FwAssertArgType>(_status)
2754 static_cast<FwAssertArgType>(_status)
2757 #if FW_AMPCS_COMPATIBLE 2760 static_cast<U8>(
sizeof(U32))
2764 static_cast<FwAssertArgType>(_status)
2770 static_cast<FwAssertArgType>(_status)
2773 #if FW_AMPCS_COMPATIBLE 2776 static_cast<U8>(
sizeof(U32))
2780 static_cast<FwAssertArgType>(_status)
2786 static_cast<FwAssertArgType>(_status)
2789 this->m_logOut_OutputPort[0].
invoke(
2798 #if FW_ENABLE_TEXT_LOGGING 2799 if (this->m_LogText_OutputPort[0].isConnected()) {
2800 #if FW_OBJECT_NAMES == 1 2801 const char* _formatString =
2802 "(%s) %s: Sequence file %s had invalid CRC. Stored 0x%" PRIx32
", Computed 0x%" PRIx32
".";
2804 const char* _formatString =
2805 "%s: Sequence file %s had invalid CRC. Stored 0x%" PRIx32
", Computed 0x%" PRIx32
".";
2812 this->m_objName.toChar(),
2814 "CS_FileCrcFailure ",
2820 this->m_LogText_OutputPort[0].invoke(
2839 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2840 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
2848 if (this->m_logOut_OutputPort[0].isConnected()) {
2852 #if FW_AMPCS_COMPATIBLE 2857 static_cast<FwAssertArgType>(_status)
2864 static_cast<FwAssertArgType>(_status)
2867 #if FW_AMPCS_COMPATIBLE 2870 static_cast<U8>(
sizeof(U32))
2874 static_cast<FwAssertArgType>(_status)
2880 static_cast<FwAssertArgType>(_status)
2883 #if FW_AMPCS_COMPATIBLE 2890 static_cast<FwAssertArgType>(_status)
2896 static_cast<FwAssertArgType>(_status)
2899 this->m_logOut_OutputPort[0].
invoke(
2908 #if FW_ENABLE_TEXT_LOGGING 2909 if (this->m_LogText_OutputPort[0].isConnected()) {
2910 #if FW_OBJECT_NAMES == 1 2911 const char* _formatString =
2912 "(%s) %s: Sequence file %s: Command %" PRIu32
" (opcode %" PRIu32
") complete";
2914 const char* _formatString =
2915 "%s: Sequence file %s: Command %" PRIu32
" (opcode %" PRIu32
") complete";
2922 this->m_objName.toChar(),
2924 "CS_CommandComplete ",
2930 this->m_LogText_OutputPort[0].invoke(
2945 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2946 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
2954 if (this->m_logOut_OutputPort[0].isConnected()) {
2958 #if FW_AMPCS_COMPATIBLE 2963 static_cast<FwAssertArgType>(_status)
2970 static_cast<FwAssertArgType>(_status)
2973 this->m_logOut_OutputPort[0].
invoke(
2982 #if FW_ENABLE_TEXT_LOGGING 2983 if (this->m_LogText_OutputPort[0].isConnected()) {
2984 #if FW_OBJECT_NAMES == 1 2985 const char* _formatString =
2986 "(%s) %s: Sequence file %s complete";
2988 const char* _formatString =
2989 "%s: Sequence file %s complete";
2996 this->m_objName.toChar(),
2998 "CS_SequenceComplete ",
3002 this->m_LogText_OutputPort[0].invoke(
3022 if (this->m_timeCaller_OutputPort[0].isConnected()) {
3023 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
3031 if (this->m_logOut_OutputPort[0].isConnected()) {
3035 #if FW_AMPCS_COMPATIBLE 3040 static_cast<FwAssertArgType>(_status)
3047 static_cast<FwAssertArgType>(_status)
3050 #if FW_AMPCS_COMPATIBLE 3053 static_cast<U8>(
sizeof(U32))
3057 static_cast<FwAssertArgType>(_status)
3063 static_cast<FwAssertArgType>(_status)
3066 #if FW_AMPCS_COMPATIBLE 3073 static_cast<FwAssertArgType>(_status)
3079 static_cast<FwAssertArgType>(_status)
3082 #if FW_AMPCS_COMPATIBLE 3085 static_cast<U8>(
sizeof(U32))
3089 static_cast<FwAssertArgType>(_status)
3095 static_cast<FwAssertArgType>(_status)
3098 this->m_logOut_OutputPort[0].
invoke(
3107 #if FW_ENABLE_TEXT_LOGGING 3108 if (this->m_LogText_OutputPort[0].isConnected()) {
3109 #if FW_OBJECT_NAMES == 1 3110 const char* _formatString =
3111 "(%s) %s: Sequence file %s: Command %" PRIu32
" (opcode %" PRIu32
") completed with error %" PRIu32
"";
3113 const char* _formatString =
3114 "%s: Sequence file %s: Command %" PRIu32
" (opcode %" PRIu32
") completed with error %" PRIu32
"";
3121 this->m_objName.toChar(),
3130 this->m_LogText_OutputPort[0].invoke(
3145 if (this->m_timeCaller_OutputPort[0].isConnected()) {
3146 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
3154 if (this->m_logOut_OutputPort[0].isConnected()) {
3157 #if FW_AMPCS_COMPATIBLE 3163 static_cast<FwAssertArgType>(_status)
3167 this->m_logOut_OutputPort[0].
invoke(
3176 #if FW_ENABLE_TEXT_LOGGING 3177 if (this->m_LogText_OutputPort[0].isConnected()) {
3178 #if FW_OBJECT_NAMES == 1 3179 const char* _formatString =
3180 "(%s) %s: Invalid mode";
3182 const char* _formatString =
3190 this->m_objName.toChar(),
3195 this->m_LogText_OutputPort[0].invoke(
3214 if (this->m_timeCaller_OutputPort[0].isConnected()) {
3215 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
3223 if (this->m_logOut_OutputPort[0].isConnected()) {
3227 #if FW_AMPCS_COMPATIBLE 3232 static_cast<FwAssertArgType>(_status)
3239 static_cast<FwAssertArgType>(_status)
3242 #if FW_AMPCS_COMPATIBLE 3245 static_cast<U8>(
sizeof(U32))
3249 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 this->m_logOut_OutputPort[0].
invoke(
3283 #if FW_ENABLE_TEXT_LOGGING 3284 if (this->m_LogText_OutputPort[0].isConnected()) {
3285 #if FW_OBJECT_NAMES == 1 3286 const char* _formatString =
3287 "(%s) %s: Sequence file %s header records mismatch: %" PRIu32
" in header, found %" PRIu32
" extra bytes.";
3289 const char* _formatString =
3290 "%s: Sequence file %s header records mismatch: %" PRIu32
" in header, found %" PRIu32
" extra bytes.";
3297 this->m_objName.toChar(),
3299 "CS_RecordMismatch ",
3305 this->m_LogText_OutputPort[0].invoke(
3324 if (this->m_timeCaller_OutputPort[0].isConnected()) {
3325 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
3333 if (this->m_logOut_OutputPort[0].isConnected()) {
3337 #if FW_AMPCS_COMPATIBLE 3342 static_cast<FwAssertArgType>(_status)
3349 static_cast<FwAssertArgType>(_status)
3352 #if FW_AMPCS_COMPATIBLE 3355 static_cast<U8>(
sizeof(U16))
3359 static_cast<FwAssertArgType>(_status)
3365 static_cast<FwAssertArgType>(_status)
3368 #if FW_AMPCS_COMPATIBLE 3371 static_cast<U8>(
sizeof(U16))
3375 static_cast<FwAssertArgType>(_status)
3381 static_cast<FwAssertArgType>(_status)
3384 this->m_logOut_OutputPort[0].
invoke(
3393 #if FW_ENABLE_TEXT_LOGGING 3394 if (this->m_LogText_OutputPort[0].isConnected()) {
3395 #if FW_OBJECT_NAMES == 1 3396 const char* _formatString =
3397 "(%s) %s: Sequence file %s: Current time base doesn't match sequence time: base: %" PRIu16
" seq: %" PRIu16
"";
3399 const char* _formatString =
3400 "%s: Sequence file %s: Current time base doesn't match sequence time: base: %" PRIu16
" seq: %" PRIu16
"";
3407 this->m_objName.toChar(),
3409 "CS_TimeBaseMismatch ",
3415 this->m_LogText_OutputPort[0].invoke(
3434 if (this->m_timeCaller_OutputPort[0].isConnected()) {
3435 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
3443 if (this->m_logOut_OutputPort[0].isConnected()) {
3447 #if FW_AMPCS_COMPATIBLE 3452 static_cast<FwAssertArgType>(_status)
3459 static_cast<FwAssertArgType>(_status)
3462 #if FW_AMPCS_COMPATIBLE 3465 static_cast<U8>(
sizeof(
U8))
3469 static_cast<FwAssertArgType>(_status)
3475 static_cast<FwAssertArgType>(_status)
3478 #if FW_AMPCS_COMPATIBLE 3481 static_cast<U8>(
sizeof(
U8))
3485 static_cast<FwAssertArgType>(_status)
3491 static_cast<FwAssertArgType>(_status)
3494 this->m_logOut_OutputPort[0].
invoke(
3503 #if FW_ENABLE_TEXT_LOGGING 3504 if (this->m_LogText_OutputPort[0].isConnected()) {
3505 #if FW_OBJECT_NAMES == 1 3506 const char* _formatString =
3507 "(%s) %s: Sequence file %s: Current time context doesn't match sequence context: base: %" PRIu8
" seq: %" PRIu8
"";
3509 const char* _formatString =
3510 "%s: Sequence file %s: Current time context doesn't match sequence context: base: %" PRIu8
" seq: %" PRIu8
"";
3517 this->m_objName.toChar(),
3519 "CS_TimeContextMismatch ",
3525 this->m_LogText_OutputPort[0].invoke(
3540 if (this->m_timeCaller_OutputPort[0].isConnected()) {
3541 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
3549 if (this->m_logOut_OutputPort[0].isConnected()) {
3553 #if FW_AMPCS_COMPATIBLE 3558 static_cast<FwAssertArgType>(_status)
3565 static_cast<FwAssertArgType>(_status)
3568 this->m_logOut_OutputPort[0].
invoke(
3577 #if FW_ENABLE_TEXT_LOGGING 3578 if (this->m_LogText_OutputPort[0].isConnected()) {
3579 #if FW_OBJECT_NAMES == 1 3580 const char* _formatString =
3581 "(%s) %s: Local request for sequence %s started.";
3583 const char* _formatString =
3584 "%s: Local request for sequence %s started.";
3591 this->m_objName.toChar(),
3593 "CS_PortSequenceStarted ",
3597 this->m_LogText_OutputPort[0].invoke(
3612 if (this->m_timeCaller_OutputPort[0].isConnected()) {
3613 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
3621 if (this->m_logOut_OutputPort[0].isConnected()) {
3625 #if FW_AMPCS_COMPATIBLE 3630 static_cast<FwAssertArgType>(_status)
3634 #if FW_AMPCS_COMPATIBLE 3641 static_cast<FwAssertArgType>(_status)
3647 static_cast<FwAssertArgType>(_status)
3650 this->m_logOut_OutputPort[0].
invoke(
3659 #if FW_ENABLE_TEXT_LOGGING 3660 if (this->m_LogText_OutputPort[0].isConnected()) {
3661 #if FW_OBJECT_NAMES == 1 3662 const char* _formatString =
3663 "(%s) %s: Command complete status received while no sequences active. Opcode: %" PRIu32
"";
3665 const char* _formatString =
3666 "%s: Command complete status received while no sequences active. Opcode: %" PRIu32
"";
3673 this->m_objName.toChar(),
3675 "CS_UnexpectedCompletion ",
3679 this->m_LogText_OutputPort[0].invoke(
3694 if (this->m_timeCaller_OutputPort[0].isConnected()) {
3695 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
3703 if (this->m_logOut_OutputPort[0].isConnected()) {
3707 #if FW_AMPCS_COMPATIBLE 3712 static_cast<FwAssertArgType>(_status)
3716 #if FW_AMPCS_COMPATIBLE 3723 static_cast<FwAssertArgType>(_status)
3729 static_cast<FwAssertArgType>(_status)
3732 this->m_logOut_OutputPort[0].
invoke(
3741 #if FW_ENABLE_TEXT_LOGGING 3742 if (this->m_LogText_OutputPort[0].isConnected()) {
3743 #if FW_OBJECT_NAMES == 1 3744 const char* _formatString =
3745 "(%s) %s: Sequencer switched to %s step mode";
3747 const char* _formatString =
3748 "%s: Sequencer switched to %s step mode";
3752 mode.toString(modeStr);
3758 this->m_objName.toChar(),
3764 this->m_LogText_OutputPort[0].invoke(
3779 if (this->m_timeCaller_OutputPort[0].isConnected()) {
3780 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
3788 if (this->m_logOut_OutputPort[0].isConnected()) {
3791 #if FW_AMPCS_COMPATIBLE 3797 static_cast<FwAssertArgType>(_status)
3801 this->m_logOut_OutputPort[0].
invoke(
3810 #if FW_ENABLE_TEXT_LOGGING 3811 if (this->m_LogText_OutputPort[0].isConnected()) {
3812 #if FW_OBJECT_NAMES == 1 3813 const char* _formatString =
3814 "(%s) %s: No sequence active.";
3816 const char* _formatString =
3817 "%s: No sequence active.";
3824 this->m_objName.toChar(),
3826 "CS_NoSequenceActive " 3829 this->m_LogText_OutputPort[0].invoke(
3844 if (this->m_timeCaller_OutputPort[0].isConnected()) {
3845 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
3853 if (this->m_logOut_OutputPort[0].isConnected()) {
3857 #if FW_AMPCS_COMPATIBLE 3862 static_cast<FwAssertArgType>(_status)
3869 static_cast<FwAssertArgType>(_status)
3872 this->m_logOut_OutputPort[0].
invoke(
3881 #if FW_ENABLE_TEXT_LOGGING 3882 if (this->m_LogText_OutputPort[0].isConnected()) {
3883 #if FW_OBJECT_NAMES == 1 3884 const char* _formatString =
3885 "(%s) %s: Sequence %s is valid.";
3887 const char* _formatString =
3888 "%s: Sequence %s is valid.";
3895 this->m_objName.toChar(),
3897 "CS_SequenceValid ",
3901 this->m_LogText_OutputPort[0].invoke(
3919 if (this->m_timeCaller_OutputPort[0].isConnected()) {
3920 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
3928 if (this->m_logOut_OutputPort[0].isConnected()) {
3932 #if FW_AMPCS_COMPATIBLE 3937 static_cast<FwAssertArgType>(_status)
3944 static_cast<FwAssertArgType>(_status)
3947 #if FW_AMPCS_COMPATIBLE 3950 static_cast<U8>(
sizeof(U32))
3954 static_cast<FwAssertArgType>(_status)
3960 static_cast<FwAssertArgType>(_status)
3963 this->m_logOut_OutputPort[0].
invoke(
3972 #if FW_ENABLE_TEXT_LOGGING 3973 if (this->m_LogText_OutputPort[0].isConnected()) {
3974 #if FW_OBJECT_NAMES == 1 3975 const char* _formatString =
3976 "(%s) %s: Sequence %s timed out on command %" PRIu32
"";
3978 const char* _formatString =
3979 "%s: Sequence %s timed out on command %" PRIu32
"";
3986 this->m_objName.toChar(),
3988 "CS_SequenceTimeout ",
3993 this->m_LogText_OutputPort[0].invoke(
4011 if (this->m_timeCaller_OutputPort[0].isConnected()) {
4012 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
4020 if (this->m_logOut_OutputPort[0].isConnected()) {
4024 #if FW_AMPCS_COMPATIBLE 4029 static_cast<FwAssertArgType>(_status)
4036 static_cast<FwAssertArgType>(_status)
4039 #if FW_AMPCS_COMPATIBLE 4042 static_cast<U8>(
sizeof(U32))
4046 static_cast<FwAssertArgType>(_status)
4052 static_cast<FwAssertArgType>(_status)
4055 this->m_logOut_OutputPort[0].
invoke(
4064 #if FW_ENABLE_TEXT_LOGGING 4065 if (this->m_LogText_OutputPort[0].isConnected()) {
4066 #if FW_OBJECT_NAMES == 1 4067 const char* _formatString =
4068 "(%s) %s: Sequence %s command %" PRIu32
" stepped";
4070 const char* _formatString =
4071 "%s: Sequence %s command %" PRIu32
" stepped";
4078 this->m_objName.toChar(),
4085 this->m_LogText_OutputPort[0].invoke(
4100 if (this->m_timeCaller_OutputPort[0].isConnected()) {
4101 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
4109 if (this->m_logOut_OutputPort[0].isConnected()) {
4113 #if FW_AMPCS_COMPATIBLE 4118 static_cast<FwAssertArgType>(_status)
4125 static_cast<FwAssertArgType>(_status)
4128 this->m_logOut_OutputPort[0].
invoke(
4137 #if FW_ENABLE_TEXT_LOGGING 4138 if (this->m_LogText_OutputPort[0].isConnected()) {
4139 #if FW_OBJECT_NAMES == 1 4140 const char* _formatString =
4141 "(%s) %s: Sequence %s started";
4143 const char* _formatString =
4144 "%s: Sequence %s started";
4151 this->m_objName.toChar(),
4157 this->m_LogText_OutputPort[0].invoke(
4176 if (this->m_timeCaller_OutputPort[0].isConnected()) {
4177 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
4185 if (this->m_logOut_OutputPort[0].isConnected()) {
4189 #if FW_AMPCS_COMPATIBLE 4194 static_cast<FwAssertArgType>(_status)
4201 static_cast<FwAssertArgType>(_status)
4204 #if FW_AMPCS_COMPATIBLE 4207 static_cast<U8>(
sizeof(U32))
4211 static_cast<FwAssertArgType>(_status)
4217 static_cast<FwAssertArgType>(_status)
4220 #if FW_AMPCS_COMPATIBLE 4227 static_cast<FwAssertArgType>(_status)
4233 static_cast<FwAssertArgType>(_status)
4236 this->m_logOut_OutputPort[0].
invoke(
4245 #if FW_ENABLE_TEXT_LOGGING 4246 if (this->m_LogText_OutputPort[0].isConnected()) {
4247 #if FW_OBJECT_NAMES == 1 4248 const char* _formatString =
4249 "(%s) %s: Start waiting for sequence file %s: Command %" PRIu32
" (opcode %" PRIu32
") to complete";
4251 const char* _formatString =
4252 "%s: Start waiting for sequence file %s: Command %" PRIu32
" (opcode %" PRIu32
") to complete";
4259 this->m_objName.toChar(),
4267 this->m_LogText_OutputPort[0].invoke(
4282 if (this->m_timeCaller_OutputPort[0].isConnected()) {
4283 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
4291 if (this->m_logOut_OutputPort[0].isConnected()) {
4294 #if FW_AMPCS_COMPATIBLE 4300 static_cast<FwAssertArgType>(_status)
4304 this->m_logOut_OutputPort[0].
invoke(
4313 #if FW_ENABLE_TEXT_LOGGING 4314 if (this->m_LogText_OutputPort[0].isConnected()) {
4315 #if FW_OBJECT_NAMES == 1 4316 const char* _formatString =
4317 "(%s) %s: Still waiting for sequence file to complete";
4319 const char* _formatString =
4320 "%s: Still waiting for sequence file to complete";
4327 this->m_objName.toChar(),
4329 "CS_JoinWaitingNotComplete " 4332 this->m_LogText_OutputPort[0].invoke(
4347 if (this->m_timeCaller_OutputPort[0].isConnected()) {
4348 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
4356 if (this->m_logOut_OutputPort[0].isConnected()) {
4360 #if FW_AMPCS_COMPATIBLE 4365 static_cast<FwAssertArgType>(_status)
4372 static_cast<FwAssertArgType>(_status)
4375 this->m_logOut_OutputPort[0].
invoke(
4384 #if FW_ENABLE_TEXT_LOGGING 4385 if (this->m_LogText_OutputPort[0].isConnected()) {
4386 #if FW_OBJECT_NAMES == 1 4387 const char* _formatString =
4388 "(%s) %s: Sequence file %s has no records. Ignoring.";
4390 const char* _formatString =
4391 "%s: Sequence file %s has no records. Ignoring.";
4398 this->m_objName.toChar(),
4404 this->m_LogText_OutputPort[0].invoke(
4424 if (this->m_tlmOut_OutputPort[0].isConnected()) {
4426 this->m_timeCaller_OutputPort[0].isConnected() &&
4429 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
4436 static_cast<FwAssertArgType>(_stat)
4443 this->m_tlmOut_OutputPort[0].
invoke(
4457 if (this->m_tlmOut_OutputPort[0].isConnected()) {
4459 this->m_timeCaller_OutputPort[0].isConnected() &&
4462 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
4469 static_cast<FwAssertArgType>(_stat)
4476 this->m_tlmOut_OutputPort[0].
invoke(
4490 if (this->m_tlmOut_OutputPort[0].isConnected()) {
4492 this->m_timeCaller_OutputPort[0].isConnected() &&
4495 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
4502 static_cast<FwAssertArgType>(_stat)
4509 this->m_tlmOut_OutputPort[0].
invoke(
4523 if (this->m_tlmOut_OutputPort[0].isConnected()) {
4525 this->m_timeCaller_OutputPort[0].isConnected() &&
4528 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
4535 static_cast<FwAssertArgType>(_stat)
4542 this->m_tlmOut_OutputPort[0].
invoke(
4556 if (this->m_tlmOut_OutputPort[0].isConnected()) {
4558 this->m_timeCaller_OutputPort[0].isConnected() &&
4561 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
4568 static_cast<FwAssertArgType>(_stat)
4575 this->m_tlmOut_OutputPort[0].
invoke(
4590 if (this->m_timeCaller_OutputPort[0].isConnected()) {
4592 this->m_timeCaller_OutputPort[0].
invoke(_time);
4607 ComponentIpcSerializableBuffer _msg;
4617 static_cast<FwAssertArgType>(_msgStatus)
4627 static_cast<FwAssertArgType>(_deserStatus)
4630 MsgTypeEnum _msgType =
static_cast<MsgTypeEnum
>(_desMsg);
4632 if (_msgType == CMDSEQUENCER_COMPONENT_EXIT) {
4637 _deserStatus = _msg.deserializeTo(portNum);
4640 static_cast<FwAssertArgType>(_deserStatus)
4645 case CMDRESPONSEIN_CMDRESPONSE: {
4648 _deserStatus = _msg.deserializeTo(opCode);
4651 static_cast<FwAssertArgType>(_deserStatus)
4656 _deserStatus = _msg.deserializeTo(cmdSeq);
4659 static_cast<FwAssertArgType>(_deserStatus)
4664 _deserStatus = _msg.deserializeTo(response);
4667 static_cast<FwAssertArgType>(_deserStatus)
4684 _deserStatus = _msg.deserializeTo(key);
4687 static_cast<FwAssertArgType>(_deserStatus)
4699 case SCHEDIN_SCHED: {
4702 _deserStatus = _msg.deserializeTo(context);
4705 static_cast<FwAssertArgType>(_deserStatus)
4717 case SEQCANCELIN_CMDSEQCANCEL: {
4725 case SEQDISPATCHIN_FILEDISPATCH: {
4728 Fw::ExternalString file_name(__fprime_ac_file_name_buffer,
sizeof __fprime_ac_file_name_buffer);
4729 _deserStatus = _msg.deserializeTo(file_name);
4732 static_cast<FwAssertArgType>(_deserStatus)
4744 case SEQRUNIN_CMDSEQIN: {
4747 Fw::ExternalString filename(__fprime_ac_filename_buffer,
sizeof __fprime_ac_filename_buffer);
4748 _deserStatus = _msg.deserializeTo(filename);
4751 static_cast<FwAssertArgType>(_deserStatus)
4766 _deserStatus = _msg.deserializeTo(_opCode);
4769 static_cast<FwAssertArgType>(_deserStatus)
4774 _deserStatus = _msg.deserializeTo(_cmdSeq);
4777 static_cast<FwAssertArgType>(_deserStatus)
4782 _deserStatus = _msg.deserializeTo(args);
4785 static_cast<FwAssertArgType>(_deserStatus)
4795 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
4810 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
4823 #if FW_CMD_CHECK_RESIDUAL 4825 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
4844 case CMD_CS_VALIDATE: {
4847 _deserStatus = _msg.deserializeTo(_opCode);
4850 static_cast<FwAssertArgType>(_deserStatus)
4855 _deserStatus = _msg.deserializeTo(_cmdSeq);
4858 static_cast<FwAssertArgType>(_deserStatus)
4863 _deserStatus = _msg.deserializeTo(args);
4866 static_cast<FwAssertArgType>(_deserStatus)
4876 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
4889 #if FW_CMD_CHECK_RESIDUAL 4891 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
4909 case CMD_CS_CANCEL: {
4912 _deserStatus = _msg.deserializeTo(_opCode);
4915 static_cast<FwAssertArgType>(_deserStatus)
4920 _deserStatus = _msg.deserializeTo(_cmdSeq);
4923 static_cast<FwAssertArgType>(_deserStatus)
4928 _deserStatus = _msg.deserializeTo(args);
4931 static_cast<FwAssertArgType>(_deserStatus)
4939 #if FW_CMD_CHECK_RESIDUAL 4941 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
4956 case CMD_CS_START: {
4959 _deserStatus = _msg.deserializeTo(_opCode);
4962 static_cast<FwAssertArgType>(_deserStatus)
4967 _deserStatus = _msg.deserializeTo(_cmdSeq);
4970 static_cast<FwAssertArgType>(_deserStatus)
4975 _deserStatus = _msg.deserializeTo(args);
4978 static_cast<FwAssertArgType>(_deserStatus)
4986 #if FW_CMD_CHECK_RESIDUAL 4988 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
5006 _deserStatus = _msg.deserializeTo(_opCode);
5009 static_cast<FwAssertArgType>(_deserStatus)
5014 _deserStatus = _msg.deserializeTo(_cmdSeq);
5017 static_cast<FwAssertArgType>(_deserStatus)
5022 _deserStatus = _msg.deserializeTo(args);
5025 static_cast<FwAssertArgType>(_deserStatus)
5033 #if FW_CMD_CHECK_RESIDUAL 5035 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
5053 _deserStatus = _msg.deserializeTo(_opCode);
5056 static_cast<FwAssertArgType>(_deserStatus)
5061 _deserStatus = _msg.deserializeTo(_cmdSeq);
5064 static_cast<FwAssertArgType>(_deserStatus)
5069 _deserStatus = _msg.deserializeTo(args);
5072 static_cast<FwAssertArgType>(_deserStatus)
5080 #if FW_CMD_CHECK_RESIDUAL 5082 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
5097 case CMD_CS_MANUAL: {
5100 _deserStatus = _msg.deserializeTo(_opCode);
5103 static_cast<FwAssertArgType>(_deserStatus)
5108 _deserStatus = _msg.deserializeTo(_cmdSeq);
5111 static_cast<FwAssertArgType>(_deserStatus)
5116 _deserStatus = _msg.deserializeTo(args);
5119 static_cast<FwAssertArgType>(_deserStatus)
5127 #if FW_CMD_CHECK_RESIDUAL 5129 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
5144 case CMD_CS_JOIN_WAIT: {
5147 _deserStatus = _msg.deserializeTo(_opCode);
5150 static_cast<FwAssertArgType>(_deserStatus)
5155 _deserStatus = _msg.deserializeTo(_cmdSeq);
5158 static_cast<FwAssertArgType>(_deserStatus)
5163 _deserStatus = _msg.deserializeTo(args);
5166 static_cast<FwAssertArgType>(_deserStatus)
5174 #if FW_CMD_CHECK_RESIDUAL 5176 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
5201 void CmdSequencerComponentBase ::
5213 const U32 idBase = callComp->
getIdBase();
5214 FW_ASSERT(opCode >= idBase, static_cast<FwAssertArgType>(opCode), static_cast<FwAssertArgType>(idBase));
5217 switch (opCode - idBase) {
5219 compPtr->CS_RUN_cmdHandlerBase(
5228 compPtr->CS_VALIDATE_cmdHandlerBase(
5237 compPtr->CS_CANCEL_cmdHandlerBase(
5246 compPtr->CS_START_cmdHandlerBase(
5255 compPtr->CS_STEP_cmdHandlerBase(
5264 compPtr->CS_AUTO_cmdHandlerBase(
5273 compPtr->CS_MANUAL_cmdHandlerBase(
5282 compPtr->CS_JOIN_WAIT_cmdHandlerBase(
5296 void CmdSequencerComponentBase ::
5297 m_p_cmdResponseIn_in(
5307 compPtr->cmdResponseIn_handlerBase(
5315 void CmdSequencerComponentBase ::
5324 compPtr->pingIn_handlerBase(
5330 void CmdSequencerComponentBase ::
5339 compPtr->schedIn_handlerBase(
5345 void CmdSequencerComponentBase ::
5353 compPtr->seqCancelIn_handlerBase(portNum);
5356 void CmdSequencerComponentBase ::
5357 m_p_seqDispatchIn_in(
5365 compPtr->seqDispatchIn_handlerBase(
5371 void CmdSequencerComponentBase ::
5380 compPtr->seqRunIn_handlerBase(
void set_timeCaller_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to timeCaller[portNum].
A command status came back when no sequence was running.
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()
Channel ID for CS_CommandsExecuted.
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
void addCallPort(InputTimePort *callPort)
Register an input port.
void tlmWrite_CS_LoadCommands(U32 arg, Fw::Time _tlmTime=Fw::Time()) const
void invoke(Fw::ComBuffer &data, U32 context) const
Invoke a port interface.
void log_WARNING_HI_CS_InvalidMode() const
void init()
Initialization function.
Start running a command sequence.
The Command Sequencer issued a command and received a success status in return.
static constexpr FwIndexType getNum_cmdResponseIn_InputPorts()
static constexpr FwIndexType getNum_timeCaller_OutputPorts()
static constexpr FwIndexType getNum_cmdResponseOut_OutputPorts()
FwIdType FwOpcodeType
The type of a command opcode.
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
void log_ACTIVITY_HI_CS_ModeSwitched(Svc::CmdSequencer_SeqMode mode) const
bool isConnected_comCmdOut_OutputPort(FwIndexType portNum)
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 sequence related command came with no active sequence.
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)
The sequence file validation failed.
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
The Command Sequencer issued a command and received an error status in return.
void log_WARNING_HI_CS_JoinWaitingNotComplete() const
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.
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
A command sequence was successfully canceled.
void CS_STEP_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void invoke(U32 key) const
Invoke a port interface.
static constexpr FwIndexType getNum_seqRunIn_InputPorts()
Number of records in header doesn't match number in file.
virtual const CHAR * toChar() const =0
Convert to a C-style char*.
A command in a sequence was stepped through.
void pingOut_out(FwIndexType portNum, U32 key)
Invoke output port pingOut.
static constexpr FwIndexType getNum_schedIn_InputPorts()
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
Channel ID for CS_SequencesCompleted.
Fw::InputCmdResponsePort * get_cmdResponseIn_InputPort(FwIndexType portNum)
static constexpr FwIndexType getNum_seqDone_OutputPorts()
void comCmdOut_out(FwIndexType portNum, Fw::ComBuffer &data, U32 context)
Invoke output port comCmdOut.
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].
void pingIn_handlerBase(FwIndexType portNum, U32 key)
Handler base-class function for input port pingIn.
void init()
Initialization function.
void seqDone_out(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)
Invoke output port seqDone.
Enum representing a command response.
void schedIn_handlerBase(FwIndexType portNum, U32 context)
Handler base-class function for input port schedIn.
A sequence passed validation.
No time base has been established (Required)
void seqRunIn_handlerBase(FwIndexType portNum, const Fw::StringBase &filename)
Handler base-class function for input port seqRunIn.
void addCallPort(InputCmdRegPort *callPort)
Register an input port.
void log_WARNING_LO_CS_NoSequenceActive() const
void CS_START_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Wait for sequences that are running to finish. Allow user to run multiple seq files in SEQ_NO_BLOCK m...
void log_WARNING_HI_CS_SequenceTimeout(const Fw::StringBase &filename, U32 command) const
Cancel a command sequence.
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.
bool isConnected_cmdResponseOut_OutputPort(FwIndexType portNum)
void init()
Object initializer.
void seqStartOut_out(FwIndexType portNum, const Fw::StringBase &filename)
Invoke output port seqStartOut.
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
The Command Sequencer received a command that was invalid for its current mode.
FwIdType FwEventIdType
The type of an event identifier.
virtual ~CmdSequencerComponentBase()
Destroy CmdSequencerComponentBase object.
void tlmWrite_CS_CommandsExecuted(U32 arg, Fw::Time _tlmTime=Fw::Time()) const
Channel ID for CS_CancelCommands.
void invoke(FwOpcodeType opCode) const
Invoke a port interface.
static constexpr FwIndexType getNum_pingOut_OutputPorts()
virtual void seqRunIn_preMsgHook(FwIndexType portNum, const Fw::StringBase &filename)
Pre-message hook for async input port seqRunIn.
void log_ACTIVITY_HI_CS_PortSequenceStarted(const Fw::StringBase &filename) const
void log_WARNING_HI_CS_RecordInvalid(const Fw::StringBase &fileName, U32 recordNumber, I32 error) const
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) ...
virtual void CS_RUN_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &fileName, Svc::CmdSequencer_BlockState block)=0
void init()
Initialization function.
The format of a command record was invalid.
Less important informational events.
Os::Queue::Status createQueue(FwSizeType depth, FwSizeType msgSize)
void log_WARNING_HI_CS_RecordMismatch(const Fw::StringBase &fileName, U32 header_records, U32 extra_bytes) const
#define FW_MIN(a, b)
MIN macro.
A less serious but recoverable event.
void init()
Initialization function.
bool isConnected_pingOut_OutputPort(FwIndexType portNum)
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 interface.
bool isConnected_seqStartOut_OutputPort(FwIndexType portNum)
void CS_JOIN_WAIT_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Svc::InputCmdSeqInPort * get_seqRunIn_InputPort(FwIndexType portNum)
Serializable::SizeType getDeserializeSizeLeft() const override
Get remaining deserialization buffer size.
The size of the serial representation.
const char * toChar() const
Convert to a C-style char*.
void invoke(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response) const
Invoke a port interface.
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
virtual void seqRunIn_handler(FwIndexType portNum, const Fw::StringBase &filename)=0
Handler for input port seqRunIn.
The sequence file was not found.
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 interface.
bool isConnected_timeCaller_OutputPort(FwIndexType portNum)
void CS_AUTO_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void invoke(const Fw::StringBase &filename) const
Invoke a port interface.
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
The sequence file format was invalid.
void init()
Initialization function.
Channel ID for CS_LoadCommands.
bool isConnected_seqDone_OutputPort(FwIndexType portNum)
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()
virtual void pingIn_preMsgHook(FwIndexType portNum, U32 key)
Pre-message hook for async input port pingIn.
Svc::InputSchedPort * get_schedIn_InputPort(FwIndexType portNum)
virtual void CS_AUTO_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
Command failed to deserialize.
The Sequence File Loader could not read the sequence file.
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.
Run a command sequence file.
A local port request to run a sequence was started.
void invoke(FwEventIdType id, Fw::Time &timeTag, const Fw::LogSeverity &severity, Fw::LogBuffer &args) const
Invoke a port interface.
The size of the serial representation.
virtual void CS_MANUAL_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CS_MANUAL.
bool isConnected_cmdRegOut_OutputPort(FwIndexType portNum)
void CS_CANCEL_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Cannot run new sequence when current sequence file is still running.
Perform one step in a command sequence. Valid only if CmdSequencer is in MANUAL run mode...
Wait for the current running sequence file complete.
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
Sequence file was successfully loaded.
A message was sent requesting an exit of the loop.
message to exit active component task
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)
void seqCancelIn_handlerBase(FwIndexType portNum)
Handler base-class function for input port seqCancelIn.
void addCallPort(InputLogPort *callPort)
Register an input port.
void addCallPort(InputCmdSeqInPort *callPort)
Register an input port.
Set the run mode to AUTO.
The running time base doesn't match the time base in the sequence files.
void init()
Initialization function.
void CS_RUN_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Svc::InputFileDispatchPort * get_seqDispatchIn_InputPort(FwIndexType portNum)
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
A manual sequence was started.
virtual void CS_STEP_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
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.
A command sequence successfully completed.
Validate a command sequence file.
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.
Message will return with status when space is unavailable.
Implementation of malloc based allocator.
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.
Set the run mode to MANUAL.
Sequencer blocking state.
virtual void CS_CANCEL_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
The running time base doesn't match the time base in the sequence files.
The sequence file was too large.
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_Errors.
virtual void seqDispatchIn_preMsgHook(FwIndexType portNum, Fw::StringBase &file_name)
Pre-message hook for async input port seqDispatchIn.
void log_ACTIVITY_HI_CS_SequenceValid(const Fw::StringBase &filename) const
bool isConnected_logOut_OutputPort(FwIndexType portNum)
void log_WARNING_HI_CS_FileReadError(const Fw::StringBase &fileName) const
bool isConnected_tlmOut_OutputPort(FwIndexType portNum)
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
A sequence passed validation.
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.