10 #if FW_ENABLE_TEXT_LOGGING 23 union SignalTypeUnion {
24 BYTE size_of_I16[
sizeof(I16)];
25 BYTE size_of_I32[
sizeof(I32)];
37 sizeof(SignalTypeUnion);
44 CMDRESPONSEIN_CMDRESPONSE,
58 INTERNAL_STATE_MACHINE_SIGNAL,
72 BYTE internalSmBufferSize[SmSignalBuffer::SERIALIZED_SIZE];
77 class ComponentIpcSerializableBuffer :
87 MAX_DATA_SIZE =
sizeof(BuffUnion),
89 SERIALIZATION_SIZE = DATA_OFFSET + MAX_DATA_SIZE
92 ComponentIpcSerializableBuffer() :
Fw::LinearBufferBase(m_buff, sizeof(m_buff)) {
98 U8 m_buff[SERIALIZATION_SIZE];
109 m_component(component)
117 this->initBase(static_cast<FwEnumStoreType>(smId));
126 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
127 action_processInvoke(
132 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_processInvoke(this->getId(), signal, value);
135 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
136 action_setCancelRequested(
Signal signal)
138 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_setCancelRequested(this->getId(), signal);
141 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
142 action_clearCancelRequested(
Signal signal)
144 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_clearCancelRequested(this->getId(), signal);
147 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
148 action_cancelPendingRequest(
153 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_cancelPendingRequest(this->getId(), signal, value);
156 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
157 action_respond_noblock_OK(
162 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_respond_noblock_OK(this->getId(), signal, value);
165 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
166 action_respond_ERROR(
171 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_respond_ERROR(this->getId(), signal, value);
174 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
175 action_incrementSequenceFailure(
Signal signal)
177 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_incrementSequenceFailure(this->getId(), signal);
180 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
181 action_respondInvoke_BUSY(
186 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_respondInvoke_BUSY(this->getId(), signal, value);
189 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
190 action_respondInvoke_ERROR(
195 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_respondInvoke_ERROR(this->getId(), signal, value);
198 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
199 action_respondLoad_BUSY(
204 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_respondLoad_BUSY(this->getId(), signal, value);
207 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
208 action_respond_block_OK(
213 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_respond_block_OK(this->getId(), signal, value);
216 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
217 action_respond_block_ERROR(
222 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_respond_block_ERROR(this->getId(), signal, value);
225 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
231 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_load(this->getId(), signal, value);
234 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
240 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_invokeStart(this->getId(), signal, value);
243 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
249 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_invokeMain(this->getId(), signal, value);
252 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
253 action_reportModuleInvalidMain(
258 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_reportModuleInvalidMain(this->getId(), signal, value);
261 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
262 action_reportModuleMainInvokeFailed(
267 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_reportModuleMainInvokeFailed(this->getId(), signal, value);
270 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
271 action_reportModuleStartInvokeFailed(
276 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_reportModuleStartInvokeFailed(this->getId(), signal, value);
279 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
280 action_reportModuleStarted(
285 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_reportModuleStarted(this->getId(), signal, value);
288 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
289 action_reportModuleSucceeded(
294 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_reportModuleSucceeded(this->getId(), signal, value);
297 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
298 action_reportModuleStartFailed(
303 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_reportModuleStartFailed(this->getId(), signal, value);
306 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
307 action_reportModuleMainFailed(
312 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_reportModuleMainFailed(this->getId(), signal, value);
315 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
316 action_resetStore(
Signal signal)
318 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_resetStore(this->getId(), signal);
321 void WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
327 this->m_component.Svc_WasmSequencer_ControllerStateMachine_action_runEngine(this->getId(), signal, value);
330 bool WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
331 guard_cancelRequested(
Signal signal)
const 333 return this->m_component.Svc_WasmSequencer_ControllerStateMachine_guard_cancelRequested(this->getId(), signal);
336 bool WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
337 guard_moduleHasStart(
342 return this->m_component.Svc_WasmSequencer_ControllerStateMachine_guard_moduleHasStart(this->getId(), signal, value);
345 bool WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
346 guard_moduleHasValidMain(
351 return this->m_component.Svc_WasmSequencer_ControllerStateMachine_guard_moduleHasValidMain(this->getId(), signal, value);
354 bool WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
355 guard_invokeSucceeded(
360 return this->m_component.Svc_WasmSequencer_ControllerStateMachine_guard_invokeSucceeded(this->getId(), signal, value);
363 bool WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine ::
364 guard_interpreterSucceeded(
Signal signal)
const 366 return this->m_component.Svc_WasmSequencer_ControllerStateMachine_guard_interpreterSucceeded(this->getId(), signal);
371 m_component(component)
379 this->initBase(static_cast<FwEnumStoreType>(smId));
388 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
394 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_cmdReplyOK(this->getId(), signal, value);
397 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
398 action_signalEntered(
Signal signal)
400 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_signalEntered(this->getId(), signal);
403 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
404 action_spin(
Signal signal)
406 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_spin(this->getId(), signal);
409 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
410 action_reset(
Signal signal)
412 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_reset(this->getId(), signal);
415 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
416 action_clearExitStatus(
Signal signal)
418 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_clearExitStatus(this->getId(), signal);
421 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
422 action_setExitReason_INTERPRETER_FINISHED(
Signal signal)
424 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_INTERPRETER_FINISHED(this->getId(), signal);
427 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
428 action_setExitReason_INTERPRETER_TRAP(
Signal signal)
430 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_INTERPRETER_TRAP(this->getId(), signal);
433 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
434 action_setExitReason_REPLY_TIMEOUT(
Signal signal)
436 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_REPLY_TIMEOUT(this->getId(), signal);
439 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
440 action_setExitReason_HOST_FAILURE(
Signal signal)
442 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_HOST_FAILURE(this->getId(), signal);
445 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
446 action_setExitReason_TIMER_INCOMPARABLE(
Signal signal)
448 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_TIMER_INCOMPARABLE(this->getId(), signal);
451 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
452 action_setExitReason_UNEXPECTED_REPLY(
Signal signal)
454 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_UNEXPECTED_REPLY(this->getId(), signal);
457 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
458 action_setExitReason_CANCEL(
Signal signal)
460 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_CANCEL(this->getId(), signal);
463 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
469 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_setExitCode(this->getId(), signal, value);
472 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
473 action_setTrapReason(
478 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_setTrapReason(this->getId(), signal, value);
481 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
482 action_setLastHostFunction(
Signal signal)
484 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_setLastHostFunction(this->getId(), signal);
487 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
488 action_finish(
Signal signal)
490 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_finish(this->getId(), signal);
493 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
494 action_reportPaused(
Signal signal)
496 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_reportPaused(this->getId(), signal);
499 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
500 action_clearPause(
Signal signal)
502 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_clearPause(this->getId(), signal);
505 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
506 action_dispatchPendingHostFunction(
Signal signal)
508 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_dispatchPendingHostFunction(this->getId(), signal);
511 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
512 action_clearPendingHostFunction(
Signal signal)
514 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_clearPendingHostFunction(this->getId(), signal);
517 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
523 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_setContext(this->getId(), signal, value);
526 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
527 action_clearContext(
Signal signal)
529 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_clearContext(this->getId(), signal);
532 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
533 action_resume(
Signal signal)
535 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_resume(this->getId(), signal);
538 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
544 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_resumeI32(this->getId(), signal, value);
547 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
548 action_checkSleepTimers(
Signal signal)
550 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_checkSleepTimers(this->getId(), signal);
553 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
554 action_checkTimeout(
Signal signal)
556 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_checkTimeout(this->getId(), signal);
559 void WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
560 action_dequeueSerialAndResume(
565 this->m_component.Svc_WasmSequencer_InterpreterStateMachine_action_dequeueSerialAndResume(this->getId(), signal, value);
568 bool WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
569 guard_pendingPause(
Signal signal)
const 571 return this->m_component.Svc_WasmSequencer_InterpreterStateMachine_guard_pendingPause(this->getId(), signal);
574 bool WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
575 guard_pendingHostFunction(
Signal signal)
const 577 return this->m_component.Svc_WasmSequencer_InterpreterStateMachine_guard_pendingHostFunction(this->getId(), signal);
580 bool WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
581 guard_pendingHostFunctionIsSleep(
Signal signal)
const 583 return this->m_component.Svc_WasmSequencer_InterpreterStateMachine_guard_pendingHostFunctionIsSleep(this->getId(), signal);
586 bool WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
587 guard_blockingSerialIn(
592 return this->m_component.Svc_WasmSequencer_InterpreterStateMachine_guard_blockingSerialIn(this->getId(), signal, value);
595 bool WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine ::
596 guard_dequeueSucceeded(
Signal signal)
const 598 return this->m_component.Svc_WasmSequencer_InterpreterStateMachine_guard_dequeueSucceeded(this->getId(), signal);
618 #if !FW_DIRECT_PORT_CALLS 625 this->m_cmdIn_InputPort[port].
init();
630 this->m_cmdIn_InputPort[port].
setPortNum(port);
632 #if FW_OBJECT_NAMES == 1 636 this->m_objName.toChar(),
639 this->m_cmdIn_InputPort[port].setObjName(portName.
toChar());
644 #if !FW_DIRECT_PORT_CALLS 651 this->m_checkTimers_InputPort[port].
init();
656 this->m_checkTimers_InputPort[port].
setPortNum(port);
658 #if FW_OBJECT_NAMES == 1 662 this->m_objName.toChar(),
665 this->m_checkTimers_InputPort[port].setObjName(portName.
toChar());
670 #if !FW_DIRECT_PORT_CALLS 677 this->m_cmdResponseIn_InputPort[port].
init();
682 this->m_cmdResponseIn_InputPort[port].
setPortNum(port);
684 #if FW_OBJECT_NAMES == 1 688 this->m_objName.toChar(),
691 this->m_cmdResponseIn_InputPort[port].setObjName(portName.
toChar());
696 #if !FW_DIRECT_PORT_CALLS 703 this->m_seqCancelIn_InputPort[port].
init();
708 this->m_seqCancelIn_InputPort[port].
setPortNum(port);
710 #if FW_OBJECT_NAMES == 1 714 this->m_objName.toChar(),
717 this->m_seqCancelIn_InputPort[port].setObjName(portName.
toChar());
722 #if !FW_DIRECT_PORT_CALLS 729 this->m_seqRunIn_InputPort[port].
init();
734 this->m_seqRunIn_InputPort[port].
setPortNum(port);
736 #if FW_OBJECT_NAMES == 1 740 this->m_objName.toChar(),
743 this->m_seqRunIn_InputPort[port].setObjName(portName.
toChar());
748 #if !FW_DIRECT_PORT_CALLS 755 this->m_writeTelemetry_InputPort[port].
init();
756 this->m_writeTelemetry_InputPort[port].
addCallComp(
758 m_p_writeTelemetry_in
760 this->m_writeTelemetry_InputPort[port].
setPortNum(port);
762 #if FW_OBJECT_NAMES == 1 766 this->m_objName.toChar(),
769 this->m_writeTelemetry_InputPort[port].setObjName(portName.
toChar());
774 #if !FW_DIRECT_PORT_CALLS 781 this->m_serialIn_InputPort[port].init();
782 this->m_serialIn_InputPort[port].addCallComp(
786 this->m_serialIn_InputPort[port].setPortNum(port);
788 #if FW_OBJECT_NAMES == 1 792 this->m_objName.toChar(),
795 this->m_serialIn_InputPort[port].setObjName(portName.
toChar());
800 #if !FW_DIRECT_PORT_CALLS 807 this->m_cmdRegOut_OutputPort[port].
init();
809 #if FW_OBJECT_NAMES == 1 813 this->m_objName.toChar(),
816 this->m_cmdRegOut_OutputPort[port].setObjName(portName.
toChar());
821 #if !FW_DIRECT_PORT_CALLS 828 this->m_cmdResponseOut_OutputPort[port].
init();
830 #if FW_OBJECT_NAMES == 1 834 this->m_objName.toChar(),
837 this->m_cmdResponseOut_OutputPort[port].setObjName(portName.
toChar());
842 #if !FW_DIRECT_PORT_CALLS 849 this->m_logOut_OutputPort[port].
init();
851 #if FW_OBJECT_NAMES == 1 855 this->m_objName.toChar(),
858 this->m_logOut_OutputPort[port].setObjName(portName.
toChar());
863 #if !FW_DIRECT_PORT_CALLS && FW_ENABLE_TEXT_LOGGING 867 port < static_cast<FwIndexType>(this->getNum_logTextOut_OutputPorts());
870 this->m_logTextOut_OutputPort[port].
init();
872 #if FW_OBJECT_NAMES == 1 876 this->m_objName.toChar(),
879 this->m_logTextOut_OutputPort[port].setObjName(portName.
toChar());
884 #if !FW_DIRECT_PORT_CALLS 891 this->m_prmGet_OutputPort[port].
init();
893 #if FW_OBJECT_NAMES == 1 897 this->m_objName.toChar(),
900 this->m_prmGet_OutputPort[port].setObjName(portName.
toChar());
905 #if !FW_DIRECT_PORT_CALLS 912 this->m_prmSet_OutputPort[port].
init();
914 #if FW_OBJECT_NAMES == 1 918 this->m_objName.toChar(),
921 this->m_prmSet_OutputPort[port].setObjName(portName.
toChar());
926 #if !FW_DIRECT_PORT_CALLS 933 this->m_timeCaller_OutputPort[port].
init();
935 #if FW_OBJECT_NAMES == 1 939 this->m_objName.toChar(),
942 this->m_timeCaller_OutputPort[port].setObjName(portName.
toChar());
947 #if !FW_DIRECT_PORT_CALLS 954 this->m_tlmOut_OutputPort[port].
init();
956 #if FW_OBJECT_NAMES == 1 960 this->m_objName.toChar(),
963 this->m_tlmOut_OutputPort[port].setObjName(portName.
toChar());
968 #if !FW_DIRECT_PORT_CALLS 975 this->m_cmdOut_OutputPort[port].
init();
977 #if FW_OBJECT_NAMES == 1 981 this->m_objName.toChar(),
984 this->m_cmdOut_OutputPort[port].setObjName(portName.
toChar());
989 #if !FW_DIRECT_PORT_CALLS 996 this->m_getParam_OutputPort[port].
init();
998 #if FW_OBJECT_NAMES == 1 1002 this->m_objName.toChar(),
1005 this->m_getParam_OutputPort[port].setObjName(portName.
toChar());
1010 #if !FW_DIRECT_PORT_CALLS 1017 this->m_getTlmChan_OutputPort[port].
init();
1019 #if FW_OBJECT_NAMES == 1 1023 this->m_objName.toChar(),
1026 this->m_getTlmChan_OutputPort[port].setObjName(portName.
toChar());
1031 #if !FW_DIRECT_PORT_CALLS 1038 this->m_seqDoneOut_OutputPort[port].
init();
1040 #if FW_OBJECT_NAMES == 1 1044 this->m_objName.toChar(),
1047 this->m_seqDoneOut_OutputPort[port].setObjName(portName.
toChar());
1052 #if !FW_DIRECT_PORT_CALLS 1059 this->m_seqStartOut_OutputPort[port].
init();
1061 #if FW_OBJECT_NAMES == 1 1065 this->m_objName.toChar(),
1068 this->m_seqStartOut_OutputPort[port].setObjName(portName.
toChar());
1073 #if !FW_DIRECT_PORT_CALLS 1080 this->m_serialOut_OutputPort[port].init();
1082 #if FW_OBJECT_NAMES == 1 1086 this->m_objName.toChar(),
1089 this->m_serialOut_OutputPort[port].setObjName(portName.
toChar());
1097 static_cast<FwSizeType>(ComponentIpcSerializableBuffer::SERIALIZATION_SIZE)
1101 static_cast<FwAssertArgType>(qStat)
1105 #if !FW_DIRECT_PORT_CALLS 1116 static_cast<FwAssertArgType>(portNum)
1119 return &this->m_cmdIn_InputPort[portNum];
1124 #if !FW_DIRECT_PORT_CALLS 1135 static_cast<FwAssertArgType>(portNum)
1138 return &this->m_checkTimers_InputPort[portNum];
1146 static_cast<FwAssertArgType>(portNum)
1149 return &this->m_cmdResponseIn_InputPort[portNum];
1157 static_cast<FwAssertArgType>(portNum)
1160 return &this->m_seqCancelIn_InputPort[portNum];
1168 static_cast<FwAssertArgType>(portNum)
1171 return &this->m_seqRunIn_InputPort[portNum];
1179 static_cast<FwAssertArgType>(portNum)
1182 return &this->m_writeTelemetry_InputPort[portNum];
1187 #if !FW_DIRECT_PORT_CALLS 1198 static_cast<FwAssertArgType>(portNum)
1201 return &this->m_serialIn_InputPort[portNum];
1206 #if !FW_DIRECT_PORT_CALLS 1220 static_cast<FwAssertArgType>(portNum)
1223 this->m_cmdRegOut_OutputPort[portNum].
addCallPort(port);
1234 static_cast<FwAssertArgType>(portNum)
1237 this->m_cmdResponseOut_OutputPort[portNum].
addCallPort(port);
1248 static_cast<FwAssertArgType>(portNum)
1251 this->m_logOut_OutputPort[portNum].
addCallPort(port);
1254 #if FW_ENABLE_TEXT_LOGGING == 1 1256 void WasmSequencerComponentBase ::
1257 set_logTextOut_OutputPort(
1263 (0 <= portNum) && (portNum < this->getNum_logTextOut_OutputPorts()),
1264 static_cast<FwAssertArgType>(portNum)
1267 this->m_logTextOut_OutputPort[portNum].addCallPort(port);
1280 static_cast<FwAssertArgType>(portNum)
1283 this->m_prmGet_OutputPort[portNum].
addCallPort(port);
1294 static_cast<FwAssertArgType>(portNum)
1297 this->m_prmSet_OutputPort[portNum].
addCallPort(port);
1308 static_cast<FwAssertArgType>(portNum)
1311 this->m_timeCaller_OutputPort[portNum].
addCallPort(port);
1322 static_cast<FwAssertArgType>(portNum)
1325 this->m_tlmOut_OutputPort[portNum].
addCallPort(port);
1330 #if !FW_DIRECT_PORT_CALLS 1344 static_cast<FwAssertArgType>(portNum)
1347 this->m_cmdOut_OutputPort[portNum].
addCallPort(port);
1358 static_cast<FwAssertArgType>(portNum)
1361 this->m_getParam_OutputPort[portNum].
addCallPort(port);
1372 static_cast<FwAssertArgType>(portNum)
1375 this->m_getTlmChan_OutputPort[portNum].
addCallPort(port);
1386 static_cast<FwAssertArgType>(portNum)
1389 this->m_seqDoneOut_OutputPort[portNum].
addCallPort(port);
1400 static_cast<FwAssertArgType>(portNum)
1403 this->m_seqStartOut_OutputPort[portNum].
addCallPort(port);
1408 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 1417 Fw::InputSerializePort* port
1422 static_cast<FwAssertArgType>(portNum)
1425 this->m_cmdRegOut_OutputPort[portNum].registerSerialPort(port);
1431 Fw::InputSerializePort* port
1436 static_cast<FwAssertArgType>(portNum)
1439 this->m_cmdResponseOut_OutputPort[portNum].registerSerialPort(port);
1445 Fw::InputSerializePort* port
1450 static_cast<FwAssertArgType>(portNum)
1453 this->m_logOut_OutputPort[portNum].registerSerialPort(port);
1456 #if FW_ENABLE_TEXT_LOGGING == 1 1458 void WasmSequencerComponentBase ::
1459 set_logTextOut_OutputPort(
1461 Fw::InputSerializePort* port
1465 (0 <= portNum) && (portNum < this->getNum_logTextOut_OutputPorts()),
1466 static_cast<FwAssertArgType>(portNum)
1469 this->m_logTextOut_OutputPort[portNum].registerSerialPort(port);
1477 Fw::InputSerializePort* port
1482 static_cast<FwAssertArgType>(portNum)
1485 this->m_prmSet_OutputPort[portNum].registerSerialPort(port);
1491 Fw::InputSerializePort* port
1496 static_cast<FwAssertArgType>(portNum)
1499 this->m_timeCaller_OutputPort[portNum].registerSerialPort(port);
1505 Fw::InputSerializePort* port
1510 static_cast<FwAssertArgType>(portNum)
1513 this->m_tlmOut_OutputPort[portNum].registerSerialPort(port);
1518 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 1527 Fw::InputSerializePort* port
1532 static_cast<FwAssertArgType>(portNum)
1535 this->m_cmdOut_OutputPort[portNum].registerSerialPort(port);
1541 Fw::InputSerializePort* port
1546 static_cast<FwAssertArgType>(portNum)
1549 this->m_seqDoneOut_OutputPort[portNum].registerSerialPort(port);
1555 Fw::InputSerializePort* port
1560 static_cast<FwAssertArgType>(portNum)
1563 this->m_seqStartOut_OutputPort[portNum].registerSerialPort(port);
1568 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 1574 void WasmSequencerComponentBase ::
1575 set_serialOut_OutputPort(
1582 static_cast<FwAssertArgType>(portNum)
1585 this->m_serialOut_OutputPort[portNum].registerSerialPort(port);
1599 this->cmdRegOut_out(
1604 this->cmdRegOut_out(
1609 this->cmdRegOut_out(
1614 this->cmdRegOut_out(
1619 this->cmdRegOut_out(
1624 this->cmdRegOut_out(
1629 this->cmdRegOut_out(
1634 this->cmdRegOut_out(
1639 this->cmdRegOut_out(
1644 this->cmdRegOut_out(
1649 this->cmdRegOut_out(
1654 this->cmdRegOut_out(
1659 this->cmdRegOut_out(
1664 this->cmdRegOut_out(
1669 this->cmdRegOut_out(
1674 this->cmdRegOut_out(
1679 this->cmdRegOut_out(
1684 this->cmdRegOut_out(
1707 this->m_param_HOST_FUNCTION_TIMEOUT_SECS_valid = this->prmGet_out(
1713 this->m_paramLock.
lock();
1717 _stat = _paramBuffer.
deserializeTo(this->m_HOST_FUNCTION_TIMEOUT_SECS);
1726 this->m_HOST_FUNCTION_TIMEOUT_SECS = 60.0f;
1729 this->m_paramLock.
unlock();
1730 this->
parameterLoaded(PARAMID_HOST_FUNCTION_TIMEOUT_SECS, this->m_param_HOST_FUNCTION_TIMEOUT_SECS_valid);
1735 this->m_param_INSTRUCTION_FUEL_valid = this->prmGet_out(
1741 this->m_paramLock.
lock();
1745 _stat = _paramBuffer.
deserializeTo(this->m_INSTRUCTION_FUEL);
1754 this->m_INSTRUCTION_FUEL = 1000;
1757 this->m_paramLock.
unlock();
1758 this->
parameterLoaded(PARAMID_INSTRUCTION_FUEL, this->m_param_INSTRUCTION_FUEL_valid);
1763 this->m_param_SEQ_BASE_DIR_valid = this->prmGet_out(
1769 this->m_paramLock.
lock();
1785 this->m_paramLock.
unlock();
1786 this->
parameterLoaded(PARAMID_SEQ_BASE_DIR, this->m_param_SEQ_BASE_DIR_valid);
1799 m_stateMachine_controller(*this),
1800 m_stateMachine_interpreter(*this)
1811 #if !FW_DIRECT_PORT_CALLS 1822 static_cast<FwAssertArgType>(portNum)
1825 return this->m_cmdRegOut_OutputPort[portNum].
isConnected();
1833 static_cast<FwAssertArgType>(portNum)
1836 return this->m_cmdResponseOut_OutputPort[portNum].
isConnected();
1844 static_cast<FwAssertArgType>(portNum)
1847 return this->m_logOut_OutputPort[portNum].
isConnected();
1850 #if FW_ENABLE_TEXT_LOGGING == 1 1852 bool WasmSequencerComponentBase ::
1853 isConnected_logTextOut_OutputPort(
FwIndexType portNum)
const 1856 (0 <= portNum) && (portNum < this->getNum_logTextOut_OutputPorts()),
1857 static_cast<FwAssertArgType>(portNum)
1860 return this->m_logTextOut_OutputPort[portNum].isConnected();
1870 static_cast<FwAssertArgType>(portNum)
1873 return this->m_prmGet_OutputPort[portNum].
isConnected();
1881 static_cast<FwAssertArgType>(portNum)
1884 return this->m_prmSet_OutputPort[portNum].
isConnected();
1892 static_cast<FwAssertArgType>(portNum)
1895 return this->m_timeCaller_OutputPort[portNum].
isConnected();
1903 static_cast<FwAssertArgType>(portNum)
1906 return this->m_tlmOut_OutputPort[portNum].
isConnected();
1911 #if !FW_DIRECT_PORT_CALLS 1922 static_cast<FwAssertArgType>(portNum)
1925 return this->m_cmdOut_OutputPort[portNum].
isConnected();
1933 static_cast<FwAssertArgType>(portNum)
1936 return this->m_getParam_OutputPort[portNum].
isConnected();
1944 static_cast<FwAssertArgType>(portNum)
1947 return this->m_getTlmChan_OutputPort[portNum].
isConnected();
1955 static_cast<FwAssertArgType>(portNum)
1958 return this->m_seqDoneOut_OutputPort[portNum].
isConnected();
1966 static_cast<FwAssertArgType>(portNum)
1969 return this->m_seqStartOut_OutputPort[portNum].
isConnected();
1974 #if !FW_DIRECT_PORT_CALLS 1985 static_cast<FwAssertArgType>(portNum)
1988 return this->m_serialOut_OutputPort[portNum].isConnected();
2009 FW_ASSERT(opCode >= idBase, static_cast<FwAssertArgType>(opCode), static_cast<FwAssertArgType>(idBase));
2012 switch (opCode - idBase) {
2122 Fw::CmdResponse _cstat = this->paramSet_HOST_FUNCTION_TIMEOUT_SECS(args);
2132 Fw::CmdResponse _cstat = this->paramSave_HOST_FUNCTION_TIMEOUT_SECS();
2201 static_cast<FwAssertArgType>(portNum)
2209 ComponentIpcSerializableBuffer msg;
2213 _status = msg.serializeFrom(
2214 static_cast<FwEnumStoreType>(CHECKTIMERS_SCHED)
2218 static_cast<FwAssertArgType>(_status)
2222 _status = msg.serializeFrom(portNum);
2225 static_cast<FwAssertArgType>(_status)
2229 _status = msg.serializeFrom(context);
2232 static_cast<FwAssertArgType>(_status)
2241 static_cast<FwAssertArgType>(qStatus)
2256 static_cast<FwAssertArgType>(portNum)
2266 ComponentIpcSerializableBuffer msg;
2270 _status = msg.serializeFrom(
2271 static_cast<FwEnumStoreType>(CMDRESPONSEIN_CMDRESPONSE)
2275 static_cast<FwAssertArgType>(_status)
2279 _status = msg.serializeFrom(portNum);
2282 static_cast<FwAssertArgType>(_status)
2286 _status = msg.serializeFrom(opCode);
2289 static_cast<FwAssertArgType>(_status)
2293 _status = msg.serializeFrom(cmdSeq);
2296 static_cast<FwAssertArgType>(_status)
2300 _status = msg.serializeFrom(response);
2303 static_cast<FwAssertArgType>(_status)
2312 static_cast<FwAssertArgType>(qStatus)
2322 static_cast<FwAssertArgType>(portNum)
2339 static_cast<FwAssertArgType>(portNum)
2348 ComponentIpcSerializableBuffer msg;
2352 _status = msg.serializeFrom(
2353 static_cast<FwEnumStoreType>(SEQRUNIN_CMDSEQIN)
2357 static_cast<FwAssertArgType>(_status)
2361 _status = msg.serializeFrom(portNum);
2364 static_cast<FwAssertArgType>(_status)
2371 static_cast<FwAssertArgType>(_status)
2375 _status = msg.serializeFrom(args);
2378 static_cast<FwAssertArgType>(_status)
2387 static_cast<FwAssertArgType>(qStatus)
2400 static_cast<FwAssertArgType>(portNum)
2408 ComponentIpcSerializableBuffer msg;
2412 _status = msg.serializeFrom(
2413 static_cast<FwEnumStoreType>(WRITETELEMETRY_SCHED)
2417 static_cast<FwAssertArgType>(_status)
2421 _status = msg.serializeFrom(portNum);
2424 static_cast<FwAssertArgType>(_status)
2428 _status = msg.serializeFrom(context);
2431 static_cast<FwAssertArgType>(_status)
2438 if (qStatus == Os::Queue::Status::FULL) {
2445 static_cast<FwAssertArgType>(qStatus)
2464 static_cast<FwAssertArgType>(portNum)
2527 #if !FW_DIRECT_PORT_CALLS 2542 static_cast<FwAssertArgType>(portNum)
2546 this->m_cmdOut_OutputPort[portNum].isConnected(),
2547 static_cast<FwAssertArgType>(portNum)
2549 this->m_cmdOut_OutputPort[portNum].
invoke(
2564 static_cast<FwAssertArgType>(portNum)
2568 this->m_getParam_OutputPort[portNum].isConnected(),
2569 static_cast<FwAssertArgType>(portNum)
2571 return this->m_getParam_OutputPort[portNum].
invoke(
2587 static_cast<FwAssertArgType>(portNum)
2591 this->m_getTlmChan_OutputPort[portNum].isConnected(),
2592 static_cast<FwAssertArgType>(portNum)
2594 return this->m_getTlmChan_OutputPort[portNum].
invoke(
2611 static_cast<FwAssertArgType>(portNum)
2615 this->m_seqDoneOut_OutputPort[portNum].isConnected(),
2616 static_cast<FwAssertArgType>(portNum)
2618 this->m_seqDoneOut_OutputPort[portNum].
invoke(
2634 static_cast<FwAssertArgType>(portNum)
2638 this->m_seqStartOut_OutputPort[portNum].isConnected(),
2639 static_cast<FwAssertArgType>(portNum)
2641 this->m_seqStartOut_OutputPort[portNum].
invoke(
2649 #if !FW_DIRECT_PORT_CALLS 2663 static_cast<FwAssertArgType>(portNum)
2667 this->m_serialOut_OutputPort[portNum].isConnected(),
2668 static_cast<FwAssertArgType>(portNum)
2670 return this->m_serialOut_OutputPort[portNum].invokeSerial(
2684 return this->m_stateMachine_controller.
getState();
2690 return this->m_stateMachine_interpreter.
getState();
2700 ComponentIpcSerializableBuffer buffer;
2707 this->controller_sendSignalFinish(buffer);
2713 ComponentIpcSerializableBuffer buffer;
2720 this->controller_sendSignalFinish(buffer);
2726 ComponentIpcSerializableBuffer buffer;
2733 this->controller_sendSignalFinish(buffer);
2739 ComponentIpcSerializableBuffer buffer;
2746 this->controller_sendSignalFinish(buffer);
2752 ComponentIpcSerializableBuffer buffer;
2759 this->controller_sendSignalFinish(buffer);
2765 ComponentIpcSerializableBuffer buffer;
2769 this->controller_sendSignalFinish(buffer);
2775 ComponentIpcSerializableBuffer buffer;
2782 this->controller_sendSignalFinish(buffer);
2788 ComponentIpcSerializableBuffer buffer;
2795 this->controller_sendSignalFinish(buffer);
2801 ComponentIpcSerializableBuffer buffer;
2808 this->controller_sendSignalFinish(buffer);
2814 ComponentIpcSerializableBuffer buffer;
2818 this->interpreter_sendSignalFinish(buffer);
2824 ComponentIpcSerializableBuffer buffer;
2831 this->interpreter_sendSignalFinish(buffer);
2837 ComponentIpcSerializableBuffer buffer;
2841 this->interpreter_sendSignalFinish(buffer);
2847 ComponentIpcSerializableBuffer buffer;
2851 this->interpreter_sendSignalFinish(buffer);
2857 ComponentIpcSerializableBuffer buffer;
2864 this->interpreter_sendSignalFinish(buffer);
2870 ComponentIpcSerializableBuffer buffer;
2874 this->interpreter_sendSignalFinish(buffer);
2880 ComponentIpcSerializableBuffer buffer;
2884 this->interpreter_sendSignalFinish(buffer);
2890 ComponentIpcSerializableBuffer buffer;
2897 this->interpreter_sendSignalFinish(buffer);
2903 ComponentIpcSerializableBuffer buffer;
2907 this->interpreter_sendSignalFinish(buffer);
2913 ComponentIpcSerializableBuffer buffer;
2920 this->interpreter_sendSignalFinish(buffer);
2926 ComponentIpcSerializableBuffer buffer;
2930 this->interpreter_sendSignalFinish(buffer);
2936 ComponentIpcSerializableBuffer buffer;
2940 this->interpreter_sendSignalFinish(buffer);
2946 ComponentIpcSerializableBuffer buffer;
2953 this->interpreter_sendSignalFinish(buffer);
2959 ComponentIpcSerializableBuffer buffer;
2966 this->interpreter_sendSignalFinish(buffer);
2972 ComponentIpcSerializableBuffer buffer;
2979 this->interpreter_sendSignalFinish(buffer);
2985 ComponentIpcSerializableBuffer buffer;
2989 this->interpreter_sendSignalFinish(buffer);
2995 ComponentIpcSerializableBuffer buffer;
2999 this->interpreter_sendSignalFinish(buffer);
3014 this->cmdResponseOut_out(0, opCode, cmdSeq, response);
3035 ComponentIpcSerializableBuffer msg;
3039 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_RUN));
3042 static_cast<FwAssertArgType>(_status)
3048 _status = msg.serializeFrom(port);
3051 static_cast<FwAssertArgType>(_status)
3054 _status = msg.serializeFrom(opCode);
3057 static_cast<FwAssertArgType>(_status)
3060 _status = msg.serializeFrom(cmdSeq);
3063 static_cast<FwAssertArgType>(_status)
3066 _status = msg.serializeFrom(args);
3069 static_cast<FwAssertArgType>(_status)
3078 static_cast<FwAssertArgType>(qStatus)
3094 ComponentIpcSerializableBuffer msg;
3098 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_LOAD));
3101 static_cast<FwAssertArgType>(_status)
3107 _status = msg.serializeFrom(port);
3110 static_cast<FwAssertArgType>(_status)
3113 _status = msg.serializeFrom(opCode);
3116 static_cast<FwAssertArgType>(_status)
3119 _status = msg.serializeFrom(cmdSeq);
3122 static_cast<FwAssertArgType>(_status)
3125 _status = msg.serializeFrom(args);
3128 static_cast<FwAssertArgType>(_status)
3137 static_cast<FwAssertArgType>(qStatus)
3153 ComponentIpcSerializableBuffer msg;
3157 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_INVOKE));
3160 static_cast<FwAssertArgType>(_status)
3166 _status = msg.serializeFrom(port);
3169 static_cast<FwAssertArgType>(_status)
3172 _status = msg.serializeFrom(opCode);
3175 static_cast<FwAssertArgType>(_status)
3178 _status = msg.serializeFrom(cmdSeq);
3181 static_cast<FwAssertArgType>(_status)
3184 _status = msg.serializeFrom(args);
3187 static_cast<FwAssertArgType>(_status)
3196 static_cast<FwAssertArgType>(qStatus)
3212 ComponentIpcSerializableBuffer msg;
3216 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_WAIT));
3219 static_cast<FwAssertArgType>(_status)
3225 _status = msg.serializeFrom(port);
3228 static_cast<FwAssertArgType>(_status)
3231 _status = msg.serializeFrom(opCode);
3234 static_cast<FwAssertArgType>(_status)
3237 _status = msg.serializeFrom(cmdSeq);
3240 static_cast<FwAssertArgType>(_status)
3243 _status = msg.serializeFrom(args);
3246 static_cast<FwAssertArgType>(_status)
3255 static_cast<FwAssertArgType>(qStatus)
3266 #if FW_CMD_CHECK_RESIDUAL 3271 this->cmdResponseOut_out(
3297 ComponentIpcSerializableBuffer msg;
3301 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_PAUSE));
3304 static_cast<FwAssertArgType>(_status)
3310 _status = msg.serializeFrom(port);
3313 static_cast<FwAssertArgType>(_status)
3316 _status = msg.serializeFrom(opCode);
3319 static_cast<FwAssertArgType>(_status)
3322 _status = msg.serializeFrom(cmdSeq);
3325 static_cast<FwAssertArgType>(_status)
3328 _status = msg.serializeFrom(args);
3331 static_cast<FwAssertArgType>(_status)
3340 static_cast<FwAssertArgType>(qStatus)
3356 ComponentIpcSerializableBuffer msg;
3360 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_CONTINUE));
3363 static_cast<FwAssertArgType>(_status)
3369 _status = msg.serializeFrom(port);
3372 static_cast<FwAssertArgType>(_status)
3375 _status = msg.serializeFrom(opCode);
3378 static_cast<FwAssertArgType>(_status)
3381 _status = msg.serializeFrom(cmdSeq);
3384 static_cast<FwAssertArgType>(_status)
3387 _status = msg.serializeFrom(args);
3390 static_cast<FwAssertArgType>(_status)
3399 static_cast<FwAssertArgType>(qStatus)
3415 ComponentIpcSerializableBuffer msg;
3419 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_GLOBAL_SET_I32));
3422 static_cast<FwAssertArgType>(_status)
3428 _status = msg.serializeFrom(port);
3431 static_cast<FwAssertArgType>(_status)
3434 _status = msg.serializeFrom(opCode);
3437 static_cast<FwAssertArgType>(_status)
3440 _status = msg.serializeFrom(cmdSeq);
3443 static_cast<FwAssertArgType>(_status)
3446 _status = msg.serializeFrom(args);
3449 static_cast<FwAssertArgType>(_status)
3458 static_cast<FwAssertArgType>(qStatus)
3474 ComponentIpcSerializableBuffer msg;
3478 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_GLOBAL_SET_I64));
3481 static_cast<FwAssertArgType>(_status)
3487 _status = msg.serializeFrom(port);
3490 static_cast<FwAssertArgType>(_status)
3493 _status = msg.serializeFrom(opCode);
3496 static_cast<FwAssertArgType>(_status)
3499 _status = msg.serializeFrom(cmdSeq);
3502 static_cast<FwAssertArgType>(_status)
3505 _status = msg.serializeFrom(args);
3508 static_cast<FwAssertArgType>(_status)
3517 static_cast<FwAssertArgType>(qStatus)
3533 ComponentIpcSerializableBuffer msg;
3537 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_GLOBAL_SET_F32));
3540 static_cast<FwAssertArgType>(_status)
3546 _status = msg.serializeFrom(port);
3549 static_cast<FwAssertArgType>(_status)
3552 _status = msg.serializeFrom(opCode);
3555 static_cast<FwAssertArgType>(_status)
3558 _status = msg.serializeFrom(cmdSeq);
3561 static_cast<FwAssertArgType>(_status)
3564 _status = msg.serializeFrom(args);
3567 static_cast<FwAssertArgType>(_status)
3576 static_cast<FwAssertArgType>(qStatus)
3592 ComponentIpcSerializableBuffer msg;
3596 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_GLOBAL_SET_F64));
3599 static_cast<FwAssertArgType>(_status)
3605 _status = msg.serializeFrom(port);
3608 static_cast<FwAssertArgType>(_status)
3611 _status = msg.serializeFrom(opCode);
3614 static_cast<FwAssertArgType>(_status)
3617 _status = msg.serializeFrom(cmdSeq);
3620 static_cast<FwAssertArgType>(_status)
3623 _status = msg.serializeFrom(args);
3626 static_cast<FwAssertArgType>(_status)
3635 static_cast<FwAssertArgType>(qStatus)
3651 ComponentIpcSerializableBuffer msg;
3655 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_GLOBAL_GET));
3658 static_cast<FwAssertArgType>(_status)
3664 _status = msg.serializeFrom(port);
3667 static_cast<FwAssertArgType>(_status)
3670 _status = msg.serializeFrom(opCode);
3673 static_cast<FwAssertArgType>(_status)
3676 _status = msg.serializeFrom(cmdSeq);
3679 static_cast<FwAssertArgType>(_status)
3682 _status = msg.serializeFrom(args);
3685 static_cast<FwAssertArgType>(_status)
3694 static_cast<FwAssertArgType>(qStatus)
3837 this->timeCaller_out(0, _logTime);
3847 #if FW_AMPCS_COMPATIBLE 3852 static_cast<FwAssertArgType>(_status)
3856 #if FW_AMPCS_COMPATIBLE 3859 static_cast<U8>(
sizeof(U16))
3863 static_cast<FwAssertArgType>(_status)
3869 static_cast<FwAssertArgType>(_status)
3882 #if FW_ENABLE_TEXT_LOGGING 3883 if (this->isConnected_logTextOut_OutputPort(0)) {
3884 #if FW_OBJECT_NAMES == 1 3885 const char* _formatString =
3886 "(%s) %s: Successfully allocated store with %" PRIu16
" modules";
3888 const char* _formatString =
3889 "%s: Successfully allocated store with %" PRIu16
" modules";
3893 (void) _logString.
format(
3896 this->m_objName.toChar(),
3898 "StoreAllocationSucceeded ",
3902 this->logTextOut_out(
3919 this->timeCaller_out(0, _logTime);
3928 #if FW_AMPCS_COMPATIBLE 3934 static_cast<FwAssertArgType>(_status)
3948 #if FW_ENABLE_TEXT_LOGGING 3949 if (this->isConnected_logTextOut_OutputPort(0)) {
3950 #if FW_OBJECT_NAMES == 1 3951 const char* _formatString =
3952 "(%s) %s: Cannot invoke a module when no module is loaded";
3954 const char* _formatString =
3955 "%s: Cannot invoke a module when no module is loaded";
3959 (void) _logString.
format(
3962 this->m_objName.toChar(),
3964 "ControllerCannotInvoke " 3967 this->logTextOut_out(
3987 this->timeCaller_out(0, _logTime);
3997 #if FW_AMPCS_COMPATIBLE 4002 static_cast<FwAssertArgType>(_status)
4006 #if FW_AMPCS_COMPATIBLE 4013 static_cast<FwAssertArgType>(_status)
4019 static_cast<FwAssertArgType>(_status)
4022 #if FW_AMPCS_COMPATIBLE 4029 static_cast<FwAssertArgType>(_status)
4035 static_cast<FwAssertArgType>(_status)
4048 #if FW_ENABLE_TEXT_LOGGING 4049 if (this->isConnected_logTextOut_OutputPort(0)) {
4050 #if FW_OBJECT_NAMES == 1 4051 const char* _formatString =
4052 "(%s) %s: Controller cannot process signal %s in state %s";
4054 const char* _formatString =
4055 "%s: Controller cannot process signal %s in state %s";
4059 signalSource.toString(signalSourceStr);
4061 state.toString(stateStr);
4064 (void) _logString.
format(
4067 this->m_objName.toChar(),
4070 signalSourceStr.
toChar(),
4074 this->logTextOut_out(
4091 this->timeCaller_out(0, _logTime);
4101 #if FW_AMPCS_COMPATIBLE 4106 static_cast<FwAssertArgType>(_status)
4116 static_cast<FwAssertArgType>(_status)
4129 #if FW_ENABLE_TEXT_LOGGING 4130 if (this->isConnected_logTextOut_OutputPort(0)) {
4131 #if FW_OBJECT_NAMES == 1 4132 const char* _formatString =
4133 "(%s) %s: Module with name %s is not loaded into the store";
4135 const char* _formatString =
4136 "%s: Module with name %s is not loaded into the store";
4140 (void) _logString.
format(
4143 this->m_objName.toChar(),
4149 this->logTextOut_out(
4169 this->timeCaller_out(0, _logTime);
4179 #if FW_AMPCS_COMPATIBLE 4184 static_cast<FwAssertArgType>(_status)
4188 #if FW_AMPCS_COMPATIBLE 4195 static_cast<FwAssertArgType>(_status)
4201 static_cast<FwAssertArgType>(_status)
4204 #if FW_AMPCS_COMPATIBLE 4207 static_cast<U8>(
sizeof(U64))
4211 static_cast<FwAssertArgType>(_status)
4217 static_cast<FwAssertArgType>(_status)
4230 #if FW_ENABLE_TEXT_LOGGING 4231 if (this->isConnected_logTextOut_OutputPort(0)) {
4232 #if FW_OBJECT_NAMES == 1 4233 const char* _formatString =
4234 "(%s) %s: Guest memory.grow rejected: %s (requested %" PRIu64
" bytes)";
4236 const char* _formatString =
4237 "%s: Guest memory.grow rejected: %s (requested %" PRIu64
" bytes)";
4241 reason.toString(reasonStr);
4244 (void) _logString.
format(
4247 this->m_objName.toChar(),
4249 "MemoryGrowRejected ",
4254 this->logTextOut_out(
4275 this->timeCaller_out(0, _logTime);
4285 #if FW_AMPCS_COMPATIBLE 4290 static_cast<FwAssertArgType>(_status)
4300 static_cast<FwAssertArgType>(_status)
4309 static_cast<FwAssertArgType>(_status)
4312 #if FW_AMPCS_COMPATIBLE 4319 static_cast<FwAssertArgType>(_status)
4325 static_cast<FwAssertArgType>(_status)
4338 #if FW_ENABLE_TEXT_LOGGING 4339 if (this->isConnected_logTextOut_OutputPort(0)) {
4340 #if FW_OBJECT_NAMES == 1 4341 const char* _formatString =
4342 "(%s) %s: Failed to set global value for module %s global name %s: %s";
4344 const char* _formatString =
4345 "%s: Failed to set global value for module %s global name %s: %s";
4349 reason.toString(reasonStr);
4352 (void) _logString.
format(
4355 this->m_objName.toChar(),
4363 this->logTextOut_out(
4384 this->timeCaller_out(0, _logTime);
4394 #if FW_AMPCS_COMPATIBLE 4399 static_cast<FwAssertArgType>(_status)
4409 static_cast<FwAssertArgType>(_status)
4418 static_cast<FwAssertArgType>(_status)
4421 #if FW_AMPCS_COMPATIBLE 4428 static_cast<FwAssertArgType>(_status)
4434 static_cast<FwAssertArgType>(_status)
4447 #if FW_ENABLE_TEXT_LOGGING 4448 if (this->isConnected_logTextOut_OutputPort(0)) {
4449 #if FW_OBJECT_NAMES == 1 4450 const char* _formatString =
4451 "(%s) %s: Failed to get global value for module %s global name %s: %s";
4453 const char* _formatString =
4454 "%s: Failed to get global value for module %s global name %s: %s";
4458 reason.toString(reasonStr);
4461 (void) _logString.
format(
4464 this->m_objName.toChar(),
4472 this->logTextOut_out(
4493 this->timeCaller_out(0, _logTime);
4503 #if FW_AMPCS_COMPATIBLE 4508 static_cast<FwAssertArgType>(_status)
4518 static_cast<FwAssertArgType>(_status)
4527 static_cast<FwAssertArgType>(_status)
4530 #if FW_AMPCS_COMPATIBLE 4533 static_cast<U8>(
sizeof(I32))
4537 static_cast<FwAssertArgType>(_status)
4543 static_cast<FwAssertArgType>(_status)
4556 #if FW_ENABLE_TEXT_LOGGING 4557 if (this->isConnected_logTextOut_OutputPort(0)) {
4558 #if FW_OBJECT_NAMES == 1 4559 const char* _formatString =
4560 "(%s) %s: Global value module=%s name=%s value=%" PRIi32
"";
4562 const char* _formatString =
4563 "%s: Global value module=%s name=%s value=%" PRIi32
"";
4567 (void) _logString.
format(
4570 this->m_objName.toChar(),
4578 this->logTextOut_out(
4599 this->timeCaller_out(0, _logTime);
4609 #if FW_AMPCS_COMPATIBLE 4614 static_cast<FwAssertArgType>(_status)
4624 static_cast<FwAssertArgType>(_status)
4633 static_cast<FwAssertArgType>(_status)
4636 #if FW_AMPCS_COMPATIBLE 4639 static_cast<U8>(
sizeof(I64))
4643 static_cast<FwAssertArgType>(_status)
4649 static_cast<FwAssertArgType>(_status)
4662 #if FW_ENABLE_TEXT_LOGGING 4663 if (this->isConnected_logTextOut_OutputPort(0)) {
4664 #if FW_OBJECT_NAMES == 1 4665 const char* _formatString =
4666 "(%s) %s: Global value module=%s name=%s value=%" PRIi64
"";
4668 const char* _formatString =
4669 "%s: Global value module=%s name=%s value=%" PRIi64
"";
4673 (void) _logString.
format(
4676 this->m_objName.toChar(),
4684 this->logTextOut_out(
4705 this->timeCaller_out(0, _logTime);
4715 #if FW_AMPCS_COMPATIBLE 4720 static_cast<FwAssertArgType>(_status)
4730 static_cast<FwAssertArgType>(_status)
4739 static_cast<FwAssertArgType>(_status)
4742 #if FW_AMPCS_COMPATIBLE 4745 static_cast<U8>(
sizeof(
F32))
4749 static_cast<FwAssertArgType>(_status)
4755 static_cast<FwAssertArgType>(_status)
4768 #if FW_ENABLE_TEXT_LOGGING 4769 if (this->isConnected_logTextOut_OutputPort(0)) {
4770 #if FW_OBJECT_NAMES == 1 4771 const char* _formatString =
4772 "(%s) %s: Global value module=%s name=%s value=%f";
4774 const char* _formatString =
4775 "%s: Global value module=%s name=%s value=%f";
4779 (void) _logString.
format(
4782 this->m_objName.toChar(),
4787 static_cast<F64>(value)
4790 this->logTextOut_out(
4811 this->timeCaller_out(0, _logTime);
4821 #if FW_AMPCS_COMPATIBLE 4826 static_cast<FwAssertArgType>(_status)
4836 static_cast<FwAssertArgType>(_status)
4845 static_cast<FwAssertArgType>(_status)
4848 #if FW_AMPCS_COMPATIBLE 4851 static_cast<U8>(
sizeof(
F64))
4855 static_cast<FwAssertArgType>(_status)
4861 static_cast<FwAssertArgType>(_status)
4874 #if FW_ENABLE_TEXT_LOGGING 4875 if (this->isConnected_logTextOut_OutputPort(0)) {
4876 #if FW_OBJECT_NAMES == 1 4877 const char* _formatString =
4878 "(%s) %s: Global value module=%s name=%s value=%f";
4880 const char* _formatString =
4881 "%s: Global value module=%s name=%s value=%f";
4885 (void) _logString.
format(
4888 this->m_objName.toChar(),
4896 this->logTextOut_out(
4916 this->timeCaller_out(0, _logTime);
4926 #if FW_AMPCS_COMPATIBLE 4931 static_cast<FwAssertArgType>(_status)
4941 static_cast<FwAssertArgType>(_status)
4944 #if FW_AMPCS_COMPATIBLE 4947 static_cast<U8>(
sizeof(I32))
4951 static_cast<FwAssertArgType>(_status)
4957 static_cast<FwAssertArgType>(_status)
4970 #if FW_ENABLE_TEXT_LOGGING 4971 if (this->isConnected_logTextOut_OutputPort(0)) {
4972 #if FW_OBJECT_NAMES == 1 4973 const char* _formatString =
4974 "(%s) %s: Failed to open Wasm module file %s: status %" PRIi32
"";
4976 const char* _formatString =
4977 "%s: Failed to open Wasm module file %s: status %" PRIi32
"";
4981 (void) _logString.
format(
4984 this->m_objName.toChar(),
4991 this->logTextOut_out(
5011 this->timeCaller_out(0, _logTime);
5021 #if FW_AMPCS_COMPATIBLE 5026 static_cast<FwAssertArgType>(_status)
5036 static_cast<FwAssertArgType>(_status)
5045 static_cast<FwAssertArgType>(_status)
5058 #if FW_ENABLE_TEXT_LOGGING 5059 if (this->isConnected_logTextOut_OutputPort(0)) {
5060 #if FW_OBJECT_NAMES == 1 5061 const char* _formatString =
5062 "(%s) %s: Sequence file path too long: base dir %s + file %s";
5064 const char* _formatString =
5065 "%s: Sequence file path too long: base dir %s + file %s";
5069 (void) _logString.
format(
5072 this->m_objName.toChar(),
5074 "SequenceFilePathTooLong ",
5079 this->logTextOut_out(
5099 this->timeCaller_out(0, _logTime);
5109 #if FW_AMPCS_COMPATIBLE 5114 static_cast<FwAssertArgType>(_status)
5124 static_cast<FwAssertArgType>(_status)
5133 static_cast<FwAssertArgType>(_status)
5146 #if FW_ENABLE_TEXT_LOGGING 5147 if (this->isConnected_logTextOut_OutputPort(0)) {
5148 #if FW_OBJECT_NAMES == 1 5149 const char* _formatString =
5150 "(%s) %s: Sequence file %s is not contained within base dir %s (path traversal rejected)";
5152 const char* _formatString =
5153 "%s: Sequence file %s is not contained within base dir %s (path traversal rejected)";
5157 (void) _logString.
format(
5160 this->m_objName.toChar(),
5162 "SequenceFilePathNotContained ",
5167 this->logTextOut_out(
5184 this->timeCaller_out(0, _logTime);
5194 #if FW_AMPCS_COMPATIBLE 5199 static_cast<FwAssertArgType>(_status)
5203 #if FW_AMPCS_COMPATIBLE 5210 static_cast<FwAssertArgType>(_status)
5216 static_cast<FwAssertArgType>(_status)
5229 #if FW_ENABLE_TEXT_LOGGING 5230 if (this->isConnected_logTextOut_OutputPort(0)) {
5231 #if FW_OBJECT_NAMES == 1 5232 const char* _formatString =
5233 "(%s) %s: Module load failed: %s";
5235 const char* _formatString =
5236 "%s: Module load failed: %s";
5240 status.toString(statusStr);
5243 (void) _logString.
format(
5246 this->m_objName.toChar(),
5248 "ModuleLoadFailed ",
5252 this->logTextOut_out(
5269 this->timeCaller_out(0, _logTime);
5279 #if FW_AMPCS_COMPATIBLE 5284 static_cast<FwAssertArgType>(_status)
5288 #if FW_AMPCS_COMPATIBLE 5295 static_cast<FwAssertArgType>(_status)
5301 static_cast<FwAssertArgType>(_status)
5314 #if FW_ENABLE_TEXT_LOGGING 5315 if (this->isConnected_logTextOut_OutputPort(0)) {
5316 #if FW_OBJECT_NAMES == 1 5317 const char* _formatString =
5318 "(%s) %s: Module main invoke failed: %s";
5320 const char* _formatString =
5321 "%s: Module main invoke failed: %s";
5325 status.toString(statusStr);
5328 (void) _logString.
format(
5331 this->m_objName.toChar(),
5333 "ModuleMainInvokeFailed ",
5337 this->logTextOut_out(
5354 this->timeCaller_out(0, _logTime);
5364 #if FW_AMPCS_COMPATIBLE 5369 static_cast<FwAssertArgType>(_status)
5373 #if FW_AMPCS_COMPATIBLE 5380 static_cast<FwAssertArgType>(_status)
5386 static_cast<FwAssertArgType>(_status)
5399 #if FW_ENABLE_TEXT_LOGGING 5400 if (this->isConnected_logTextOut_OutputPort(0)) {
5401 #if FW_OBJECT_NAMES == 1 5402 const char* _formatString =
5403 "(%s) %s: Module start invoke failed: %s";
5405 const char* _formatString =
5406 "%s: Module start invoke failed: %s";
5410 status.toString(statusStr);
5413 (void) _logString.
format(
5416 this->m_objName.toChar(),
5418 "ModuleStartInvokeFailed ",
5422 this->logTextOut_out(
5439 this->timeCaller_out(0, _logTime);
5448 #if FW_AMPCS_COMPATIBLE 5454 static_cast<FwAssertArgType>(_status)
5468 #if FW_ENABLE_TEXT_LOGGING 5469 if (this->isConnected_logTextOut_OutputPort(0)) {
5470 #if FW_OBJECT_NAMES == 1 5471 const char* _formatString =
5472 "(%s) %s: Too many commands blocking on sequencer finish";
5474 const char* _formatString =
5475 "%s: Too many commands blocking on sequencer finish";
5479 (void) _logString.
format(
5482 this->m_objName.toChar(),
5484 "TooManyBlockingCommands " 5487 this->logTextOut_out(
5508 this->timeCaller_out(0, _logTime);
5518 #if FW_AMPCS_COMPATIBLE 5523 static_cast<FwAssertArgType>(_status)
5527 #if FW_AMPCS_COMPATIBLE 5534 static_cast<FwAssertArgType>(_status)
5540 static_cast<FwAssertArgType>(_status)
5543 #if FW_AMPCS_COMPATIBLE 5546 static_cast<U8>(
sizeof(U32))
5550 static_cast<FwAssertArgType>(_status)
5556 static_cast<FwAssertArgType>(_status)
5559 #if FW_AMPCS_COMPATIBLE 5562 static_cast<U8>(
sizeof(U32))
5566 static_cast<FwAssertArgType>(_status)
5572 static_cast<FwAssertArgType>(_status)
5585 #if FW_ENABLE_TEXT_LOGGING 5586 if (this->isConnected_logTextOut_OutputPort(0)) {
5587 #if FW_OBJECT_NAMES == 1 5588 const char* _formatString =
5589 "(%s) %s: Host function %s buffer payload size %" PRIu32
" larger than host maximum size %" PRIu32
"";
5591 const char* _formatString =
5592 "%s: Host function %s buffer payload size %" PRIu32
" larger than host maximum size %" PRIu32
"";
5596 host_function.toString(host_functionStr);
5599 (void) _logString.
format(
5602 this->m_objName.toChar(),
5605 host_functionStr.
toChar(),
5610 this->logTextOut_out(
5631 this->timeCaller_out(0, _logTime);
5641 #if FW_AMPCS_COMPATIBLE 5646 static_cast<FwAssertArgType>(_status)
5650 #if FW_AMPCS_COMPATIBLE 5657 static_cast<FwAssertArgType>(_status)
5663 static_cast<FwAssertArgType>(_status)
5666 #if FW_AMPCS_COMPATIBLE 5669 static_cast<U8>(
sizeof(U32))
5673 static_cast<FwAssertArgType>(_status)
5679 static_cast<FwAssertArgType>(_status)
5682 #if FW_AMPCS_COMPATIBLE 5685 static_cast<U8>(
sizeof(U32))
5689 static_cast<FwAssertArgType>(_status)
5695 static_cast<FwAssertArgType>(_status)
5708 #if FW_ENABLE_TEXT_LOGGING 5709 if (this->isConnected_logTextOut_OutputPort(0)) {
5710 #if FW_OBJECT_NAMES == 1 5711 const char* _formatString =
5712 "(%s) %s: Host function %s buffer payload size %" PRIu32
" smaller than host value size %" PRIu32
"";
5714 const char* _formatString =
5715 "%s: Host function %s buffer payload size %" PRIu32
" smaller than host value size %" PRIu32
"";
5719 host_function.toString(host_functionStr);
5722 (void) _logString.
format(
5725 this->m_objName.toChar(),
5728 host_functionStr.
toChar(),
5733 this->logTextOut_out(
5753 this->timeCaller_out(0, _logTime);
5763 #if FW_AMPCS_COMPATIBLE 5768 static_cast<FwAssertArgType>(_status)
5772 #if FW_AMPCS_COMPATIBLE 5779 static_cast<FwAssertArgType>(_status)
5785 static_cast<FwAssertArgType>(_status)
5788 #if FW_AMPCS_COMPATIBLE 5795 static_cast<FwAssertArgType>(_status)
5801 static_cast<FwAssertArgType>(_status)
5814 #if FW_ENABLE_TEXT_LOGGING 5815 if (this->isConnected_logTextOut_OutputPort(0)) {
5816 #if FW_OBJECT_NAMES == 1 5817 const char* _formatString =
5818 "(%s) %s: Failed to read guest pointer in host function %s: %s";
5820 const char* _formatString =
5821 "%s: Failed to read guest pointer in host function %s: %s";
5825 host_function.toString(host_functionStr);
5827 code.toString(codeStr);
5830 (void) _logString.
format(
5833 this->m_objName.toChar(),
5835 "HostFunctionInvalidPointer ",
5836 host_functionStr.
toChar(),
5840 this->logTextOut_out(
5857 this->timeCaller_out(0, _logTime);
5867 #if FW_AMPCS_COMPATIBLE 5872 static_cast<FwAssertArgType>(_status)
5876 #if FW_AMPCS_COMPATIBLE 5879 static_cast<U8>(
sizeof(I32))
5883 static_cast<FwAssertArgType>(_status)
5889 static_cast<FwAssertArgType>(_status)
5902 #if FW_ENABLE_TEXT_LOGGING 5903 if (this->isConnected_logTextOut_OutputPort(0)) {
5904 #if FW_OBJECT_NAMES == 1 5905 const char* _formatString =
5906 "(%s) %s: Invalid blocking type value passed to serial_recv: %" PRIi32
"";
5908 const char* _formatString =
5909 "%s: Invalid blocking type value passed to serial_recv: %" PRIi32
"";
5913 (void) _logString.
format(
5916 this->m_objName.toChar(),
5918 "InvalidBlockingTypeValue ",
5922 this->logTextOut_out(
5943 this->timeCaller_out(0, _logTime);
5953 #if FW_AMPCS_COMPATIBLE 5958 static_cast<FwAssertArgType>(_status)
5962 #if FW_AMPCS_COMPATIBLE 5969 static_cast<FwAssertArgType>(_status)
5975 static_cast<FwAssertArgType>(_status)
5978 #if FW_AMPCS_COMPATIBLE 5981 static_cast<U8>(
sizeof(I32))
5985 static_cast<FwAssertArgType>(_status)
5991 static_cast<FwAssertArgType>(_status)
5994 #if FW_AMPCS_COMPATIBLE 5997 static_cast<U8>(
sizeof(U32))
6001 static_cast<FwAssertArgType>(_status)
6007 static_cast<FwAssertArgType>(_status)
6020 #if FW_ENABLE_TEXT_LOGGING 6021 if (this->isConnected_logTextOut_OutputPort(0)) {
6022 #if FW_OBJECT_NAMES == 1 6023 const char* _formatString =
6024 "(%s) %s: Host function %s requested invalid serial port index %" PRIi32
" (have %" PRIu32
" ports)";
6026 const char* _formatString =
6027 "%s: Host function %s requested invalid serial port index %" PRIi32
" (have %" PRIu32
" ports)";
6031 host_function.toString(host_functionStr);
6034 (void) _logString.
format(
6037 this->m_objName.toChar(),
6039 "HostFunctionInvalidPort ",
6040 host_functionStr.
toChar(),
6045 this->logTextOut_out(
6065 this->timeCaller_out(0, _logTime);
6075 #if FW_AMPCS_COMPATIBLE 6080 static_cast<FwAssertArgType>(_status)
6084 #if FW_AMPCS_COMPATIBLE 6091 static_cast<FwAssertArgType>(_status)
6097 static_cast<FwAssertArgType>(_status)
6100 #if FW_AMPCS_COMPATIBLE 6103 static_cast<U8>(
sizeof(I32))
6107 static_cast<FwAssertArgType>(_status)
6113 static_cast<FwAssertArgType>(_status)
6126 #if FW_ENABLE_TEXT_LOGGING 6127 if (this->isConnected_logTextOut_OutputPort(0)) {
6128 #if FW_OBJECT_NAMES == 1 6129 const char* _formatString =
6130 "(%s) %s: Host function %s failed to send on serial port: serialize status %" PRIi32
"";
6132 const char* _formatString =
6133 "%s: Host function %s failed to send on serial port: serialize status %" PRIi32
"";
6137 host_function.toString(host_functionStr);
6140 (void) _logString.
format(
6143 this->m_objName.toChar(),
6145 "SerialPortSendFailed ",
6146 host_functionStr.
toChar(),
6150 this->logTextOut_out(
6171 this->timeCaller_out(0, _logTime);
6181 #if FW_AMPCS_COMPATIBLE 6186 static_cast<FwAssertArgType>(_status)
6190 #if FW_AMPCS_COMPATIBLE 6193 static_cast<U8>(
sizeof(U32))
6197 static_cast<FwAssertArgType>(_status)
6203 static_cast<FwAssertArgType>(_status)
6206 #if FW_AMPCS_COMPATIBLE 6209 static_cast<U8>(
sizeof(U32))
6213 static_cast<FwAssertArgType>(_status)
6219 static_cast<FwAssertArgType>(_status)
6222 #if FW_AMPCS_COMPATIBLE 6225 static_cast<U8>(
sizeof(U32))
6229 static_cast<FwAssertArgType>(_status)
6235 static_cast<FwAssertArgType>(_status)
6248 #if FW_ENABLE_TEXT_LOGGING 6249 if (this->isConnected_logTextOut_OutputPort(0)) {
6250 #if FW_OBJECT_NAMES == 1 6251 const char* _formatString =
6252 "(%s) %s: Serial input port %" PRIu32
" dropped oversized frame of %" PRIu32
" bytes (queue max %" PRIu32
")";
6254 const char* _formatString =
6255 "%s: Serial input port %" PRIu32
" dropped oversized frame of %" PRIu32
" bytes (queue max %" PRIu32
")";
6259 (void) _logString.
format(
6262 this->m_objName.toChar(),
6264 "SerialInFrameTooLarge ",
6270 this->logTextOut_out(
6290 this->timeCaller_out(0, _logTime);
6300 #if FW_AMPCS_COMPATIBLE 6305 static_cast<FwAssertArgType>(_status)
6309 #if FW_AMPCS_COMPATIBLE 6312 static_cast<U8>(
sizeof(I32))
6316 static_cast<FwAssertArgType>(_status)
6322 static_cast<FwAssertArgType>(_status)
6331 static_cast<FwAssertArgType>(_status)
6344 #if FW_ENABLE_TEXT_LOGGING 6345 if (this->isConnected_logTextOut_OutputPort(0)) {
6346 #if FW_OBJECT_NAMES == 1 6347 const char* _formatString =
6348 "(%s) %s: Guest event at invalid/forbidden severity '%" PRIi32
"': %s";
6350 const char* _formatString =
6351 "%s: Guest event at invalid/forbidden severity '%" PRIi32
"': %s";
6355 (void) _logString.
format(
6358 this->m_objName.toChar(),
6360 "HostFunctionInvalidSeverity ",
6365 this->logTextOut_out(
6382 this->timeCaller_out(0, _logTime);
6392 #if FW_AMPCS_COMPATIBLE 6397 static_cast<FwAssertArgType>(_status)
6401 #if FW_AMPCS_COMPATIBLE 6408 static_cast<FwAssertArgType>(_status)
6414 static_cast<FwAssertArgType>(_status)
6427 #if FW_ENABLE_TEXT_LOGGING 6428 if (this->isConnected_logTextOut_OutputPort(0)) {
6429 #if FW_OBJECT_NAMES == 1 6430 const char* _formatString =
6431 "(%s) %s: Sequence at index %" PRIu8
" finished starting";
6433 const char* _formatString =
6434 "%s: Sequence at index %" PRIu8
" finished starting";
6438 (void) _logString.
format(
6441 this->m_objName.toChar(),
6443 "SequenceStarting ",
6447 this->logTextOut_out(
6464 this->timeCaller_out(0, _logTime);
6474 #if FW_AMPCS_COMPATIBLE 6479 static_cast<FwAssertArgType>(_status)
6483 #if FW_AMPCS_COMPATIBLE 6490 static_cast<FwAssertArgType>(_status)
6496 static_cast<FwAssertArgType>(_status)
6509 #if FW_ENABLE_TEXT_LOGGING 6510 if (this->isConnected_logTextOut_OutputPort(0)) {
6511 #if FW_OBJECT_NAMES == 1 6512 const char* _formatString =
6513 "(%s) %s: Sequence at index %" PRIu8
" finished successfully";
6515 const char* _formatString =
6516 "%s: Sequence at index %" PRIu8
" finished successfully";
6520 (void) _logString.
format(
6523 this->m_objName.toChar(),
6525 "SequenceSucceeded ",
6529 this->logTextOut_out(
6549 this->timeCaller_out(0, _logTime);
6559 #if FW_AMPCS_COMPATIBLE 6564 static_cast<FwAssertArgType>(_status)
6568 #if FW_AMPCS_COMPATIBLE 6575 static_cast<FwAssertArgType>(_status)
6581 static_cast<FwAssertArgType>(_status)
6584 #if FW_AMPCS_COMPATIBLE 6591 static_cast<FwAssertArgType>(_status)
6597 static_cast<FwAssertArgType>(_status)
6610 #if FW_ENABLE_TEXT_LOGGING 6611 if (this->isConnected_logTextOut_OutputPort(0)) {
6612 #if FW_OBJECT_NAMES == 1 6613 const char* _formatString =
6614 "(%s) %s: Sequence at index %" PRIu8
" was cancelled during %s";
6616 const char* _formatString =
6617 "%s: Sequence at index %" PRIu8
" was cancelled during %s";
6621 phase.toString(phaseStr);
6624 (void) _logString.
format(
6627 this->m_objName.toChar(),
6629 "SequenceCancelled ",
6634 this->logTextOut_out(
6655 this->timeCaller_out(0, _logTime);
6665 #if FW_AMPCS_COMPATIBLE 6670 static_cast<FwAssertArgType>(_status)
6674 #if FW_AMPCS_COMPATIBLE 6681 static_cast<FwAssertArgType>(_status)
6687 static_cast<FwAssertArgType>(_status)
6690 #if FW_AMPCS_COMPATIBLE 6697 static_cast<FwAssertArgType>(_status)
6703 static_cast<FwAssertArgType>(_status)
6706 #if FW_AMPCS_COMPATIBLE 6709 static_cast<U8>(
sizeof(I32))
6713 static_cast<FwAssertArgType>(_status)
6719 static_cast<FwAssertArgType>(_status)
6732 #if FW_ENABLE_TEXT_LOGGING 6733 if (this->isConnected_logTextOut_OutputPort(0)) {
6734 #if FW_OBJECT_NAMES == 1 6735 const char* _formatString =
6736 "(%s) %s: Sequence at index %" PRIu8
" exited during %s with non-zero code %" PRIi32
"";
6738 const char* _formatString =
6739 "%s: Sequence at index %" PRIu8
" exited during %s with non-zero code %" PRIi32
"";
6743 phase.toString(phaseStr);
6746 (void) _logString.
format(
6749 this->m_objName.toChar(),
6757 this->logTextOut_out(
6778 this->timeCaller_out(0, _logTime);
6788 #if FW_AMPCS_COMPATIBLE 6793 static_cast<FwAssertArgType>(_status)
6797 #if FW_AMPCS_COMPATIBLE 6804 static_cast<FwAssertArgType>(_status)
6810 static_cast<FwAssertArgType>(_status)
6813 #if FW_AMPCS_COMPATIBLE 6820 static_cast<FwAssertArgType>(_status)
6826 static_cast<FwAssertArgType>(_status)
6829 #if FW_AMPCS_COMPATIBLE 6832 static_cast<U8>(
sizeof(I32))
6836 static_cast<FwAssertArgType>(_status)
6842 static_cast<FwAssertArgType>(_status)
6855 #if FW_ENABLE_TEXT_LOGGING 6856 if (this->isConnected_logTextOut_OutputPort(0)) {
6857 #if FW_OBJECT_NAMES == 1 6858 const char* _formatString =
6859 "(%s) %s: Sequence at index %" PRIu8
" panicked during %s with code %" PRIi32
"";
6861 const char* _formatString =
6862 "%s: Sequence at index %" PRIu8
" panicked during %s with code %" PRIi32
"";
6866 phase.toString(phaseStr);
6869 (void) _logString.
format(
6872 this->m_objName.toChar(),
6880 this->logTextOut_out(
6901 this->timeCaller_out(0, _logTime);
6911 #if FW_AMPCS_COMPATIBLE 6916 static_cast<FwAssertArgType>(_status)
6920 #if FW_AMPCS_COMPATIBLE 6927 static_cast<FwAssertArgType>(_status)
6933 static_cast<FwAssertArgType>(_status)
6936 #if FW_AMPCS_COMPATIBLE 6943 static_cast<FwAssertArgType>(_status)
6949 static_cast<FwAssertArgType>(_status)
6952 #if FW_AMPCS_COMPATIBLE 6959 static_cast<FwAssertArgType>(_status)
6965 static_cast<FwAssertArgType>(_status)
6978 #if FW_ENABLE_TEXT_LOGGING 6979 if (this->isConnected_logTextOut_OutputPort(0)) {
6980 #if FW_OBJECT_NAMES == 1 6981 const char* _formatString =
6982 "(%s) %s: Sequence at index %" PRIu8
" trapped during %s: %s";
6984 const char* _formatString =
6985 "%s: Sequence at index %" PRIu8
" trapped during %s: %s";
6989 phase.toString(phaseStr);
6991 reason.toString(reasonStr);
6994 (void) _logString.
format(
6997 this->m_objName.toChar(),
7005 this->logTextOut_out(
7027 this->timeCaller_out(0, _logTime);
7037 #if FW_AMPCS_COMPATIBLE 7042 static_cast<FwAssertArgType>(_status)
7046 #if FW_AMPCS_COMPATIBLE 7053 static_cast<FwAssertArgType>(_status)
7059 static_cast<FwAssertArgType>(_status)
7062 #if FW_AMPCS_COMPATIBLE 7069 static_cast<FwAssertArgType>(_status)
7075 static_cast<FwAssertArgType>(_status)
7078 #if FW_AMPCS_COMPATIBLE 7085 static_cast<FwAssertArgType>(_status)
7091 static_cast<FwAssertArgType>(_status)
7094 #if FW_AMPCS_COMPATIBLE 7101 static_cast<FwAssertArgType>(_status)
7107 static_cast<FwAssertArgType>(_status)
7120 #if FW_ENABLE_TEXT_LOGGING 7121 if (this->isConnected_logTextOut_OutputPort(0)) {
7122 #if FW_OBJECT_NAMES == 1 7123 const char* _formatString =
7124 "(%s) %s: Sequence at index %" PRIu8
" failed during %s: %s while awaiting host function %s";
7126 const char* _formatString =
7127 "%s: Sequence at index %" PRIu8
" failed during %s: %s while awaiting host function %s";
7131 phase.toString(phaseStr);
7133 reason.toString(reasonStr);
7135 hostFunction.toString(hostFunctionStr);
7138 (void) _logString.
format(
7141 this->m_objName.toChar(),
7143 "SequenceHostFailure ",
7150 this->logTextOut_out(
7167 this->timeCaller_out(0, _logTime);
7176 #if FW_AMPCS_COMPATIBLE 7182 static_cast<FwAssertArgType>(_status)
7196 #if FW_ENABLE_TEXT_LOGGING 7197 if (this->isConnected_logTextOut_OutputPort(0)) {
7198 #if FW_OBJECT_NAMES == 1 7199 const char* _formatString =
7200 "(%s) %s: Sequence execution paused";
7202 const char* _formatString =
7203 "%s: Sequence execution paused";
7207 (void) _logString.
format(
7210 this->m_objName.toChar(),
7215 this->logTextOut_out(
7232 this->timeCaller_out(0, _logTime);
7241 #if FW_AMPCS_COMPATIBLE 7247 static_cast<FwAssertArgType>(_status)
7261 #if FW_ENABLE_TEXT_LOGGING 7262 if (this->isConnected_logTextOut_OutputPort(0)) {
7263 #if FW_OBJECT_NAMES == 1 7264 const char* _formatString =
7265 "(%s) %s: Sequence cannot continue when interpreter is not running";
7267 const char* _formatString =
7268 "%s: Sequence cannot continue when interpreter is not running";
7272 (void) _logString.
format(
7275 this->m_objName.toChar(),
7277 "SequenceNotRunning " 7280 this->logTextOut_out(
7300 this->timeCaller_out(0, _logTime);
7310 #if FW_AMPCS_COMPATIBLE 7315 static_cast<FwAssertArgType>(_status)
7319 #if FW_AMPCS_COMPATIBLE 7326 static_cast<FwAssertArgType>(_status)
7332 static_cast<FwAssertArgType>(_status)
7335 #if FW_AMPCS_COMPATIBLE 7338 static_cast<U8>(
sizeof(U64))
7342 static_cast<FwAssertArgType>(_status)
7348 static_cast<FwAssertArgType>(_status)
7361 #if FW_ENABLE_TEXT_LOGGING 7362 if (this->isConnected_logTextOut_OutputPort(0)) {
7363 #if FW_OBJECT_NAMES == 1 7364 const char* _formatString =
7365 "(%s) %s: Host function %s requested a sleep of %" PRIu64
" us that overflows the host timer";
7367 const char* _formatString =
7368 "%s: Host function %s requested a sleep of %" PRIu64
" us that overflows the host timer";
7372 host_function.toString(host_functionStr);
7375 (void) _logString.
format(
7378 this->m_objName.toChar(),
7380 "SleepDurationTooLarge ",
7381 host_functionStr.
toChar(),
7385 this->logTextOut_out(
7405 this->timeCaller_out(0, _logTime);
7415 #if FW_AMPCS_COMPATIBLE 7420 static_cast<FwAssertArgType>(_status)
7424 #if FW_AMPCS_COMPATIBLE 7431 static_cast<FwAssertArgType>(_status)
7437 static_cast<FwAssertArgType>(_status)
7440 #if FW_AMPCS_COMPATIBLE 7443 static_cast<U8>(
sizeof(I64))
7447 static_cast<FwAssertArgType>(_status)
7453 static_cast<FwAssertArgType>(_status)
7466 #if FW_ENABLE_TEXT_LOGGING 7467 if (this->isConnected_logTextOut_OutputPort(0)) {
7468 #if FW_OBJECT_NAMES == 1 7469 const char* _formatString =
7470 "(%s) %s: Host function %s requested id %" PRIi64
" outside representable id range";
7472 const char* _formatString =
7473 "%s: Host function %s requested id %" PRIi64
" outside representable id range";
7477 host_function.toString(host_functionStr);
7480 (void) _logString.
format(
7483 this->m_objName.toChar(),
7485 "HostFunctionInvalidId ",
7486 host_functionStr.
toChar(),
7490 this->logTextOut_out(
7506 U16 currentSequenceIdx
7512 this->timeCaller_out(0, _logTime);
7522 #if FW_AMPCS_COMPATIBLE 7527 static_cast<FwAssertArgType>(_status)
7531 #if FW_AMPCS_COMPATIBLE 7538 static_cast<FwAssertArgType>(_status)
7544 static_cast<FwAssertArgType>(_status)
7547 #if FW_AMPCS_COMPATIBLE 7554 static_cast<FwAssertArgType>(_status)
7560 static_cast<FwAssertArgType>(_status)
7563 #if FW_AMPCS_COMPATIBLE 7566 static_cast<U8>(
sizeof(U16))
7570 static_cast<FwAssertArgType>(_status)
7576 static_cast<FwAssertArgType>(_status)
7579 #if FW_AMPCS_COMPATIBLE 7582 static_cast<U8>(
sizeof(U16))
7586 static_cast<FwAssertArgType>(_status)
7592 static_cast<FwAssertArgType>(_status)
7605 #if FW_ENABLE_TEXT_LOGGING 7606 if (this->isConnected_logTextOut_OutputPort(0)) {
7607 #if FW_OBJECT_NAMES == 1 7608 const char* _formatString =
7609 "(%s) %s: Command response (opcode %" PRIu32
", response %s) was from a previous sequence (old idx %" PRIu16
", current idx %" PRIu16
")";
7611 const char* _formatString =
7612 "%s: Command response (opcode %" PRIu32
", response %s) was from a previous sequence (old idx %" PRIu16
", current idx %" PRIu16
")";
7616 response.toString(responseStr);
7619 (void) _logString.
format(
7622 this->m_objName.toChar(),
7624 "CmdResponseFromOldSequence ",
7631 this->logTextOut_out(
7653 this->timeCaller_out(0, _logTime);
7663 #if FW_AMPCS_COMPATIBLE 7668 static_cast<FwAssertArgType>(_status)
7672 #if FW_AMPCS_COMPATIBLE 7679 static_cast<FwAssertArgType>(_status)
7685 static_cast<FwAssertArgType>(_status)
7688 #if FW_AMPCS_COMPATIBLE 7695 static_cast<FwAssertArgType>(_status)
7701 static_cast<FwAssertArgType>(_status)
7704 #if FW_AMPCS_COMPATIBLE 7707 static_cast<U8>(
sizeof(U16))
7711 static_cast<FwAssertArgType>(_status)
7717 static_cast<FwAssertArgType>(_status)
7720 #if FW_AMPCS_COMPATIBLE 7723 static_cast<U8>(
sizeof(U16))
7727 static_cast<FwAssertArgType>(_status)
7733 static_cast<FwAssertArgType>(_status)
7746 #if FW_ENABLE_TEXT_LOGGING 7747 if (this->isConnected_logTextOut_OutputPort(0)) {
7748 #if FW_OBJECT_NAMES == 1 7749 const char* _formatString =
7750 "(%s) %s: Command response (opcode %" PRIu32
", response %s) was for a different command instance (actual idx %" PRIu16
", expected %" PRIu16
")";
7752 const char* _formatString =
7753 "%s: Command response (opcode %" PRIu32
", response %s) was for a different command instance (actual idx %" PRIu16
", expected %" PRIu16
")";
7757 response.toString(responseStr);
7760 (void) _logString.
format(
7763 this->m_objName.toChar(),
7765 "WrongCmdResponseIndex ",
7772 this->logTextOut_out(
7792 this->timeCaller_out(0, _logTime);
7802 #if FW_AMPCS_COMPATIBLE 7807 static_cast<FwAssertArgType>(_status)
7811 #if FW_AMPCS_COMPATIBLE 7818 static_cast<FwAssertArgType>(_status)
7824 static_cast<FwAssertArgType>(_status)
7827 #if FW_AMPCS_COMPATIBLE 7834 static_cast<FwAssertArgType>(_status)
7840 static_cast<FwAssertArgType>(_status)
7853 #if FW_ENABLE_TEXT_LOGGING 7854 if (this->isConnected_logTextOut_OutputPort(0)) {
7855 #if FW_OBJECT_NAMES == 1 7856 const char* _formatString =
7857 "(%s) %s: Module at index %" PRIu8
" does not have a valid 'main' entrypoint: %s";
7859 const char* _formatString =
7860 "%s: Module at index %" PRIu8
" does not have a valid 'main' entrypoint: %s";
7864 status.toString(statusStr);
7867 (void) _logString.
format(
7870 this->m_objName.toChar(),
7872 "InvalidModuleEntrypoint ",
7877 this->logTextOut_out(
7894 this->timeCaller_out(0, _logTime);
7904 #if FW_AMPCS_COMPATIBLE 7909 static_cast<FwAssertArgType>(_status)
7919 static_cast<FwAssertArgType>(_status)
7932 #if FW_ENABLE_TEXT_LOGGING 7933 if (this->isConnected_logTextOut_OutputPort(0)) {
7934 #if FW_OBJECT_NAMES == 1 7935 const char* _formatString =
7938 const char* _formatString =
7943 (void) _logString.
format(
7946 this->m_objName.toChar(),
7952 this->logTextOut_out(
7969 this->timeCaller_out(0, _logTime);
7979 #if FW_AMPCS_COMPATIBLE 7984 static_cast<FwAssertArgType>(_status)
7994 static_cast<FwAssertArgType>(_status)
8007 #if FW_ENABLE_TEXT_LOGGING 8008 if (this->isConnected_logTextOut_OutputPort(0)) {
8009 #if FW_OBJECT_NAMES == 1 8010 const char* _formatString =
8013 const char* _formatString =
8018 (void) _logString.
format(
8021 this->m_objName.toChar(),
8027 this->logTextOut_out(
8044 this->timeCaller_out(0, _logTime);
8054 #if FW_AMPCS_COMPATIBLE 8059 static_cast<FwAssertArgType>(_status)
8069 static_cast<FwAssertArgType>(_status)
8082 #if FW_ENABLE_TEXT_LOGGING 8083 if (this->isConnected_logTextOut_OutputPort(0)) {
8084 #if FW_OBJECT_NAMES == 1 8085 const char* _formatString =
8088 const char* _formatString =
8093 (void) _logString.
format(
8096 this->m_objName.toChar(),
8102 this->logTextOut_out(
8119 this->timeCaller_out(0, _logTime);
8129 #if FW_AMPCS_COMPATIBLE 8134 static_cast<FwAssertArgType>(_status)
8144 static_cast<FwAssertArgType>(_status)
8157 #if FW_ENABLE_TEXT_LOGGING 8158 if (this->isConnected_logTextOut_OutputPort(0)) {
8159 #if FW_OBJECT_NAMES == 1 8160 const char* _formatString =
8163 const char* _formatString =
8168 (void) _logString.
format(
8171 this->m_objName.toChar(),
8177 this->logTextOut_out(
8194 this->timeCaller_out(0, _logTime);
8204 #if FW_AMPCS_COMPATIBLE 8209 static_cast<FwAssertArgType>(_status)
8219 static_cast<FwAssertArgType>(_status)
8232 #if FW_ENABLE_TEXT_LOGGING 8233 if (this->isConnected_logTextOut_OutputPort(0)) {
8234 #if FW_OBJECT_NAMES == 1 8235 const char* _formatString =
8238 const char* _formatString =
8243 (void) _logString.
format(
8246 this->m_objName.toChar(),
8252 this->logTextOut_out(
8279 this->timeCaller_out(0, _tlmTime);
8305 if (not this->m_first_update_ControllerState) {
8307 if (arg == this->m_last_ControllerState) {
8311 this->m_last_ControllerState = arg;
8315 this->m_first_update_ControllerState =
false;
8316 this->m_last_ControllerState = arg;
8324 static_cast<FwAssertArgType>(_stat)
8342 if (not this->m_first_update_InterpreterState) {
8344 if (arg == this->m_last_InterpreterState) {
8348 this->m_last_InterpreterState = arg;
8352 this->m_first_update_InterpreterState =
false;
8353 this->m_last_InterpreterState = arg;
8361 static_cast<FwAssertArgType>(_stat)
8379 if (not this->m_first_update_SequencesSucceeded) {
8381 if (arg == this->m_last_SequencesSucceeded) {
8385 this->m_last_SequencesSucceeded = arg;
8389 this->m_first_update_SequencesSucceeded =
false;
8390 this->m_last_SequencesSucceeded = arg;
8398 static_cast<FwAssertArgType>(_stat)
8416 if (not this->m_first_update_SequencesFailed) {
8418 if (arg == this->m_last_SequencesFailed) {
8422 this->m_last_SequencesFailed = arg;
8426 this->m_first_update_SequencesFailed =
false;
8427 this->m_last_SequencesFailed = arg;
8435 static_cast<FwAssertArgType>(_stat)
8453 if (not this->m_first_update_SequencesCancelled) {
8455 if (arg == this->m_last_SequencesCancelled) {
8459 this->m_last_SequencesCancelled = arg;
8463 this->m_first_update_SequencesCancelled =
false;
8464 this->m_last_SequencesCancelled = arg;
8472 static_cast<FwAssertArgType>(_stat)
8490 if (not this->m_first_update_CommandsDispatched) {
8492 if (arg == this->m_last_CommandsDispatched) {
8496 this->m_last_CommandsDispatched = arg;
8500 this->m_first_update_CommandsDispatched =
false;
8501 this->m_last_CommandsDispatched = arg;
8509 static_cast<FwAssertArgType>(_stat)
8527 if (not this->m_first_update_CommandsFailed) {
8529 if (arg == this->m_last_CommandsFailed) {
8533 this->m_last_CommandsFailed = arg;
8537 this->m_first_update_CommandsFailed =
false;
8538 this->m_last_CommandsFailed = arg;
8546 static_cast<FwAssertArgType>(_stat)
8564 if (not this->m_first_update_LastTrapReason) {
8566 if (arg == this->m_last_LastTrapReason) {
8570 this->m_last_LastTrapReason = arg;
8574 this->m_first_update_LastTrapReason =
false;
8575 this->m_last_LastTrapReason = arg;
8583 static_cast<FwAssertArgType>(_stat)
8601 if (not this->m_first_update_SeqName) {
8603 if (arg == this->m_last_SeqName) {
8607 this->m_last_SeqName = arg;
8611 this->m_first_update_SeqName =
false;
8612 this->m_last_SeqName = arg;
8623 static_cast<FwAssertArgType>(_stat)
8669 this->m_paramLock.
lock();
8670 valid = this->m_param_HOST_FUNCTION_TIMEOUT_SECS_valid;
8672 _local = this->m_HOST_FUNCTION_TIMEOUT_SECS;
8674 this->m_paramLock.
unlock();
8682 this->m_paramLock.
lock();
8683 valid = this->m_param_INSTRUCTION_FUEL_valid;
8685 _local = this->m_INSTRUCTION_FUEL;
8687 this->m_paramLock.
unlock();
8695 this->m_paramLock.
lock();
8696 valid = this->m_param_SEQ_BASE_DIR_valid;
8698 _local = this->m_SEQ_BASE_DIR;
8700 this->m_paramLock.
unlock();
8713 this->timeCaller_out(0, _time);
8731 this->m_guardedPortMutex.
lock();
8737 this->m_guardedPortMutex.
unLock();
8747 ComponentIpcSerializableBuffer _msg;
8757 static_cast<FwAssertArgType>(_msgStatus)
8767 static_cast<FwAssertArgType>(_deserStatus)
8770 MsgTypeEnum _msgType =
static_cast<MsgTypeEnum
>(_desMsg);
8772 if (_msgType == WASMSEQUENCER_COMPONENT_EXIT) {
8777 _deserStatus = _msg.deserializeTo(portNum);
8780 static_cast<FwAssertArgType>(_deserStatus)
8785 case CHECKTIMERS_SCHED: {
8788 _deserStatus = _msg.deserializeTo(context);
8791 static_cast<FwAssertArgType>(_deserStatus)
8803 case CMDRESPONSEIN_CMDRESPONSE: {
8806 _deserStatus = _msg.deserializeTo(opCode);
8809 static_cast<FwAssertArgType>(_deserStatus)
8814 _deserStatus = _msg.deserializeTo(cmdSeq);
8817 static_cast<FwAssertArgType>(_deserStatus)
8822 _deserStatus = _msg.deserializeTo(response);
8825 static_cast<FwAssertArgType>(_deserStatus)
8839 case SEQRUNIN_CMDSEQIN: {
8842 Fw::ExternalString filename(__fprime_ac_filename_buffer,
sizeof __fprime_ac_filename_buffer);
8843 _deserStatus = _msg.deserializeTo(filename);
8846 static_cast<FwAssertArgType>(_deserStatus)
8851 _deserStatus = _msg.deserializeTo(args);
8854 static_cast<FwAssertArgType>(_deserStatus)
8867 case WRITETELEMETRY_SCHED: {
8870 _deserStatus = _msg.deserializeTo(context);
8873 static_cast<FwAssertArgType>(_deserStatus)
8888 _deserStatus = _msg.deserializeTo(_opCode);
8891 static_cast<FwAssertArgType>(_deserStatus)
8896 _deserStatus = _msg.deserializeTo(_cmdSeq);
8899 static_cast<FwAssertArgType>(_deserStatus)
8904 _deserStatus = _msg.deserializeTo(args);
8907 static_cast<FwAssertArgType>(_deserStatus)
8945 #if FW_CMD_CHECK_RESIDUAL 8969 _deserStatus = _msg.deserializeTo(_opCode);
8972 static_cast<FwAssertArgType>(_deserStatus)
8977 _deserStatus = _msg.deserializeTo(_cmdSeq);
8980 static_cast<FwAssertArgType>(_deserStatus)
8985 _deserStatus = _msg.deserializeTo(args);
8988 static_cast<FwAssertArgType>(_deserStatus)
9026 #if FW_CMD_CHECK_RESIDUAL 9050 _deserStatus = _msg.deserializeTo(_opCode);
9053 static_cast<FwAssertArgType>(_deserStatus)
9058 _deserStatus = _msg.deserializeTo(_cmdSeq);
9061 static_cast<FwAssertArgType>(_deserStatus)
9066 _deserStatus = _msg.deserializeTo(args);
9069 static_cast<FwAssertArgType>(_deserStatus)
9107 #if FW_CMD_CHECK_RESIDUAL 9131 _deserStatus = _msg.deserializeTo(_opCode);
9134 static_cast<FwAssertArgType>(_deserStatus)
9139 _deserStatus = _msg.deserializeTo(_cmdSeq);
9142 static_cast<FwAssertArgType>(_deserStatus)
9147 _deserStatus = _msg.deserializeTo(args);
9150 static_cast<FwAssertArgType>(_deserStatus)
9158 #if FW_CMD_CHECK_RESIDUAL 9178 _deserStatus = _msg.deserializeTo(_opCode);
9181 static_cast<FwAssertArgType>(_deserStatus)
9186 _deserStatus = _msg.deserializeTo(_cmdSeq);
9189 static_cast<FwAssertArgType>(_deserStatus)
9194 _deserStatus = _msg.deserializeTo(args);
9197 static_cast<FwAssertArgType>(_deserStatus)
9205 #if FW_CMD_CHECK_RESIDUAL 9222 case CMD_CONTINUE: {
9225 _deserStatus = _msg.deserializeTo(_opCode);
9228 static_cast<FwAssertArgType>(_deserStatus)
9233 _deserStatus = _msg.deserializeTo(_cmdSeq);
9236 static_cast<FwAssertArgType>(_deserStatus)
9241 _deserStatus = _msg.deserializeTo(args);
9244 static_cast<FwAssertArgType>(_deserStatus)
9252 #if FW_CMD_CHECK_RESIDUAL 9269 case CMD_GLOBAL_SET_I32: {
9272 _deserStatus = _msg.deserializeTo(_opCode);
9275 static_cast<FwAssertArgType>(_deserStatus)
9280 _deserStatus = _msg.deserializeTo(_cmdSeq);
9283 static_cast<FwAssertArgType>(_deserStatus)
9288 _deserStatus = _msg.deserializeTo(args);
9291 static_cast<FwAssertArgType>(_deserStatus)
9344 #if FW_CMD_CHECK_RESIDUAL 9366 case CMD_GLOBAL_SET_I64: {
9369 _deserStatus = _msg.deserializeTo(_opCode);
9372 static_cast<FwAssertArgType>(_deserStatus)
9377 _deserStatus = _msg.deserializeTo(_cmdSeq);
9380 static_cast<FwAssertArgType>(_deserStatus)
9385 _deserStatus = _msg.deserializeTo(args);
9388 static_cast<FwAssertArgType>(_deserStatus)
9441 #if FW_CMD_CHECK_RESIDUAL 9463 case CMD_GLOBAL_SET_F32: {
9466 _deserStatus = _msg.deserializeTo(_opCode);
9469 static_cast<FwAssertArgType>(_deserStatus)
9474 _deserStatus = _msg.deserializeTo(_cmdSeq);
9477 static_cast<FwAssertArgType>(_deserStatus)
9482 _deserStatus = _msg.deserializeTo(args);
9485 static_cast<FwAssertArgType>(_deserStatus)
9538 #if FW_CMD_CHECK_RESIDUAL 9560 case CMD_GLOBAL_SET_F64: {
9563 _deserStatus = _msg.deserializeTo(_opCode);
9566 static_cast<FwAssertArgType>(_deserStatus)
9571 _deserStatus = _msg.deserializeTo(_cmdSeq);
9574 static_cast<FwAssertArgType>(_deserStatus)
9579 _deserStatus = _msg.deserializeTo(args);
9582 static_cast<FwAssertArgType>(_deserStatus)
9635 #if FW_CMD_CHECK_RESIDUAL 9657 case CMD_GLOBAL_GET: {
9660 _deserStatus = _msg.deserializeTo(_opCode);
9663 static_cast<FwAssertArgType>(_deserStatus)
9668 _deserStatus = _msg.deserializeTo(_cmdSeq);
9671 static_cast<FwAssertArgType>(_deserStatus)
9676 _deserStatus = _msg.deserializeTo(args);
9679 static_cast<FwAssertArgType>(_deserStatus)
9717 #if FW_CMD_CHECK_RESIDUAL 9739 case INTERNAL_STATE_MACHINE_SIGNAL:
9740 this->smDispatch(_msg);
9754 void WasmSequencerComponentBase ::
9765 compPtr->cmdIn_handlerBase(
9777 void WasmSequencerComponentBase ::
9786 compPtr->checkTimers_handlerBase(
9792 void WasmSequencerComponentBase ::
9793 m_p_cmdResponseIn_in(
9803 compPtr->cmdResponseIn_handlerBase(
9811 void WasmSequencerComponentBase ::
9819 compPtr->seqCancelIn_handlerBase(portNum);
9822 void WasmSequencerComponentBase ::
9832 compPtr->seqRunIn_handlerBase(
9839 void WasmSequencerComponentBase ::
9840 m_p_writeTelemetry_in(
9848 compPtr->writeTelemetry_handlerBase(
9858 #if FW_PORT_SERIALIZATION 9860 void WasmSequencerComponentBase ::
9869 compPtr->serialIn_handlerBase(
9877 #if !FW_DIRECT_PORT_CALLS 9883 void WasmSequencerComponentBase ::
9891 static_cast<FwAssertArgType>(portNum)
9895 this->m_cmdRegOut_OutputPort[portNum].isConnected(),
9896 static_cast<FwAssertArgType>(portNum)
9898 this->m_cmdRegOut_OutputPort[portNum].
invoke(
9903 void WasmSequencerComponentBase ::
9913 static_cast<FwAssertArgType>(portNum)
9917 this->m_cmdResponseOut_OutputPort[portNum].isConnected(),
9918 static_cast<FwAssertArgType>(portNum)
9920 this->m_cmdResponseOut_OutputPort[portNum].
invoke(
9927 void WasmSequencerComponentBase ::
9938 static_cast<FwAssertArgType>(portNum)
9942 this->m_logOut_OutputPort[portNum].isConnected(),
9943 static_cast<FwAssertArgType>(portNum)
9945 this->m_logOut_OutputPort[portNum].
invoke(
9953 #if FW_ENABLE_TEXT_LOGGING 9955 void WasmSequencerComponentBase ::
9965 (0 <= portNum) && (portNum < this->getNum_logTextOut_OutputPorts()),
9966 static_cast<FwAssertArgType>(portNum)
9970 this->m_logTextOut_OutputPort[portNum].isConnected(),
9971 static_cast<FwAssertArgType>(portNum)
9973 this->m_logTextOut_OutputPort[portNum].invoke(
9992 static_cast<FwAssertArgType>(portNum)
9996 this->m_prmGet_OutputPort[portNum].isConnected(),
9997 static_cast<FwAssertArgType>(portNum)
9999 return this->m_prmGet_OutputPort[portNum].
invoke(
10005 void WasmSequencerComponentBase ::
10014 static_cast<FwAssertArgType>(portNum)
10018 this->m_prmSet_OutputPort[portNum].isConnected(),
10019 static_cast<FwAssertArgType>(portNum)
10021 this->m_prmSet_OutputPort[portNum].
invoke(
10027 void WasmSequencerComponentBase ::
10035 static_cast<FwAssertArgType>(portNum)
10039 this->m_timeCaller_OutputPort[portNum].isConnected(),
10040 static_cast<FwAssertArgType>(portNum)
10042 this->m_timeCaller_OutputPort[portNum].
invoke(
10047 void WasmSequencerComponentBase ::
10057 static_cast<FwAssertArgType>(portNum)
10061 this->m_tlmOut_OutputPort[portNum].isConnected(),
10062 static_cast<FwAssertArgType>(portNum)
10064 this->m_tlmOut_OutputPort[portNum].
invoke(
10077 void WasmSequencerComponentBase ::
10087 status = buffer.
serializeFrom(static_cast<FwEnumStoreType>(INTERNAL_STATE_MACHINE_SIGNAL));
10091 status = buffer.
serializeFrom(static_cast<FwIndexType>(0));
10095 status = buffer.
serializeFrom(static_cast<FwEnumStoreType>(smId));
10099 status = buffer.
serializeFrom(static_cast<FwEnumStoreType>(signal));
10103 void WasmSequencerComponentBase ::
10112 static_cast<FwAssertArgType>(qStatus)
10116 void WasmSequencerComponentBase ::
10125 static_cast<FwAssertArgType>(qStatus)
10133 void WasmSequencerComponentBase ::
10139 WasmSequencerComponentBase::deserializeSmIdAndSignal(buffer, storedSmId, storedSignal);
10142 const SmId smId =
static_cast<SmId>(storedSmId);
10146 this->Svc_WasmSequencer_ControllerStateMachine_smDispatch(buffer, this->m_stateMachine_controller, signal);
10151 this->Svc_WasmSequencer_InterpreterStateMachine_smDispatch(buffer, this->m_stateMachine_interpreter, signal);
10155 FW_ASSERT(
false, static_cast<FwAssertArgType>(smId));
10160 void WasmSequencerComponentBase ::
10161 deserializeSmIdAndSignal(
10181 void WasmSequencerComponentBase ::
10182 Svc_WasmSequencer_ControllerStateMachine_smDispatch(
10184 Svc_WasmSequencer_ControllerStateMachine& sm,
10197 sm.sendSignal_run(value);
10208 sm.sendSignal_load(value);
10219 sm.sendSignal_invoke(value);
10230 sm.sendSignal_invoked(value);
10241 sm.sendSignal_invokeFailed(value);
10248 sm.sendSignal_cancel();
10259 sm.sendSignal_loadSucceeded(value);
10270 sm.sendSignal_loadFailed(value);
10281 sm.sendSignal_engineFinished(value);
10285 FW_ASSERT(
false, static_cast<FwAssertArgType>(signal));
10290 void WasmSequencerComponentBase ::
10291 Svc_WasmSequencer_InterpreterStateMachine_smDispatch(
10293 Svc_WasmSequencer_InterpreterStateMachine& sm,
10302 sm.sendSignal_cmd_CONTINUE();
10313 sm.sendSignal_cmdCancel(value);
10320 sm.sendSignal_cancel();
10327 sm.sendSignal_entered();
10338 sm.sendSignal_run(value);
10345 sm.sendSignal_checkTimers();
10352 sm.sendSignal_hostResume();
10363 sm.sendSignal_hostResumeI32(value);
10370 sm.sendSignal_hostResponseFailure();
10381 sm.sendSignal_hostResponseUnexpected(value);
10388 sm.sendSignal_hostResponseTimeIncomparable();
10395 sm.sendSignal_hostResponseTimeout();
10406 sm.sendSignal_serialInMessage(value);
10417 sm.sendSignal_interpreterFinished(value);
10428 sm.sendSignal_interpreterTrap(value);
10435 sm.sendSignal_interpreterOutOfFuel();
10442 sm.sendSignal_interpreterHostFunctionNeedsPause();
10446 FW_ASSERT(
false, static_cast<FwAssertArgType>(signal));
10465 this->m_paramLock.
lock();
10466 this->m_HOST_FUNCTION_TIMEOUT_SECS = _localVal;
10468 this->m_paramLock.
unlock();
10485 this->m_paramLock.
lock();
10486 this->m_INSTRUCTION_FUEL = _localVal;
10488 this->m_paramLock.
unlock();
10505 this->m_paramLock.
lock();
10506 this->m_SEQ_BASE_DIR = _localVal;
10508 this->m_paramLock.
unlock();
10520 paramSave_HOST_FUNCTION_TIMEOUT_SECS()
10529 this->m_paramLock.
lock();
10531 _stat = _paramBuffer.
serializeFrom(m_HOST_FUNCTION_TIMEOUT_SECS);
10533 this->m_paramLock.
unlock();
10548 paramSave_INSTRUCTION_FUEL()
10557 this->m_paramLock.
lock();
10561 this->m_paramLock.
unlock();
10576 paramSave_SEQ_BASE_DIR()
10585 this->m_paramLock.
lock();
10589 this->m_paramLock.
unlock();
void log_ACTIVITY_LO_LogActivityLo(const Fw::StringBase &msg) const
A WARNING_HI event emitted by the guest program.
Called on cancel port invocation.
Serialization/Deserialization operation was successful.
static constexpr FwIndexType getNum_serialIn_InputPorts()
void interpreter_sendSignal_hostResumeI32(I32 value)
Send signal hostResumeI32 to state machine interpreter.
void controller_sendSignal_loadFailed(const Svc::WasmSequencer_RequestContext &value)
Send signal loadFailed to state machine controller.
No sequence is running so we cannot continue from a pause.
void addCallPort(InputTimePort *callPort)
Register an input port.
Fw::ParamValid getParam_out(FwIndexType portNum, FwPrmIdType id, Fw::ParamBuffer &val) const
Invoke output port getParam.
void invoke(Fw::ComBuffer &data, U32 context) const
Invoke a port connection.
void init()
Initialization function.
static constexpr FwSizeType CAPACITY
void checkTimers_handlerBase(FwIndexType portNum, U32 context)
Handler base-class function for input port checkTimers.
void invoke(const Fw::StringBase &filename, const Svc::SeqArgs &args) const
Invoke a port connection.
A function has been invoked, run the interpreter to completion.
void log_WARNING_HI_HostFunctionInvalidId(const Svc::WasmSequencer_HostFunction &host_function, I64 id) const
void log_WARNING_HI_ModuleStartInvokeFailed(const Svc::WasmSequencer_Status &status) const
void cmdResponseIn_handlerBase(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)
Handler base-class function for input port cmdResponseIn.
void tlmWrite_SequencesSucceeded(U64 arg, Fw::Time _tlmTime=Fw::Time())
The size of the serial representation.
virtual void cmdResponseIn_handler(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)=0
Handler for input port cmdResponseIn.
Called on CANCEL cmd. Raised in LOADING, READY and RUNNING modes.
FwIdType FwOpcodeType
The type of a command opcode.
void log_WARNING_HI_TooManyBlockingCommands() const
virtual void parameterLoaded(FwPrmIdType id, Fw::ParamValid valid)
Called for each parameter when parameters are loaded.
void GLOBAL_SET_F32_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void log_WARNING_LO_CmdResponseFromOldSequence(FwOpcodeType opcode, const Fw::CmdResponse &response, U16 oldSequenceIdx, U16 currentSequenceIdx) const
void log_WARNING_HI_SequenceTrapped(Svc::WasmSequencer_ModuleIdx index, const Svc::WasmSequencer_SequencePhase &phase, const Svc::WasmSequencer_TrapReason &reason) const
static constexpr FwSizeType CAPACITY
#define FW_PARAM_OK(paramValid)
virtual void GLOBAL_SET_I64_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command GLOBAL_SET_I64.
FwIdType getIdBase() const
void log_WARNING_HI_InvalidBlockingTypeValue(I32 invalidValue) const
Log event InvalidBlockingTypeValue.
PlatformSizeType FwSizeType
Auto-generated base for WasmSequencer component.
Channel ID for SequencesFailed.
Status receive(U8 *destination, FwSizeType capacity, BlockingType blockType, FwSizeType &actualSize, FwQueuePriorityType &priority) override
receive a message from the queue through delegate
void set_timeCaller_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to timeCaller[portNum].
virtual void lock()
Lock the guarded mutex.
void WAIT_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void controller_sendSignal_engineFinished(const Svc::WasmSequencer_RequestContext &value)
Send signal engineFinished to state machine controller.
void log_ACTIVITY_LO_GlobalValueF32(const Fw::StringBase &module_name, const Fw::StringBase &globalName, F32 value) const
Log event GlobalValueF32.
The interpreter ran a program to completion.
void set_getTlmChan_OutputPort(FwIndexType portNum, Fw::InputTlmGetPort *port)
Connect port to getTlmChan[portNum].
Status
status returned from the queue send function
virtual void GLOBAL_GET_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &moduleName, const Fw::CmdStringArg &name)=0
void log_ACTIVITY_HI_LogActivityHi(const Fw::StringBase &msg) const
void tlmWrite_InterpreterState(const Svc::WasmSequencer_InterpreterStateMachine_State &arg, Fw::Time _tlmTime=Fw::Time())
called when an unexpected or incorrect host-function response comes in. only raised in the RUNNING st...
raised whenever the checkTimers port is called
Opcode to save parameter SEQ_BASE_DIR.
The interpreter aborted the sequence with a byte-code trap.
void init()
Initialization function.
Tracks the currently executing host function.
void log_WARNING_HI_SequenceFilePathNotContained(const Fw::StringBase &baseDir, const Fw::StringBase &fileName) const
StringTemplate< FW_FIXED_LENGTH_STRING_SIZE > String
Svc_WasmSequencer_InterpreterStateMachine(WasmSequencerComponentBase &component)
Constructor.
SerializeStatus deserializeTo(U8 &val, Endianness mode=Endianness::BIG) override
Deserialize an 8-bit unsigned integer value.
virtual void LOAD_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &fileName, const Fw::CmdStringArg &name)=0
A WARNING_LO event emitted by the guest program.
FwIdType FwPrmIdType
The type of a parameter identifier.
void CONTINUE_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void interpreter_sendSignal_entered()
Send signal entered to state machine interpreter.
void log_ACTIVITY_HI_SequencePaused() const
Channel ID for CommandsFailed.
An ACTIVITY_LO event emitted by the guest program.
void addCallPort(InputPrmSetPort *callPort)
Register an input port.
Fw::Times are not comparable during a sleep.
The size of the serial representation.
void addCallPort(InputTlmGetPort *callPort)
Register an input port.
bool isConnected_getTlmChan_OutputPort(FwIndexType portNum) const
static constexpr FwIndexType getNum_prmSet_OutputPorts()
virtual const CHAR * toChar() const =0
Convert to a C-style char*.
void interpreter_sendSignal_serialInMessage(const FwIndexType &value)
Send signal serialInMessage to state machine interpreter.
void seqCancelIn_handlerBase(FwIndexType portNum)
Handler base-class function for input port seqCancelIn.
void cmdResponse_out(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response)
Emit command response.
A guest host function supplied a buffer too small to hold the host value being returned.
void GLOBAL_SET_I32_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
The guest called fprime.panic.
static constexpr FwIndexType getNum_cmdOut_OutputPorts()
Signal to AWAITING_RESPONSE to resume the interpreter with no host function return value...
Signal emited inside the laod action when module load fails.
void set_seqDoneOut_OutputPort(FwIndexType portNum, Fw::InputCmdResponsePort *port)
Connect port to seqDoneOut[portNum].
void log_WARNING_HI_FileOpenError(const Fw::StringBase &fileName, I32 status) const
void init()
Initialization function.
void log_WARNING_LO_ControllerBusy(const Svc::WasmSequencer_SignalSource &signalSource, const Svc::WasmSequencer_ControllerStateMachine_State &state) const
static constexpr FwIndexType getNum_seqStartOut_OutputPorts()
Enum representing a command response.
No time base has been established (Required)
SerializeStatus serializeFrom(U8 val, Endianness mode=Endianness::BIG) override
Serialize an 8-bit unsigned integer value.
void addCallPort(InputCmdRegPort *callPort)
Register an input port.
Failed to invoke a module's start function.
FwSizeType paramGet_INSTRUCTION_FUEL(Fw::ParamValid &valid)
void regCommands()
Register commands with the Command Dispatcher.
bool isConnected_getParam_OutputPort(FwIndexType portNum) const
virtual SerializeStatus serializeFrom(U8 val, Endianness mode=Endianness::BIG)=0
Serialize an 8-bit unsigned integer value.
bool isConnected_tlmOut_OutputPort(FwIndexType portNum) const
virtual void PAUSE_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
A guest serial port host function requested a port index outside the configured range.
void init()
Initialization function.
void log_WARNING_LO_MemoryGrowRejected(const Svc::WasmSequencer_MemoryGrowFailReason &reason, U64 requestedSize) const
Os::Queue m_queue
queue object for active component
void log_WARNING_HI_HostFunctionInvalidPointer(const Svc::WasmSequencer_HostFunction &host_function, const Svc::WasmSequencer_Status &code) const
Log event HostFunctionInvalidPointer.
Software diagnostic events.
void addCallPort(InputTlmPort *callPort)
Register an input port.
void addCallPort(InputPrmGetPort *callPort)
Register an input port.
void init()
Object initializer.
void RUN_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
SerializeStatus
forward declaration for string
void controller_sendSignal_cancel()
Send signal cancel to state machine controller.
static constexpr FwIndexType getNum_getTlmChan_OutputPorts()
float F32
32-bit floating point
called on CONTINUE cmd. only raised in RUNNING.PAUSED state
Opcode to set parameter HOST_FUNCTION_TIMEOUT_SECS.
virtual SerializeStatus deserializeTo(U8 &val, Endianness mode=Endianness::BIG)=0
Deserialize an 8-bit unsigned integer value.
Message will block until space is available.
void log_ACTIVITY_LO_GlobalValueI32(const Fw::StringBase &module_name, const Fw::StringBase &globalName, I32 value) const
Log event GlobalValueI32.
void set_prmGet_OutputPort(FwIndexType portNum, Fw::InputPrmGetPort *port)
Connect port to prmGet[portNum].
void log_DIAGNOSTIC_StoreAllocationSucceeded(U16 moduleCount) const
void interpreter_sendSignal_cmd_CONTINUE()
Send signal cmd_CONTINUE to state machine interpreter.
void log_WARNING_HI_SequencePanic(Svc::WasmSequencer_ModuleIdx index, const Svc::WasmSequencer_SequencePhase &phase, I32 code) const
void log_WARNING_HI_HostFunctionInvalidPort(const Svc::WasmSequencer_HostFunction &host_function, I32 index, U32 numPorts) const
static constexpr FwIndexType getNum_cmdResponseOut_OutputPorts()
void GLOBAL_SET_I64_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
virtual ~WasmSequencerComponentBase()
Destroy WasmSequencerComponentBase object.
FwIdType FwEventIdType
The type of an event identifier.
called when a paused host function (F´ command) unsuccessfully executed. only raised in RUNNING...
static constexpr FwIndexType getNum_cmdResponseIn_InputPorts()
Svc_WasmSequencer_ControllerStateMachine::State controller_getState() const
Get the state of state machine instance controller.
void invoke(FwOpcodeType opCode) const
Invoke a port connection.
virtual void WAIT_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
bool isConnected_prmSet_OutputPort(FwIndexType portNum) const
virtual void parameterUpdated(FwPrmIdType id)
Called whenever a parameter is updated.
void log_WARNING_LO_SequenceNotRunning() const
void controller_sendSignal_load(const Svc::WasmSequencer_LoadRequest &value)
Send signal load to state machine controller.
The program has been aborted.
void cmdOut_out(FwIndexType portNum, Fw::ComBuffer &data, U32 context) const
Invoke output port cmdOut.
Fw::TlmValid invoke(FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val) const
#define FW_OBJECT_NAMES
Indicates whether or not object names are stored (more memory, can be used for tracking objects) ...
A host function timed-out.
void init()
Initialization function.
The size of the serial representation.
Failed to open the requested Wasm module file.
A command was issued in a state where it is not valid.
Data was the wrong format (e.g. wrong packet type)
virtual void unLock()
Unlock the guarded mutex.
void interpreter_sendSignal_interpreterHostFunctionNeedsPause()
Send signal interpreterHostFunctionNeedsPause to state machine interpreter.
Channel ID for SequencesCancelled.
Svc::InputSchedPort * get_writeTelemetry_InputPort(FwIndexType portNum)
Less important informational events.
Os::Queue::Status createQueue(FwSizeType depth, FwSizeType msgSize)
void seqDoneOut_out(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response) const
Invoke output port seqDoneOut.
Signal to AWAITING_RESPONSE to resume the interpreter with an i32 host function return value...
#define FW_MIN(a, b)
MIN macro (deprecated in C++, use std::min)
void controller_sendSignal_loadSucceeded(const Svc::WasmSequencer_RequestContext &value)
Send signal loadSucceeded to state machine controller.
void loadParameters()
Load the parameters from a parameter source.
A less serious but recoverable event.
Fw::ParamValid invoke(FwPrmIdType id, Fw::ParamBuffer &val) const
void set_tlmOut_OutputPort(FwIndexType portNum, Fw::InputTlmPort *port)
Connect port to tlmOut[portNum].
ActiveComponentBase(const char *name)
Constructor.
Execution was paused at a breakpoint.
virtual void GLOBAL_GET_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command GLOBAL_GET.
static constexpr FwIndexType getNum_seqCancelIn_InputPorts()
bool isConnected_seqDoneOut_OutputPort(FwIndexType portNum) const
bool isConnected_serialOut_OutputPort(FwIndexType portNum) const
void interpreter_sendSignal_hostResponseUnexpected(const Svc::WasmSequencer_HostFunction &value)
Send signal hostResponseUnexpected to state machine interpreter.
void tlmWrite_LastTrapReason(const Svc::WasmSequencer_TrapReason &arg, Fw::Time _tlmTime=Fw::Time())
void invoke(Fw::Time &time) const
Invoke a port connection.
WasmSequencerComponentBase(const char *compName="")
Construct WasmSequencerComponentBase object.
void cmdIn_handlerBase(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Handler base-class function for input port cmdIn.
Serializable::SizeType getDeserializeSizeLeft() const override
Get remaining deserialization buffer size.
void invoke(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response) const
Invoke a port connection.
virtual void CONTINUE_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CONTINUE.
void unLock()
unlock the mutex and assert success
Fw::InputSerializePort * get_serialIn_InputPort(FwIndexType portNum)
FwIdType FwChanIdType
The type of a telemetry channel identifier.
void interpreter_sendSignal_hostResponseFailure()
Send signal hostResponseFailure to state machine interpreter.
virtual void GLOBAL_SET_F32_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &moduleName, const Fw::CmdStringArg &name, F32 value)=0
Resume the sequence from a paused state.
WasmSequencerComponentBase::SmId getId() const
Get the state machine id.
Fw::InputCmdResponsePort * get_cmdResponseIn_InputPort(FwIndexType portNum)
void log_WARNING_HI_SequenceExited(Svc::WasmSequencer_ModuleIdx index, const Svc::WasmSequencer_SequencePhase &phase, I32 code) const
bool isConnected_cmdResponseOut_OutputPort(FwIndexType portNum) const
Status send(const U8 *buffer, FwSizeType size, FwQueuePriorityType priority, BlockingType blockType) override
send a message into the queue through delegate
Sequencer blocking state.
void log_ACTIVITY_LO_GlobalValueF64(const Fw::StringBase &module_name, const Fw::StringBase &globalName, F64 value) const
Log event GlobalValueF64.
void log_WARNING_HI_LogWarningHi(const Fw::StringBase &msg) const
void interpreter_sendSignal_interpreterFinished(I32 value)
Send signal interpreterFinished to state machine interpreter.
static constexpr FwIndexType getNum_seqRunIn_InputPorts()
virtual void writeTelemetry_handler(FwIndexType portNum, U32 context)=0
Handler for input port writeTelemetry.
void resetDeser() override
Reset deserialization pointer to beginning of buffer.
void interpreter_sendSignal_hostResume()
Send signal hostResume to state machine interpreter.
void log_WARNING_LO_GlobalSetFailed(const Fw::StringBase &module_name, const Fw::StringBase &globalName, const Svc::WasmSequencer_Status &reason) const
Log event GlobalSetFailed.
WasmSequencerComponentBase::SmId getId() const
Get the state machine id.
bool isConnected_logOut_OutputPort(FwIndexType portNum) const
void log_WARNING_HI_ModuleLoadFailed(const Svc::WasmSequencer_Status &status) const
The size of the serial representation.
A string backed by an external buffer.
A serious but recoverable event.
Errors dispatching messages.
void invoke(FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val) const
Invoke a port connection.
U8 WasmSequencer_ModuleIdx
const char * toChar() const
Convert to a C-style char*.
void log_WARNING_HI_HostFunctionInvalidSeverity(I32 raw, const Fw::StringBase &msg) const
static constexpr FwIndexType getNum_tlmOut_OutputPorts()
The interpreter store was allocated with capacity for the given number of modules.
Enum representing event severity.
Signal sent from command to load a Wasm module but not execute it.
void interpreter_sendSignal_hostResponseTimeout()
Send signal hostResponseTimeout to state machine interpreter.
void log_WARNING_HI_SerialInFrameTooLarge(U32 portIndex, U32 size, U32 maxSize) const
void GLOBAL_SET_F64_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Signal emited inside of the load action when a module load succeeds.
void tlmWrite_SequencesFailed(U64 arg, Fw::Time _tlmTime=Fw::Time())
Which phase of a module's execution a sequence-completion event refers to.
Fw::SerializeStatus serialOut_out(FwIndexType portNum, Fw::LinearBufferBase &buffer)
Invoke output port serialOut.
static constexpr FwIndexType getNum_writeTelemetry_InputPorts()
FormatStatus format(const CHAR *formatString,...)
write formatted string to buffer
void init()
Initialization function.
Command successfully executed.
virtual void GLOBAL_SET_I32_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &moduleName, const Fw::CmdStringArg &name, I32 value)=0
void set_prmSet_OutputPort(FwIndexType portNum, Fw::InputPrmSetPort *port)
Connect port to prmSet[portNum].
virtual void checkTimers_preMsgHook(FwIndexType portNum, U32 context)
Pre-message hook for async input port checkTimers.
void tlmWrite_ControllerState(const Svc::WasmSequencer_ControllerStateMachine_State &arg, Fw::Time _tlmTime=Fw::Time())
void set_seqStartOut_OutputPort(FwIndexType portNum, Svc::InputCmdSeqInPort *port)
Connect port to seqStartOut[portNum].
Fw::TlmValid getTlmChan_out(FwIndexType portNum, FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val) const
Invoke output port getTlmChan.
bool isConnected_seqStartOut_OutputPort(FwIndexType portNum) const
virtual Serializable::SizeType getDeserializeSizeLeft() const =0
Get remaining deserialization buffer size.
void log_ACTIVITY_HI_SequenceStarting(Svc::WasmSequencer_ModuleIdx index) const
void log_ACTIVITY_LO_GlobalValueI64(const Fw::StringBase &module_name, const Fw::StringBase &globalName, I64 value) const
Log event GlobalValueI64.
Failed to find a loaded module with the requested name.
F32 paramGet_HOST_FUNCTION_TIMEOUT_SECS(Fw::ParamValid &valid)
uint8_t U8
8-bit unsigned integer
Svc_WasmSequencer_InterpreterStateMachine::State interpreter_getState() const
Get the state of state machine instance interpreter.
static constexpr FwSizeType CAPACITY
The program has completed.
void log_WARNING_LO_LogWarningLo(const Fw::StringBase &msg) const
Svc::InputSchedPort * get_checkTimers_InputPort(FwIndexType portNum)
void init(WasmSequencerComponentBase::SmId smId)
Initialize the state machine.
An asynchronous host function has been called and has requested the interpreter pause.
A guest host function supplied a buffer larger than the host maximum for that call.
void tlmWrite(FwChanIdType id, Fw::TlmBuffer &_tlmBuff, Fw::Time _tlmTime=Fw::Time()) const
The size of the serial representation.
void log_WARNING_HI_BufferTooLarge(const Svc::WasmSequencer_HostFunction &host_function, U32 size, U32 maxSize) const
virtual void writeTelemetry_preMsgHook(FwIndexType portNum, U32 context)
Pre-message hook for async input port writeTelemetry.
Failed to invoke a module's main entrypoint.
Generic entry of a state.
Command failed to deserialize.
void interpreter_sendSignal_checkTimers()
Send signal checkTimers to state machine interpreter.
void lock()
lock the mutex and assert success
PlatformQueuePriorityType FwQueuePriorityType
The type of queue priorities used.
The size of the serial representation.
static constexpr FwIndexType getNum_serialOut_OutputPorts()
Command had execution error.
Important informational events.
void controller_sendSignal_run(const Svc::WasmSequencer_LoadRequest &value)
Send signal run to state machine controller.
void log_WARNING_LO_ControllerCannotInvoke() const
Opcode to set parameter SEQ_BASE_DIR.
void interpreter_sendSignal_interpreterTrap(const Svc::WasmSequencer_TrapReason &value)
Send signal interpreterTrap to state machine interpreter.
void tlmWrite_SeqName(const Fw::StringBase &arg, Fw::Time _tlmTime=Fw::Time())
void invoke(FwEventIdType id, Fw::Time &timeTag, const Fw::LogSeverity &severity, Fw::LogBuffer &args) const
Invoke a port connection.
Svc::InputCmdSeqCancelPort * get_seqCancelIn_InputPort(FwIndexType portNum)
virtual void seqRunIn_handler(FwIndexType portNum, const Fw::StringBase &filename, const Svc::SeqArgs &args)=0
Handler for input port seqRunIn.
SmId
State machine identifiers.
WasmSequencer_InterpreterStateMachineStateMachineBase::State getState() const
Get the state.
static constexpr FwIndexType getNum_prmGet_OutputPorts()
Fw::ParamString paramGet_SEQ_BASE_DIR(Fw::ParamValid &valid)
void interpreter_sendSignal_run(const Svc::WasmSequencer_RequestContext &value)
Send signal run to state machine interpreter.
void tlmWrite_CommandsFailed(U64 arg, Fw::Time _tlmTime=Fw::Time())
message to exit active component task
void log_ACTIVITY_HI_SequenceSucceeded(Svc::WasmSequencer_ModuleIdx index) const
void init()
Initialization function.
virtual void CONTINUE_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
void log_WARNING_HI_SequenceHostFailure(Svc::WasmSequencer_ModuleIdx index, const Svc::WasmSequencer_SequencePhase &phase, const Svc::WasmSequencer_ExitReason &reason, const Svc::WasmSequencer_HostFunction &hostFunction) const
A message was sent requesting an exit of the loop.
A sequence is starting after the main entrypoint was invoked.
virtual void seqRunIn_preMsgHook(FwIndexType portNum, const Fw::StringBase &filename, const Svc::SeqArgs &args)
Pre-message hook for async input port seqRunIn.
static constexpr FwIndexType getNum_logOut_OutputPorts()
The size of the serial representation.
void interpreter_sendSignal_hostResponseTimeIncomparable()
Send signal hostResponseTimeIncomparable to state machine interpreter.
void log_WARNING_LO_ModuleNotFound(const Fw::StringBase &module_name) const
void writeTelemetry_handlerBase(FwIndexType portNum, U32 context)
Handler base-class function for input port writeTelemetry.
void log_WARNING_HI_WrongCmdResponseIndex(FwOpcodeType opcode, const Fw::CmdResponse &response, U16 actualCmdIdx, U16 expectedCmdIdx) const
Channel ID for SequencesSucceeded.
PlatformIndexType FwIndexType
void set_cmdRegOut_OutputPort(FwIndexType portNum, Fw::InputCmdRegPort *port)
Connect port to cmdRegOut[portNum].
WasmSequencer_ControllerStateMachineStateMachineBase::State getState() const
Get the state.
void log_WARNING_HI_InvalidModuleEntrypoint(Svc::WasmSequencer_ModuleIdx moduleIdx, const Svc::WasmSequencer_Status &status) const
Log event InvalidModuleEntrypoint.
void log_WARNING_LO_GlobalGetFailed(const Fw::StringBase &module_name, const Fw::StringBase &globalName, const Svc::WasmSequencer_Status &reason) const
Log event GlobalGetFailed.
A module failed to decode/validate while loading.
Wait for the interpreter to finish and return it's result as a CmdResponse.
void tlmWrite_SequencesCancelled(U64 arg, Fw::Time _tlmTime=Fw::Time())
double F64
64-bit floating point (double). Required for compiler-supplied double promotion.
void log_WARNING_HI_ModuleMainInvokeFailed(const Svc::WasmSequencer_Status &status) const
void addCallPort(InputLogPort *callPort)
Register an input port.
void addCallPort(InputCmdSeqInPort *callPort)
Register an input port.
Opcode to save parameter HOST_FUNCTION_TIMEOUT_SECS.
The size of the serial representation.
virtual void GLOBAL_SET_F64_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command GLOBAL_SET_F64.
void seqStartOut_out(FwIndexType portNum, const Fw::StringBase &filename, const Svc::SeqArgs &args) const
Invoke output port seqStartOut.
virtual void cmdResponseIn_preMsgHook(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)
Pre-message hook for async input port cmdResponseIn.
void init()
Initialization function.
void set_cmdOut_OutputPort(FwIndexType portNum, Fw::InputComPort *port)
Connect port to cmdOut[portNum].
Fw::InputCmdPort * get_cmdIn_InputPort(FwIndexType portNum)
void incNumMsgDropped()
increment the number of messages dropped
Svc_WasmSequencer_ControllerStateMachine(WasmSequencerComponentBase &component)
Constructor.
void unlock()
alias for unLock to meet BasicLockable requirements
void interpreter_sendSignal_interpreterOutOfFuel()
Send signal interpreterOutOfFuel to state machine interpreter.
Invoke a main function from a loaded module.
void serialIn_handlerBase(FwIndexType portNum, Fw::LinearBufferBase &buffer)
Handler base-class function for input port serialIn.
void set_logOut_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to logOut[portNum].
Command failed validation.
RateGroupDivider component implementation.
void CANCEL_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
The size of the serial representation.
message sent/received okay
Enum representing parameter validity.
void log_ACTIVITY_HI_SequenceCancelled(Svc::WasmSequencer_ModuleIdx index, const Svc::WasmSequencer_SequencePhase &phase) const
void controller_sendSignal_invoked(const Svc::WasmSequencer_RequestContext &value)
Send signal invoked to state machine controller.
The size of the serial representation.
void init(WasmSequencerComponentBase::SmId smId)
Initialize the state machine.
void invoke(FwPrmIdType id, Fw::ParamBuffer &val) const
Invoke a port connection.
void seqRunIn_handlerBase(FwIndexType portNum, const Fw::StringBase &filename, const Svc::SeqArgs &args)
Handler base-class function for input port seqRunIn.
void log_DIAGNOSTIC_LogDiagnostic(const Fw::StringBase &msg) const
Opcode to save parameter INSTRUCTION_FUEL.
void addCallPort(InputComPort *callPort)
Register an input port.
void INVOKE_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void set_getParam_OutputPort(FwIndexType portNum, Fw::InputPrmGetPort *port)
Connect port to getParam[portNum].
Channel ID for CommandsDispatched.
Called on CANCEL cmd. Raised in LOADING, READY and RUNNING modes.
virtual void RUN_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command RUN.
Channel ID for ControllerState.
virtual void INVOKE_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &module, const Svc::BlockState &block)=0
A DIAGNOSTIC event emitted by the guest program.
virtual void RUN_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &fileName, const Svc::BlockState &block)=0
void PAUSE_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void LOAD_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
LinearBufferTemplate< FW_SM_SIGNAL_BUFFER_MAX_SIZE > SmSignalBuffer
Message will return with status when space is unavailable.
An ACTIVITY_HI event emitted by the guest program.
void log_WARNING_HI_SleepDurationTooLarge(const Svc::WasmSequencer_HostFunction &host_function, U64 micros) const
Implementation of malloc based allocator.
virtual void LOAD_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command LOAD.
static constexpr FwIndexType getNum_checkTimers_InputPorts()
A command was issued in a state where it is not valid.
static constexpr FwIndexType getNum_cmdRegOut_OutputPorts()
void log_WARNING_HI_SequenceFilePathTooLong(const Fw::StringBase &baseDir, const Fw::StringBase &fileName) const
virtual void PAUSE_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command PAUSE.
Corresponds to spacewasm_status_t.
static constexpr SizeType BUFFER_SIZE(SizeType maxLength)
Get the size of a null-terminated string buffer.
virtual void CANCEL_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
void init()
Initialization function.
virtual void GLOBAL_SET_F64_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &moduleName, const Fw::CmdStringArg &name, F64 value)=0
virtual void GLOBAL_SET_I64_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &moduleName, const Fw::CmdStringArg &name, I64 value)=0
static constexpr FwIndexType getNum_cmdIn_InputPorts()
Channel ID for LastTrapReason.
void controller_sendSignal_invokeFailed(const Svc::WasmSequencer_RequestContext &value)
Send signal invokeFailed to state machine controller.
void init()
Initialization function.
bool isConnected_timeCaller_OutputPort(FwIndexType portNum) const
void interpreter_sendSignal_cancel()
Send signal cancel to state machine interpreter.
Signal emitted by processInvoke when the requested module was resolved successfully.
A struct holding the context needed to reply to a command request.
void interpreter_sendSignal_cmdCancel(const Svc::WasmSequencer_CommandRequest &value)
Send signal cmdCancel to state machine interpreter.
The size of the serial representation.
virtual SerializeStatus moveDeserToOffset(FwSizeType offset)=0
Move deserialization pointer to specified offset.
virtual void serialIn_handler(FwIndexType portNum, Fw::LinearBufferBase &buffer)=0
Handler for input port serialIn.
bool isConnected_cmdRegOut_OutputPort(FwIndexType portNum) const
virtual void INVOKE_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command INVOKE.
The size of the serial representation.
FpySequencer_SequencerStateMachineStateMachineBase::Signal Signal
bool isConnected_prmGet_OutputPort(FwIndexType portNum) const
Opcode to set parameter INSTRUCTION_FUEL.
virtual void GLOBAL_SET_I32_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command GLOBAL_SET_I32.
static constexpr FwSizeType CAPACITY
bool isConnected_cmdOut_OutputPort(FwIndexType portNum) const
Svc::InputCmdSeqInPort * get_seqRunIn_InputPort(FwIndexType portNum)
void log_WARNING_HI_SerialPortSendFailed(const Svc::WasmSequencer_HostFunction &host_function, I32 status) const
Channel ID for InterpreterState.
The sequence was cancelled.
Why a guest memory.grow request could not be serviced by the guest bump allocator.
void controller_sendSignal_invoke(const Svc::WasmSequencer_InvokeRequest &value)
Send signal invoke to state machine controller.
virtual void checkTimers_handler(FwIndexType portNum, U32 context)=0
Handler for input port checkTimers.
PlatformAssertArgType FwAssertArgType
The type of arguments to assert functions.
static constexpr FwIndexType getNum_timeCaller_OutputPorts()
void GLOBAL_GET_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
No more fuel (ran to instruction bound)
void addCallPort(InputCmdResponsePort *callPort)
Register an input port.
virtual void WAIT_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command WAIT.
virtual void parametersLoaded()
Called whenever parameters are loaded.
Svc::WasmSequencer_ControllerStateMachine_State State
The state type.
virtual void GLOBAL_SET_F32_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command GLOBAL_SET_F32.
SerializeStatus serializeTo(SerialBufferBase &buffer, Endianness mode=Endianness::BIG) const override
Serialize the contents of this object to a buffer.
void set_cmdResponseOut_OutputPort(FwIndexType portNum, Fw::InputCmdResponsePort *port)
Connect port to cmdResponseOut[portNum].
The size of the serial representation.
BYTE cmdPortSize[Fw::CmdPortBuffer::CAPACITY]
void tlmWrite_CommandsDispatched(U64 arg, Fw::Time _tlmTime=Fw::Time())
static constexpr FwIndexType getNum_getParam_OutputPorts()
void log_WARNING_HI_BufferTooSmall(const Svc::WasmSequencer_HostFunction &host_function, U32 size, U32 valueSize) const
static constexpr FwIndexType getNum_seqDoneOut_OutputPorts()
virtual void seqCancelIn_handler(FwIndexType portNum)=0
Handler for input port seqCancelIn.