7 #ifndef Svc_WasmSequencerComponentAc_HPP 8 #define Svc_WasmSequencerComponentAc_HPP 23 #if !FW_DIRECT_PORT_CALLS 26 #if !FW_DIRECT_PORT_CALLS 64 "WasmSequencer component requires serialization" 328 void action_processInvoke(
334 void action_setCancelRequested(
339 void action_clearCancelRequested(
344 void action_cancelPendingRequest(
350 void action_respond_noblock_OK(
356 void action_respond_ERROR(
362 void action_incrementSequenceFailure(
367 void action_respondInvoke_BUSY(
373 void action_respondInvoke_ERROR(
379 void action_respondLoad_BUSY(
385 void action_respond_block_OK(
391 void action_respond_block_ERROR(
403 void action_invokeStart(
409 void action_invokeMain(
415 void action_reportModuleInvalidMain(
421 void action_reportModuleMainInvokeFailed(
427 void action_reportModuleStartInvokeFailed(
433 void action_reportModuleStarted(
439 void action_reportModuleSucceeded(
445 void action_reportModuleStartFailed(
451 void action_reportModuleMainFailed(
457 void action_resetStore(
462 void action_runEngine(
470 bool guard_cancelRequested(
475 bool guard_moduleHasStart(
481 bool guard_moduleHasValidMain(
487 bool guard_invokeSucceeded(
493 bool guard_interpreterSucceeded(
540 void action_cmdReplyOK(
546 void action_signalEntered(
561 void action_clearExitStatus(
566 void action_setExitReason_INTERPRETER_FINISHED(
571 void action_setExitReason_INTERPRETER_TRAP(
576 void action_setExitReason_REPLY_TIMEOUT(
581 void action_setExitReason_HOST_FAILURE(
586 void action_setExitReason_TIMER_INCOMPARABLE(
591 void action_setExitReason_UNEXPECTED_REPLY(
596 void action_setExitReason_CANCEL(
601 void action_setExitCode(
607 void action_setTrapReason(
613 void action_setLastHostFunction(
623 void action_reportPaused(
628 void action_clearPause(
633 void action_dispatchPendingHostFunction(
638 void action_clearPendingHostFunction(
643 void action_setContext(
649 void action_clearContext(
659 void action_resumeI32(
665 void action_checkSleepTimers(
670 void action_checkTimeout(
675 void action_dequeueSerialAndResume(
683 bool guard_pendingPause(
688 bool guard_pendingHostFunction(
693 bool guard_pendingHostFunctionIsSleep(
698 bool guard_blockingSerialIn(
704 bool guard_dequeueSucceeded(
727 #if !FW_DIRECT_PORT_CALLS 744 #if !FW_DIRECT_PORT_CALLS 789 #if !FW_DIRECT_PORT_CALLS 806 #if !FW_DIRECT_PORT_CALLS 832 #if FW_ENABLE_TEXT_LOGGING == 1 835 void set_logTextOut_OutputPort(
868 #if !FW_DIRECT_PORT_CALLS 908 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 919 Fw::InputSerializePort* port
925 Fw::InputSerializePort* port
931 Fw::InputSerializePort* port
934 #if FW_ENABLE_TEXT_LOGGING == 1 937 void set_logTextOut_OutputPort(
939 Fw::InputSerializePort* port
947 Fw::InputSerializePort* port
953 Fw::InputSerializePort* port
959 Fw::InputSerializePort* port
964 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 975 Fw::InputSerializePort* port
981 Fw::InputSerializePort* port
987 Fw::InputSerializePort* port
992 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 1001 void set_serialOut_OutputPort(
1038 const char* compName =
"" 1138 #if FW_ENABLE_TEXT_LOGGING == 1 1143 static constexpr
FwIndexType getNum_logTextOut_OutputPorts() {
1258 #if FW_ENABLE_TEXT_LOGGING == 1 1263 bool isConnected_logTextOut_OutputPort(
1351 #if FW_DIRECT_PORT_CALLS 1409 #if FW_DIRECT_PORT_CALLS 1465 #if FW_DIRECT_PORT_CALLS 2885 U16 currentSequenceIdx
3121 virtual void lock();
3142 static void m_p_cmdIn_in(
3157 static void m_p_checkTimers_in(
3164 static void m_p_cmdResponseIn_in(
3173 static void m_p_seqCancelIn_in(
3179 static void m_p_seqRunIn_in(
3187 static void m_p_writeTelemetry_in(
3199 #if FW_PORT_SERIALIZATION 3202 static void m_p_serialIn_in(
3223 void cmdResponseOut_out(
3239 #if FW_ENABLE_TEXT_LOGGING 3242 void logTextOut_out(
3268 void timeCaller_out(
3288 void sendSignalStart(
3295 void controller_sendSignalFinish(
3300 void interpreter_sendSignalFinish(
3316 static void deserializeSmIdAndSignal(
3323 void Svc_WasmSequencer_ControllerStateMachine_smDispatch(
3325 Svc_WasmSequencer_ControllerStateMachine& sm,
3330 void Svc_WasmSequencer_InterpreterStateMachine_smDispatch(
3332 Svc_WasmSequencer_InterpreterStateMachine& sm,
3384 #if !FW_DIRECT_PORT_CALLS 3397 #if !FW_DIRECT_PORT_CALLS 3422 #if !FW_DIRECT_PORT_CALLS 3435 #if !FW_DIRECT_PORT_CALLS 3452 #if FW_ENABLE_TEXT_LOGGING == 1 3473 #if !FW_DIRECT_PORT_CALLS 3498 #if !FW_DIRECT_PORT_CALLS 3518 bool m_first_update_ControllerState =
true;
3521 bool m_first_update_InterpreterState =
true;
3524 bool m_first_update_SequencesSucceeded =
true;
3527 bool m_first_update_SequencesFailed =
true;
3530 bool m_first_update_SequencesCancelled =
true;
3533 bool m_first_update_CommandsDispatched =
true;
3536 bool m_first_update_CommandsFailed =
true;
3539 bool m_first_update_LastTrapReason =
true;
3542 bool m_first_update_SeqName =
true;
3557 U64 m_last_SequencesSucceeded = {};
3560 U64 m_last_SequencesFailed = {};
3563 U64 m_last_SequencesCancelled = {};
3566 U64 m_last_CommandsDispatched = {};
3569 U64 m_last_CommandsFailed = {};
3604 F32 m_HOST_FUNCTION_TIMEOUT_SECS;
3631 Svc_WasmSequencer_ControllerStateMachine m_stateMachine_controller;
3634 Svc_WasmSequencer_InterpreterStateMachine m_stateMachine_interpreter;
void log_ACTIVITY_LO_LogActivityLo(const Fw::StringBase &msg) const
A WARNING_HI event emitted by the guest program.
static constexpr FwIndexType getNum_serialIn_InputPorts()
void interpreter_sendSignal_hostResumeI32(I32 value)
Send signal hostResumeI32 to state machine interpreter.
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_resume(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
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.
Fw::ParamValid getParam_out(FwIndexType portNum, FwPrmIdType id, Fw::ParamBuffer &val) const
Invoke output port getParam.
Implementation of state machine Svc_WasmSequencer_ControllerStateMachine.
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_setContext(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
void checkTimers_handlerBase(FwIndexType portNum, U32 context)
Handler base-class function for input port checkTimers.
virtual bool Svc_WasmSequencer_InterpreterStateMachine_guard_blockingSerialIn(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal, const FwIndexType &value) const =0
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())
virtual void cmdResponseIn_handler(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)=0
Handler for input port cmdResponseIn.
FwIdType FwOpcodeType
The type of a command opcode.
void log_WARNING_HI_TooManyBlockingCommands() const
virtual bool Svc_WasmSequencer_ControllerStateMachine_guard_cancelRequested(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal) const =0
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
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_CANCEL(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
Implementation for action setExitReason_CANCEL of state machine Svc_WasmSequencer_InterpreterStateMac...
virtual void GLOBAL_SET_I64_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command GLOBAL_SET_I64.
void log_WARNING_HI_InvalidBlockingTypeValue(I32 invalidValue) const
Log event InvalidBlockingTypeValue.
PlatformSizeType FwSizeType
Auto-generated base for WasmSequencer component.
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_clearExitStatus(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
Implementation for action clearExitStatus of state machine Svc_WasmSequencer_InterpreterStateMachine...
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_clearPendingHostFunction(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
Channel ID for SequencesFailed.
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].
virtual void Svc_WasmSequencer_ControllerStateMachine_action_reportModuleMainFailed(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
virtual void Svc_WasmSequencer_ControllerStateMachine_action_reportModuleStarted(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
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())
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_clearContext(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
Opcode to save parameter SEQ_BASE_DIR.
The interpreter aborted the sequence with a byte-code trap.
Tracks the currently executing host function.
void log_WARNING_HI_SequenceFilePathNotContained(const Fw::StringBase &baseDir, const Fw::StringBase &fileName) const
Svc_WasmSequencer_InterpreterStateMachine(WasmSequencerComponentBase &component)
Constructor.
virtual void LOAD_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &fileName, const Fw::CmdStringArg &name)=0
virtual void Svc_WasmSequencer_ControllerStateMachine_action_invokeStart(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=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.
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_REPLY_TIMEOUT(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
Implementation for action setExitReason_REPLY_TIMEOUT of state machine Svc_WasmSequencer_InterpreterS...
Link-time delegating Mutex implementation.
virtual void Svc_WasmSequencer_ControllerStateMachine_action_respondInvoke_ERROR(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_InvokeRequest &value)=0
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_spin(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
bool isConnected_getTlmChan_OutputPort(FwIndexType portNum) const
static constexpr FwIndexType getNum_prmSet_OutputPorts()
void interpreter_sendSignal_serialInMessage(const FwIndexType &value)
Send signal serialInMessage to state machine interpreter.
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_setLastHostFunction(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
Implementation for action setLastHostFunction of state machine Svc_WasmSequencer_InterpreterStateMach...
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.
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_TIMER_INCOMPARABLE(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
Implementation for action setExitReason_TIMER_INCOMPARABLE of state machine Svc_WasmSequencer_Interpr...
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)
virtual void Svc_WasmSequencer_ControllerStateMachine_action_load(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_LoadRequest &value)=0
The guest called fprime.panic.
static constexpr FwIndexType getNum_cmdOut_OutputPorts()
friend class WasmSequencerTesterBase
Autocoded test harness for the enclosing component.
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
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_setTrapReason(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal, const Svc::WasmSequencer_TrapReason &value)=0
Implementation for action setTrapReason of state machine Svc_WasmSequencer_InterpreterStateMachine.
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_finish(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
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.
virtual void Svc_WasmSequencer_ControllerStateMachine_action_respondInvoke_BUSY(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_InvokeRequest &value)=0
friend class WasmSequencerTester
Friend class tester implementation to support white-box testing.
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
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 log_WARNING_LO_MemoryGrowRejected(const Svc::WasmSequencer_MemoryGrowFailReason &reason, U64 requestedSize) const
void log_WARNING_HI_HostFunctionInvalidPointer(const Svc::WasmSequencer_HostFunction &host_function, const Svc::WasmSequencer_Status &code) const
Log event HostFunctionInvalidPointer.
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
Opcode to set parameter HOST_FUNCTION_TIMEOUT_SECS.
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].
virtual void Svc_WasmSequencer_ControllerStateMachine_action_cancelPendingRequest(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
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
virtual void Svc_WasmSequencer_ControllerStateMachine_action_respond_block_OK(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
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 void Svc_WasmSequencer_ControllerStateMachine_action_respondLoad_BUSY(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_LoadRequest &value)=0
virtual ~WasmSequencerComponentBase()
Destroy WasmSequencerComponentBase object.
FwIdType FwEventIdType
The type of an event identifier.
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_dispatchPendingHostFunction(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
static constexpr FwIndexType getNum_cmdResponseIn_InputPorts()
Svc_WasmSequencer_ControllerStateMachine::State controller_getState() const
Get the state of state machine instance controller.
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.
void cmdOut_out(FwIndexType portNum, Fw::ComBuffer &data, U32 context) const
Invoke output port cmdOut.
virtual void Svc_WasmSequencer_ControllerStateMachine_action_incrementSequenceFailure(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal)=0
Failed to open the requested Wasm module file.
A command was issued in a state where it is not valid.
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)
void seqDoneOut_out(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response) const
Invoke output port seqDoneOut.
Svc::WasmSequencer_InterpreterStateMachine_State State
The state type.
virtual bool Svc_WasmSequencer_InterpreterStateMachine_guard_pendingHostFunction(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal) const =0
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.
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_signalEntered(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
void set_tlmOut_OutputPort(FwIndexType portNum, Fw::InputTlmPort *port)
Connect port to tlmOut[portNum].
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.
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_resumeI32(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal, I32 value)=0
void tlmWrite_LastTrapReason(const Svc::WasmSequencer_TrapReason &arg, Fw::Time _tlmTime=Fw::Time())
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.
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_INTERPRETER_FINISHED(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
Implementation for action setExitReason_INTERPRETER_FINISHED of state machine Svc_WasmSequencer_Inter...
virtual void CONTINUE_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CONTINUE.
Fw::InputSerializePort * get_serialIn_InputPort(FwIndexType portNum)
friend class WasmSequencerTesterBase
Friend class tester to support autocoded test harness.
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
WasmSequencerComponentBase::SmId getId() const
Get the state machine id.
Resume the sequence from a paused state.
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
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_UNEXPECTED_REPLY(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
Implementation for action setExitReason_UNEXPECTED_REPLY of state machine Svc_WasmSequencer_Interpret...
Sequencer blocking state.
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_reportPaused(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
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 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.
friend class WasmSequencerTesterBase
Autocoded test harness for the enclosing component.
bool isConnected_logOut_OutputPort(FwIndexType portNum) const
void log_WARNING_HI_ModuleLoadFailed(const Svc::WasmSequencer_Status &status) const
virtual void Svc_WasmSequencer_ControllerStateMachine_action_setCancelRequested(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal)=0
U8 WasmSequencer_ModuleIdx
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.
virtual void Svc_WasmSequencer_ControllerStateMachine_action_reportModuleMainInvokeFailed(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
void interpreter_sendSignal_hostResponseTimeout()
Send signal hostResponseTimeout to state machine interpreter.
void log_WARNING_HI_SerialInFrameTooLarge(U32 portIndex, U32 size, U32 maxSize) const
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_setExitCode(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal, I32 value)=0
Implementation for action setExitCode of state machine Svc_WasmSequencer_InterpreterStateMachine.
void GLOBAL_SET_F64_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
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()
virtual void Svc_WasmSequencer_ControllerStateMachine_action_clearCancelRequested(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal)=0
virtual void Svc_WasmSequencer_ControllerStateMachine_action_reportModuleStartInvokeFailed(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
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 void Svc_WasmSequencer_ControllerStateMachine_action_resetStore(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal)=0
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)
Svc_WasmSequencer_InterpreterStateMachine::State interpreter_getState() const
Get the state of state machine instance interpreter.
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.
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
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.
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_INTERPRETER_TRAP(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
Implementation for action setExitReason_INTERPRETER_TRAP of state machine Svc_WasmSequencer_Interpret...
void interpreter_sendSignal_checkTimers()
Send signal checkTimers to state machine interpreter.
virtual void Svc_WasmSequencer_ControllerStateMachine_action_reportModuleStartFailed(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
static constexpr FwIndexType getNum_serialOut_OutputPorts()
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_checkSleepTimers(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
friend class WasmSequencerTester
Test implementation for the enclosing component.
void controller_sendSignal_run(const Svc::WasmSequencer_LoadRequest &value)
Send signal run to state machine controller.
void log_WARNING_LO_ControllerCannotInvoke() const
diagram-layout engine=elk direction=RL cycleBreaking=GREEDY_MODEL_ORDER considerModelOrder=NODES_AND_...
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())
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_cmdReplyOK(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal, const Svc::WasmSequencer_CommandRequest &value)=0
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.
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())
void log_ACTIVITY_HI_SequenceSucceeded(Svc::WasmSequencer_ModuleIdx index) const
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
virtual void Svc_WasmSequencer_ControllerStateMachine_action_invokeMain(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
virtual bool Svc_WasmSequencer_ControllerStateMachine_guard_interpreterSucceeded(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal) const =0
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.
virtual bool Svc_WasmSequencer_ControllerStateMachine_guard_invokeSucceeded(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value) const =0
virtual bool Svc_WasmSequencer_InterpreterStateMachine_guard_pendingPause(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal) const =0
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_dequeueSerialAndResume(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal, const FwIndexType &value)=0
static constexpr FwIndexType getNum_logOut_OutputPorts()
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.
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_checkTimeout(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
PlatformIndexType FwIndexType
void set_cmdRegOut_OutputPort(FwIndexType portNum, Fw::InputCmdRegPort *port)
Connect port to cmdRegOut[portNum].
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_HOST_FAILURE(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
Implementation for action setExitReason_HOST_FAILURE of state machine Svc_WasmSequencer_InterpreterSt...
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
Opcode to save parameter HOST_FUNCTION_TIMEOUT_SECS.
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 bool Svc_WasmSequencer_ControllerStateMachine_guard_moduleHasValidMain(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value) const =0
virtual void cmdResponseIn_preMsgHook(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)
Pre-message hook for async input port cmdResponseIn.
void set_cmdOut_OutputPort(FwIndexType portNum, Fw::InputComPort *port)
Connect port to cmdOut[portNum].
Fw::InputCmdPort * get_cmdIn_InputPort(FwIndexType portNum)
Svc_WasmSequencer_ControllerStateMachine(WasmSequencerComponentBase &component)
Constructor.
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.
diagram-layout engine=elk direction=LR cycleBreaking=MODEL_ORDER considerModelOrder=NODES_AND_EDGES n...
void set_logOut_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to logOut[portNum].
RateGroupDivider component implementation.
void CANCEL_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Enum representing parameter validity.
void log_ACTIVITY_HI_SequenceCancelled(Svc::WasmSequencer_ModuleIdx index, const Svc::WasmSequencer_SequencePhase &phase) const
friend class WasmSequencerTester
Test implementation for the enclosing component.
void controller_sendSignal_invoked(const Svc::WasmSequencer_RequestContext &value)
Send signal invoked to state machine controller.
virtual void Svc_WasmSequencer_ControllerStateMachine_action_runEngine(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
virtual void Svc_WasmSequencer_ControllerStateMachine_action_reportModuleInvalidMain(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
void init(WasmSequencerComponentBase::SmId smId)
Initialize the state machine.
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 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.
virtual bool Svc_WasmSequencer_InterpreterStateMachine_guard_dequeueSucceeded(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal) const =0
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)
virtual bool Svc_WasmSequencer_InterpreterStateMachine_guard_pendingHostFunctionIsSleep(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal) const =0
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_reset(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
An ACTIVITY_HI event emitted by the guest program.
void log_WARNING_HI_SleepDurationTooLarge(const Svc::WasmSequencer_HostFunction &host_function, U64 micros) const
virtual void LOAD_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command LOAD.
static constexpr FwIndexType getNum_checkTimers_InputPorts()
virtual void Svc_WasmSequencer_ControllerStateMachine_action_respond_noblock_OK(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_clearPause(SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
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.
virtual void CANCEL_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
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.
bool isConnected_timeCaller_OutputPort(FwIndexType portNum) const
void interpreter_sendSignal_cancel()
Send signal cancel to state machine interpreter.
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.
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.
virtual void Svc_WasmSequencer_ControllerStateMachine_action_processInvoke(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_InvokeRequest &value)=0
virtual void Svc_WasmSequencer_ControllerStateMachine_action_respond_ERROR(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
bool isConnected_prmGet_OutputPort(FwIndexType portNum) const
Opcode to set parameter INSTRUCTION_FUEL.
Implementation of state machine Svc_WasmSequencer_InterpreterStateMachine.
virtual void GLOBAL_SET_I32_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command GLOBAL_SET_I32.
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.
virtual bool Svc_WasmSequencer_ControllerStateMachine_guard_moduleHasStart(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value) const =0
static constexpr FwIndexType getNum_timeCaller_OutputPorts()
void GLOBAL_GET_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
virtual void Svc_WasmSequencer_ControllerStateMachine_action_respond_block_ERROR(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
virtual void WAIT_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command WAIT.
#define FW_PORT_SERIALIZATION
calls for multi-note systems)
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.
void set_cmdResponseOut_OutputPort(FwIndexType portNum, Fw::InputCmdResponsePort *port)
Connect port to cmdResponseOut[portNum].
void tlmWrite_CommandsDispatched(U64 arg, Fw::Time _tlmTime=Fw::Time())
virtual void Svc_WasmSequencer_ControllerStateMachine_action_reportModuleSucceeded(SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
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.