10 #if FW_ENABLE_TEXT_LOGGING 19 namespace SmSignalBuffer {
22 union SignalTypeUnion {
29 sizeof(SignalTypeUnion);
36 CMDRESPONSEIN_CMDRESPONSE,
43 INT_IF_DIRECTIVE_WAITABS,
44 INT_IF_DIRECTIVE_WAITREL,
45 INTERNAL_STATE_MACHINE_SIGNAL,
57 BYTE directive_waitAbsIntIfSize[
61 BYTE directive_waitRelIntIfSize[
67 BYTE internalSmBufferSize[SmSignalBuffer::SERIALIZED_SIZE];
72 class ComponentIpcSerializableBuffer :
82 MAX_DATA_SIZE =
sizeof(BuffUnion),
84 SERIALIZATION_SIZE = DATA_OFFSET + MAX_DATA_SIZE
88 return sizeof(m_buff);
95 const U8* getBuffAddr()
const {
101 U8 m_buff[SERIALIZATION_SIZE];
112 m_component(component)
120 this->initBase(static_cast<FwEnumStoreType>(smId));
129 void FpySequencerComponentBase::Svc_FpySequencer_SequencerStateMachine ::
130 action_signalEntered(
Signal signal)
132 this->m_component.Svc_FpySequencer_SequencerStateMachine_action_signalEntered(this->getId(), signal);
135 void FpySequencerComponentBase::Svc_FpySequencer_SequencerStateMachine ::
136 action_setSequenceFilePath(
141 this->m_component.Svc_FpySequencer_SequencerStateMachine_action_setSequenceFilePath(this->getId(), signal, value);
144 void FpySequencerComponentBase::Svc_FpySequencer_SequencerStateMachine ::
145 action_setSequenceBlockState(
150 this->m_component.Svc_FpySequencer_SequencerStateMachine_action_setSequenceBlockState(this->getId(), signal, value);
153 void FpySequencerComponentBase::Svc_FpySequencer_SequencerStateMachine ::
154 action_validate(
Signal signal)
156 this->m_component.Svc_FpySequencer_SequencerStateMachine_action_validate(this->getId(), signal);
159 void FpySequencerComponentBase::Svc_FpySequencer_SequencerStateMachine ::
160 action_report_seqSucceeded(
Signal signal)
162 this->m_component.Svc_FpySequencer_SequencerStateMachine_action_report_seqSucceeded(this->getId(), signal);
165 void FpySequencerComponentBase::Svc_FpySequencer_SequencerStateMachine ::
166 action_report_seqCancelled(
Signal signal)
168 this->m_component.Svc_FpySequencer_SequencerStateMachine_action_report_seqCancelled(this->getId(), signal);
171 void FpySequencerComponentBase::Svc_FpySequencer_SequencerStateMachine ::
172 action_setGoalState_RUNNING(
Signal signal)
174 this->m_component.Svc_FpySequencer_SequencerStateMachine_action_setGoalState_RUNNING(this->getId(), signal);
177 void FpySequencerComponentBase::Svc_FpySequencer_SequencerStateMachine ::
178 action_setGoalState_VALID(
Signal signal)
180 this->m_component.Svc_FpySequencer_SequencerStateMachine_action_setGoalState_VALID(this->getId(), signal);
183 void FpySequencerComponentBase::Svc_FpySequencer_SequencerStateMachine ::
184 action_setGoalState_IDLE(
Signal signal)
186 this->m_component.Svc_FpySequencer_SequencerStateMachine_action_setGoalState_IDLE(this->getId(), signal);
189 void FpySequencerComponentBase::Svc_FpySequencer_SequencerStateMachine ::
190 action_sendCmdResponse_OK(
Signal signal)
192 this->m_component.Svc_FpySequencer_SequencerStateMachine_action_sendCmdResponse_OK(this->getId(), signal);
195 void FpySequencerComponentBase::Svc_FpySequencer_SequencerStateMachine ::
196 action_sendCmdResponse_EXECUTION_ERROR(
Signal signal)
198 this->m_component.Svc_FpySequencer_SequencerStateMachine_action_sendCmdResponse_EXECUTION_ERROR(this->getId(), signal);
201 void FpySequencerComponentBase::Svc_FpySequencer_SequencerStateMachine ::
202 action_clearSequenceFile(
Signal signal)
204 this->m_component.Svc_FpySequencer_SequencerStateMachine_action_clearSequenceFile(this->getId(), signal);
207 void FpySequencerComponentBase::Svc_FpySequencer_SequencerStateMachine ::
208 action_checkShouldWake(
Signal signal)
210 this->m_component.Svc_FpySequencer_SequencerStateMachine_action_checkShouldWake(this->getId(), signal);
213 void FpySequencerComponentBase::Svc_FpySequencer_SequencerStateMachine ::
214 action_dispatchStatement(
Signal signal)
216 this->m_component.Svc_FpySequencer_SequencerStateMachine_action_dispatchStatement(this->getId(), signal);
219 void FpySequencerComponentBase::Svc_FpySequencer_SequencerStateMachine ::
220 action_resetRuntime(
Signal signal)
222 this->m_component.Svc_FpySequencer_SequencerStateMachine_action_resetRuntime(this->getId(), signal);
225 void FpySequencerComponentBase::Svc_FpySequencer_SequencerStateMachine ::
226 action_checkStatementTimeout(
Signal signal)
228 this->m_component.Svc_FpySequencer_SequencerStateMachine_action_checkStatementTimeout(this->getId(), signal);
231 void FpySequencerComponentBase::Svc_FpySequencer_SequencerStateMachine ::
232 action_incrementSequenceCounter(
Signal signal)
234 this->m_component.Svc_FpySequencer_SequencerStateMachine_action_incrementSequenceCounter(this->getId(), signal);
237 bool FpySequencerComponentBase::Svc_FpySequencer_SequencerStateMachine ::
238 guard_goalStateIs_RUNNING(
Signal signal)
const 240 return this->m_component.Svc_FpySequencer_SequencerStateMachine_guard_goalStateIs_RUNNING(this->getId(), signal);
265 this->m_cmdIn_InputPort[port].
init();
270 this->m_cmdIn_InputPort[port].
setPortNum(port);
272 #if FW_OBJECT_NAMES == 1 276 this->m_objName.toChar(),
279 this->m_cmdIn_InputPort[port].setObjName(portName.
toChar());
289 this->m_checkTimers_InputPort[port].
init();
294 this->m_checkTimers_InputPort[port].
setPortNum(port);
296 #if FW_OBJECT_NAMES == 1 300 this->m_objName.toChar(),
303 this->m_checkTimers_InputPort[port].setObjName(portName.
toChar());
313 this->m_cmdResponseIn_InputPort[port].
init();
318 this->m_cmdResponseIn_InputPort[port].
setPortNum(port);
320 #if FW_OBJECT_NAMES == 1 324 this->m_objName.toChar(),
327 this->m_cmdResponseIn_InputPort[port].setObjName(portName.
toChar());
337 this->m_pingIn_InputPort[port].
init();
342 this->m_pingIn_InputPort[port].
setPortNum(port);
344 #if FW_OBJECT_NAMES == 1 348 this->m_objName.toChar(),
351 this->m_pingIn_InputPort[port].setObjName(portName.
toChar());
361 this->m_tlmWrite_InputPort[port].
init();
366 this->m_tlmWrite_InputPort[port].
setPortNum(port);
368 #if FW_OBJECT_NAMES == 1 372 this->m_objName.toChar(),
375 this->m_tlmWrite_InputPort[port].setObjName(portName.
toChar());
385 this->m_cmdRegOut_OutputPort[port].
init();
387 #if FW_OBJECT_NAMES == 1 391 this->m_objName.toChar(),
394 this->m_cmdRegOut_OutputPort[port].setObjName(portName.
toChar());
404 this->m_cmdResponseOut_OutputPort[port].
init();
406 #if FW_OBJECT_NAMES == 1 410 this->m_objName.toChar(),
413 this->m_cmdResponseOut_OutputPort[port].setObjName(portName.
toChar());
423 this->m_logOut_OutputPort[port].
init();
425 #if FW_OBJECT_NAMES == 1 429 this->m_objName.toChar(),
432 this->m_logOut_OutputPort[port].setObjName(portName.
toChar());
436 #if FW_ENABLE_TEXT_LOGGING == 1 440 port < static_cast<FwIndexType>(this->getNum_logTextOut_OutputPorts());
443 this->m_logTextOut_OutputPort[port].
init();
445 #if FW_OBJECT_NAMES == 1 449 this->m_objName.toChar(),
452 this->m_logTextOut_OutputPort[port].setObjName(portName.
toChar());
463 this->m_prmGet_OutputPort[port].
init();
465 #if FW_OBJECT_NAMES == 1 469 this->m_objName.toChar(),
472 this->m_prmGet_OutputPort[port].setObjName(portName.
toChar());
482 this->m_prmSet_OutputPort[port].
init();
484 #if FW_OBJECT_NAMES == 1 488 this->m_objName.toChar(),
491 this->m_prmSet_OutputPort[port].setObjName(portName.
toChar());
501 this->m_timeCaller_OutputPort[port].
init();
503 #if FW_OBJECT_NAMES == 1 507 this->m_objName.toChar(),
510 this->m_timeCaller_OutputPort[port].setObjName(portName.
toChar());
520 this->m_tlmOut_OutputPort[port].
init();
522 #if FW_OBJECT_NAMES == 1 526 this->m_objName.toChar(),
529 this->m_tlmOut_OutputPort[port].setObjName(portName.
toChar());
539 this->m_cmdOut_OutputPort[port].
init();
541 #if FW_OBJECT_NAMES == 1 545 this->m_objName.toChar(),
548 this->m_cmdOut_OutputPort[port].setObjName(portName.
toChar());
558 this->m_pingOut_OutputPort[port].
init();
560 #if FW_OBJECT_NAMES == 1 564 this->m_objName.toChar(),
567 this->m_pingOut_OutputPort[port].setObjName(portName.
toChar());
574 static_cast<FwSizeType>(ComponentIpcSerializableBuffer::SERIALIZATION_SIZE)
578 static_cast<FwAssertArgType>(qStat)
591 static_cast<FwAssertArgType>(portNum)
594 return &this->m_cmdIn_InputPort[portNum];
606 static_cast<FwAssertArgType>(portNum)
609 return &this->m_checkTimers_InputPort[portNum];
617 static_cast<FwAssertArgType>(portNum)
620 return &this->m_cmdResponseIn_InputPort[portNum];
628 static_cast<FwAssertArgType>(portNum)
631 return &this->m_pingIn_InputPort[portNum];
639 static_cast<FwAssertArgType>(portNum)
642 return &this->m_tlmWrite_InputPort[portNum];
657 static_cast<FwAssertArgType>(portNum)
660 this->m_cmdRegOut_OutputPort[portNum].
addCallPort(port);
671 static_cast<FwAssertArgType>(portNum)
674 this->m_cmdResponseOut_OutputPort[portNum].
addCallPort(port);
685 static_cast<FwAssertArgType>(portNum)
688 this->m_logOut_OutputPort[portNum].
addCallPort(port);
691 #if FW_ENABLE_TEXT_LOGGING == 1 693 void FpySequencerComponentBase ::
694 set_logTextOut_OutputPort(
700 (0 <= portNum) && (portNum < this->getNum_logTextOut_OutputPorts()),
701 static_cast<FwAssertArgType>(portNum)
704 this->m_logTextOut_OutputPort[portNum].addCallPort(port);
717 static_cast<FwAssertArgType>(portNum)
720 this->m_prmGet_OutputPort[portNum].
addCallPort(port);
731 static_cast<FwAssertArgType>(portNum)
734 this->m_prmSet_OutputPort[portNum].
addCallPort(port);
745 static_cast<FwAssertArgType>(portNum)
748 this->m_timeCaller_OutputPort[portNum].
addCallPort(port);
759 static_cast<FwAssertArgType>(portNum)
762 this->m_tlmOut_OutputPort[portNum].
addCallPort(port);
777 static_cast<FwAssertArgType>(portNum)
780 this->m_cmdOut_OutputPort[portNum].
addCallPort(port);
791 static_cast<FwAssertArgType>(portNum)
794 this->m_pingOut_OutputPort[portNum].
addCallPort(port);
797 #if FW_PORT_SERIALIZATION 806 Fw::InputSerializePort* port
811 static_cast<FwAssertArgType>(portNum)
814 this->m_cmdRegOut_OutputPort[portNum].registerSerialPort(port);
820 Fw::InputSerializePort* port
825 static_cast<FwAssertArgType>(portNum)
828 this->m_cmdResponseOut_OutputPort[portNum].registerSerialPort(port);
834 Fw::InputSerializePort* port
839 static_cast<FwAssertArgType>(portNum)
842 this->m_logOut_OutputPort[portNum].registerSerialPort(port);
845 #if FW_ENABLE_TEXT_LOGGING == 1 847 void FpySequencerComponentBase ::
848 set_logTextOut_OutputPort(
850 Fw::InputSerializePort* port
854 (0 <= portNum) && (portNum < this->getNum_logTextOut_OutputPorts()),
855 static_cast<FwAssertArgType>(portNum)
858 this->m_logTextOut_OutputPort[portNum].registerSerialPort(port);
866 Fw::InputSerializePort* port
871 static_cast<FwAssertArgType>(portNum)
874 this->m_prmSet_OutputPort[portNum].registerSerialPort(port);
880 Fw::InputSerializePort* port
885 static_cast<FwAssertArgType>(portNum)
888 this->m_timeCaller_OutputPort[portNum].registerSerialPort(port);
894 Fw::InputSerializePort* port
899 static_cast<FwAssertArgType>(portNum)
902 this->m_tlmOut_OutputPort[portNum].registerSerialPort(port);
907 #if FW_PORT_SERIALIZATION 916 Fw::InputSerializePort* port
921 static_cast<FwAssertArgType>(portNum)
924 this->m_cmdOut_OutputPort[portNum].registerSerialPort(port);
930 Fw::InputSerializePort* port
935 static_cast<FwAssertArgType>(portNum)
938 this->m_pingOut_OutputPort[portNum].registerSerialPort(port);
950 FW_ASSERT(this->m_cmdRegOut_OutputPort[0].isConnected());
952 this->m_cmdRegOut_OutputPort[0].
invoke(
956 this->m_cmdRegOut_OutputPort[0].
invoke(
960 this->m_cmdRegOut_OutputPort[0].
invoke(
964 this->m_cmdRegOut_OutputPort[0].
invoke(
968 this->m_cmdRegOut_OutputPort[0].
invoke(
972 this->m_cmdRegOut_OutputPort[0].
invoke(
986 FW_ASSERT(this->m_prmGet_OutputPort[0].isConnected());
993 this->m_param_STATEMENT_TIMEOUT_SECS_valid =
994 this->m_prmGet_OutputPort[0].
invoke(
1000 this->m_paramLock.
lock();
1004 stat = buff.
deserialize(this->m_STATEMENT_TIMEOUT_SECS);
1008 this->m_STATEMENT_TIMEOUT_SECS = 0.0f;
1014 this->m_STATEMENT_TIMEOUT_SECS = 0.0f;
1017 this->m_paramLock.
unLock();
1030 m_stateMachine_sequencer(*this)
1033 this->m_first_update_SequencesSucceeded =
true;
1034 this->m_last_SequencesSucceeded = 0;
1037 this->m_first_update_SequencesFailed =
true;
1038 this->m_last_SequencesFailed = 0;
1041 this->m_first_update_SequencesCancelled =
true;
1042 this->m_last_SequencesCancelled = 0;
1045 this->m_first_update_StatementsDispatched =
true;
1046 this->m_last_StatementsDispatched = 0;
1049 this->m_first_update_StatementsFailed =
true;
1050 this->m_last_StatementsFailed = 0;
1053 this->m_first_update_SeqPath =
true;
1056 this->m_first_update_STATEMENT_TIMEOUT_SECS =
true;
1057 this->m_last_STATEMENT_TIMEOUT_SECS = 0;
1128 #if FW_ENABLE_TEXT_LOGGING == 1 1131 getNum_logTextOut_OutputPorts()
const 1187 static_cast<FwAssertArgType>(portNum)
1190 return this->m_cmdRegOut_OutputPort[portNum].
isConnected();
1198 static_cast<FwAssertArgType>(portNum)
1201 return this->m_cmdResponseOut_OutputPort[portNum].
isConnected();
1209 static_cast<FwAssertArgType>(portNum)
1212 return this->m_logOut_OutputPort[portNum].
isConnected();
1215 #if FW_ENABLE_TEXT_LOGGING == 1 1217 bool FpySequencerComponentBase ::
1218 isConnected_logTextOut_OutputPort(
FwIndexType portNum)
1221 (0 <= portNum) && (portNum < this->getNum_logTextOut_OutputPorts()),
1222 static_cast<FwAssertArgType>(portNum)
1225 return this->m_logTextOut_OutputPort[portNum].isConnected();
1235 static_cast<FwAssertArgType>(portNum)
1238 return this->m_prmGet_OutputPort[portNum].
isConnected();
1246 static_cast<FwAssertArgType>(portNum)
1249 return this->m_prmSet_OutputPort[portNum].
isConnected();
1257 static_cast<FwAssertArgType>(portNum)
1260 return this->m_timeCaller_OutputPort[portNum].
isConnected();
1268 static_cast<FwAssertArgType>(portNum)
1271 return this->m_tlmOut_OutputPort[portNum].
isConnected();
1283 static_cast<FwAssertArgType>(portNum)
1286 return this->m_cmdOut_OutputPort[portNum].
isConnected();
1294 static_cast<FwAssertArgType>(portNum)
1297 return this->m_pingOut_OutputPort[portNum].
isConnected();
1315 static_cast<FwAssertArgType>(portNum)
1323 ComponentIpcSerializableBuffer msg;
1327 _status = msg.serialize(
1328 static_cast<FwEnumStoreType>(CHECKTIMERS_SCHED)
1332 static_cast<FwAssertArgType>(_status)
1336 _status = msg.serialize(portNum);
1339 static_cast<FwAssertArgType>(_status)
1343 _status = msg.serialize(context);
1346 static_cast<FwAssertArgType>(_status)
1355 static_cast<FwAssertArgType>(qStatus)
1370 static_cast<FwAssertArgType>(portNum)
1380 ComponentIpcSerializableBuffer msg;
1384 _status = msg.serialize(
1385 static_cast<FwEnumStoreType>(CMDRESPONSEIN_CMDRESPONSE)
1389 static_cast<FwAssertArgType>(_status)
1393 _status = msg.serialize(portNum);
1396 static_cast<FwAssertArgType>(_status)
1400 _status = msg.serialize(opCode);
1403 static_cast<FwAssertArgType>(_status)
1407 _status = msg.serialize(cmdSeq);
1410 static_cast<FwAssertArgType>(_status)
1414 _status = msg.serialize(response);
1417 static_cast<FwAssertArgType>(_status)
1426 static_cast<FwAssertArgType>(qStatus)
1439 static_cast<FwAssertArgType>(portNum)
1447 ComponentIpcSerializableBuffer msg;
1451 _status = msg.serialize(
1452 static_cast<FwEnumStoreType>(PINGIN_PING)
1456 static_cast<FwAssertArgType>(_status)
1460 _status = msg.serialize(portNum);
1463 static_cast<FwAssertArgType>(_status)
1467 _status = msg.serialize(key);
1470 static_cast<FwAssertArgType>(_status)
1479 static_cast<FwAssertArgType>(qStatus)
1492 static_cast<FwAssertArgType>(portNum)
1500 ComponentIpcSerializableBuffer msg;
1504 _status = msg.serialize(
1505 static_cast<FwEnumStoreType>(TLMWRITE_SCHED)
1509 static_cast<FwAssertArgType>(_status)
1513 _status = msg.serialize(portNum);
1516 static_cast<FwAssertArgType>(_status)
1520 _status = msg.serialize(context);
1523 static_cast<FwAssertArgType>(_status)
1532 static_cast<FwAssertArgType>(qStatus)
1595 static_cast<FwAssertArgType>(portNum)
1599 this->m_cmdOut_OutputPort[portNum].isConnected(),
1600 static_cast<FwAssertArgType>(portNum)
1602 this->m_cmdOut_OutputPort[portNum].
invoke(
1616 static_cast<FwAssertArgType>(portNum)
1620 this->m_pingOut_OutputPort[portNum].isConnected(),
1621 static_cast<FwAssertArgType>(portNum)
1623 this->m_pingOut_OutputPort[portNum].
invoke(
1635 ComponentIpcSerializableBuffer msg;
1639 _status = msg.serialize(static_cast<FwEnumStoreType>(INT_IF_DIRECTIVE_WAITABS));
1642 static_cast<FwAssertArgType>(_status)
1646 _status = msg.serialize(static_cast<FwIndexType>(0));
1649 static_cast<FwAssertArgType>(_status)
1652 _status = msg.serialize(directive);
1655 static_cast<FwAssertArgType>(_status)
1664 static_cast<FwAssertArgType>(qStatus)
1671 ComponentIpcSerializableBuffer msg;
1675 _status = msg.serialize(static_cast<FwEnumStoreType>(INT_IF_DIRECTIVE_WAITREL));
1678 static_cast<FwAssertArgType>(_status)
1682 _status = msg.serialize(static_cast<FwIndexType>(0));
1685 static_cast<FwAssertArgType>(_status)
1688 _status = msg.serialize(directive);
1691 static_cast<FwAssertArgType>(_status)
1700 static_cast<FwAssertArgType>(qStatus)
1711 return this->m_stateMachine_sequencer.
getState();
1721 ComponentIpcSerializableBuffer buffer;
1728 this->sequencer_sendSignalFinish(buffer);
1734 ComponentIpcSerializableBuffer buffer;
1741 this->sequencer_sendSignalFinish(buffer);
1747 ComponentIpcSerializableBuffer buffer;
1754 this->sequencer_sendSignalFinish(buffer);
1760 ComponentIpcSerializableBuffer buffer;
1764 this->sequencer_sendSignalFinish(buffer);
1770 ComponentIpcSerializableBuffer buffer;
1774 this->sequencer_sendSignalFinish(buffer);
1780 ComponentIpcSerializableBuffer buffer;
1784 this->sequencer_sendSignalFinish(buffer);
1790 ComponentIpcSerializableBuffer buffer;
1794 this->sequencer_sendSignalFinish(buffer);
1800 ComponentIpcSerializableBuffer buffer;
1804 this->sequencer_sendSignalFinish(buffer);
1810 ComponentIpcSerializableBuffer buffer;
1814 this->sequencer_sendSignalFinish(buffer);
1820 ComponentIpcSerializableBuffer buffer;
1824 this->sequencer_sendSignalFinish(buffer);
1830 ComponentIpcSerializableBuffer buffer;
1834 this->sequencer_sendSignalFinish(buffer);
1840 ComponentIpcSerializableBuffer buffer;
1844 this->sequencer_sendSignalFinish(buffer);
1850 ComponentIpcSerializableBuffer buffer;
1854 this->sequencer_sendSignalFinish(buffer);
1860 ComponentIpcSerializableBuffer buffer;
1864 this->sequencer_sendSignalFinish(buffer);
1870 ComponentIpcSerializableBuffer buffer;
1874 this->sequencer_sendSignalFinish(buffer);
1880 ComponentIpcSerializableBuffer buffer;
1884 this->sequencer_sendSignalFinish(buffer);
1890 ComponentIpcSerializableBuffer buffer;
1894 this->sequencer_sendSignalFinish(buffer);
1900 ComponentIpcSerializableBuffer buffer;
1904 this->sequencer_sendSignalFinish(buffer);
1910 ComponentIpcSerializableBuffer buffer;
1914 this->sequencer_sendSignalFinish(buffer);
1920 ComponentIpcSerializableBuffer buffer;
1924 this->sequencer_sendSignalFinish(buffer);
1938 FW_ASSERT(this->m_cmdResponseOut_OutputPort[0].isConnected());
1939 this->m_cmdResponseOut_OutputPort[0].
invoke(opCode, cmdSeq, response);
1960 ComponentIpcSerializableBuffer msg;
1964 _status = msg.serialize(static_cast<FwEnumStoreType>(CMD_RUN));
1967 static_cast<FwAssertArgType>(_status)
1973 _status = msg.serialize(port);
1976 static_cast<FwAssertArgType>(_status)
1979 _status = msg.serialize(opCode);
1982 static_cast<FwAssertArgType>(_status)
1985 _status = msg.serialize(cmdSeq);
1988 static_cast<FwAssertArgType>(_status)
1991 _status = msg.serialize(args);
1994 static_cast<FwAssertArgType>(_status)
2003 static_cast<FwAssertArgType>(qStatus)
2019 ComponentIpcSerializableBuffer msg;
2023 _status = msg.serialize(static_cast<FwEnumStoreType>(CMD_VALIDATE));
2026 static_cast<FwAssertArgType>(_status)
2032 _status = msg.serialize(port);
2035 static_cast<FwAssertArgType>(_status)
2038 _status = msg.serialize(opCode);
2041 static_cast<FwAssertArgType>(_status)
2044 _status = msg.serialize(cmdSeq);
2047 static_cast<FwAssertArgType>(_status)
2050 _status = msg.serialize(args);
2053 static_cast<FwAssertArgType>(_status)
2062 static_cast<FwAssertArgType>(qStatus)
2078 ComponentIpcSerializableBuffer msg;
2082 _status = msg.serialize(static_cast<FwEnumStoreType>(CMD_RUN_VALIDATED));
2085 static_cast<FwAssertArgType>(_status)
2091 _status = msg.serialize(port);
2094 static_cast<FwAssertArgType>(_status)
2097 _status = msg.serialize(opCode);
2100 static_cast<FwAssertArgType>(_status)
2103 _status = msg.serialize(cmdSeq);
2106 static_cast<FwAssertArgType>(_status)
2109 _status = msg.serialize(args);
2112 static_cast<FwAssertArgType>(_status)
2121 static_cast<FwAssertArgType>(qStatus)
2137 ComponentIpcSerializableBuffer msg;
2141 _status = msg.serialize(static_cast<FwEnumStoreType>(CMD_CANCEL));
2144 static_cast<FwAssertArgType>(_status)
2150 _status = msg.serialize(port);
2153 static_cast<FwAssertArgType>(_status)
2156 _status = msg.serialize(opCode);
2159 static_cast<FwAssertArgType>(_status)
2162 _status = msg.serialize(cmdSeq);
2165 static_cast<FwAssertArgType>(_status)
2168 _status = msg.serialize(args);
2171 static_cast<FwAssertArgType>(_status)
2180 static_cast<FwAssertArgType>(qStatus)
2245 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2246 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
2254 if (this->m_logOut_OutputPort[0].isConnected()) {
2258 #if FW_AMPCS_COMPATIBLE 2260 _status = _logBuff.
serialize(static_cast<U8>(1));
2263 static_cast<FwAssertArgType>(_status)
2267 #if FW_AMPCS_COMPATIBLE 2270 static_cast<U8>(
sizeof(I32))
2274 static_cast<FwAssertArgType>(_status)
2280 static_cast<FwAssertArgType>(_status)
2283 this->m_logOut_OutputPort[0].
invoke(
2292 #if FW_ENABLE_TEXT_LOGGING 2293 if (this->m_logTextOut_OutputPort[0].isConnected()) {
2294 #if FW_OBJECT_NAMES == 1 2295 const char* _formatString =
2296 "(%s) %s: Cannot run command in state %" PRIi32
"";
2298 const char* _formatString =
2299 "%s: Cannot run command in state %" PRIi32
"";
2306 this->m_objName.toChar(),
2312 this->m_logTextOut_OutputPort[0].invoke(
2330 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2331 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
2339 if (this->m_logOut_OutputPort[0].isConnected()) {
2343 #if FW_AMPCS_COMPATIBLE 2345 _status = _logBuff.
serialize(static_cast<U8>(2));
2348 static_cast<FwAssertArgType>(_status)
2355 static_cast<FwAssertArgType>(_status)
2358 #if FW_AMPCS_COMPATIBLE 2361 static_cast<U8>(
sizeof(I32))
2365 static_cast<FwAssertArgType>(_status)
2368 _status = _logBuff.
serialize(errorCode);
2371 static_cast<FwAssertArgType>(_status)
2374 this->m_logOut_OutputPort[0].
invoke(
2383 #if FW_ENABLE_TEXT_LOGGING 2384 if (this->m_logTextOut_OutputPort[0].isConnected()) {
2385 #if FW_OBJECT_NAMES == 1 2386 const char* _formatString =
2387 "(%s) %s: File open error encountered while opening %s: %" PRIi32
"";
2389 const char* _formatString =
2390 "%s: File open error encountered while opening %s: %" PRIi32
"";
2397 this->m_objName.toChar(),
2404 this->m_logTextOut_OutputPort[0].invoke(
2422 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2423 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
2431 if (this->m_logOut_OutputPort[0].isConnected()) {
2435 #if FW_AMPCS_COMPATIBLE 2437 _status = _logBuff.
serialize(static_cast<U8>(2));
2440 static_cast<FwAssertArgType>(_status)
2447 static_cast<FwAssertArgType>(_status)
2450 #if FW_AMPCS_COMPATIBLE 2453 static_cast<U8>(
sizeof(I32))
2457 static_cast<FwAssertArgType>(_status)
2460 _status = _logBuff.
serialize(errorCode);
2463 static_cast<FwAssertArgType>(_status)
2466 this->m_logOut_OutputPort[0].
invoke(
2475 #if FW_ENABLE_TEXT_LOGGING 2476 if (this->m_logTextOut_OutputPort[0].isConnected()) {
2477 #if FW_OBJECT_NAMES == 1 2478 const char* _formatString =
2479 "(%s) %s: File read error encountered while reading %s: %" PRIi32
"";
2481 const char* _formatString =
2482 "%s: File read error encountered while reading %s: %" PRIi32
"";
2489 this->m_objName.toChar(),
2496 this->m_logTextOut_OutputPort[0].invoke(
2511 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2512 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
2520 if (this->m_logOut_OutputPort[0].isConnected()) {
2524 #if FW_AMPCS_COMPATIBLE 2526 _status = _logBuff.
serialize(static_cast<U8>(1));
2529 static_cast<FwAssertArgType>(_status)
2536 static_cast<FwAssertArgType>(_status)
2539 this->m_logOut_OutputPort[0].
invoke(
2548 #if FW_ENABLE_TEXT_LOGGING 2549 if (this->m_logTextOut_OutputPort[0].isConnected()) {
2550 #if FW_OBJECT_NAMES == 1 2551 const char* _formatString =
2552 "(%s) %s: End of file encountered unexpectedly while reading %s";
2554 const char* _formatString =
2555 "%s: End of file encountered unexpectedly while reading %s";
2562 this->m_objName.toChar(),
2568 this->m_logTextOut_OutputPort[0].invoke(
2588 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2589 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
2597 if (this->m_logOut_OutputPort[0].isConnected()) {
2601 #if FW_AMPCS_COMPATIBLE 2603 _status = _logBuff.
serialize(static_cast<U8>(4));
2606 static_cast<FwAssertArgType>(_status)
2613 static_cast<FwAssertArgType>(_status)
2616 #if FW_AMPCS_COMPATIBLE 2619 static_cast<U8>(
sizeof(I32))
2623 static_cast<FwAssertArgType>(_status)
2626 _status = _logBuff.
serialize(errorCode);
2629 static_cast<FwAssertArgType>(_status)
2632 #if FW_AMPCS_COMPATIBLE 2635 static_cast<U8>(
sizeof(
U64))
2639 static_cast<FwAssertArgType>(_status)
2645 static_cast<FwAssertArgType>(_status)
2648 #if FW_AMPCS_COMPATIBLE 2651 static_cast<U8>(
sizeof(
U64))
2655 static_cast<FwAssertArgType>(_status)
2658 _status = _logBuff.
serialize(buffLength);
2661 static_cast<FwAssertArgType>(_status)
2664 this->m_logOut_OutputPort[0].
invoke(
2673 #if FW_ENABLE_TEXT_LOGGING 2674 if (this->m_logTextOut_OutputPort[0].isConnected()) {
2675 #if FW_OBJECT_NAMES == 1 2676 const char* _formatString =
2677 "(%s) %s: Deserialize error encountered while reading %s: %" PRIi32
" (%" PRIu64
" bytes left out of %" PRIu64
")";
2679 const char* _formatString =
2680 "%s: Deserialize error encountered while reading %s: %" PRIi32
" (%" PRIu64
" bytes left out of %" PRIu64
")";
2687 this->m_objName.toChar(),
2689 "FileReadDeserializeError ",
2696 this->m_logTextOut_OutputPort[0].invoke(
2714 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2715 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
2723 if (this->m_logOut_OutputPort[0].isConnected()) {
2727 #if FW_AMPCS_COMPATIBLE 2729 _status = _logBuff.
serialize(static_cast<U8>(2));
2732 static_cast<FwAssertArgType>(_status)
2736 #if FW_AMPCS_COMPATIBLE 2739 static_cast<U8>(
sizeof(
U8))
2743 static_cast<FwAssertArgType>(_status)
2749 static_cast<FwAssertArgType>(_status)
2752 #if FW_AMPCS_COMPATIBLE 2755 static_cast<U8>(
sizeof(
U8))
2759 static_cast<FwAssertArgType>(_status)
2765 static_cast<FwAssertArgType>(_status)
2768 this->m_logOut_OutputPort[0].
invoke(
2777 #if FW_ENABLE_TEXT_LOGGING 2778 if (this->m_logTextOut_OutputPort[0].isConnected()) {
2779 #if FW_OBJECT_NAMES == 1 2780 const char* _formatString =
2781 "(%s) %s: Expected schema version %" PRIu8
", found %" PRIu8
"";
2783 const char* _formatString =
2784 "%s: Expected schema version %" PRIu8
", found %" PRIu8
"";
2791 this->m_objName.toChar(),
2793 "WrongSchemaVersion ",
2798 this->m_logTextOut_OutputPort[0].invoke(
2816 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2817 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
2825 if (this->m_logOut_OutputPort[0].isConnected()) {
2829 #if FW_AMPCS_COMPATIBLE 2831 _status = _logBuff.
serialize(static_cast<U8>(2));
2834 static_cast<FwAssertArgType>(_status)
2838 #if FW_AMPCS_COMPATIBLE 2841 static_cast<U8>(
sizeof(U32))
2845 static_cast<FwAssertArgType>(_status)
2851 static_cast<FwAssertArgType>(_status)
2854 #if FW_AMPCS_COMPATIBLE 2857 static_cast<U8>(
sizeof(U32))
2861 static_cast<FwAssertArgType>(_status)
2867 static_cast<FwAssertArgType>(_status)
2870 this->m_logOut_OutputPort[0].
invoke(
2879 #if FW_ENABLE_TEXT_LOGGING 2880 if (this->m_logTextOut_OutputPort[0].isConnected()) {
2881 #if FW_OBJECT_NAMES == 1 2882 const char* _formatString =
2883 "(%s) %s: Expected CRC %" PRIu32
", actual was %" PRIu32
"";
2885 const char* _formatString =
2886 "%s: Expected CRC %" PRIu32
", actual was %" PRIu32
"";
2893 this->m_objName.toChar(),
2900 this->m_logTextOut_OutputPort[0].invoke(
2915 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2916 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
2924 if (this->m_logOut_OutputPort[0].isConnected()) {
2928 #if FW_AMPCS_COMPATIBLE 2930 _status = _logBuff.
serialize(static_cast<U8>(1));
2933 static_cast<FwAssertArgType>(_status)
2937 #if FW_AMPCS_COMPATIBLE 2940 static_cast<U8>(
sizeof(U32))
2944 static_cast<FwAssertArgType>(_status)
2947 _status = _logBuff.
serialize(remaining);
2950 static_cast<FwAssertArgType>(_status)
2953 this->m_logOut_OutputPort[0].
invoke(
2962 #if FW_ENABLE_TEXT_LOGGING 2963 if (this->m_logTextOut_OutputPort[0].isConnected()) {
2964 #if FW_OBJECT_NAMES == 1 2965 const char* _formatString =
2966 "(%s) %s: File had %" PRIu32
" extra bytes at the end";
2968 const char* _formatString =
2969 "%s: File had %" PRIu32
" extra bytes at the end";
2976 this->m_objName.toChar(),
2978 "ExtraBytesInSequence ",
2982 this->m_logTextOut_OutputPort[0].invoke(
3000 if (this->m_timeCaller_OutputPort[0].isConnected()) {
3001 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
3009 if (this->m_logOut_OutputPort[0].isConnected()) {
3013 #if FW_AMPCS_COMPATIBLE 3015 _status = _logBuff.
serialize(static_cast<U8>(2));
3018 static_cast<FwAssertArgType>(_status)
3022 #if FW_AMPCS_COMPATIBLE 3025 static_cast<U8>(
sizeof(
U64))
3029 static_cast<FwAssertArgType>(_status)
3032 _status = _logBuff.
serialize(bufferSize);
3035 static_cast<FwAssertArgType>(_status)
3041 static_cast<FwAssertArgType>(_status)
3044 this->m_logOut_OutputPort[0].
invoke(
3053 #if FW_ENABLE_TEXT_LOGGING 3054 if (this->m_logTextOut_OutputPort[0].isConnected()) {
3055 #if FW_OBJECT_NAMES == 1 3056 const char* _formatString =
3057 "(%s) %s: Buffer capacity of %" PRIu64
" was not big enough for sequence %s";
3059 const char* _formatString =
3060 "%s: Buffer capacity of %" PRIu64
" was not big enough for sequence %s";
3067 this->m_objName.toChar(),
3069 "InsufficientBufferSpace ",
3074 this->m_logTextOut_OutputPort[0].invoke(
3095 if (this->m_timeCaller_OutputPort[0].isConnected()) {
3096 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
3104 if (this->m_logOut_OutputPort[0].isConnected()) {
3108 #if FW_AMPCS_COMPATIBLE 3110 _status = _logBuff.
serialize(static_cast<U8>(5));
3113 static_cast<FwAssertArgType>(_status)
3117 #if FW_AMPCS_COMPATIBLE 3124 static_cast<FwAssertArgType>(_status)
3130 static_cast<FwAssertArgType>(_status)
3133 #if FW_AMPCS_COMPATIBLE 3136 static_cast<U8>(
sizeof(U32))
3140 static_cast<FwAssertArgType>(_status)
3143 _status = _logBuff.
serialize(stmtOpcode);
3146 static_cast<FwAssertArgType>(_status)
3149 #if FW_AMPCS_COMPATIBLE 3152 static_cast<U8>(
sizeof(U32))
3156 static_cast<FwAssertArgType>(_status)
3162 static_cast<FwAssertArgType>(_status)
3168 static_cast<FwAssertArgType>(_status)
3171 #if FW_AMPCS_COMPATIBLE 3178 static_cast<FwAssertArgType>(_status)
3184 static_cast<FwAssertArgType>(_status)
3187 this->m_logOut_OutputPort[0].
invoke(
3196 #if FW_ENABLE_TEXT_LOGGING 3197 if (this->m_logTextOut_OutputPort[0].isConnected()) {
3198 #if FW_OBJECT_NAMES == 1 3199 const char* _formatString =
3200 "(%s) %s: Failed to execute statement type %s opcode %" PRIu32
" index %" PRIu32
" in sequence file %s: response was %s";
3202 const char* _formatString =
3203 "%s: Failed to execute statement type %s opcode %" PRIu32
" index %" PRIu32
" in sequence file %s: response was %s";
3207 stmtType.toString(stmtTypeStr);
3209 response.toString(responseStr);
3215 this->m_objName.toChar(),
3225 this->m_logTextOut_OutputPort[0].invoke(
3240 if (this->m_timeCaller_OutputPort[0].isConnected()) {
3241 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
3249 if (this->m_logOut_OutputPort[0].isConnected()) {
3253 #if FW_AMPCS_COMPATIBLE 3255 _status = _logBuff.
serialize(static_cast<U8>(1));
3258 static_cast<FwAssertArgType>(_status)
3265 static_cast<FwAssertArgType>(_status)
3268 this->m_logOut_OutputPort[0].
invoke(
3277 #if FW_ENABLE_TEXT_LOGGING 3278 if (this->m_logTextOut_OutputPort[0].isConnected()) {
3279 #if FW_OBJECT_NAMES == 1 3280 const char* _formatString =
3281 "(%s) %s: Completed sequence file %s";
3283 const char* _formatString =
3284 "%s: Completed sequence file %s";
3291 this->m_objName.toChar(),
3297 this->m_logTextOut_OutputPort[0].invoke(
3312 if (this->m_timeCaller_OutputPort[0].isConnected()) {
3313 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
3321 if (this->m_logOut_OutputPort[0].isConnected()) {
3325 #if FW_AMPCS_COMPATIBLE 3327 _status = _logBuff.
serialize(static_cast<U8>(1));
3330 static_cast<FwAssertArgType>(_status)
3337 static_cast<FwAssertArgType>(_status)
3340 this->m_logOut_OutputPort[0].
invoke(
3349 #if FW_ENABLE_TEXT_LOGGING 3350 if (this->m_logTextOut_OutputPort[0].isConnected()) {
3351 #if FW_OBJECT_NAMES == 1 3352 const char* _formatString =
3353 "(%s) %s: Cancelled sequence file %s";
3355 const char* _formatString =
3356 "%s: Cancelled sequence file %s";
3363 this->m_objName.toChar(),
3365 "SequenceCancelled ",
3369 this->m_logTextOut_OutputPort[0].invoke(
3388 if (this->m_timeCaller_OutputPort[0].isConnected()) {
3389 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
3397 if (this->m_logOut_OutputPort[0].isConnected()) {
3401 #if FW_AMPCS_COMPATIBLE 3403 _status = _logBuff.
serialize(static_cast<U8>(3));
3406 static_cast<FwAssertArgType>(_status)
3410 #if FW_AMPCS_COMPATIBLE 3413 static_cast<U8>(
sizeof(U32))
3417 static_cast<FwAssertArgType>(_status)
3423 static_cast<FwAssertArgType>(_status)
3426 #if FW_AMPCS_COMPATIBLE 3429 static_cast<U8>(
sizeof(U32))
3433 static_cast<FwAssertArgType>(_status)
3439 static_cast<FwAssertArgType>(_status)
3445 static_cast<FwAssertArgType>(_status)
3448 this->m_logOut_OutputPort[0].
invoke(
3457 #if FW_ENABLE_TEXT_LOGGING 3458 if (this->m_logTextOut_OutputPort[0].isConnected()) {
3459 #if FW_OBJECT_NAMES == 1 3460 const char* _formatString =
3461 "(%s) %s: Unknown sequencer directive id %" PRIu32
" at index %" PRIu32
" in file %s";
3463 const char* _formatString =
3464 "%s: Unknown sequencer directive id %" PRIu32
" at index %" PRIu32
" in file %s";
3471 this->m_objName.toChar(),
3473 "UnknownSequencerDirective ",
3479 this->m_logTextOut_OutputPort[0].invoke(
3501 if (this->m_timeCaller_OutputPort[0].isConnected()) {
3502 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
3510 if (this->m_logOut_OutputPort[0].isConnected()) {
3514 #if FW_AMPCS_COMPATIBLE 3516 _status = _logBuff.
serialize(static_cast<U8>(6));
3519 static_cast<FwAssertArgType>(_status)
3523 #if FW_AMPCS_COMPATIBLE 3526 static_cast<U8>(
sizeof(U32))
3530 static_cast<FwAssertArgType>(_status)
3533 _status = _logBuff.
serialize(cmdOpcode);
3536 static_cast<FwAssertArgType>(_status)
3539 #if FW_AMPCS_COMPATIBLE 3542 static_cast<U8>(
sizeof(
U64))
3546 static_cast<FwAssertArgType>(_status)
3549 _status = _logBuff.
serialize(bufCapacity);
3552 static_cast<FwAssertArgType>(_status)
3555 #if FW_AMPCS_COMPATIBLE 3558 static_cast<U8>(
sizeof(
U64))
3562 static_cast<FwAssertArgType>(_status)
3568 static_cast<FwAssertArgType>(_status)
3571 #if FW_AMPCS_COMPATIBLE 3574 static_cast<U8>(
sizeof(
U64))
3578 static_cast<FwAssertArgType>(_status)
3581 _status = _logBuff.
serialize(writeSize);
3584 static_cast<FwAssertArgType>(_status)
3587 #if FW_AMPCS_COMPATIBLE 3590 static_cast<U8>(
sizeof(
U8))
3594 static_cast<FwAssertArgType>(_status)
3597 _status = _logBuff.
serialize(errorCode);
3600 static_cast<FwAssertArgType>(_status)
3603 #if FW_AMPCS_COMPATIBLE 3606 static_cast<U8>(
sizeof(U32))
3610 static_cast<FwAssertArgType>(_status)
3616 static_cast<FwAssertArgType>(_status)
3619 this->m_logOut_OutputPort[0].
invoke(
3628 #if FW_ENABLE_TEXT_LOGGING 3629 if (this->m_logTextOut_OutputPort[0].isConnected()) {
3630 #if FW_OBJECT_NAMES == 1 3631 const char* _formatString =
3632 "(%s) %s: Failure while serializing cmd opcode %" PRIu32
": buf capacity %" PRIu64
", cur write pos %" PRIu64
", write size %" PRIu64
", error code %" PRIu8
", current statement index %" PRIu32
"";
3634 const char* _formatString =
3635 "%s: Failure while serializing cmd opcode %" PRIu32
": buf capacity %" PRIu64
", cur write pos %" PRIu64
", write size %" PRIu64
", error code %" PRIu8
", current statement index %" PRIu32
"";
3642 this->m_objName.toChar(),
3644 "CommandSerializeError ",
3653 this->m_logTextOut_OutputPort[0].invoke(
3672 if (this->m_timeCaller_OutputPort[0].isConnected()) {
3673 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
3681 if (this->m_logOut_OutputPort[0].isConnected()) {
3685 #if FW_AMPCS_COMPATIBLE 3687 _status = _logBuff.
serialize(static_cast<U8>(3));
3690 static_cast<FwAssertArgType>(_status)
3694 #if FW_AMPCS_COMPATIBLE 3697 static_cast<U8>(
sizeof(I32))
3701 static_cast<FwAssertArgType>(_status)
3707 static_cast<FwAssertArgType>(_status)
3710 #if FW_AMPCS_COMPATIBLE 3713 static_cast<U8>(
sizeof(U32))
3717 static_cast<FwAssertArgType>(_status)
3723 static_cast<FwAssertArgType>(_status)
3726 #if FW_AMPCS_COMPATIBLE 3733 static_cast<FwAssertArgType>(_status)
3739 static_cast<FwAssertArgType>(_status)
3742 this->m_logOut_OutputPort[0].
invoke(
3751 #if FW_ENABLE_TEXT_LOGGING 3752 if (this->m_logTextOut_OutputPort[0].isConnected()) {
3753 #if FW_OBJECT_NAMES == 1 3754 const char* _formatString =
3755 "(%s) %s: Received a command response while not running a sequence (was in state %" PRIi32
" opcode was %" PRIu32
" response code %s)";
3757 const char* _formatString =
3758 "%s: Received a command response while not running a sequence (was in state %" PRIi32
" opcode was %" PRIu32
" response code %s)";
3762 response.toString(responseStr);
3768 this->m_objName.toChar(),
3770 "CmdResponseWhileNotRunningSequence ",
3776 this->m_logTextOut_OutputPort[0].invoke(
3791 U16 currentSequenceIdx
3796 if (this->m_timeCaller_OutputPort[0].isConnected()) {
3797 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
3805 if (this->m_logOut_OutputPort[0].isConnected()) {
3809 #if FW_AMPCS_COMPATIBLE 3811 _status = _logBuff.
serialize(static_cast<U8>(4));
3814 static_cast<FwAssertArgType>(_status)
3818 #if FW_AMPCS_COMPATIBLE 3821 static_cast<U8>(
sizeof(U32))
3825 static_cast<FwAssertArgType>(_status)
3831 static_cast<FwAssertArgType>(_status)
3834 #if FW_AMPCS_COMPATIBLE 3841 static_cast<FwAssertArgType>(_status)
3847 static_cast<FwAssertArgType>(_status)
3850 #if FW_AMPCS_COMPATIBLE 3853 static_cast<U8>(
sizeof(U16))
3857 static_cast<FwAssertArgType>(_status)
3860 _status = _logBuff.
serialize(oldSequenceIdx);
3863 static_cast<FwAssertArgType>(_status)
3866 #if FW_AMPCS_COMPATIBLE 3869 static_cast<U8>(
sizeof(U16))
3873 static_cast<FwAssertArgType>(_status)
3876 _status = _logBuff.
serialize(currentSequenceIdx);
3879 static_cast<FwAssertArgType>(_status)
3882 this->m_logOut_OutputPort[0].
invoke(
3891 #if FW_ENABLE_TEXT_LOGGING 3892 if (this->m_logTextOut_OutputPort[0].isConnected()) {
3893 #if FW_OBJECT_NAMES == 1 3894 const char* _formatString =
3895 "(%s) %s: Received a response from cmd opcode %" PRIu32
" (response %s), but it was from a previous sequence, not the current one (old idx: %" PRIu16
", current idx: %" PRIu16
")";
3897 const char* _formatString =
3898 "%s: Received a response from cmd opcode %" PRIu32
" (response %s), but it was from a previous sequence, not the current one (old idx: %" PRIu16
", current idx: %" PRIu16
")";
3902 response.toString(responseStr);
3908 this->m_objName.toChar(),
3910 "CmdResponseFromOldSequence ",
3917 this->m_logTextOut_OutputPort[0].invoke(
3935 if (this->m_timeCaller_OutputPort[0].isConnected()) {
3936 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
3944 if (this->m_logOut_OutputPort[0].isConnected()) {
3948 #if FW_AMPCS_COMPATIBLE 3950 _status = _logBuff.
serialize(static_cast<U8>(2));
3953 static_cast<FwAssertArgType>(_status)
3957 #if FW_AMPCS_COMPATIBLE 3960 static_cast<U8>(
sizeof(U32))
3964 static_cast<FwAssertArgType>(_status)
3970 static_cast<FwAssertArgType>(_status)
3973 #if FW_AMPCS_COMPATIBLE 3980 static_cast<FwAssertArgType>(_status)
3986 static_cast<FwAssertArgType>(_status)
3989 this->m_logOut_OutputPort[0].
invoke(
3998 #if FW_ENABLE_TEXT_LOGGING 3999 if (this->m_logTextOut_OutputPort[0].isConnected()) {
4000 #if FW_OBJECT_NAMES == 1 4001 const char* _formatString =
4002 "(%s) %s: Received a response from cmd opcode %" PRIu32
" (response %s) from this sequence, but was not awaiting a response";
4004 const char* _formatString =
4005 "%s: Received a response from cmd opcode %" PRIu32
" (response %s) from this sequence, but was not awaiting a response";
4009 response.toString(responseStr);
4015 this->m_objName.toChar(),
4017 "CmdResponseWhileNotAwaiting ",
4022 this->m_logTextOut_OutputPort[0].invoke(
4041 if (this->m_timeCaller_OutputPort[0].isConnected()) {
4042 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
4050 if (this->m_logOut_OutputPort[0].isConnected()) {
4054 #if FW_AMPCS_COMPATIBLE 4056 _status = _logBuff.
serialize(static_cast<U8>(3));
4059 static_cast<FwAssertArgType>(_status)
4063 #if FW_AMPCS_COMPATIBLE 4066 static_cast<U8>(
sizeof(U32))
4070 static_cast<FwAssertArgType>(_status)
4076 static_cast<FwAssertArgType>(_status)
4079 #if FW_AMPCS_COMPATIBLE 4086 static_cast<FwAssertArgType>(_status)
4092 static_cast<FwAssertArgType>(_status)
4095 #if FW_AMPCS_COMPATIBLE 4098 static_cast<U8>(
sizeof(U32))
4102 static_cast<FwAssertArgType>(_status)
4105 _status = _logBuff.
serialize(expectedOpcode);
4108 static_cast<FwAssertArgType>(_status)
4111 this->m_logOut_OutputPort[0].
invoke(
4120 #if FW_ENABLE_TEXT_LOGGING 4121 if (this->m_logTextOut_OutputPort[0].isConnected()) {
4122 #if FW_OBJECT_NAMES == 1 4123 const char* _formatString =
4124 "(%s) %s: Received a response from cmd opcode %" PRIu32
" (response %s) from this sequence, but was expecting a response from command opcode %" PRIu32
"";
4126 const char* _formatString =
4127 "%s: Received a response from cmd opcode %" PRIu32
" (response %s) from this sequence, but was expecting a response from command opcode %" PRIu32
"";
4131 response.toString(responseStr);
4137 this->m_objName.toChar(),
4139 "WrongCmdResponseOpcode ",
4145 this->m_logTextOut_OutputPort[0].invoke(
4165 if (this->m_timeCaller_OutputPort[0].isConnected()) {
4166 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
4174 if (this->m_logOut_OutputPort[0].isConnected()) {
4178 #if FW_AMPCS_COMPATIBLE 4180 _status = _logBuff.
serialize(static_cast<U8>(4));
4183 static_cast<FwAssertArgType>(_status)
4187 #if FW_AMPCS_COMPATIBLE 4190 static_cast<U8>(
sizeof(U32))
4194 static_cast<FwAssertArgType>(_status)
4200 static_cast<FwAssertArgType>(_status)
4203 #if FW_AMPCS_COMPATIBLE 4210 static_cast<FwAssertArgType>(_status)
4216 static_cast<FwAssertArgType>(_status)
4219 #if FW_AMPCS_COMPATIBLE 4222 static_cast<U8>(
sizeof(U16))
4226 static_cast<FwAssertArgType>(_status)
4229 _status = _logBuff.
serialize(actualCmdIdx);
4232 static_cast<FwAssertArgType>(_status)
4235 #if FW_AMPCS_COMPATIBLE 4238 static_cast<U8>(
sizeof(U16))
4242 static_cast<FwAssertArgType>(_status)
4245 _status = _logBuff.
serialize(expectedCmdIdx);
4248 static_cast<FwAssertArgType>(_status)
4251 this->m_logOut_OutputPort[0].
invoke(
4260 #if FW_ENABLE_TEXT_LOGGING 4261 if (this->m_logTextOut_OutputPort[0].isConnected()) {
4262 #if FW_OBJECT_NAMES == 1 4263 const char* _formatString =
4264 "(%s) %s: Received a response from the correct cmd (opcode %" PRIu32
" response %s), but it was for a different instance of that opcode in the same sequence (actual idx %" PRIu16
" expected %" PRIu16
")";
4266 const char* _formatString =
4267 "%s: Received a response from the correct cmd (opcode %" PRIu32
" response %s), but it was for a different instance of that opcode in the same sequence (actual idx %" PRIu16
" expected %" PRIu16
")";
4271 response.toString(responseStr);
4277 this->m_objName.toChar(),
4279 "WrongCmdResponseIndex ",
4286 this->m_logTextOut_OutputPort[0].invoke(
4307 if (this->m_timeCaller_OutputPort[0].isConnected()) {
4308 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
4316 if (this->m_logOut_OutputPort[0].isConnected()) {
4320 #if FW_AMPCS_COMPATIBLE 4322 _status = _logBuff.
serialize(static_cast<U8>(5));
4325 static_cast<FwAssertArgType>(_status)
4329 #if FW_AMPCS_COMPATIBLE 4332 static_cast<U8>(
sizeof(U32))
4336 static_cast<FwAssertArgType>(_status)
4342 static_cast<FwAssertArgType>(_status)
4345 #if FW_AMPCS_COMPATIBLE 4348 static_cast<U8>(
sizeof(U32))
4352 static_cast<FwAssertArgType>(_status)
4358 static_cast<FwAssertArgType>(_status)
4361 #if FW_AMPCS_COMPATIBLE 4364 static_cast<U8>(
sizeof(I32))
4368 static_cast<FwAssertArgType>(_status)
4371 _status = _logBuff.
serialize(errorCode);
4374 static_cast<FwAssertArgType>(_status)
4377 #if FW_AMPCS_COMPATIBLE 4380 static_cast<U8>(
sizeof(
U64))
4384 static_cast<FwAssertArgType>(_status)
4390 static_cast<FwAssertArgType>(_status)
4393 #if FW_AMPCS_COMPATIBLE 4396 static_cast<U8>(
sizeof(
U64))
4400 static_cast<FwAssertArgType>(_status)
4403 _status = _logBuff.
serialize(buffLength);
4406 static_cast<FwAssertArgType>(_status)
4409 this->m_logOut_OutputPort[0].
invoke(
4418 #if FW_ENABLE_TEXT_LOGGING 4419 if (this->m_logTextOut_OutputPort[0].isConnected()) {
4420 #if FW_OBJECT_NAMES == 1 4421 const char* _formatString =
4422 "(%s) %s: Deserialize error encountered while reading directive opcode %" PRIu32
" at index %" PRIu32
": %" PRIi32
" (%" PRIu64
" bytes left out of %" PRIu64
")";
4424 const char* _formatString =
4425 "%s: Deserialize error encountered while reading directive opcode %" PRIu32
" at index %" PRIu32
": %" PRIi32
" (%" PRIu64
" bytes left out of %" PRIu64
")";
4432 this->m_objName.toChar(),
4434 "DirectiveDeserializeError ",
4442 this->m_logTextOut_OutputPort[0].invoke(
4454 I32 internalTimeBase,
4460 if (this->m_timeCaller_OutputPort[0].isConnected()) {
4461 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
4469 if (this->m_logOut_OutputPort[0].isConnected()) {
4473 #if FW_AMPCS_COMPATIBLE 4475 _status = _logBuff.
serialize(static_cast<U8>(2));
4478 static_cast<FwAssertArgType>(_status)
4482 #if FW_AMPCS_COMPATIBLE 4485 static_cast<U8>(
sizeof(I32))
4489 static_cast<FwAssertArgType>(_status)
4492 _status = _logBuff.
serialize(internalTimeBase);
4495 static_cast<FwAssertArgType>(_status)
4498 #if FW_AMPCS_COMPATIBLE 4501 static_cast<U8>(
sizeof(I32))
4505 static_cast<FwAssertArgType>(_status)
4508 _status = _logBuff.
serialize(otherTimeBase);
4511 static_cast<FwAssertArgType>(_status)
4514 this->m_logOut_OutputPort[0].
invoke(
4523 #if FW_ENABLE_TEXT_LOGGING 4524 if (this->m_logTextOut_OutputPort[0].isConnected()) {
4525 #if FW_OBJECT_NAMES == 1 4526 const char* _formatString =
4527 "(%s) %s: getTime() time base was %" PRIi32
", but tried to operate on it with time base %" PRIi32
"";
4529 const char* _formatString =
4530 "%s: getTime() time base was %" PRIi32
", but tried to operate on it with time base %" PRIi32
"";
4537 this->m_objName.toChar(),
4539 "MismatchedTimeBase ",
4544 this->m_logTextOut_OutputPort[0].invoke(
4556 I32 internalTimeContext,
4557 I32 otherTimeContext
4562 if (this->m_timeCaller_OutputPort[0].isConnected()) {
4563 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
4571 if (this->m_logOut_OutputPort[0].isConnected()) {
4575 #if FW_AMPCS_COMPATIBLE 4577 _status = _logBuff.
serialize(static_cast<U8>(2));
4580 static_cast<FwAssertArgType>(_status)
4584 #if FW_AMPCS_COMPATIBLE 4587 static_cast<U8>(
sizeof(I32))
4591 static_cast<FwAssertArgType>(_status)
4594 _status = _logBuff.
serialize(internalTimeContext);
4597 static_cast<FwAssertArgType>(_status)
4600 #if FW_AMPCS_COMPATIBLE 4603 static_cast<U8>(
sizeof(I32))
4607 static_cast<FwAssertArgType>(_status)
4610 _status = _logBuff.
serialize(otherTimeContext);
4613 static_cast<FwAssertArgType>(_status)
4616 this->m_logOut_OutputPort[0].
invoke(
4625 #if FW_ENABLE_TEXT_LOGGING 4626 if (this->m_logTextOut_OutputPort[0].isConnected()) {
4627 #if FW_OBJECT_NAMES == 1 4628 const char* _formatString =
4629 "(%s) %s: getTime() time context was %" PRIi32
", but tried to operate on it with time context %" PRIi32
"";
4631 const char* _formatString =
4632 "%s: getTime() time context was %" PRIi32
", but tried to operate on it with time context %" PRIi32
"";
4639 this->m_objName.toChar(),
4641 "MismatchedTimeContext ",
4642 internalTimeContext,
4646 this->m_logTextOut_OutputPort[0].invoke(
4666 if (this->m_timeCaller_OutputPort[0].isConnected()) {
4667 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
4675 if (this->m_logOut_OutputPort[0].isConnected()) {
4679 #if FW_AMPCS_COMPATIBLE 4681 _status = _logBuff.
serialize(static_cast<U8>(4));
4684 static_cast<FwAssertArgType>(_status)
4688 #if FW_AMPCS_COMPATIBLE 4695 static_cast<FwAssertArgType>(_status)
4701 static_cast<FwAssertArgType>(_status)
4704 #if FW_AMPCS_COMPATIBLE 4707 static_cast<U8>(
sizeof(U32))
4711 static_cast<FwAssertArgType>(_status)
4714 _status = _logBuff.
serialize(stmtOpcode);
4717 static_cast<FwAssertArgType>(_status)
4720 #if FW_AMPCS_COMPATIBLE 4723 static_cast<U8>(
sizeof(U32))
4727 static_cast<FwAssertArgType>(_status)
4733 static_cast<FwAssertArgType>(_status)
4739 static_cast<FwAssertArgType>(_status)
4742 this->m_logOut_OutputPort[0].
invoke(
4751 #if FW_ENABLE_TEXT_LOGGING 4752 if (this->m_logTextOut_OutputPort[0].isConnected()) {
4753 #if FW_OBJECT_NAMES == 1 4754 const char* _formatString =
4755 "(%s) %s: A statement type %s opcode %" PRIu32
" at index %" PRIu32
" timed out in sequence %s, causing the sequence to fail";
4757 const char* _formatString =
4758 "%s: A statement type %s opcode %" PRIu32
" at index %" PRIu32
" timed out in sequence %s, causing the sequence to fail";
4762 stmtType.toString(stmtTypeStr);
4768 this->m_objName.toChar(),
4770 "StatementTimedOut ",
4777 this->m_logTextOut_OutputPort[0].invoke(
4795 if (this->m_timeCaller_OutputPort[0].isConnected()) {
4796 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
4804 if (this->m_logOut_OutputPort[0].isConnected()) {
4808 #if FW_AMPCS_COMPATIBLE 4810 _status = _logBuff.
serialize(static_cast<U8>(2));
4813 static_cast<FwAssertArgType>(_status)
4817 #if FW_AMPCS_COMPATIBLE 4820 static_cast<U8>(
sizeof(
U8))
4824 static_cast<FwAssertArgType>(_status)
4830 static_cast<FwAssertArgType>(_status)
4833 #if FW_AMPCS_COMPATIBLE 4836 static_cast<U8>(
sizeof(
U8))
4840 static_cast<FwAssertArgType>(_status)
4846 static_cast<FwAssertArgType>(_status)
4849 this->m_logOut_OutputPort[0].
invoke(
4858 #if FW_ENABLE_TEXT_LOGGING 4859 if (this->m_logTextOut_OutputPort[0].isConnected()) {
4860 #if FW_OBJECT_NAMES == 1 4861 const char* _formatString =
4862 "(%s) %s: A sequence specified it had %" PRIu8
" args but the max was %" PRIu8
"";
4864 const char* _formatString =
4865 "%s: A sequence specified it had %" PRIu8
" args but the max was %" PRIu8
"";
4872 this->m_objName.toChar(),
4874 "TooManySequenceArgs ",
4879 this->m_logTextOut_OutputPort[0].invoke(
4897 if (this->m_timeCaller_OutputPort[0].isConnected()) {
4898 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
4906 if (this->m_logOut_OutputPort[0].isConnected()) {
4910 #if FW_AMPCS_COMPATIBLE 4912 _status = _logBuff.
serialize(static_cast<U8>(2));
4915 static_cast<FwAssertArgType>(_status)
4919 #if FW_AMPCS_COMPATIBLE 4922 static_cast<U8>(
sizeof(U16))
4926 static_cast<FwAssertArgType>(_status)
4932 static_cast<FwAssertArgType>(_status)
4935 #if FW_AMPCS_COMPATIBLE 4938 static_cast<U8>(
sizeof(U16))
4942 static_cast<FwAssertArgType>(_status)
4948 static_cast<FwAssertArgType>(_status)
4951 this->m_logOut_OutputPort[0].
invoke(
4960 #if FW_ENABLE_TEXT_LOGGING 4961 if (this->m_logTextOut_OutputPort[0].isConnected()) {
4962 #if FW_OBJECT_NAMES == 1 4963 const char* _formatString =
4964 "(%s) %s: A sequence specified it had %" PRIu16
" statements but the max was %" PRIu16
"";
4966 const char* _formatString =
4967 "%s: A sequence specified it had %" PRIu16
" statements but the max was %" PRIu16
"";
4974 this->m_objName.toChar(),
4976 "TooManySequenceStatements ",
4981 this->m_logTextOut_OutputPort[0].invoke(
5002 if (not this->m_first_update_SequencesSucceeded) {
5004 if (arg == this->m_last_SequencesSucceeded) {
5008 this->m_last_SequencesSucceeded = arg;
5012 this->m_first_update_SequencesSucceeded =
false;
5013 this->m_last_SequencesSucceeded = arg;
5016 if (this->m_tlmOut_OutputPort[0].isConnected()) {
5018 this->m_timeCaller_OutputPort[0].isConnected() &&
5021 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
5028 static_cast<FwAssertArgType>(_stat)
5035 this->m_tlmOut_OutputPort[0].
invoke(
5050 if (not this->m_first_update_SequencesFailed) {
5052 if (arg == this->m_last_SequencesFailed) {
5056 this->m_last_SequencesFailed = arg;
5060 this->m_first_update_SequencesFailed =
false;
5061 this->m_last_SequencesFailed = arg;
5064 if (this->m_tlmOut_OutputPort[0].isConnected()) {
5066 this->m_timeCaller_OutputPort[0].isConnected() &&
5069 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
5076 static_cast<FwAssertArgType>(_stat)
5083 this->m_tlmOut_OutputPort[0].
invoke(
5098 if (not this->m_first_update_SequencesCancelled) {
5100 if (arg == this->m_last_SequencesCancelled) {
5104 this->m_last_SequencesCancelled = arg;
5108 this->m_first_update_SequencesCancelled =
false;
5109 this->m_last_SequencesCancelled = arg;
5112 if (this->m_tlmOut_OutputPort[0].isConnected()) {
5114 this->m_timeCaller_OutputPort[0].isConnected() &&
5117 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
5124 static_cast<FwAssertArgType>(_stat)
5131 this->m_tlmOut_OutputPort[0].
invoke(
5146 if (not this->m_first_update_StatementsDispatched) {
5148 if (arg == this->m_last_StatementsDispatched) {
5152 this->m_last_StatementsDispatched = arg;
5156 this->m_first_update_StatementsDispatched =
false;
5157 this->m_last_StatementsDispatched = arg;
5160 if (this->m_tlmOut_OutputPort[0].isConnected()) {
5162 this->m_timeCaller_OutputPort[0].isConnected() &&
5165 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
5172 static_cast<FwAssertArgType>(_stat)
5179 this->m_tlmOut_OutputPort[0].
invoke(
5194 if (not this->m_first_update_StatementsFailed) {
5196 if (arg == this->m_last_StatementsFailed) {
5200 this->m_last_StatementsFailed = arg;
5204 this->m_first_update_StatementsFailed =
false;
5205 this->m_last_StatementsFailed = arg;
5208 if (this->m_tlmOut_OutputPort[0].isConnected()) {
5210 this->m_timeCaller_OutputPort[0].isConnected() &&
5213 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
5220 static_cast<FwAssertArgType>(_stat)
5227 this->m_tlmOut_OutputPort[0].
invoke(
5242 if (not this->m_first_update_SeqPath) {
5244 if (arg == this->m_last_SeqPath) {
5248 this->m_last_SeqPath = arg;
5252 this->m_first_update_SeqPath =
false;
5253 this->m_last_SeqPath = arg;
5256 if (this->m_tlmOut_OutputPort[0].isConnected()) {
5258 this->m_timeCaller_OutputPort[0].isConnected() &&
5261 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
5268 static_cast<FwAssertArgType>(_stat)
5275 this->m_tlmOut_OutputPort[0].
invoke(
5290 if (not this->m_first_update_STATEMENT_TIMEOUT_SECS) {
5292 if (arg == this->m_last_STATEMENT_TIMEOUT_SECS) {
5296 this->m_last_STATEMENT_TIMEOUT_SECS = arg;
5300 this->m_first_update_STATEMENT_TIMEOUT_SECS =
false;
5301 this->m_last_STATEMENT_TIMEOUT_SECS = arg;
5304 if (this->m_tlmOut_OutputPort[0].isConnected()) {
5306 this->m_timeCaller_OutputPort[0].isConnected() &&
5309 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
5316 static_cast<FwAssertArgType>(_stat)
5323 this->m_tlmOut_OutputPort[0].
invoke(
5355 this->m_paramLock.
lock();
5356 valid = this->m_param_STATEMENT_TIMEOUT_SECS_valid;
5357 _local = this->m_STATEMENT_TIMEOUT_SECS;
5358 this->m_paramLock.
unLock();
5369 if (this->m_timeCaller_OutputPort[0].isConnected()) {
5371 this->m_timeCaller_OutputPort[0].
invoke(_time);
5386 ComponentIpcSerializableBuffer _msg;
5396 static_cast<FwAssertArgType>(_msgStatus)
5406 static_cast<FwAssertArgType>(_deserStatus)
5409 MsgTypeEnum _msgType =
static_cast<MsgTypeEnum
>(_desMsg);
5411 if (_msgType == FPYSEQUENCER_COMPONENT_EXIT) {
5416 _deserStatus = _msg.deserialize(portNum);
5419 static_cast<FwAssertArgType>(_deserStatus)
5424 case CHECKTIMERS_SCHED: {
5427 _deserStatus = _msg.deserialize(context);
5430 static_cast<FwAssertArgType>(_deserStatus)
5442 case CMDRESPONSEIN_CMDRESPONSE: {
5445 _deserStatus = _msg.deserialize(opCode);
5448 static_cast<FwAssertArgType>(_deserStatus)
5453 _deserStatus = _msg.deserialize(cmdSeq);
5456 static_cast<FwAssertArgType>(_deserStatus)
5461 _deserStatus = _msg.deserialize(response);
5464 static_cast<FwAssertArgType>(_deserStatus)
5481 _deserStatus = _msg.deserialize(key);
5484 static_cast<FwAssertArgType>(_deserStatus)
5496 case TLMWRITE_SCHED: {
5499 _deserStatus = _msg.deserialize(context);
5502 static_cast<FwAssertArgType>(_deserStatus)
5517 _deserStatus = _msg.deserialize(_opCode);
5520 static_cast<FwAssertArgType>(_deserStatus)
5525 _deserStatus = _msg.deserialize(_cmdSeq);
5528 static_cast<FwAssertArgType>(_deserStatus)
5533 _deserStatus = _msg.deserialize(args);
5536 static_cast<FwAssertArgType>(_deserStatus)
5546 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
5561 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
5574 #if FW_CMD_CHECK_RESIDUAL 5576 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
5595 case CMD_VALIDATE: {
5598 _deserStatus = _msg.deserialize(_opCode);
5601 static_cast<FwAssertArgType>(_deserStatus)
5606 _deserStatus = _msg.deserialize(_cmdSeq);
5609 static_cast<FwAssertArgType>(_deserStatus)
5614 _deserStatus = _msg.deserialize(args);
5617 static_cast<FwAssertArgType>(_deserStatus)
5627 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
5640 #if FW_CMD_CHECK_RESIDUAL 5642 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
5660 case CMD_RUN_VALIDATED: {
5663 _deserStatus = _msg.deserialize(_opCode);
5666 static_cast<FwAssertArgType>(_deserStatus)
5671 _deserStatus = _msg.deserialize(_cmdSeq);
5674 static_cast<FwAssertArgType>(_deserStatus)
5679 _deserStatus = _msg.deserialize(args);
5682 static_cast<FwAssertArgType>(_deserStatus)
5692 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
5705 #if FW_CMD_CHECK_RESIDUAL 5707 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
5728 _deserStatus = _msg.deserialize(_opCode);
5731 static_cast<FwAssertArgType>(_deserStatus)
5736 _deserStatus = _msg.deserialize(_cmdSeq);
5739 static_cast<FwAssertArgType>(_deserStatus)
5744 _deserStatus = _msg.deserialize(args);
5747 static_cast<FwAssertArgType>(_deserStatus)
5755 #if FW_CMD_CHECK_RESIDUAL 5757 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
5772 case INT_IF_DIRECTIVE_WAITABS: {
5774 _deserStatus = _msg.deserialize(directive);
5779 static_cast<FwAssertArgType>(_deserStatus)
5785 _msg.getBuffLeft() == 0,
5798 case INT_IF_DIRECTIVE_WAITREL: {
5800 _deserStatus = _msg.deserialize(directive);
5805 static_cast<FwAssertArgType>(_deserStatus)
5811 _msg.getBuffLeft() == 0,
5825 case INTERNAL_STATE_MACHINE_SIGNAL:
5826 this->smDispatch(_msg);
5840 void FpySequencerComponentBase ::
5852 const U32 idBase = callComp->
getIdBase();
5853 FW_ASSERT(opCode >= idBase, static_cast<FwAssertArgType>(opCode), static_cast<FwAssertArgType>(idBase));
5856 switch (opCode - idBase) {
5858 compPtr->RUN_cmdHandlerBase(
5867 compPtr->VALIDATE_cmdHandlerBase(
5876 compPtr->RUN_VALIDATED_cmdHandlerBase(
5885 compPtr->CANCEL_cmdHandlerBase(
5894 Fw::CmdResponse _cstat = compPtr->paramSet_STATEMENT_TIMEOUT_SECS(args);
5895 compPtr->cmdResponse_out(
5905 compPtr->cmdResponse_out(
5919 void FpySequencerComponentBase ::
5928 compPtr->checkTimers_handlerBase(
5934 void FpySequencerComponentBase ::
5935 m_p_cmdResponseIn_in(
5945 compPtr->cmdResponseIn_handlerBase(
5953 void FpySequencerComponentBase ::
5962 compPtr->pingIn_handlerBase(
5968 void FpySequencerComponentBase ::
5977 compPtr->tlmWrite_handlerBase(
5987 void FpySequencerComponentBase ::
5997 status = buffer.
serialize(static_cast<FwEnumStoreType>(INTERNAL_STATE_MACHINE_SIGNAL));
6001 status = buffer.
serialize(static_cast<FwIndexType>(0));
6005 status = buffer.
serialize(static_cast<FwEnumStoreType>(smId));
6009 status = buffer.
serialize(static_cast<FwEnumStoreType>(signal));
6013 void FpySequencerComponentBase ::
6022 static_cast<FwAssertArgType>(qStatus)
6030 void FpySequencerComponentBase ::
6036 FpySequencerComponentBase::deserializeSmIdAndSignal(buffer, storedSmId, storedSignal);
6039 const SmId smId =
static_cast<SmId>(storedSmId);
6043 this->Svc_FpySequencer_SequencerStateMachine_smDispatch(buffer, this->m_stateMachine_sequencer, signal);
6047 FW_ASSERT(0, static_cast<FwAssertArgType>(smId));
6052 void FpySequencerComponentBase ::
6053 deserializeSmIdAndSignal(
6073 void FpySequencerComponentBase ::
6074 Svc_FpySequencer_SequencerStateMachine_smDispatch(
6076 Svc_FpySequencer_SequencerStateMachine& sm,
6089 sm.sendSignal_cmd_VALIDATE(value);
6100 sm.sendSignal_cmd_RUN(value);
6111 sm.sendSignal_cmd_RUN_VALIDATED(value);
6118 sm.sendSignal_cmd_CANCEL();
6125 sm.sendSignal_result_failure();
6132 sm.sendSignal_result_success();
6139 sm.sendSignal_entered();
6146 sm.sendSignal_result_dispatchStatement_success();
6153 sm.sendSignal_result_dispatchStatement_failure();
6160 sm.sendSignal_result_dispatchStatement_noMoreStatements();
6167 sm.sendSignal_checkTimersIn();
6174 sm.sendSignal_result_checkShouldWake_wakeup();
6181 sm.sendSignal_result_checkShouldWake_keepSleeping();
6188 sm.sendSignal_result_timeOpFailed();
6195 sm.sendSignal_stmtResponse_beginSleep();
6202 sm.sendSignal_stmtResponse_success();
6209 sm.sendSignal_stmtResponse_failure();
6216 sm.sendSignal_stmtResponse_unexpected();
6223 sm.sendSignal_result_checkStatementTimeout_statementTimeout();
6230 sm.sendSignal_result_checkStatementTimeout_noTimeout();
6234 FW_ASSERT(0, static_cast<FwAssertArgType>(signal));
6253 this->m_paramLock.
lock();
6254 this->m_STATEMENT_TIMEOUT_SECS = _local_val;
6256 this->m_paramLock.
unLock();
6268 paramSave_STATEMENT_TIMEOUT_SECS()
6270 if (this->m_prmSet_OutputPort[0].isConnected()) {
6272 this->m_paramLock.
lock();
6276 this->m_paramLock.
unLock();
6285 this->m_prmSet_OutputPort[0].
invoke(
bool isConnected_tlmOut_OutputPort(FwIndexType portNum)
Serialization/Deserialization operation was successful.
void sequencer_sendSignal_result_dispatchStatement_noMoreStatements()
Send signal result_dispatchStatement_noMoreStatements to state machine sequencer. ...
void sequencer_sendSignal_result_checkShouldWake_keepSleeping()
Send signal result_checkShouldWake_keepSleeping to state machine sequencer.
called when an unexpected or incorrect statement response comes in. only raised in the RUNNING state ...
virtual void directive_waitRel_internalInterfaceHandler(const Svc::FpySequencer_WaitRelDirective &directive)=0
Internal interface handler for directive_waitRel.
FwIndexType getNum_cmdResponseIn_InputPorts() const
called in dispatchStatement method when a statement was unable to be sent out
void addCallPort(InputTimePort *callPort)
Register an input port.
void invoke(Fw::ComBuffer &data, U32 context) const
Invoke a port interface.
void init()
Initialization function.
Channel ID for SequencesFailed.
Fw::InputCmdResponsePort * get_cmdResponseIn_InputPort(FwIndexType portNum)
void set_cmdOut_OutputPort(FwIndexType portNum, Fw::InputComPort *port)
Connect port to cmdOut[portNum].
called in dispatchStatement method when there were no more statements in the sequence ...
virtual void parametersLoaded()
Called whenever parameters are loaded.
void log_WARNING_HI_StatementFailed(Svc::Fpy::StatementType stmtType, U32 stmtOpcode, U32 stmtIdx, const Fw::StringBase &filePath, Fw::CmdResponse response) const
Log event StatementFailed.
void log_WARNING_HI_InsufficientBufferSpace(U64 bufferSize, const Fw::StringBase &filePath) const
Log event InsufficientBufferSpace.
PlatformSizeType FwSizeType
Channel ID for StatementsFailed.
FwIndexType getNum_tlmWrite_InputPorts() const
FwIndexType getNum_cmdResponseOut_OutputPorts() const
Status receive(U8 *destination, FwSizeType capacity, BlockingType blockType, FwSizeType &actualSize, FwQueuePriorityType &priority) override
receive a message from the queue through delegate
void log_WARNING_HI_CmdResponseWhileNotAwaiting(U32 opcode, Fw::CmdResponse response) const
Log event CmdResponseWhileNotAwaiting.
virtual void cmdResponseIn_handler(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)=0
Handler for input port cmdResponseIn.
void sequencer_sendSignal_result_dispatchStatement_success()
Send signal result_dispatchStatement_success to state machine sequencer.
void log_WARNING_HI_WrongCRC(U32 expected, U32 actual) const
Log event WrongCRC.
#define FW_TLM_STRING_MAX_SIZE
Max size of channelized telemetry string type.
Status
status returned from the queue send function
Loads and validates a sequence.
virtual void parameterUpdated(FwPrmIdType id)
Called whenever a parameter is updated.
called when the expected statement response comes in, and it is OK. only raised in the RUNNING...
SerializeStatus serialize(U8 val)
serialize 8-bit unsigned int
called on VALIDATE cmd with the path of the sequence file to validate. only raised in IDLE state ...
called on RUN cmd with the path of the sequence file to run. only raised in IDLE state ...
called on RUN_VALIDATED cmd. only raised in AWAITING_CMD_RUN_VALIDATED state
virtual void tlmWrite_preMsgHook(FwIndexType portNum, U32 context)
Pre-message hook for async input port tlmWrite.
const char * toChar() const
FwIndexType getNum_prmGet_OutputPorts() const
void RUN_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
generic failure of an action
void set_tlmOut_OutputPort(FwIndexType portNum, Fw::InputTlmPort *port)
Connect port to tlmOut[portNum].
void unLock()
unlock the mutex and assert success
void addCallPort(InputPrmSetPort *callPort)
Register an input port.
U32 FwChanIdType
The type of a telemetry channel identifier.
virtual void CANCEL_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
void invoke(U32 key) const
Invoke a port interface.
raised when we should keep sleeping
void log_WARNING_HI_FileReadError(const Fw::StringBase &filePath, I32 errorCode) const
Log event FileReadError.
The size of the serial representation.
void sequencer_sendSignal_result_checkShouldWake_wakeup()
Send signal result_checkShouldWake_wakeup to state machine sequencer.
Channel ID for StatementsDispatched.
void sequencer_sendSignal_result_success()
Send signal result_success to state machine sequencer.
void log_WARNING_HI_FileReadDeserializeError(const Fw::StringBase &filePath, I32 errorCode, U64 buffLeft, U64 buffLength) const
Log event FileReadDeserializeError.
void cmdResponseIn_handlerBase(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)
Handler base-class function for input port cmdResponseIn.
SmId
State machine identifiers.
void sequencer_sendSignal_stmtResponse_success()
Send signal stmtResponse_success to state machine sequencer.
virtual ~FpySequencerComponentBase()
Destroy FpySequencerComponentBase object.
void sequencer_sendSignal_cmd_VALIDATE(const Svc::FpySequencer_SequenceExecutionArgs &value)
Send signal cmd_VALIDATE to state machine sequencer.
void init()
Initialization function.
Enum representing a command response.
virtual void RUN_VALIDATED_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command RUN_VALIDATED.
void set_logOut_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to logOut[portNum].
void addCallPort(InputCmdRegPort *callPort)
Register an input port.
void tlmWrite_SequencesSucceeded(U64 arg, Fw::Time _tlmTime=Fw::Time())
FwIndexType getNum_pingIn_InputPorts() const
virtual void directive_waitAbs_internalInterfaceHandler(const Svc::FpySequencer_WaitAbsDirective &directive)=0
Internal interface handler for directive_waitAbs.
void init()
Initialization function.
virtual void RUN_VALIDATED_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, Svc::FpySequencer_BlockState block)=0
bool isConnected_pingOut_OutputPort(FwIndexType portNum)
virtual void pingIn_preMsgHook(FwIndexType portNum, U32 key)
Pre-message hook for async input port pingIn.
Os::Queue m_queue
queue object for active component
void sequencer_sendSignal_stmtResponse_unexpected()
Send signal stmtResponse_unexpected to state machine sequencer.
virtual void RUN_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &fileName, Svc::FpySequencer_BlockState block)=0
void sequencer_sendSignal_result_dispatchStatement_failure()
Send signal result_dispatchStatement_failure to state machine sequencer.
virtual void pingIn_handler(FwIndexType portNum, U32 key)=0
Handler for input port pingIn.
Svc::InputSchedPort * get_checkTimers_InputPort(FwIndexType portNum)
void addCallPort(InputTlmPort *callPort)
Register an input port.
void addCallPort(InputPrmGetPort *callPort)
Register an input port.
void RUN_VALIDATED_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
FwIndexType getNum_pingOut_OutputPorts() const
void init()
Object initializer.
void set_pingOut_OutputPort(FwIndexType portNum, Svc::InputPingPort *port)
Connect port to pingOut[portNum].
U32 FwEventIdType
The type of an event identifier.
SerializeStatus
forward declaration for string
Svc_FpySequencer_SequencerStateMachine::State sequencer_getState() const
Get the state of state machine instance sequencer.
raised whenever the checkTimers port is called
float F32
32-bit floating point
FwIndexType getNum_cmdIn_InputPorts() const
virtual void checkTimers_handler(FwIndexType portNum, U32 context)=0
Handler for input port checkTimers.
Message will block until space is available.
bool isConnected_timeCaller_OutputPort(FwIndexType portNum)
void log_WARNING_HI_ExtraBytesInSequence(U32 remaining) const
Log event ExtraBytesInSequence.
void tlmWrite_StatementsFailed(U64 arg, Fw::Time _tlmTime=Fw::Time())
void log_WARNING_HI_StatementTimedOut(Svc::Fpy::StatementType stmtType, U32 stmtOpcode, U32 stmtIdx, const Fw::StringBase &filePath) const
Log event StatementTimedOut.
void regCommands()
Register commands with the Command Dispatcher.
void invoke(FwOpcodeType opCode) const
Invoke a port interface.
called in dispatchStatement method when a statement was successfully dispatched
F32 paramGet_STATEMENT_TIMEOUT_SECS(Fw::ParamValid &valid)
void log_WARNING_HI_EndOfFileError(const Fw::StringBase &filePath) const
Log event EndOfFileError.
void log_WARNING_HI_WrongCmdResponseOpcode(U32 opcode, Fw::CmdResponse response, U32 expectedOpcode) const
Log event WrongCmdResponseOpcode.
The size of the serial representation.
U32 FwOpcodeType
The type of a command opcode.
Serializable::SizeType getBuffLeft() const
returns how much deserialization buffer is left
FwIndexType getNum_prmSet_OutputPorts() const
void init()
Initialization function.
void cmdResponse_out(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response)
Emit command response.
FwIndexType getNum_timeCaller_OutputPorts() const
Os::Queue::Status createQueue(FwSizeType depth, FwSizeType msgSize)
FwIndexType getNum_cmdOut_OutputPorts() const
Svc::InputPingPort * get_pingIn_InputPort(FwIndexType portNum)
void tlmWrite_handlerBase(FwIndexType portNum, U32 context)
Handler base-class function for input port tlmWrite.
bool isConnected_prmSet_OutputPort(FwIndexType portNum)
#define FW_MIN(a, b)
MIN macro.
A less serious but recoverable event.
Fw::ParamValid invoke(FwPrmIdType id, Fw::ParamBuffer &val) const
Invoke a port interface.
FwIndexType getNum_logOut_OutputPorts() const
Channel ID for SequencesSucceeded.
ActiveComponentBase(const char *name)
Constructor.
void init()
Initialization function.
Fw::InputCmdPort * get_cmdIn_InputPort(FwIndexType portNum)
generic success of an action
void invoke(Fw::Time &time) const
Invoke a port interface.
void pingIn_handlerBase(FwIndexType portNum, U32 key)
Handler base-class function for input port pingIn.
void set_timeCaller_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to timeCaller[portNum].
Loads, validates and runs a sequence.
const char * toChar() const
void invoke(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response) const
Invoke a port interface.
void sequencer_sendSignal_cmd_RUN_VALIDATED(const Svc::FpySequencer_SequenceExecutionArgs &value)
Send signal cmd_RUN_VALIDATED to state machine sequencer.
No time base has been established.
Must be called after VALIDATE. Runs the sequence that was validated.
Svc_FpySequencer_SequencerStateMachine(FpySequencerComponentBase &component)
Constructor.
void set_cmdResponseOut_OutputPort(FwIndexType portNum, Fw::InputCmdResponsePort *port)
Connect port to cmdResponseOut[portNum].
void addCallPort(InputPingPort *callPort)
Register an input port.
Status send(const U8 *buffer, FwSizeType size, FwQueuePriorityType priority, BlockingType blockType) override
send a message into the queue through delegate
void log_WARNING_HI_WrongCmdResponseIndex(U32 opcode, Fw::CmdResponse response, U16 actualCmdIdx, U16 expectedCmdIdx) const
Log event WrongCmdResponseIndex.
FpySequencerComponentBase(const char *compName="")
Construct FpySequencerComponentBase object.
void sequencer_sendSignal_checkTimersIn()
Send signal checkTimersIn to state machine sequencer.
void tlmWrite_StatementsDispatched(U64 arg, Fw::Time _tlmTime=Fw::Time())
Channel ID for STATEMENT_TIMEOUT_SECS.
void VALIDATE_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
message to exit active component task
Channel ID for SequencesCancelled.
void resetDeser()
reset deserialization to beginning
void sequencer_sendSignal_stmtResponse_failure()
Send signal stmtResponse_failure to state machine sequencer.
The size of the serial representation.
void log_WARNING_LO_CmdResponseWhileNotRunningSequence(I32 state, U32 opcode, Fw::CmdResponse response) const
Log event CmdResponseWhileNotRunningSequence.
A serious but recoverable event.
void CANCEL_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void directive_waitAbs_internalInterfaceInvoke(const Svc::FpySequencer_WaitAbsDirective &directive)
Internal interface base-class function for directive_waitAbs.
void log_WARNING_HI_DirectiveDeserializeError(U32 opcode, U32 stmtIdx, I32 errorCode, U64 buffLeft, U64 buffLength) const
Log event DirectiveDeserializeError.
Errors dispatching messages.
void set_cmdRegOut_OutputPort(FwIndexType portNum, Fw::InputCmdRegPort *port)
Connect port to cmdRegOut[portNum].
void sequencer_sendSignal_stmtResponse_beginSleep()
Send signal stmtResponse_beginSleep to state machine sequencer.
void invoke(FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val) const
Invoke a port interface.
void sequencer_sendSignal_result_checkStatementTimeout_noTimeout()
Send signal result_checkStatementTimeout_noTimeout to state machine sequencer.
U32 FwPrmIdType
The type of a parameter identifier.
SerializeStatus moveDeserToOffset(FwSizeType offset)
Moves deserialization to the specified offset.
virtual void tlmWrite_handler(FwIndexType portNum, U32 context)=0
Handler for input port tlmWrite.
void loadParameters()
Load the parameters from a parameter source.
FormatStatus format(const CHAR *formatString,...)
write formatted string to buffer
void init()
Initialization function.
Command successfully executed.
void log_WARNING_HI_CommandSerializeError(U32 cmdOpcode, U64 bufCapacity, U64 curPos, U64 writeSize, U8 errorCode, U32 stmtIdx) const
Log event CommandSerializeError.
The size of the serial representation.
uint8_t U8
8-bit unsigned integer
void log_WARNING_HI_TooManySequenceStatements(U16 count, U16 max) const
Log event TooManySequenceStatements.
void tlmWrite_STATEMENT_TIMEOUT_SECS(F32 arg, Fw::Time _tlmTime=Fw::Time())
void sequencer_sendSignal_result_timeOpFailed()
Send signal result_timeOpFailed to state machine sequencer.
void log_WARNING_HI_FileOpenError(const Fw::StringBase &filePath, I32 errorCode) const
Log event FileOpenError.
void init(FpySequencerComponentBase::SmId smId)
Initialize the state machine.
void set_prmSet_OutputPort(FwIndexType portNum, Fw::InputPrmSetPort *port)
Connect port to prmSet[portNum].
Command failed to deserialize.
PlatformQueuePriorityType FwQueuePriorityType
The type of queue priorities used.
Command had execution error.
Important informational events.
void sequencer_sendSignal_cmd_CANCEL()
Send signal cmd_CANCEL to state machine sequencer.
void sequencer_sendSignal_result_checkStatementTimeout_statementTimeout()
Send signal result_checkStatementTimeout_statementTimeout to state machine sequencer.
void invoke(FwEventIdType id, Fw::Time &timeTag, const Fw::LogSeverity &severity, Fw::LogBuffer &args) const
Invoke a port interface.
bool isConnected_cmdResponseOut_OutputPort(FwIndexType portNum)
void log_WARNING_HI_InvalidCommand(I32 state) const
Log event InvalidCommand.
void log_ACTIVITY_HI_SequenceCancelled(const Fw::StringBase &filePath) const
Log event SequenceCancelled.
virtual void RUN_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command RUN.
void pingOut_out(FwIndexType portNum, U32 key)
Invoke output port pingOut.
void log_WARNING_LO_CmdResponseFromOldSequence(U32 opcode, Fw::CmdResponse response, U16 oldSequenceIdx, U16 currentSequenceIdx) const
Log event CmdResponseFromOldSequence.
bool isConnected_cmdOut_OutputPort(FwIndexType portNum)
Opcode to save parameter STATEMENT_TIMEOUT_SECS.
A message was sent requesting an exit of the loop.
The size of the serial representation.
called when the expected statement response comes in, and it is not OK. only raised in the RUNNING...
FpySequencer_SequencerStateMachineStateMachineBase::State getState() const
Get the state.
void tlmWrite_SequencesFailed(U64 arg, Fw::Time _tlmTime=Fw::Time())
bool isConnected_logOut_OutputPort(FwIndexType portNum)
void tlmWrite_SeqPath(const Fw::StringBase &arg, Fw::Time _tlmTime=Fw::Time())
SerializeStatus deserialize(U8 &val)
deserialize 8-bit unsigned int
PlatformIndexType FwIndexType
raised when the statement has not timed out yet
FwIndexType getNum_tlmOut_OutputPorts() const
virtual void VALIDATE_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command VALIDATE.
bool isConnected_prmGet_OutputPort(FwIndexType portNum)
void log_WARNING_HI_MismatchedTimeContext(I32 internalTimeContext, I32 otherTimeContext) const
Log event MismatchedTimeContext.
#define FW_NUM_ARRAY_ELEMENTS(a)
number of elements in an array
Svc::InputSchedPort * get_tlmWrite_InputPort(FwIndexType portNum)
void log_WARNING_HI_WrongSchemaVersion(U8 expected, U8 actual) const
Log event WrongSchemaVersion.
void addCallPort(InputLogPort *callPort)
Register an input port.
void cmdOut_out(FwIndexType portNum, Fw::ComBuffer &data, U32 context)
Invoke output port cmdOut.
virtual void VALIDATE_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &fileName)=0
void init()
Initialization function.
Command failed validation.
RateGroupDivider component implementation.
bool isConnected_cmdRegOut_OutputPort(FwIndexType portNum)
FwIndexType getNum_checkTimers_InputPorts() const
FwIndexType getNum_cmdRegOut_OutputPorts() const
virtual void cmdResponseIn_preMsgHook(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)
Pre-message hook for async input port cmdResponseIn.
message sent/received okay
raised when we are done sleeping
Enum representing parameter validity.
void log_WARNING_HI_TooManySequenceArgs(U8 count, U8 max) const
Log event TooManySequenceArgs.
void log_WARNING_HI_MismatchedTimeBase(I32 internalTimeBase, I32 otherTimeBase) const
Log event MismatchedTimeBase.
void invoke(FwPrmIdType id, Fw::ParamBuffer &val) const
Invoke a port interface.
void sequencer_sendSignal_result_failure()
Send signal result_failure to state machine sequencer.
called on CANCEL cmd. raised in all states except IDLE
virtual void checkTimers_preMsgHook(FwIndexType portNum, U32 context)
Pre-message hook for async input port checkTimers.
void addCallPort(InputComPort *callPort)
Register an input port.
void sequencer_sendSignal_entered()
Send signal entered to state machine sequencer.
virtual SerializeStatus serialize(SerializeBufferBase &buffer) const
serialization function
raised when the statement times out, according to the timeout parameter
FpySequencerComponentBase::SmId getId() const
Get the state machine id.
void log_ACTIVITY_HI_SequenceDone(const Fw::StringBase &filePath) const
Log event SequenceDone.
void directive_waitRel_internalInterfaceInvoke(const Svc::FpySequencer_WaitRelDirective &directive)
Internal interface base-class function for directive_waitRel.
Message will return with status when space is unavailable.
Auto-generated base for FpySequencer component.
void sequencer_sendSignal_cmd_RUN(const Svc::FpySequencer_SequenceExecutionArgs &value)
Send signal cmd_RUN to state machine sequencer.
void init()
Initialization function.
void checkTimers_handlerBase(FwIndexType portNum, U32 context)
Handler base-class function for input port checkTimers.
void init()
Initialization function.
virtual void CANCEL_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CANCEL.
Opcode to set parameter STATEMENT_TIMEOUT_SECS.
void log_WARNING_HI_UnknownSequencerDirective(U32 opcode, U32 stmtIdx, const Fw::StringBase &filePath) const
Log event UnknownSequencerDirective.
FpySequencer_SequencerStateMachineStateMachineBase::Signal Signal
#define FW_OBJECT_NAMES
Indicates whether or not object names are stored (more memory, can be used for tracking objects) ...
void tlmWrite_SequencesCancelled(U64 arg, Fw::Time _tlmTime=Fw::Time())
a statement is telling the sequencer to go to sleep
void set_prmGet_OutputPort(FwIndexType portNum, Fw::InputPrmGetPort *port)
Connect port to prmGet[portNum].
PlatformAssertArgType FwAssertArgType
The type of arguments to assert functions.
#define FW_LOG_STRING_MAX_SIZE
Max size of log string parameter type.
virtual const CHAR * toChar() const =0
void addCallPort(InputCmdResponsePort *callPort)
Register an input port.
void lock()
lock the mutex and assert success