F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
Svc::WasmSequencerComponentBase Class Referenceabstract

Auto-generated base for WasmSequencer component. More...

#include <Svc/WasmSequencer/WasmSequencerComponentAc.hpp>

Inheritance diagram for Svc::WasmSequencerComponentBase:
Fw::ActiveComponentBase Fw::QueuedComponentBase Fw::PassiveComponentBase Fw::ObjBase Svc::WasmSequencer

Classes

class  Svc_WasmSequencer_ControllerStateMachine
 Implementation of state machine Svc_WasmSequencer_ControllerStateMachine. More...
 
class  Svc_WasmSequencer_InterpreterStateMachine
 Implementation of state machine Svc_WasmSequencer_InterpreterStateMachine. More...
 

Public Member Functions

void init (FwSizeType queueDepth, FwEnumStoreType instance=0)
 Initialize WasmSequencerComponentBase object. More...
 
Fw::InputCmdPort * get_cmdIn_InputPort (FwIndexType portNum)
 
Svc::InputSchedPort * get_checkTimers_InputPort (FwIndexType portNum)
 
Fw::InputCmdResponsePort * get_cmdResponseIn_InputPort (FwIndexType portNum)
 
Svc::InputCmdSeqCancelPort * get_seqCancelIn_InputPort (FwIndexType portNum)
 
Svc::InputCmdSeqInPort * get_seqRunIn_InputPort (FwIndexType portNum)
 
Svc::InputSchedPort * get_writeTelemetry_InputPort (FwIndexType portNum)
 
Fw::InputSerializePort * get_serialIn_InputPort (FwIndexType portNum)
 
void set_cmdRegOut_OutputPort (FwIndexType portNum, Fw::InputCmdRegPort *port)
 Connect port to cmdRegOut[portNum]. More...
 
void set_cmdResponseOut_OutputPort (FwIndexType portNum, Fw::InputCmdResponsePort *port)
 Connect port to cmdResponseOut[portNum]. More...
 
void set_logOut_OutputPort (FwIndexType portNum, Fw::InputLogPort *port)
 Connect port to logOut[portNum]. More...
 
void set_prmGet_OutputPort (FwIndexType portNum, Fw::InputPrmGetPort *port)
 Connect port to prmGet[portNum]. More...
 
void set_prmSet_OutputPort (FwIndexType portNum, Fw::InputPrmSetPort *port)
 Connect port to prmSet[portNum]. More...
 
void set_timeCaller_OutputPort (FwIndexType portNum, Fw::InputTimePort *port)
 Connect port to timeCaller[portNum]. More...
 
void set_tlmOut_OutputPort (FwIndexType portNum, Fw::InputTlmPort *port)
 Connect port to tlmOut[portNum]. More...
 
void set_cmdOut_OutputPort (FwIndexType portNum, Fw::InputComPort *port)
 Connect port to cmdOut[portNum]. More...
 
void set_getParam_OutputPort (FwIndexType portNum, Fw::InputPrmGetPort *port)
 Connect port to getParam[portNum]. More...
 
void set_getTlmChan_OutputPort (FwIndexType portNum, Fw::InputTlmGetPort *port)
 Connect port to getTlmChan[portNum]. More...
 
void set_seqDoneOut_OutputPort (FwIndexType portNum, Fw::InputCmdResponsePort *port)
 Connect port to seqDoneOut[portNum]. More...
 
void set_seqStartOut_OutputPort (FwIndexType portNum, Svc::InputCmdSeqInPort *port)
 Connect port to seqStartOut[portNum]. More...
 
void regCommands ()
 Register commands with the Command Dispatcher. More...
 
void loadParameters ()
 Load the parameters from a parameter source. More...
 
- Public Member Functions inherited from Fw::ActiveComponentBase
void start (FwTaskPriorityType priority=Os::Task::TASK_PRIORITY_DEFAULT, FwSizeType stackSize=Os::Task::TASK_DEFAULT, FwSizeType cpuAffinity=Os::Task::TASK_DEFAULT, FwTaskIdType identifier=static_cast< FwTaskIdType >(Os::Task::TASK_DEFAULT))
 called by instantiator when task is to be started More...
 
void exit ()
 exit task in active component More...
 
Os::Task::Status join ()
 Join the thread. More...
 
 DEPRECATED (Os::Task::Status join(void **value_ptr), "Switch to .join()")
 Join to thread with discarded value_ptr. More...
 
- Public Member Functions inherited from Fw::QueuedComponentBase
void deinit () override
 Allows de-initialization on teardown. More...
 
- Public Member Functions inherited from Fw::PassiveComponentBase
void setIdBase (const FwIdType)
 Set the ID base. More...
 
FwIdType getIdBase () const
 

Protected Types

enum  { NUM_CMDIN_INPUT_PORTS = 1 }
 Enumerations for numbers of special input ports. More...
 
enum  {
  NUM_CHECKTIMERS_INPUT_PORTS = 1, NUM_CMDRESPONSEIN_INPUT_PORTS = 1, NUM_SEQCANCELIN_INPUT_PORTS = 1, NUM_SEQRUNIN_INPUT_PORTS = 1,
  NUM_WRITETELEMETRY_INPUT_PORTS = 1
}
 Enumerations for numbers of typed input ports. More...
 
enum  { NUM_SERIALIN_INPUT_PORTS = 5 }
 Enumerations for numbers of serial input ports. More...
 
enum  {
  NUM_CMDREGOUT_OUTPUT_PORTS = 1, NUM_CMDRESPONSEOUT_OUTPUT_PORTS = 1, NUM_LOGOUT_OUTPUT_PORTS = 1, NUM_LOGTEXTOUT_OUTPUT_PORTS = 1,
  NUM_PRMGET_OUTPUT_PORTS = 1, NUM_PRMSET_OUTPUT_PORTS = 1, NUM_TIMECALLER_OUTPUT_PORTS = 1, NUM_TLMOUT_OUTPUT_PORTS = 1
}
 Enumerations for numbers of special output ports. More...
 
enum  {
  NUM_CMDOUT_OUTPUT_PORTS = 1, NUM_GETPARAM_OUTPUT_PORTS = 1, NUM_GETTLMCHAN_OUTPUT_PORTS = 1, NUM_SEQDONEOUT_OUTPUT_PORTS = 1,
  NUM_SEQSTARTOUT_OUTPUT_PORTS = 1
}
 Enumerations for numbers of typed output ports. More...
 
enum  { NUM_SERIALOUT_OUTPUT_PORTS = 5 }
 Enumerations for numbers of serial output ports. More...
 
enum  {
  OPCODE_RUN = 0x0, OPCODE_LOAD = 0x1, OPCODE_INVOKE = 0x2, OPCODE_WAIT = 0x3,
  OPCODE_CANCEL = 0x4, OPCODE_PAUSE = 0x5, OPCODE_CONTINUE = 0x6, OPCODE_GLOBAL_SET_I32 = 0x7,
  OPCODE_GLOBAL_SET_I64 = 0x8, OPCODE_GLOBAL_SET_F32 = 0x9, OPCODE_GLOBAL_SET_F64 = 0xa, OPCODE_GLOBAL_GET = 0xb,
  OPCODE_HOST_FUNCTION_TIMEOUT_SECS_SET = 0xc, OPCODE_HOST_FUNCTION_TIMEOUT_SECS_SAVE = 0xd, OPCODE_INSTRUCTION_FUEL_SET = 0xe, OPCODE_INSTRUCTION_FUEL_SAVE = 0xf,
  OPCODE_SEQ_BASE_DIR_SET = 0x10, OPCODE_SEQ_BASE_DIR_SAVE = 0x11
}
 Command opcodes. More...
 
enum  {
  EVENTID_STOREALLOCATIONSUCCEEDED = 0x0, EVENTID_CONTROLLERCANNOTINVOKE = 0x1, EVENTID_CONTROLLERBUSY = 0x2, EVENTID_MODULENOTFOUND = 0x3,
  EVENTID_MEMORYGROWREJECTED = 0x4, EVENTID_GLOBALSETFAILED = 0x5, EVENTID_GLOBALGETFAILED = 0x6, EVENTID_GLOBALVALUEI32 = 0x7,
  EVENTID_GLOBALVALUEI64 = 0x8, EVENTID_GLOBALVALUEF32 = 0x9, EVENTID_GLOBALVALUEF64 = 0xa, EVENTID_FILEOPENERROR = 0xb,
  EVENTID_SEQUENCEFILEPATHTOOLONG = 0xc, EVENTID_SEQUENCEFILEPATHNOTCONTAINED = 0xd, EVENTID_MODULELOADFAILED = 0xe, EVENTID_MODULEMAININVOKEFAILED = 0xf,
  EVENTID_MODULESTARTINVOKEFAILED = 0x10, EVENTID_TOOMANYBLOCKINGCOMMANDS = 0x11, EVENTID_BUFFERTOOLARGE = 0x12, EVENTID_BUFFERTOOSMALL = 0x13,
  EVENTID_HOSTFUNCTIONINVALIDPOINTER = 0x14, EVENTID_INVALIDBLOCKINGTYPEVALUE = 0x15, EVENTID_HOSTFUNCTIONINVALIDPORT = 0x16, EVENTID_SERIALPORTSENDFAILED = 0x17,
  EVENTID_SERIALINFRAMETOOLARGE = 0x18, EVENTID_HOSTFUNCTIONINVALIDSEVERITY = 0x19, EVENTID_SEQUENCESTARTING = 0x1a, EVENTID_SEQUENCESUCCEEDED = 0x1b,
  EVENTID_SEQUENCECANCELLED = 0x1c, EVENTID_SEQUENCEEXITED = 0x1d, EVENTID_SEQUENCEPANIC = 0x1e, EVENTID_SEQUENCETRAPPED = 0x1f,
  EVENTID_SEQUENCEHOSTFAILURE = 0x20, EVENTID_SEQUENCEPAUSED = 0x21, EVENTID_SEQUENCENOTRUNNING = 0x22, EVENTID_SLEEPDURATIONTOOLARGE = 0x23,
  EVENTID_HOSTFUNCTIONINVALIDID = 0x24, EVENTID_CMDRESPONSEFROMOLDSEQUENCE = 0x25, EVENTID_WRONGCMDRESPONSEINDEX = 0x26, EVENTID_INVALIDMODULEENTRYPOINT = 0x27,
  EVENTID_LOGWARNINGHI = 0x28, EVENTID_LOGWARNINGLO = 0x29, EVENTID_LOGACTIVITYHI = 0x2a, EVENTID_LOGACTIVITYLO = 0x2b,
  EVENTID_LOGDIAGNOSTIC = 0x2c
}
 Event IDs. More...
 
enum  {
  CHANNELID_CONTROLLERSTATE = 0x0, CHANNELID_INTERPRETERSTATE = 0x1, CHANNELID_SEQUENCESSUCCEEDED = 0x2, CHANNELID_SEQUENCESFAILED = 0x3,
  CHANNELID_SEQUENCESCANCELLED = 0x4, CHANNELID_COMMANDSDISPATCHED = 0x5, CHANNELID_COMMANDSFAILED = 0x6, CHANNELID_LASTTRAPREASON = 0x7,
  CHANNELID_SEQNAME = 0x8
}
 Channel IDs. More...
 
enum  { PARAMID_HOST_FUNCTION_TIMEOUT_SECS = 0x0, PARAMID_INSTRUCTION_FUEL = 0x1, PARAMID_SEQ_BASE_DIR = 0x2 }
 Parameter IDs. More...
 
enum  SmId : FwEnumStoreType { SmId::controller, SmId::interpreter }
 State machine identifiers. More...
 
- Protected Types inherited from Fw::ActiveComponentBase
enum  Lifecycle { CREATED, DISPATCHING, FINALIZING, DONE }
 Tracks the lifecycle of the component. More...
 

Protected Member Functions

 WasmSequencerComponentBase (const char *compName="")
 Construct WasmSequencerComponentBase object. More...
 
virtual ~WasmSequencerComponentBase ()
 Destroy WasmSequencerComponentBase object. More...
 
bool isConnected_cmdRegOut_OutputPort (FwIndexType portNum) const
 
bool isConnected_cmdResponseOut_OutputPort (FwIndexType portNum) const
 
bool isConnected_logOut_OutputPort (FwIndexType portNum) const
 
bool isConnected_prmGet_OutputPort (FwIndexType portNum) const
 
bool isConnected_prmSet_OutputPort (FwIndexType portNum) const
 
bool isConnected_timeCaller_OutputPort (FwIndexType portNum) const
 
bool isConnected_tlmOut_OutputPort (FwIndexType portNum) const
 
bool isConnected_cmdOut_OutputPort (FwIndexType portNum) const
 
bool isConnected_getParam_OutputPort (FwIndexType portNum) const
 
bool isConnected_getTlmChan_OutputPort (FwIndexType portNum) const
 
bool isConnected_seqDoneOut_OutputPort (FwIndexType portNum) const
 
bool isConnected_seqStartOut_OutputPort (FwIndexType portNum) const
 
bool isConnected_serialOut_OutputPort (FwIndexType portNum) const
 
void cmdIn_handlerBase (FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 Handler base-class function for input port cmdIn. More...
 
virtual void checkTimers_handler (FwIndexType portNum, U32 context)=0
 Handler for input port checkTimers. More...
 
virtual void cmdResponseIn_handler (FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)=0
 Handler for input port cmdResponseIn. More...
 
virtual void seqCancelIn_handler (FwIndexType portNum)=0
 Handler for input port seqCancelIn. More...
 
virtual void seqRunIn_handler (FwIndexType portNum, const Fw::StringBase &filename, const Svc::SeqArgs &args)=0
 Handler for input port seqRunIn. More...
 
virtual void writeTelemetry_handler (FwIndexType portNum, U32 context)=0
 Handler for input port writeTelemetry. More...
 
void checkTimers_handlerBase (FwIndexType portNum, U32 context)
 Handler base-class function for input port checkTimers. More...
 
void cmdResponseIn_handlerBase (FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)
 Handler base-class function for input port cmdResponseIn. More...
 
void seqCancelIn_handlerBase (FwIndexType portNum)
 Handler base-class function for input port seqCancelIn. More...
 
void seqRunIn_handlerBase (FwIndexType portNum, const Fw::StringBase &filename, const Svc::SeqArgs &args)
 Handler base-class function for input port seqRunIn. More...
 
void writeTelemetry_handlerBase (FwIndexType portNum, U32 context)
 Handler base-class function for input port writeTelemetry. More...
 
virtual void serialIn_handler (FwIndexType portNum, Fw::LinearBufferBase &buffer)=0
 Handler for input port serialIn. More...
 
void serialIn_handlerBase (FwIndexType portNum, Fw::LinearBufferBase &buffer)
 Handler base-class function for input port serialIn. More...
 
virtual void checkTimers_preMsgHook (FwIndexType portNum, U32 context)
 Pre-message hook for async input port checkTimers. More...
 
virtual void cmdResponseIn_preMsgHook (FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)
 Pre-message hook for async input port cmdResponseIn. More...
 
virtual void seqRunIn_preMsgHook (FwIndexType portNum, const Fw::StringBase &filename, const Svc::SeqArgs &args)
 Pre-message hook for async input port seqRunIn. More...
 
virtual void writeTelemetry_preMsgHook (FwIndexType portNum, U32 context)
 Pre-message hook for async input port writeTelemetry. More...
 
void cmdOut_out (FwIndexType portNum, Fw::ComBuffer &data, U32 context) const
 Invoke output port cmdOut. More...
 
Fw::ParamValid getParam_out (FwIndexType portNum, FwPrmIdType id, Fw::ParamBuffer &val) const
 Invoke output port getParam. More...
 
Fw::TlmValid getTlmChan_out (FwIndexType portNum, FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val) const
 Invoke output port getTlmChan. More...
 
void seqDoneOut_out (FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response) const
 Invoke output port seqDoneOut. More...
 
void seqStartOut_out (FwIndexType portNum, const Fw::StringBase &filename, const Svc::SeqArgs &args) const
 Invoke output port seqStartOut. More...
 
Fw::SerializeStatus serialOut_out (FwIndexType portNum, Fw::LinearBufferBase &buffer)
 Invoke output port serialOut. More...
 
Svc_WasmSequencer_ControllerStateMachine::State controller_getState () const
 Get the state of state machine instance controller. More...
 
Svc_WasmSequencer_InterpreterStateMachine::State interpreter_getState () const
 Get the state of state machine instance interpreter. More...
 
void controller_sendSignal_run (const Svc::WasmSequencer_LoadRequest &value)
 Send signal run to state machine controller. More...
 
void controller_sendSignal_load (const Svc::WasmSequencer_LoadRequest &value)
 Send signal load to state machine controller. More...
 
void controller_sendSignal_invoke (const Svc::WasmSequencer_InvokeRequest &value)
 Send signal invoke to state machine controller. More...
 
void controller_sendSignal_invoked (const Svc::WasmSequencer_RequestContext &value)
 Send signal invoked to state machine controller. More...
 
void controller_sendSignal_invokeFailed (const Svc::WasmSequencer_RequestContext &value)
 Send signal invokeFailed to state machine controller. More...
 
void controller_sendSignal_cancel ()
 Send signal cancel to state machine controller. More...
 
void controller_sendSignal_loadSucceeded (const Svc::WasmSequencer_RequestContext &value)
 Send signal loadSucceeded to state machine controller. More...
 
void controller_sendSignal_loadFailed (const Svc::WasmSequencer_RequestContext &value)
 Send signal loadFailed to state machine controller. More...
 
void controller_sendSignal_engineFinished (const Svc::WasmSequencer_RequestContext &value)
 Send signal engineFinished to state machine controller. More...
 
void interpreter_sendSignal_cmd_CONTINUE ()
 Send signal cmd_CONTINUE to state machine interpreter. More...
 
void interpreter_sendSignal_cmdCancel (const Svc::WasmSequencer_CommandRequest &value)
 Send signal cmdCancel to state machine interpreter. More...
 
void interpreter_sendSignal_cancel ()
 Send signal cancel to state machine interpreter. More...
 
void interpreter_sendSignal_entered ()
 Send signal entered to state machine interpreter. More...
 
void interpreter_sendSignal_run (const Svc::WasmSequencer_RequestContext &value)
 Send signal run to state machine interpreter. More...
 
void interpreter_sendSignal_checkTimers ()
 Send signal checkTimers to state machine interpreter. More...
 
void interpreter_sendSignal_hostResume ()
 Send signal hostResume to state machine interpreter. More...
 
void interpreter_sendSignal_hostResumeI32 (I32 value)
 Send signal hostResumeI32 to state machine interpreter. More...
 
void interpreter_sendSignal_hostResponseFailure ()
 Send signal hostResponseFailure to state machine interpreter. More...
 
void interpreter_sendSignal_hostResponseUnexpected (const Svc::WasmSequencer_HostFunction &value)
 Send signal hostResponseUnexpected to state machine interpreter. More...
 
void interpreter_sendSignal_hostResponseTimeIncomparable ()
 Send signal hostResponseTimeIncomparable to state machine interpreter. More...
 
void interpreter_sendSignal_hostResponseTimeout ()
 Send signal hostResponseTimeout to state machine interpreter. More...
 
void interpreter_sendSignal_serialInMessage (const FwIndexType &value)
 Send signal serialInMessage to state machine interpreter. More...
 
void interpreter_sendSignal_interpreterFinished (I32 value)
 Send signal interpreterFinished to state machine interpreter. More...
 
void interpreter_sendSignal_interpreterTrap (const Svc::WasmSequencer_TrapReason &value)
 Send signal interpreterTrap to state machine interpreter. More...
 
void interpreter_sendSignal_interpreterOutOfFuel ()
 Send signal interpreterOutOfFuel to state machine interpreter. More...
 
void interpreter_sendSignal_interpreterHostFunctionNeedsPause ()
 Send signal interpreterHostFunctionNeedsPause to state machine interpreter. More...
 
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_setCancelRequested (SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal)=0
 
virtual void Svc_WasmSequencer_ControllerStateMachine_action_clearCancelRequested (SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal)=0
 
virtual void Svc_WasmSequencer_ControllerStateMachine_action_cancelPendingRequest (SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
 
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_ControllerStateMachine_action_respond_ERROR (SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
 
virtual void Svc_WasmSequencer_ControllerStateMachine_action_incrementSequenceFailure (SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal)=0
 
virtual void Svc_WasmSequencer_ControllerStateMachine_action_respondInvoke_BUSY (SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_InvokeRequest &value)=0
 
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_ControllerStateMachine_action_respondLoad_BUSY (SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_LoadRequest &value)=0
 
virtual void Svc_WasmSequencer_ControllerStateMachine_action_respond_block_OK (SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
 
virtual void Svc_WasmSequencer_ControllerStateMachine_action_respond_block_ERROR (SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
 
virtual void Svc_WasmSequencer_ControllerStateMachine_action_load (SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_LoadRequest &value)=0
 
virtual void Svc_WasmSequencer_ControllerStateMachine_action_invokeStart (SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
 
virtual void Svc_WasmSequencer_ControllerStateMachine_action_invokeMain (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
 
virtual void Svc_WasmSequencer_ControllerStateMachine_action_reportModuleMainInvokeFailed (SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
 
virtual void Svc_WasmSequencer_ControllerStateMachine_action_reportModuleStartInvokeFailed (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 Svc_WasmSequencer_ControllerStateMachine_action_reportModuleSucceeded (SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
 
virtual void Svc_WasmSequencer_ControllerStateMachine_action_reportModuleStartFailed (SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
 
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_resetStore (SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal)=0
 
virtual void Svc_WasmSequencer_ControllerStateMachine_action_runEngine (SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
 
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_cmdReplyOK (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal, const Svc::WasmSequencer_CommandRequest &value)=0
 
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_signalEntered (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
 
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_spin (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
 
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_reset (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
 
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. More...
 
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_InterpreterStateMachine. More...
 
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_InterpreterStateMachine. More...
 
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_InterpreterStateMachine. More...
 
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_InterpreterStateMachine. More...
 
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_InterpreterStateMachine. More...
 
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_InterpreterStateMachine. More...
 
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_InterpreterStateMachine. More...
 
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. More...
 
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. More...
 
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_setLastHostFunction (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
 Implementation for action setLastHostFunction of state machine Svc_WasmSequencer_InterpreterStateMachine. More...
 
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_finish (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
 
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_reportPaused (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
 
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_clearPause (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
 
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_dispatchPendingHostFunction (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
 
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_clearPendingHostFunction (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
 
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_setContext (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value)=0
 
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_clearContext (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
 
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_resume (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
 
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_resumeI32 (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal, I32 value)=0
 
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_checkSleepTimers (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
 
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_checkTimeout (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal)=0
 
virtual void Svc_WasmSequencer_InterpreterStateMachine_action_dequeueSerialAndResume (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal, const FwIndexType &value)=0
 
virtual bool Svc_WasmSequencer_ControllerStateMachine_guard_cancelRequested (SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal) const =0
 
virtual bool Svc_WasmSequencer_ControllerStateMachine_guard_moduleHasStart (SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value) const =0
 
virtual bool Svc_WasmSequencer_ControllerStateMachine_guard_moduleHasValidMain (SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal, const Svc::WasmSequencer_RequestContext &value) const =0
 
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_ControllerStateMachine_guard_interpreterSucceeded (SmId smId, Svc_WasmSequencer_ControllerStateMachine::Signal signal) const =0
 
virtual bool Svc_WasmSequencer_InterpreterStateMachine_guard_pendingPause (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal) const =0
 
virtual bool Svc_WasmSequencer_InterpreterStateMachine_guard_pendingHostFunction (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal) const =0
 
virtual bool Svc_WasmSequencer_InterpreterStateMachine_guard_pendingHostFunctionIsSleep (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal) const =0
 
virtual bool Svc_WasmSequencer_InterpreterStateMachine_guard_blockingSerialIn (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal, const FwIndexType &value) const =0
 
virtual bool Svc_WasmSequencer_InterpreterStateMachine_guard_dequeueSucceeded (SmId smId, Svc_WasmSequencer_InterpreterStateMachine::Signal signal) const =0
 
void cmdResponse_out (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response)
 Emit command response. More...
 
virtual void RUN_cmdHandler (FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &fileName, const Svc::BlockState &block)=0
 
virtual void LOAD_cmdHandler (FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &fileName, const Fw::CmdStringArg &name)=0
 
virtual void INVOKE_cmdHandler (FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &module, const Svc::BlockState &block)=0
 
virtual void WAIT_cmdHandler (FwOpcodeType opCode, U32 cmdSeq)=0
 
virtual void CANCEL_cmdHandler (FwOpcodeType opCode, U32 cmdSeq)=0
 
virtual void PAUSE_cmdHandler (FwOpcodeType opCode, U32 cmdSeq)=0
 
virtual void CONTINUE_cmdHandler (FwOpcodeType opCode, U32 cmdSeq)=0
 
virtual void GLOBAL_SET_I32_cmdHandler (FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &moduleName, const Fw::CmdStringArg &name, I32 value)=0
 
virtual void GLOBAL_SET_I64_cmdHandler (FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &moduleName, const Fw::CmdStringArg &name, I64 value)=0
 
virtual void GLOBAL_SET_F32_cmdHandler (FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &moduleName, const Fw::CmdStringArg &name, F32 value)=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_GET_cmdHandler (FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &moduleName, const Fw::CmdStringArg &name)=0
 
void RUN_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void LOAD_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void INVOKE_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void WAIT_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void CANCEL_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void PAUSE_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void CONTINUE_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void GLOBAL_SET_I32_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void GLOBAL_SET_I64_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void GLOBAL_SET_F32_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void GLOBAL_SET_F64_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void GLOBAL_GET_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
virtual void RUN_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command RUN. More...
 
virtual void LOAD_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command LOAD. More...
 
virtual void INVOKE_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command INVOKE. More...
 
virtual void WAIT_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command WAIT. More...
 
virtual void PAUSE_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command PAUSE. More...
 
virtual void CONTINUE_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command CONTINUE. More...
 
virtual void GLOBAL_SET_I32_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command GLOBAL_SET_I32. More...
 
virtual void GLOBAL_SET_I64_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command GLOBAL_SET_I64. More...
 
virtual void GLOBAL_SET_F32_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command GLOBAL_SET_F32. More...
 
virtual void GLOBAL_SET_F64_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command GLOBAL_SET_F64. More...
 
virtual void GLOBAL_GET_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command GLOBAL_GET. More...
 
void log_DIAGNOSTIC_StoreAllocationSucceeded (U16 moduleCount) const
 
void log_WARNING_LO_ControllerCannotInvoke () const
 
void log_WARNING_LO_ControllerBusy (const Svc::WasmSequencer_SignalSource &signalSource, const Svc::WasmSequencer_ControllerStateMachine_State &state) const
 
void log_WARNING_LO_ModuleNotFound (const Fw::StringBase &module_name) const
 
void log_WARNING_LO_MemoryGrowRejected (const Svc::WasmSequencer_MemoryGrowFailReason &reason, U64 requestedSize) const
 
void log_WARNING_LO_GlobalSetFailed (const Fw::StringBase &module_name, const Fw::StringBase &globalName, const Svc::WasmSequencer_Status &reason) const
 Log event GlobalSetFailed. More...
 
void log_WARNING_LO_GlobalGetFailed (const Fw::StringBase &module_name, const Fw::StringBase &globalName, const Svc::WasmSequencer_Status &reason) const
 Log event GlobalGetFailed. More...
 
void log_ACTIVITY_LO_GlobalValueI32 (const Fw::StringBase &module_name, const Fw::StringBase &globalName, I32 value) const
 Log event GlobalValueI32. More...
 
void log_ACTIVITY_LO_GlobalValueI64 (const Fw::StringBase &module_name, const Fw::StringBase &globalName, I64 value) const
 Log event GlobalValueI64. More...
 
void log_ACTIVITY_LO_GlobalValueF32 (const Fw::StringBase &module_name, const Fw::StringBase &globalName, F32 value) const
 Log event GlobalValueF32. More...
 
void log_ACTIVITY_LO_GlobalValueF64 (const Fw::StringBase &module_name, const Fw::StringBase &globalName, F64 value) const
 Log event GlobalValueF64. More...
 
void log_WARNING_HI_FileOpenError (const Fw::StringBase &fileName, I32 status) const
 
void log_WARNING_HI_SequenceFilePathTooLong (const Fw::StringBase &baseDir, const Fw::StringBase &fileName) const
 
void log_WARNING_HI_SequenceFilePathNotContained (const Fw::StringBase &baseDir, const Fw::StringBase &fileName) const
 
void log_WARNING_HI_ModuleLoadFailed (const Svc::WasmSequencer_Status &status) const
 
void log_WARNING_HI_ModuleMainInvokeFailed (const Svc::WasmSequencer_Status &status) const
 
void log_WARNING_HI_ModuleStartInvokeFailed (const Svc::WasmSequencer_Status &status) const
 
void log_WARNING_HI_TooManyBlockingCommands () const
 
void log_WARNING_HI_BufferTooLarge (const Svc::WasmSequencer_HostFunction &host_function, U32 size, U32 maxSize) const
 
void log_WARNING_HI_BufferTooSmall (const Svc::WasmSequencer_HostFunction &host_function, U32 size, U32 valueSize) const
 
void log_WARNING_HI_HostFunctionInvalidPointer (const Svc::WasmSequencer_HostFunction &host_function, const Svc::WasmSequencer_Status &code) const
 Log event HostFunctionInvalidPointer. More...
 
void log_WARNING_HI_InvalidBlockingTypeValue (I32 invalidValue) const
 Log event InvalidBlockingTypeValue. More...
 
void log_WARNING_HI_HostFunctionInvalidPort (const Svc::WasmSequencer_HostFunction &host_function, I32 index, U32 numPorts) const
 
void log_WARNING_HI_SerialPortSendFailed (const Svc::WasmSequencer_HostFunction &host_function, I32 status) const
 
void log_WARNING_HI_SerialInFrameTooLarge (U32 portIndex, U32 size, U32 maxSize) const
 
void log_WARNING_HI_HostFunctionInvalidSeverity (I32 raw, const Fw::StringBase &msg) const
 
void log_ACTIVITY_HI_SequenceStarting (Svc::WasmSequencer_ModuleIdx index) const
 
void log_ACTIVITY_HI_SequenceSucceeded (Svc::WasmSequencer_ModuleIdx index) const
 
void log_ACTIVITY_HI_SequenceCancelled (Svc::WasmSequencer_ModuleIdx index, const Svc::WasmSequencer_SequencePhase &phase) const
 
void log_WARNING_HI_SequenceExited (Svc::WasmSequencer_ModuleIdx index, const Svc::WasmSequencer_SequencePhase &phase, I32 code) const
 
void log_WARNING_HI_SequencePanic (Svc::WasmSequencer_ModuleIdx index, const Svc::WasmSequencer_SequencePhase &phase, I32 code) const
 
void log_WARNING_HI_SequenceTrapped (Svc::WasmSequencer_ModuleIdx index, const Svc::WasmSequencer_SequencePhase &phase, const Svc::WasmSequencer_TrapReason &reason) const
 
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
 
void log_ACTIVITY_HI_SequencePaused () const
 
void log_WARNING_LO_SequenceNotRunning () const
 
void log_WARNING_HI_SleepDurationTooLarge (const Svc::WasmSequencer_HostFunction &host_function, U64 micros) const
 
void log_WARNING_HI_HostFunctionInvalidId (const Svc::WasmSequencer_HostFunction &host_function, I64 id) const
 
void log_WARNING_LO_CmdResponseFromOldSequence (FwOpcodeType opcode, const Fw::CmdResponse &response, U16 oldSequenceIdx, U16 currentSequenceIdx) const
 
void log_WARNING_HI_WrongCmdResponseIndex (FwOpcodeType opcode, const Fw::CmdResponse &response, U16 actualCmdIdx, U16 expectedCmdIdx) const
 
void log_WARNING_HI_InvalidModuleEntrypoint (Svc::WasmSequencer_ModuleIdx moduleIdx, const Svc::WasmSequencer_Status &status) const
 Log event InvalidModuleEntrypoint. More...
 
void log_WARNING_HI_LogWarningHi (const Fw::StringBase &msg) const
 
void log_WARNING_LO_LogWarningLo (const Fw::StringBase &msg) const
 
void log_ACTIVITY_HI_LogActivityHi (const Fw::StringBase &msg) const
 
void log_ACTIVITY_LO_LogActivityLo (const Fw::StringBase &msg) const
 
void log_DIAGNOSTIC_LogDiagnostic (const Fw::StringBase &msg) const
 
void tlmWrite (FwChanIdType id, Fw::TlmBuffer &_tlmBuff, Fw::Time _tlmTime=Fw::Time()) const
 
void tlmWrite_ControllerState (const Svc::WasmSequencer_ControllerStateMachine_State &arg, Fw::Time _tlmTime=Fw::Time())
 
void tlmWrite_InterpreterState (const Svc::WasmSequencer_InterpreterStateMachine_State &arg, Fw::Time _tlmTime=Fw::Time())
 
void tlmWrite_SequencesSucceeded (U64 arg, Fw::Time _tlmTime=Fw::Time())
 
void tlmWrite_SequencesFailed (U64 arg, Fw::Time _tlmTime=Fw::Time())
 
void tlmWrite_SequencesCancelled (U64 arg, Fw::Time _tlmTime=Fw::Time())
 
void tlmWrite_CommandsDispatched (U64 arg, Fw::Time _tlmTime=Fw::Time())
 
void tlmWrite_CommandsFailed (U64 arg, Fw::Time _tlmTime=Fw::Time())
 
void tlmWrite_LastTrapReason (const Svc::WasmSequencer_TrapReason &arg, Fw::Time _tlmTime=Fw::Time())
 
void tlmWrite_SeqName (const Fw::StringBase &arg, Fw::Time _tlmTime=Fw::Time())
 
virtual void parameterUpdated (FwPrmIdType id)
 Called whenever a parameter is updated. More...
 
virtual void parametersLoaded ()
 Called whenever parameters are loaded. More...
 
virtual void parameterLoaded (FwPrmIdType id, Fw::ParamValid valid)
 Called for each parameter when parameters are loaded. More...
 
F32 paramGet_HOST_FUNCTION_TIMEOUT_SECS (Fw::ParamValid &valid)
 
FwSizeType paramGet_INSTRUCTION_FUEL (Fw::ParamValid &valid)
 
Fw::ParamString paramGet_SEQ_BASE_DIR (Fw::ParamValid &valid)
 
Fw::Time getTime () const
 
virtual void lock ()
 Lock the guarded mutex. More...
 
virtual void unLock ()
 Unlock the guarded mutex. More...
 
- Protected Member Functions inherited from Fw::ActiveComponentBase
 ActiveComponentBase (const char *name)
 Constructor. More...
 
virtual ~ActiveComponentBase ()
 Destructor. More...
 
void init (FwEnumStoreType instance)
 initialization code More...
 
virtual void preamble ()
 A function that will be called before the event loop is entered. More...
 
MsgDispatchStatus dispatch ()
 The function that will dispatching messages. More...
 
virtual void finalizer ()
 A function that will be called after exiting the loop. More...
 
- Protected Member Functions inherited from Fw::QueuedComponentBase
 QueuedComponentBase (const char *name)
 Constructor. More...
 
virtual ~QueuedComponentBase ()
 Destructor. More...
 
void init (FwEnumStoreType instance)
 initialization function More...
 
Os::Queue::Status createQueue (FwSizeType depth, FwSizeType msgSize)
 
MsgDispatchStatus dispatchAvailableMessages ()
 dispatches all messages currently in the queue, returning status of the dispatch More...
 
FwSizeType getNumMsgsDropped ()
 return number of messages dropped More...
 
void incNumMsgDropped ()
 increment the number of messages dropped More...
 
- Protected Member Functions inherited from Fw::PassiveComponentBase
 PassiveComponentBase (const char *name)
 Named constructor. More...
 
virtual ~PassiveComponentBase ()
 Destructor. More...
 
void init (FwEnumStoreType instance)
 Initialization function. More...
 
FwEnumStoreType getInstance () const
 
- Protected Member Functions inherited from Fw::ObjBase
 ObjBase (const char *name)
 ObjBase constructor. More...
 
virtual ~ObjBase ()
 Destructor. More...
 
void init ()
 Object initializer. More...
 

Static Protected Member Functions

static constexpr FwIndexType getNum_cmdIn_InputPorts ()
 
static constexpr FwIndexType getNum_checkTimers_InputPorts ()
 
static constexpr FwIndexType getNum_cmdResponseIn_InputPorts ()
 
static constexpr FwIndexType getNum_seqCancelIn_InputPorts ()
 
static constexpr FwIndexType getNum_seqRunIn_InputPorts ()
 
static constexpr FwIndexType getNum_writeTelemetry_InputPorts ()
 
static constexpr FwIndexType getNum_serialIn_InputPorts ()
 
static constexpr FwIndexType getNum_cmdRegOut_OutputPorts ()
 
static constexpr FwIndexType getNum_cmdResponseOut_OutputPorts ()
 
static constexpr FwIndexType getNum_logOut_OutputPorts ()
 
static constexpr FwIndexType getNum_prmGet_OutputPorts ()
 
static constexpr FwIndexType getNum_prmSet_OutputPorts ()
 
static constexpr FwIndexType getNum_timeCaller_OutputPorts ()
 
static constexpr FwIndexType getNum_tlmOut_OutputPorts ()
 
static constexpr FwIndexType getNum_cmdOut_OutputPorts ()
 
static constexpr FwIndexType getNum_getParam_OutputPorts ()
 
static constexpr FwIndexType getNum_getTlmChan_OutputPorts ()
 
static constexpr FwIndexType getNum_seqDoneOut_OutputPorts ()
 
static constexpr FwIndexType getNum_seqStartOut_OutputPorts ()
 
static constexpr FwIndexType getNum_serialOut_OutputPorts ()
 

Friends

class WasmSequencerTesterBase
 Friend class tester to support autocoded test harness. More...
 
class WasmSequencerTester
 Friend class tester implementation to support white-box testing. More...
 

Additional Inherited Members

- Public Types inherited from Fw::ActiveComponentBase
enum  { ACTIVE_COMPONENT_EXIT }
 
- Public Types inherited from Fw::QueuedComponentBase
enum  MsgDispatchStatus { MSG_DISPATCH_OK, MSG_DISPATCH_EMPTY, MSG_DISPATCH_ERROR, MSG_DISPATCH_EXIT }
 
- Protected Attributes inherited from Fw::ActiveComponentBase
Os::Task m_task
 task object for active component More...
 
- Protected Attributes inherited from Fw::QueuedComponentBase
Os::Queue m_queue
 queue object for active component More...
 

Detailed Description

Auto-generated base for WasmSequencer component.

A sequence engine based around a WebAssembly interpreter

Definition at line 73 of file WasmSequencerComponentAc.hpp.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protected

Enumerations for numbers of special input ports.

Enumerator
NUM_CMDIN_INPUT_PORTS 

Definition at line 93 of file WasmSequencerComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Enumerations for numbers of typed input ports.

Enumerator
NUM_CHECKTIMERS_INPUT_PORTS 
NUM_CMDRESPONSEIN_INPUT_PORTS 
NUM_SEQCANCELIN_INPUT_PORTS 
NUM_SEQRUNIN_INPUT_PORTS 
NUM_WRITETELEMETRY_INPUT_PORTS 

Definition at line 98 of file WasmSequencerComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Enumerations for numbers of serial input ports.

Enumerator
NUM_SERIALIN_INPUT_PORTS 

Definition at line 107 of file WasmSequencerComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Enumerations for numbers of special output ports.

Enumerator
NUM_CMDREGOUT_OUTPUT_PORTS 
NUM_CMDRESPONSEOUT_OUTPUT_PORTS 
NUM_LOGOUT_OUTPUT_PORTS 
NUM_LOGTEXTOUT_OUTPUT_PORTS 
NUM_PRMGET_OUTPUT_PORTS 
NUM_PRMSET_OUTPUT_PORTS 
NUM_TIMECALLER_OUTPUT_PORTS 
NUM_TLMOUT_OUTPUT_PORTS 

Definition at line 112 of file WasmSequencerComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Enumerations for numbers of typed output ports.

Enumerator
NUM_CMDOUT_OUTPUT_PORTS 
NUM_GETPARAM_OUTPUT_PORTS 
NUM_GETTLMCHAN_OUTPUT_PORTS 
NUM_SEQDONEOUT_OUTPUT_PORTS 
NUM_SEQSTARTOUT_OUTPUT_PORTS 

Definition at line 124 of file WasmSequencerComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Enumerations for numbers of serial output ports.

Enumerator
NUM_SERIALOUT_OUTPUT_PORTS 

Definition at line 133 of file WasmSequencerComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Command opcodes.

Enumerator
OPCODE_RUN 

Run a Wasm module main function on it's own in the interpreter This command first resets the store (discarding any modules previously staged with LOAD), then is short-hand for:

```sh CANCEL # doesn't actually cancel a sequence, just resets the store LOAD [fileName] "" INVOKE "" [block] ```

If $block == Svc.BlockState.BLOCK this command will wait for completion.

OPCODE_LOAD 

Loads and validates a WebAssembly module into the store under the given name. Naming the module lets its exports be referenced by other modules and lets INVOKE, GLOBAL_GET and GLOBAL_SET address it. Use an empty name for a single, standalone module. The name must not conflict with a previously loaded module.

OPCODE_INVOKE 

Invoke a main function from a loaded module.

OPCODE_WAIT 

Wait for the interpreter to finish and return it's result as a CmdResponse.

OPCODE_CANCEL 

Cancels a running or validated sequence. After running CANCEL, the sequencer should return to IDLE This completely clears the store.

OPCODE_PAUSE 

Pauses the execution of the sequencer, just before it is about to start spinning. This simply pends a pause flag that will be taken before the sequence engine starts up again.

This command completes immediately

OPCODE_CONTINUE 

Resume the sequence from a paused state.

OPCODE_GLOBAL_SET_I32 

Set a global variable to a given i32 value. Command fails if the module is not found, global is not exported, mutable, or of i32 type

OPCODE_GLOBAL_SET_I64 

Set a global variable to a given i64 value. Command fails if the module is not found, global is not exported, mutable, or of i64 type

OPCODE_GLOBAL_SET_F32 

Set a global variable to a given f32 value. Command fails if the module is not found, global is not exported, mutable, or of f32 type

OPCODE_GLOBAL_SET_F64 

Set a global variable to a given f64 value. Command fails if the module is not found, global is not exported, mutable, or of f64 type

OPCODE_GLOBAL_GET 

Get the current value of a global variable and emit an event Command fails if the module is not found or the global is not exported

OPCODE_HOST_FUNCTION_TIMEOUT_SECS_SET 

Opcode to set parameter HOST_FUNCTION_TIMEOUT_SECS.

OPCODE_HOST_FUNCTION_TIMEOUT_SECS_SAVE 

Opcode to save parameter HOST_FUNCTION_TIMEOUT_SECS.

OPCODE_INSTRUCTION_FUEL_SET 

Opcode to set parameter INSTRUCTION_FUEL.

OPCODE_INSTRUCTION_FUEL_SAVE 

Opcode to save parameter INSTRUCTION_FUEL.

OPCODE_SEQ_BASE_DIR_SET 

Opcode to set parameter SEQ_BASE_DIR.

OPCODE_SEQ_BASE_DIR_SAVE 

Opcode to save parameter SEQ_BASE_DIR.

Definition at line 138 of file WasmSequencerComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Event IDs.

Enumerator
EVENTID_STOREALLOCATIONSUCCEEDED 

The interpreter store was allocated with capacity for the given number of modules.

EVENTID_CONTROLLERCANNOTINVOKE 

A command was issued in a state where it is not valid.

EVENTID_CONTROLLERBUSY 

A command was issued in a state where it is not valid.

EVENTID_MODULENOTFOUND 

Failed to find a loaded module with the requested name.

EVENTID_MEMORYGROWREJECTED 

A guest memory.grow could not be serviced by the guest bump allocator and was rejected. The guest sees memory.grow return -1; execution continues.

EVENTID_GLOBALSETFAILED 
EVENTID_GLOBALGETFAILED 
EVENTID_GLOBALVALUEI32 
EVENTID_GLOBALVALUEI64 
EVENTID_GLOBALVALUEF32 
EVENTID_GLOBALVALUEF64 
EVENTID_FILEOPENERROR 

Failed to open the requested Wasm module file.

EVENTID_SEQUENCEFILEPATHTOOLONG 

The SEQ_BASE_DIR base directory joined with the requested sequence file path exceeds the file-path buffer; the load will fail to open the truncated path.

EVENTID_SEQUENCEFILEPATHNOTCONTAINED 

A ground-supplied sequence file name contained a ".." path-traversal component while SEQ_BASE_DIR was configured, so it could escape the base directory. The load is rejected rather than opening a path outside the configured base dir.

EVENTID_MODULELOADFAILED 

A module failed to decode/validate while loading.

EVENTID_MODULEMAININVOKEFAILED 

Failed to invoke a module's main entrypoint.

EVENTID_MODULESTARTINVOKEFAILED 

Failed to invoke a module's start function.

EVENTID_TOOMANYBLOCKINGCOMMANDS 

A blocking command could not be queued because too many commands are already waiting on the sequencer to finish

EVENTID_BUFFERTOOLARGE 

A guest host function supplied a buffer larger than the host maximum for that call.

EVENTID_BUFFERTOOSMALL 

A guest host function supplied a buffer too small to hold the host value being returned.

EVENTID_HOSTFUNCTIONINVALIDPOINTER 
EVENTID_INVALIDBLOCKINGTYPEVALUE 
EVENTID_HOSTFUNCTIONINVALIDPORT 

A guest serial port host function requested a port index outside the configured range.

EVENTID_SERIALPORTSENDFAILED 

A guest serial port payload could not be serialized onto the serial output port (the receiving port rejected the guest-supplied bytes)

EVENTID_SERIALINFRAMETOOLARGE 

An inbound serial frame was larger than the receiving queue could ever hold and was dropped. serialIn is fed by external hardware/ground data, so an oversized frame is rejected here rather than asserting on flight software.

EVENTID_HOSTFUNCTIONINVALIDSEVERITY 

The guest requested an event at a severity that is not permitted for guest programs (an out-of-range id, or FATAL/COMMAND which are reserved for the host). The guest message is preserved and reported here at WARNING_HI.

EVENTID_SEQUENCESTARTING 

A sequence is starting after the main entrypoint was invoked.

EVENTID_SEQUENCESUCCEEDED 

The interpreter ran a program to completion.

EVENTID_SEQUENCECANCELLED 

The sequence was cancelled.

EVENTID_SEQUENCEEXITED 

The sequence finished with a non-zero code: the guest returned a non-zero value from main, or called fprime.exit with a non-zero code

EVENTID_SEQUENCEPANIC 

The guest called fprime.panic.

EVENTID_SEQUENCETRAPPED 

The interpreter aborted the sequence with a byte-code trap.

EVENTID_SEQUENCEHOSTFAILURE 

A host function the sequence was awaiting failed: an error reply, a reply timeout, an unexpected reply, or an incomparable timer

EVENTID_SEQUENCEPAUSED 

Execution was paused at a breakpoint.

EVENTID_SEQUENCENOTRUNNING 

No sequence is running so we cannot continue from a pause.

EVENTID_SLEEPDURATIONTOOLARGE 

The guest requested a sleep whose duration (in microseconds) does not fit the host timer representation (its whole-seconds part overflows U32)

EVENTID_HOSTFUNCTIONINVALIDID 

A guest host function supplied a 64-bit id (telemetry channel or parameter id) that does not fit in the narrower id type used by the framework. Casting it directly would silently alias a different, valid id, so the request is rejected rather than truncated.

EVENTID_CMDRESPONSEFROMOLDSEQUENCE 

A command response arrived carrying a context (cmdUid) from a previous sequence run. Reported (not failed) because a late reply after CANCEL is nominal.

EVENTID_WRONGCMDRESPONSEINDEX 

A command response arrived for the correct opcode from this sequence, but for a different dispatch instance than the one currently being awaited.

EVENTID_INVALIDMODULEENTRYPOINT 
EVENTID_LOGWARNINGHI 

A WARNING_HI event emitted by the guest program.

EVENTID_LOGWARNINGLO 

A WARNING_LO event emitted by the guest program.

EVENTID_LOGACTIVITYHI 

An ACTIVITY_HI event emitted by the guest program.

EVENTID_LOGACTIVITYLO 

An ACTIVITY_LO event emitted by the guest program.

EVENTID_LOGDIAGNOSTIC 

A DIAGNOSTIC event emitted by the guest program.

Definition at line 183 of file WasmSequencerComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Channel IDs.

Enumerator
CHANNELID_CONTROLLERSTATE 

Channel ID for ControllerState.

CHANNELID_INTERPRETERSTATE 

Channel ID for InterpreterState.

CHANNELID_SEQUENCESSUCCEEDED 

Channel ID for SequencesSucceeded.

CHANNELID_SEQUENCESFAILED 

Channel ID for SequencesFailed.

CHANNELID_SEQUENCESCANCELLED 

Channel ID for SequencesCancelled.

CHANNELID_COMMANDSDISPATCHED 

Channel ID for CommandsDispatched.

CHANNELID_COMMANDSFAILED 

Channel ID for CommandsFailed.

CHANNELID_LASTTRAPREASON 

Channel ID for LastTrapReason.

CHANNELID_SEQNAME 

Channel ID for SeqName.

Definition at line 250 of file WasmSequencerComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Parameter IDs.

Enumerator
PARAMID_HOST_FUNCTION_TIMEOUT_SECS 

the number of seconds to wait before giving up on a host function/command. if <= 0 or greater than U32 max, never time out. accuracy of this timeout is determined by the rate group driving this component. it will be rounded up.

PARAMID_INSTRUCTION_FUEL 

Number of Wasm instructions to execute per interpreter cycle. Larger numbers will effect the responsiveness of the interpreter to PAUSE commands. The interpreter will always pause before commands.

Larger numbers make the interpreter faster because the engine doesn't need to feed itself through a queue to fuel more cycles.

PARAMID_SEQ_BASE_DIR 

A literal prefix prepended to every requested sequence file path before resolution following the rules of Os::File::open. When non-empty it also acts as a containment boundary: a requested name with a ".." component is rejected rather than being allowed to escape the prefix.

Definition at line 263 of file WasmSequencerComponentAc.hpp.

◆ SmId

State machine identifiers.

Enumerator
controller 
interpreter 

Definition at line 281 of file WasmSequencerComponentAc.hpp.

Constructor & Destructor Documentation

◆ WasmSequencerComponentBase()

Svc::WasmSequencerComponentBase::WasmSequencerComponentBase ( const char *  compName = "")
protected

Construct WasmSequencerComponentBase object.

Parameters
compNameThe component name

Definition at line 1797 of file WasmSequencerComponentAc.cpp.

◆ ~WasmSequencerComponentBase()

Svc::WasmSequencerComponentBase::~WasmSequencerComponentBase ( )
protectedvirtual

Destroy WasmSequencerComponentBase object.

Definition at line 1806 of file WasmSequencerComponentAc.cpp.

Member Function Documentation

◆ CANCEL_cmdHandler()

virtual void Svc::WasmSequencerComponentBase::CANCEL_cmdHandler ( FwOpcodeType  opCode,
U32  cmdSeq 
)
protectedpure virtual

Handler for command CANCEL

Cancels a running or validated sequence. After running CANCEL, the sequencer should return to IDLE This completely clears the store.

Parameters
opCodeThe opcode
cmdSeqThe command sequence number

◆ CANCEL_cmdHandlerBase()

void Svc::WasmSequencerComponentBase::CANCEL_cmdHandlerBase ( FwOpcodeType  opCode,
U32  cmdSeq,
Fw::CmdArgBuffer &  args 
)
protected

Base-class handler function for command CANCEL

Cancels a running or validated sequence. After running CANCEL, the sequencer should return to IDLE This completely clears the store.

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
argsThe command argument buffer

Definition at line 3260 of file WasmSequencerComponentAc.cpp.

◆ checkTimers_handler()

virtual void Svc::WasmSequencerComponentBase::checkTimers_handler ( FwIndexType  portNum,
U32  context 
)
protectedpure virtual

Handler for input port checkTimers.

Parameters
portNumThe port number
contextThe call order

◆ checkTimers_handlerBase()

void Svc::WasmSequencerComponentBase::checkTimers_handlerBase ( FwIndexType  portNum,
U32  context 
)
protected

Handler base-class function for input port checkTimers.

Parameters
portNumThe port number
contextThe call order

Definition at line 2193 of file WasmSequencerComponentAc.cpp.

◆ checkTimers_preMsgHook()

void Svc::WasmSequencerComponentBase::checkTimers_preMsgHook ( FwIndexType  portNum,
U32  context 
)
protectedvirtual

Pre-message hook for async input port checkTimers.

Parameters
portNumThe port number
contextThe call order

Definition at line 2489 of file WasmSequencerComponentAc.cpp.

◆ cmdIn_handlerBase()

void Svc::WasmSequencerComponentBase::cmdIn_handlerBase ( FwIndexType  portNum,
FwOpcodeType  opCode,
U32  cmdSeq,
Fw::CmdArgBuffer &  args 
)
protected

Handler base-class function for input port cmdIn.

Parameters
portNumThe port number
opCodeThe opcode
cmdSeqThe command sequence number
argsThe command argument buffer

Definition at line 2000 of file WasmSequencerComponentAc.cpp.

◆ cmdOut_out()

void Svc::WasmSequencerComponentBase::cmdOut_out ( FwIndexType  portNum,
Fw::ComBuffer &  data,
U32  context 
) const
protected

Invoke output port cmdOut.

Parameters
portNumThe port number
dataBuffer containing packet data
contextCall context value; meaning chosen by user

Definition at line 2534 of file WasmSequencerComponentAc.cpp.

◆ cmdResponse_out()

void Svc::WasmSequencerComponentBase::cmdResponse_out ( FwOpcodeType  opCode,
U32  cmdSeq,
Fw::CmdResponse  response 
)
protected

Emit command response.

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
responseThe command response

Definition at line 3007 of file WasmSequencerComponentAc.cpp.

◆ cmdResponseIn_handler()

virtual void Svc::WasmSequencerComponentBase::cmdResponseIn_handler ( FwIndexType  portNum,
FwOpcodeType  opCode,
U32  cmdSeq,
const Fw::CmdResponse &  response 
)
protectedpure virtual

Handler for input port cmdResponseIn.

Parameters
portNumThe port number
opCodeCommand Op Code
cmdSeqCommand Sequence
responseThe command response argument

◆ cmdResponseIn_handlerBase()

void Svc::WasmSequencerComponentBase::cmdResponseIn_handlerBase ( FwIndexType  portNum,
FwOpcodeType  opCode,
U32  cmdSeq,
const Fw::CmdResponse &  response 
)
protected

Handler base-class function for input port cmdResponseIn.

Parameters
portNumThe port number
opCodeCommand Op Code
cmdSeqCommand Sequence
responseThe command response argument

Definition at line 2246 of file WasmSequencerComponentAc.cpp.

◆ cmdResponseIn_preMsgHook()

void Svc::WasmSequencerComponentBase::cmdResponseIn_preMsgHook ( FwIndexType  portNum,
FwOpcodeType  opCode,
U32  cmdSeq,
const Fw::CmdResponse &  response 
)
protectedvirtual

Pre-message hook for async input port cmdResponseIn.

Parameters
portNumThe port number
opCodeCommand Op Code
cmdSeqCommand Sequence
responseThe command response argument

Definition at line 2498 of file WasmSequencerComponentAc.cpp.

◆ CONTINUE_cmdHandler()

virtual void Svc::WasmSequencerComponentBase::CONTINUE_cmdHandler ( FwOpcodeType  opCode,
U32  cmdSeq 
)
protectedpure virtual

Handler for command CONTINUE

Resume the sequence from a paused state

Parameters
opCodeThe opcode
cmdSeqThe command sequence number

◆ CONTINUE_cmdHandlerBase()

void Svc::WasmSequencerComponentBase::CONTINUE_cmdHandlerBase ( FwOpcodeType  opCode,
U32  cmdSeq,
Fw::CmdArgBuffer &  args 
)
protected

Base-class handler function for command CONTINUE

Resume the sequence from a paused state

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
argsThe command argument buffer

Definition at line 3345 of file WasmSequencerComponentAc.cpp.

◆ CONTINUE_preMsgHook()

void Svc::WasmSequencerComponentBase::CONTINUE_preMsgHook ( FwOpcodeType  opCode,
U32  cmdSeq 
)
protectedvirtual

Pre-message hook for command CONTINUE.

Parameters
opCodeThe opcode
cmdSeqThe command sequence number

Definition at line 3762 of file WasmSequencerComponentAc.cpp.

◆ controller_getState()

WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine::State Svc::WasmSequencerComponentBase::controller_getState ( ) const
protected

Get the state of state machine instance controller.

Definition at line 2682 of file WasmSequencerComponentAc.cpp.

◆ controller_sendSignal_cancel()

void Svc::WasmSequencerComponentBase::controller_sendSignal_cancel ( )
protected

Send signal cancel to state machine controller.

Definition at line 2763 of file WasmSequencerComponentAc.cpp.

◆ controller_sendSignal_engineFinished()

void Svc::WasmSequencerComponentBase::controller_sendSignal_engineFinished ( const Svc::WasmSequencer_RequestContext &  value)
protected

Send signal engineFinished to state machine controller.

Parameters
valueThe value

Definition at line 2799 of file WasmSequencerComponentAc.cpp.

◆ controller_sendSignal_invoke()

void Svc::WasmSequencerComponentBase::controller_sendSignal_invoke ( const Svc::WasmSequencer_InvokeRequest &  value)
protected

Send signal invoke to state machine controller.

Parameters
valueThe value

Definition at line 2724 of file WasmSequencerComponentAc.cpp.

◆ controller_sendSignal_invoked()

void Svc::WasmSequencerComponentBase::controller_sendSignal_invoked ( const Svc::WasmSequencer_RequestContext &  value)
protected

Send signal invoked to state machine controller.

Parameters
valueThe value

Definition at line 2737 of file WasmSequencerComponentAc.cpp.

◆ controller_sendSignal_invokeFailed()

void Svc::WasmSequencerComponentBase::controller_sendSignal_invokeFailed ( const Svc::WasmSequencer_RequestContext &  value)
protected

Send signal invokeFailed to state machine controller.

Parameters
valueThe value

Definition at line 2750 of file WasmSequencerComponentAc.cpp.

◆ controller_sendSignal_load()

void Svc::WasmSequencerComponentBase::controller_sendSignal_load ( const Svc::WasmSequencer_LoadRequest &  value)
protected

Send signal load to state machine controller.

Parameters
valueThe value

Definition at line 2711 of file WasmSequencerComponentAc.cpp.

◆ controller_sendSignal_loadFailed()

void Svc::WasmSequencerComponentBase::controller_sendSignal_loadFailed ( const Svc::WasmSequencer_RequestContext &  value)
protected

Send signal loadFailed to state machine controller.

Parameters
valueThe value

Definition at line 2786 of file WasmSequencerComponentAc.cpp.

◆ controller_sendSignal_loadSucceeded()

void Svc::WasmSequencerComponentBase::controller_sendSignal_loadSucceeded ( const Svc::WasmSequencer_RequestContext &  value)
protected

Send signal loadSucceeded to state machine controller.

Parameters
valueThe value

Definition at line 2773 of file WasmSequencerComponentAc.cpp.

◆ controller_sendSignal_run()

void Svc::WasmSequencerComponentBase::controller_sendSignal_run ( const Svc::WasmSequencer_LoadRequest &  value)
protected

Send signal run to state machine controller.

Parameters
valueThe value

Definition at line 2698 of file WasmSequencerComponentAc.cpp.

◆ get_checkTimers_InputPort()

Svc::InputSchedPort * Svc::WasmSequencerComponentBase::get_checkTimers_InputPort ( FwIndexType  portNum)

Get typed input port at index

Returns
checkTimers[portNum]
Parameters
portNumThe port number

Definition at line 1131 of file WasmSequencerComponentAc.cpp.

◆ get_cmdIn_InputPort()

Fw::InputCmdPort * Svc::WasmSequencerComponentBase::get_cmdIn_InputPort ( FwIndexType  portNum)

Get special input port at index

Returns
cmdIn[portNum]
Parameters
portNumThe port number

Definition at line 1112 of file WasmSequencerComponentAc.cpp.

◆ get_cmdResponseIn_InputPort()

Fw::InputCmdResponsePort * Svc::WasmSequencerComponentBase::get_cmdResponseIn_InputPort ( FwIndexType  portNum)

Get typed input port at index

Returns
cmdResponseIn[portNum]
Parameters
portNumThe port number

Definition at line 1142 of file WasmSequencerComponentAc.cpp.

◆ get_seqCancelIn_InputPort()

Svc::InputCmdSeqCancelPort * Svc::WasmSequencerComponentBase::get_seqCancelIn_InputPort ( FwIndexType  portNum)

Get typed input port at index

Returns
seqCancelIn[portNum]
Parameters
portNumThe port number

Definition at line 1153 of file WasmSequencerComponentAc.cpp.

◆ get_seqRunIn_InputPort()

Svc::InputCmdSeqInPort * Svc::WasmSequencerComponentBase::get_seqRunIn_InputPort ( FwIndexType  portNum)

Get typed input port at index

Returns
seqRunIn[portNum]
Parameters
portNumThe port number

Definition at line 1164 of file WasmSequencerComponentAc.cpp.

◆ get_serialIn_InputPort()

Fw::InputSerializePort * Svc::WasmSequencerComponentBase::get_serialIn_InputPort ( FwIndexType  portNum)

Get serial input port at index

Returns
serialIn[portNum]
Parameters
portNumThe port number

Definition at line 1194 of file WasmSequencerComponentAc.cpp.

◆ get_writeTelemetry_InputPort()

Svc::InputSchedPort * Svc::WasmSequencerComponentBase::get_writeTelemetry_InputPort ( FwIndexType  portNum)

Get typed input port at index

Returns
writeTelemetry[portNum]
Parameters
portNumThe port number

Definition at line 1175 of file WasmSequencerComponentAc.cpp.

◆ getNum_checkTimers_InputPorts()

static constexpr FwIndexType Svc::WasmSequencerComponentBase::getNum_checkTimers_InputPorts ( )
inlinestaticprotected

Get the number of checkTimers input ports

Returns
The number of checkTimers input ports

Definition at line 1066 of file WasmSequencerComponentAc.hpp.

◆ getNum_cmdIn_InputPorts()

static constexpr FwIndexType Svc::WasmSequencerComponentBase::getNum_cmdIn_InputPorts ( )
inlinestaticprotected

Get the number of cmdIn input ports

Returns
The number of cmdIn input ports

Definition at line 1053 of file WasmSequencerComponentAc.hpp.

◆ getNum_cmdOut_OutputPorts()

static constexpr FwIndexType Svc::WasmSequencerComponentBase::getNum_cmdOut_OutputPorts ( )
inlinestaticprotected

Get the number of cmdOut output ports

Returns
The number of cmdOut output ports

Definition at line 1186 of file WasmSequencerComponentAc.hpp.

◆ getNum_cmdRegOut_OutputPorts()

static constexpr FwIndexType Svc::WasmSequencerComponentBase::getNum_cmdRegOut_OutputPorts ( )
inlinestaticprotected

Get the number of cmdRegOut output ports

Returns
The number of cmdRegOut output ports

Definition at line 1120 of file WasmSequencerComponentAc.hpp.

◆ getNum_cmdResponseIn_InputPorts()

static constexpr FwIndexType Svc::WasmSequencerComponentBase::getNum_cmdResponseIn_InputPorts ( )
inlinestaticprotected

Get the number of cmdResponseIn input ports

Returns
The number of cmdResponseIn input ports

Definition at line 1073 of file WasmSequencerComponentAc.hpp.

◆ getNum_cmdResponseOut_OutputPorts()

static constexpr FwIndexType Svc::WasmSequencerComponentBase::getNum_cmdResponseOut_OutputPorts ( )
inlinestaticprotected

Get the number of cmdResponseOut output ports

Returns
The number of cmdResponseOut output ports

Definition at line 1127 of file WasmSequencerComponentAc.hpp.

◆ getNum_getParam_OutputPorts()

static constexpr FwIndexType Svc::WasmSequencerComponentBase::getNum_getParam_OutputPorts ( )
inlinestaticprotected

Get the number of getParam output ports

Returns
The number of getParam output ports

Definition at line 1193 of file WasmSequencerComponentAc.hpp.

◆ getNum_getTlmChan_OutputPorts()

static constexpr FwIndexType Svc::WasmSequencerComponentBase::getNum_getTlmChan_OutputPorts ( )
inlinestaticprotected

Get the number of getTlmChan output ports

Returns
The number of getTlmChan output ports

Definition at line 1200 of file WasmSequencerComponentAc.hpp.

◆ getNum_logOut_OutputPorts()

static constexpr FwIndexType Svc::WasmSequencerComponentBase::getNum_logOut_OutputPorts ( )
inlinestaticprotected

Get the number of logOut output ports

Returns
The number of logOut output ports

Definition at line 1134 of file WasmSequencerComponentAc.hpp.

◆ getNum_prmGet_OutputPorts()

static constexpr FwIndexType Svc::WasmSequencerComponentBase::getNum_prmGet_OutputPorts ( )
inlinestaticprotected

Get the number of prmGet output ports

Returns
The number of prmGet output ports

Definition at line 1152 of file WasmSequencerComponentAc.hpp.

◆ getNum_prmSet_OutputPorts()

static constexpr FwIndexType Svc::WasmSequencerComponentBase::getNum_prmSet_OutputPorts ( )
inlinestaticprotected

Get the number of prmSet output ports

Returns
The number of prmSet output ports

Definition at line 1159 of file WasmSequencerComponentAc.hpp.

◆ getNum_seqCancelIn_InputPorts()

static constexpr FwIndexType Svc::WasmSequencerComponentBase::getNum_seqCancelIn_InputPorts ( )
inlinestaticprotected

Get the number of seqCancelIn input ports

Returns
The number of seqCancelIn input ports

Definition at line 1080 of file WasmSequencerComponentAc.hpp.

◆ getNum_seqDoneOut_OutputPorts()

static constexpr FwIndexType Svc::WasmSequencerComponentBase::getNum_seqDoneOut_OutputPorts ( )
inlinestaticprotected

Get the number of seqDoneOut output ports

Returns
The number of seqDoneOut output ports

Definition at line 1207 of file WasmSequencerComponentAc.hpp.

◆ getNum_seqRunIn_InputPorts()

static constexpr FwIndexType Svc::WasmSequencerComponentBase::getNum_seqRunIn_InputPorts ( )
inlinestaticprotected

Get the number of seqRunIn input ports

Returns
The number of seqRunIn input ports

Definition at line 1087 of file WasmSequencerComponentAc.hpp.

◆ getNum_seqStartOut_OutputPorts()

static constexpr FwIndexType Svc::WasmSequencerComponentBase::getNum_seqStartOut_OutputPorts ( )
inlinestaticprotected

Get the number of seqStartOut output ports

Returns
The number of seqStartOut output ports

Definition at line 1214 of file WasmSequencerComponentAc.hpp.

◆ getNum_serialIn_InputPorts()

static constexpr FwIndexType Svc::WasmSequencerComponentBase::getNum_serialIn_InputPorts ( )
inlinestaticprotected

Get the number of serialIn input ports

Returns
The number of serialIn input ports

Definition at line 1107 of file WasmSequencerComponentAc.hpp.

◆ getNum_serialOut_OutputPorts()

static constexpr FwIndexType Svc::WasmSequencerComponentBase::getNum_serialOut_OutputPorts ( )
inlinestaticprotected

Get the number of serialOut output ports

Returns
The number of serialOut output ports

Definition at line 1227 of file WasmSequencerComponentAc.hpp.

◆ getNum_timeCaller_OutputPorts()

static constexpr FwIndexType Svc::WasmSequencerComponentBase::getNum_timeCaller_OutputPorts ( )
inlinestaticprotected

Get the number of timeCaller output ports

Returns
The number of timeCaller output ports

Definition at line 1166 of file WasmSequencerComponentAc.hpp.

◆ getNum_tlmOut_OutputPorts()

static constexpr FwIndexType Svc::WasmSequencerComponentBase::getNum_tlmOut_OutputPorts ( )
inlinestaticprotected

Get the number of tlmOut output ports

Returns
The number of tlmOut output ports

Definition at line 1173 of file WasmSequencerComponentAc.hpp.

◆ getNum_writeTelemetry_InputPorts()

static constexpr FwIndexType Svc::WasmSequencerComponentBase::getNum_writeTelemetry_InputPorts ( )
inlinestaticprotected

Get the number of writeTelemetry input ports

Returns
The number of writeTelemetry input ports

Definition at line 1094 of file WasmSequencerComponentAc.hpp.

◆ getParam_out()

Fw::ParamValid Svc::WasmSequencerComponentBase::getParam_out ( FwIndexType  portNum,
FwPrmIdType  id,
Fw::ParamBuffer &  val 
) const
protected

Invoke output port getParam.

Parameters
portNumThe port number
idParameter ID
valBuffer containing serialized parameter value. Unmodified if param not found.

Definition at line 2556 of file WasmSequencerComponentAc.cpp.

◆ getTime()

Fw::Time Svc::WasmSequencerComponentBase::getTime ( ) const
protected

Get the time

\return The current time

Definition at line 8709 of file WasmSequencerComponentAc.cpp.

◆ getTlmChan_out()

Fw::TlmValid Svc::WasmSequencerComponentBase::getTlmChan_out ( FwIndexType  portNum,
FwChanIdType  id,
Fw::Time &  timeTag,
Fw::TlmBuffer &  val 
) const
protected

Invoke output port getTlmChan.

Parameters
portNumThe port number
idTelemetry Channel ID
timeTagTime Tag
valBuffer containing serialized telemetry value. Size set to 0 if channel not found, or if no value has been received for this channel yet.

Definition at line 2578 of file WasmSequencerComponentAc.cpp.

◆ GLOBAL_GET_cmdHandler()

virtual void Svc::WasmSequencerComponentBase::GLOBAL_GET_cmdHandler ( FwOpcodeType  opCode,
U32  cmdSeq,
const Fw::CmdStringArg &  moduleName,
const Fw::CmdStringArg &  name 
)
protectedpure virtual

Handler for command GLOBAL_GET

Get the current value of a global variable and emit an event Command fails if the module is not found or the global is not exported

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
moduleNameName of the module to get global for
nameName of the global

◆ GLOBAL_GET_cmdHandlerBase()

void Svc::WasmSequencerComponentBase::GLOBAL_GET_cmdHandlerBase ( FwOpcodeType  opCode,
U32  cmdSeq,
Fw::CmdArgBuffer &  args 
)
protected

Base-class handler function for command GLOBAL_GET

Get the current value of a global variable and emit an event Command fails if the module is not found or the global is not exported

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
argsThe command argument buffer

Definition at line 3640 of file WasmSequencerComponentAc.cpp.

◆ GLOBAL_GET_preMsgHook()

void Svc::WasmSequencerComponentBase::GLOBAL_GET_preMsgHook ( FwOpcodeType  opCode,
U32  cmdSeq 
)
protectedvirtual

Pre-message hook for command GLOBAL_GET.

Parameters
opCodeThe opcode
cmdSeqThe command sequence number

Definition at line 3817 of file WasmSequencerComponentAc.cpp.

◆ GLOBAL_SET_F32_cmdHandler()

virtual void Svc::WasmSequencerComponentBase::GLOBAL_SET_F32_cmdHandler ( FwOpcodeType  opCode,
U32  cmdSeq,
const Fw::CmdStringArg &  moduleName,
const Fw::CmdStringArg &  name,
F32  value 
)
protectedpure virtual

Handler for command GLOBAL_SET_F32

Set a global variable to a given f32 value. Command fails if the module is not found, global is not exported, mutable, or of f32 type

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
moduleNameName of the module to set global for
nameName of the global
valueValue to set global to

◆ GLOBAL_SET_F32_cmdHandlerBase()

void Svc::WasmSequencerComponentBase::GLOBAL_SET_F32_cmdHandlerBase ( FwOpcodeType  opCode,
U32  cmdSeq,
Fw::CmdArgBuffer &  args 
)
protected

Base-class handler function for command GLOBAL_SET_F32

Set a global variable to a given f32 value. Command fails if the module is not found, global is not exported, mutable, or of f32 type

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
argsThe command argument buffer

Definition at line 3522 of file WasmSequencerComponentAc.cpp.

◆ GLOBAL_SET_F32_preMsgHook()

void Svc::WasmSequencerComponentBase::GLOBAL_SET_F32_preMsgHook ( FwOpcodeType  opCode,
U32  cmdSeq 
)
protectedvirtual

Pre-message hook for command GLOBAL_SET_F32.

Parameters
opCodeThe opcode
cmdSeqThe command sequence number

Definition at line 3795 of file WasmSequencerComponentAc.cpp.

◆ GLOBAL_SET_F64_cmdHandler()

virtual void Svc::WasmSequencerComponentBase::GLOBAL_SET_F64_cmdHandler ( FwOpcodeType  opCode,
U32  cmdSeq,
const Fw::CmdStringArg &  moduleName,
const Fw::CmdStringArg &  name,
F64  value 
)
protectedpure virtual

Handler for command GLOBAL_SET_F64

Set a global variable to a given f64 value. Command fails if the module is not found, global is not exported, mutable, or of f64 type

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
moduleNameName of the module to set global for
nameName of the global
valueValue to set global to

◆ GLOBAL_SET_F64_cmdHandlerBase()

void Svc::WasmSequencerComponentBase::GLOBAL_SET_F64_cmdHandlerBase ( FwOpcodeType  opCode,
U32  cmdSeq,
Fw::CmdArgBuffer &  args 
)
protected

Base-class handler function for command GLOBAL_SET_F64

Set a global variable to a given f64 value. Command fails if the module is not found, global is not exported, mutable, or of f64 type

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
argsThe command argument buffer

Definition at line 3581 of file WasmSequencerComponentAc.cpp.

◆ GLOBAL_SET_F64_preMsgHook()

void Svc::WasmSequencerComponentBase::GLOBAL_SET_F64_preMsgHook ( FwOpcodeType  opCode,
U32  cmdSeq 
)
protectedvirtual

Pre-message hook for command GLOBAL_SET_F64.

Parameters
opCodeThe opcode
cmdSeqThe command sequence number

Definition at line 3806 of file WasmSequencerComponentAc.cpp.

◆ GLOBAL_SET_I32_cmdHandler()

virtual void Svc::WasmSequencerComponentBase::GLOBAL_SET_I32_cmdHandler ( FwOpcodeType  opCode,
U32  cmdSeq,
const Fw::CmdStringArg &  moduleName,
const Fw::CmdStringArg &  name,
I32  value 
)
protectedpure virtual

Handler for command GLOBAL_SET_I32

Set a global variable to a given i32 value. Command fails if the module is not found, global is not exported, mutable, or of i32 type

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
moduleNameName of the module to set global for
nameName of the global
valueValue to set global to

◆ GLOBAL_SET_I32_cmdHandlerBase()

void Svc::WasmSequencerComponentBase::GLOBAL_SET_I32_cmdHandlerBase ( FwOpcodeType  opCode,
U32  cmdSeq,
Fw::CmdArgBuffer &  args 
)
protected

Base-class handler function for command GLOBAL_SET_I32

Set a global variable to a given i32 value. Command fails if the module is not found, global is not exported, mutable, or of i32 type

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
argsThe command argument buffer

Definition at line 3404 of file WasmSequencerComponentAc.cpp.

◆ GLOBAL_SET_I32_preMsgHook()

void Svc::WasmSequencerComponentBase::GLOBAL_SET_I32_preMsgHook ( FwOpcodeType  opCode,
U32  cmdSeq 
)
protectedvirtual

Pre-message hook for command GLOBAL_SET_I32.

Parameters
opCodeThe opcode
cmdSeqThe command sequence number

Definition at line 3773 of file WasmSequencerComponentAc.cpp.

◆ GLOBAL_SET_I64_cmdHandler()

virtual void Svc::WasmSequencerComponentBase::GLOBAL_SET_I64_cmdHandler ( FwOpcodeType  opCode,
U32  cmdSeq,
const Fw::CmdStringArg &  moduleName,
const Fw::CmdStringArg &  name,
I64  value 
)
protectedpure virtual

Handler for command GLOBAL_SET_I64

Set a global variable to a given i64 value. Command fails if the module is not found, global is not exported, mutable, or of i64 type

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
moduleNameName of the module to set global for
nameName of the global
valueValue to set global to

◆ GLOBAL_SET_I64_cmdHandlerBase()

void Svc::WasmSequencerComponentBase::GLOBAL_SET_I64_cmdHandlerBase ( FwOpcodeType  opCode,
U32  cmdSeq,
Fw::CmdArgBuffer &  args 
)
protected

Base-class handler function for command GLOBAL_SET_I64

Set a global variable to a given i64 value. Command fails if the module is not found, global is not exported, mutable, or of i64 type

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
argsThe command argument buffer

Definition at line 3463 of file WasmSequencerComponentAc.cpp.

◆ GLOBAL_SET_I64_preMsgHook()

void Svc::WasmSequencerComponentBase::GLOBAL_SET_I64_preMsgHook ( FwOpcodeType  opCode,
U32  cmdSeq 
)
protectedvirtual

Pre-message hook for command GLOBAL_SET_I64.

Parameters
opCodeThe opcode
cmdSeqThe command sequence number

Definition at line 3784 of file WasmSequencerComponentAc.cpp.

◆ init()

void Svc::WasmSequencerComponentBase::init ( FwSizeType  queueDepth,
FwEnumStoreType  instance = 0 
)

Initialize WasmSequencerComponentBase object.

Parameters
queueDepthThe queue depth
instanceThe instance number

Definition at line 606 of file WasmSequencerComponentAc.cpp.

◆ interpreter_getState()

WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine::State Svc::WasmSequencerComponentBase::interpreter_getState ( ) const
protected

Get the state of state machine instance interpreter.

Definition at line 2688 of file WasmSequencerComponentAc.cpp.

◆ interpreter_sendSignal_cancel()

void Svc::WasmSequencerComponentBase::interpreter_sendSignal_cancel ( )
protected

Send signal cancel to state machine interpreter.

Definition at line 2835 of file WasmSequencerComponentAc.cpp.

◆ interpreter_sendSignal_checkTimers()

void Svc::WasmSequencerComponentBase::interpreter_sendSignal_checkTimers ( )
protected

Send signal checkTimers to state machine interpreter.

Definition at line 2868 of file WasmSequencerComponentAc.cpp.

◆ interpreter_sendSignal_cmd_CONTINUE()

void Svc::WasmSequencerComponentBase::interpreter_sendSignal_cmd_CONTINUE ( )
protected

Send signal cmd_CONTINUE to state machine interpreter.

Definition at line 2812 of file WasmSequencerComponentAc.cpp.

◆ interpreter_sendSignal_cmdCancel()

void Svc::WasmSequencerComponentBase::interpreter_sendSignal_cmdCancel ( const Svc::WasmSequencer_CommandRequest &  value)
protected

Send signal cmdCancel to state machine interpreter.

Parameters
valueThe value

Definition at line 2822 of file WasmSequencerComponentAc.cpp.

◆ interpreter_sendSignal_entered()

void Svc::WasmSequencerComponentBase::interpreter_sendSignal_entered ( )
protected

Send signal entered to state machine interpreter.

Definition at line 2845 of file WasmSequencerComponentAc.cpp.

◆ interpreter_sendSignal_hostResponseFailure()

void Svc::WasmSequencerComponentBase::interpreter_sendSignal_hostResponseFailure ( )
protected

Send signal hostResponseFailure to state machine interpreter.

Definition at line 2901 of file WasmSequencerComponentAc.cpp.

◆ interpreter_sendSignal_hostResponseTimeIncomparable()

void Svc::WasmSequencerComponentBase::interpreter_sendSignal_hostResponseTimeIncomparable ( )
protected

Send signal hostResponseTimeIncomparable to state machine interpreter.

Definition at line 2924 of file WasmSequencerComponentAc.cpp.

◆ interpreter_sendSignal_hostResponseTimeout()

void Svc::WasmSequencerComponentBase::interpreter_sendSignal_hostResponseTimeout ( )
protected

Send signal hostResponseTimeout to state machine interpreter.

Definition at line 2934 of file WasmSequencerComponentAc.cpp.

◆ interpreter_sendSignal_hostResponseUnexpected()

void Svc::WasmSequencerComponentBase::interpreter_sendSignal_hostResponseUnexpected ( const Svc::WasmSequencer_HostFunction &  value)
protected

Send signal hostResponseUnexpected to state machine interpreter.

Parameters
valueThe value

Definition at line 2911 of file WasmSequencerComponentAc.cpp.

◆ interpreter_sendSignal_hostResume()

void Svc::WasmSequencerComponentBase::interpreter_sendSignal_hostResume ( )
protected

Send signal hostResume to state machine interpreter.

Definition at line 2878 of file WasmSequencerComponentAc.cpp.

◆ interpreter_sendSignal_hostResumeI32()

void Svc::WasmSequencerComponentBase::interpreter_sendSignal_hostResumeI32 ( I32  value)
protected

Send signal hostResumeI32 to state machine interpreter.

Parameters
valueThe value

Definition at line 2888 of file WasmSequencerComponentAc.cpp.

◆ interpreter_sendSignal_interpreterFinished()

void Svc::WasmSequencerComponentBase::interpreter_sendSignal_interpreterFinished ( I32  value)
protected

Send signal interpreterFinished to state machine interpreter.

Parameters
valueThe value

Definition at line 2957 of file WasmSequencerComponentAc.cpp.

◆ interpreter_sendSignal_interpreterHostFunctionNeedsPause()

void Svc::WasmSequencerComponentBase::interpreter_sendSignal_interpreterHostFunctionNeedsPause ( )
protected

Send signal interpreterHostFunctionNeedsPause to state machine interpreter.

Definition at line 2993 of file WasmSequencerComponentAc.cpp.

◆ interpreter_sendSignal_interpreterOutOfFuel()

void Svc::WasmSequencerComponentBase::interpreter_sendSignal_interpreterOutOfFuel ( )
protected

Send signal interpreterOutOfFuel to state machine interpreter.

Definition at line 2983 of file WasmSequencerComponentAc.cpp.

◆ interpreter_sendSignal_interpreterTrap()

void Svc::WasmSequencerComponentBase::interpreter_sendSignal_interpreterTrap ( const Svc::WasmSequencer_TrapReason &  value)
protected

Send signal interpreterTrap to state machine interpreter.

Parameters
valueThe value

Definition at line 2970 of file WasmSequencerComponentAc.cpp.

◆ interpreter_sendSignal_run()

void Svc::WasmSequencerComponentBase::interpreter_sendSignal_run ( const Svc::WasmSequencer_RequestContext &  value)
protected

Send signal run to state machine interpreter.

Parameters
valueThe value

Definition at line 2855 of file WasmSequencerComponentAc.cpp.

◆ interpreter_sendSignal_serialInMessage()

void Svc::WasmSequencerComponentBase::interpreter_sendSignal_serialInMessage ( const FwIndexType &  value)
protected

Send signal serialInMessage to state machine interpreter.

Parameters
valueThe value

Definition at line 2944 of file WasmSequencerComponentAc.cpp.

◆ INVOKE_cmdHandler()

virtual void Svc::WasmSequencerComponentBase::INVOKE_cmdHandler ( FwOpcodeType  opCode,
U32  cmdSeq,
const Fw::CmdStringArg &  module,
const Svc::BlockState &  block 
)
protectedpure virtual

Handler for command INVOKE

Invoke a main function from a loaded module

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
moduleName of the module to invoke a function from
blockBlock until sequence has finished running

◆ INVOKE_cmdHandlerBase()

void Svc::WasmSequencerComponentBase::INVOKE_cmdHandlerBase ( FwOpcodeType  opCode,
U32  cmdSeq,
Fw::CmdArgBuffer &  args 
)
protected

Base-class handler function for command INVOKE

Invoke a main function from a loaded module

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
argsThe command argument buffer

Definition at line 3142 of file WasmSequencerComponentAc.cpp.

◆ INVOKE_preMsgHook()

void Svc::WasmSequencerComponentBase::INVOKE_preMsgHook ( FwOpcodeType  opCode,
U32  cmdSeq 
)
protectedvirtual

Pre-message hook for command INVOKE.

Parameters
opCodeThe opcode
cmdSeqThe command sequence number

Definition at line 3729 of file WasmSequencerComponentAc.cpp.

◆ isConnected_cmdOut_OutputPort()

bool Svc::WasmSequencerComponentBase::isConnected_cmdOut_OutputPort ( FwIndexType  portNum) const
protected

Check whether port cmdOut is connected

Returns
Whether port cmdOut is connected
Parameters
portNumThe port number

Definition at line 1918 of file WasmSequencerComponentAc.cpp.

◆ isConnected_cmdRegOut_OutputPort()

bool Svc::WasmSequencerComponentBase::isConnected_cmdRegOut_OutputPort ( FwIndexType  portNum) const
protected

Check whether port cmdRegOut is connected

Returns
Whether port cmdRegOut is connected
Parameters
portNumThe port number

Definition at line 1818 of file WasmSequencerComponentAc.cpp.

◆ isConnected_cmdResponseOut_OutputPort()

bool Svc::WasmSequencerComponentBase::isConnected_cmdResponseOut_OutputPort ( FwIndexType  portNum) const
protected

Check whether port cmdResponseOut is connected

Returns
Whether port cmdResponseOut is connected
Parameters
portNumThe port number

Definition at line 1829 of file WasmSequencerComponentAc.cpp.

◆ isConnected_getParam_OutputPort()

bool Svc::WasmSequencerComponentBase::isConnected_getParam_OutputPort ( FwIndexType  portNum) const
protected

Check whether port getParam is connected

Returns
Whether port getParam is connected
Parameters
portNumThe port number

Definition at line 1929 of file WasmSequencerComponentAc.cpp.

◆ isConnected_getTlmChan_OutputPort()

bool Svc::WasmSequencerComponentBase::isConnected_getTlmChan_OutputPort ( FwIndexType  portNum) const
protected

Check whether port getTlmChan is connected

Returns
Whether port getTlmChan is connected
Parameters
portNumThe port number

Definition at line 1940 of file WasmSequencerComponentAc.cpp.

◆ isConnected_logOut_OutputPort()

bool Svc::WasmSequencerComponentBase::isConnected_logOut_OutputPort ( FwIndexType  portNum) const
protected

Check whether port logOut is connected

Returns
Whether port logOut is connected
Parameters
portNumThe port number

Definition at line 1840 of file WasmSequencerComponentAc.cpp.

◆ isConnected_prmGet_OutputPort()

bool Svc::WasmSequencerComponentBase::isConnected_prmGet_OutputPort ( FwIndexType  portNum) const
protected

Check whether port prmGet is connected

Returns
Whether port prmGet is connected
Parameters
portNumThe port number

Definition at line 1866 of file WasmSequencerComponentAc.cpp.

◆ isConnected_prmSet_OutputPort()

bool Svc::WasmSequencerComponentBase::isConnected_prmSet_OutputPort ( FwIndexType  portNum) const
protected

Check whether port prmSet is connected

Returns
Whether port prmSet is connected
Parameters
portNumThe port number

Definition at line 1877 of file WasmSequencerComponentAc.cpp.

◆ isConnected_seqDoneOut_OutputPort()

bool Svc::WasmSequencerComponentBase::isConnected_seqDoneOut_OutputPort ( FwIndexType  portNum) const
protected

Check whether port seqDoneOut is connected

Returns
Whether port seqDoneOut is connected
Parameters
portNumThe port number

Definition at line 1951 of file WasmSequencerComponentAc.cpp.

◆ isConnected_seqStartOut_OutputPort()

bool Svc::WasmSequencerComponentBase::isConnected_seqStartOut_OutputPort ( FwIndexType  portNum) const
protected

Check whether port seqStartOut is connected

Returns
Whether port seqStartOut is connected
Parameters
portNumThe port number

Definition at line 1962 of file WasmSequencerComponentAc.cpp.

◆ isConnected_serialOut_OutputPort()

bool Svc::WasmSequencerComponentBase::isConnected_serialOut_OutputPort ( FwIndexType  portNum) const
protected

Check whether port serialOut is connected

Returns
Whether port serialOut is connected
Parameters
portNumThe port number

Definition at line 1981 of file WasmSequencerComponentAc.cpp.

◆ isConnected_timeCaller_OutputPort()

bool Svc::WasmSequencerComponentBase::isConnected_timeCaller_OutputPort ( FwIndexType  portNum) const
protected

Check whether port timeCaller is connected

Returns
Whether port timeCaller is connected
Parameters
portNumThe port number

Definition at line 1888 of file WasmSequencerComponentAc.cpp.

◆ isConnected_tlmOut_OutputPort()

bool Svc::WasmSequencerComponentBase::isConnected_tlmOut_OutputPort ( FwIndexType  portNum) const
protected

Check whether port tlmOut is connected

Returns
Whether port tlmOut is connected
Parameters
portNumThe port number

Definition at line 1899 of file WasmSequencerComponentAc.cpp.

◆ LOAD_cmdHandler()

virtual void Svc::WasmSequencerComponentBase::LOAD_cmdHandler ( FwOpcodeType  opCode,
U32  cmdSeq,
const Fw::CmdStringArg &  fileName,
const Fw::CmdStringArg &  name 
)
protectedpure virtual

Handler for command LOAD

Loads and validates a WebAssembly module into the store under the given name. Naming the module lets its exports be referenced by other modules and lets INVOKE, GLOBAL_GET and GLOBAL_SET address it. Use an empty name for a single, standalone module. The name must not conflict with a previously loaded module.

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
fileNameThe name of the sequence file
nameWebAssembly module name (empty for a single unnamed module)

◆ LOAD_cmdHandlerBase()

void Svc::WasmSequencerComponentBase::LOAD_cmdHandlerBase ( FwOpcodeType  opCode,
U32  cmdSeq,
Fw::CmdArgBuffer &  args 
)
protected

Base-class handler function for command LOAD

Loads and validates a WebAssembly module into the store under the given name. Naming the module lets its exports be referenced by other modules and lets INVOKE, GLOBAL_GET and GLOBAL_SET address it. Use an empty name for a single, standalone module. The name must not conflict with a previously loaded module.

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
argsThe command argument buffer

Definition at line 3083 of file WasmSequencerComponentAc.cpp.

◆ LOAD_preMsgHook()

void Svc::WasmSequencerComponentBase::LOAD_preMsgHook ( FwOpcodeType  opCode,
U32  cmdSeq 
)
protectedvirtual

Pre-message hook for command LOAD.

Parameters
opCodeThe opcode
cmdSeqThe command sequence number

Definition at line 3718 of file WasmSequencerComponentAc.cpp.

◆ loadParameters()

void Svc::WasmSequencerComponentBase::loadParameters ( )

Load the parameters from a parameter source.

Connect the parameter first

Definition at line 1695 of file WasmSequencerComponentAc.cpp.

◆ lock()

void Svc::WasmSequencerComponentBase::lock ( )
protectedvirtual

Lock the guarded mutex.

Definition at line 8729 of file WasmSequencerComponentAc.cpp.

◆ log_ACTIVITY_HI_LogActivityHi()

void Svc::WasmSequencerComponentBase::log_ACTIVITY_HI_LogActivityHi ( const Fw::StringBase &  msg) const
protected

Log event LogActivityHi

An ACTIVITY_HI event emitted by the guest program

Definition at line 8039 of file WasmSequencerComponentAc.cpp.

◆ log_ACTIVITY_HI_SequenceCancelled()

void Svc::WasmSequencerComponentBase::log_ACTIVITY_HI_SequenceCancelled ( Svc::WasmSequencer_ModuleIdx  index,
const Svc::WasmSequencer_SequencePhase &  phase 
) const
protected

Log event SequenceCancelled

The sequence was cancelled

Definition at line 6541 of file WasmSequencerComponentAc.cpp.

◆ log_ACTIVITY_HI_SequencePaused()

void Svc::WasmSequencerComponentBase::log_ACTIVITY_HI_SequencePaused ( ) const
protected

Log event SequencePaused

Execution was paused at a breakpoint

Definition at line 7162 of file WasmSequencerComponentAc.cpp.

◆ log_ACTIVITY_HI_SequenceStarting()

void Svc::WasmSequencerComponentBase::log_ACTIVITY_HI_SequenceStarting ( Svc::WasmSequencer_ModuleIdx  index) const
protected

Log event SequenceStarting

A sequence is starting after the main entrypoint was invoked

Definition at line 6377 of file WasmSequencerComponentAc.cpp.

◆ log_ACTIVITY_HI_SequenceSucceeded()

void Svc::WasmSequencerComponentBase::log_ACTIVITY_HI_SequenceSucceeded ( Svc::WasmSequencer_ModuleIdx  index) const
protected

Log event SequenceSucceeded

The interpreter ran a program to completion

Definition at line 6459 of file WasmSequencerComponentAc.cpp.

◆ log_ACTIVITY_LO_GlobalValueF32()

void Svc::WasmSequencerComponentBase::log_ACTIVITY_LO_GlobalValueF32 ( const Fw::StringBase &  module_name,
const Fw::StringBase &  globalName,
F32  value 
) const
protected

Log event GlobalValueF32.

Definition at line 4696 of file WasmSequencerComponentAc.cpp.

◆ log_ACTIVITY_LO_GlobalValueF64()

void Svc::WasmSequencerComponentBase::log_ACTIVITY_LO_GlobalValueF64 ( const Fw::StringBase &  module_name,
const Fw::StringBase &  globalName,
F64  value 
) const
protected

Log event GlobalValueF64.

Definition at line 4802 of file WasmSequencerComponentAc.cpp.

◆ log_ACTIVITY_LO_GlobalValueI32()

void Svc::WasmSequencerComponentBase::log_ACTIVITY_LO_GlobalValueI32 ( const Fw::StringBase &  module_name,
const Fw::StringBase &  globalName,
I32  value 
) const
protected

Log event GlobalValueI32.

Definition at line 4484 of file WasmSequencerComponentAc.cpp.

◆ log_ACTIVITY_LO_GlobalValueI64()

void Svc::WasmSequencerComponentBase::log_ACTIVITY_LO_GlobalValueI64 ( const Fw::StringBase &  module_name,
const Fw::StringBase &  globalName,
I64  value 
) const
protected

Log event GlobalValueI64.

Definition at line 4590 of file WasmSequencerComponentAc.cpp.

◆ log_ACTIVITY_LO_LogActivityLo()

void Svc::WasmSequencerComponentBase::log_ACTIVITY_LO_LogActivityLo ( const Fw::StringBase &  msg) const
protected

Log event LogActivityLo

An ACTIVITY_LO event emitted by the guest program

Definition at line 8114 of file WasmSequencerComponentAc.cpp.

◆ log_DIAGNOSTIC_LogDiagnostic()

void Svc::WasmSequencerComponentBase::log_DIAGNOSTIC_LogDiagnostic ( const Fw::StringBase &  msg) const
protected

Log event LogDiagnostic

A DIAGNOSTIC event emitted by the guest program

Definition at line 8189 of file WasmSequencerComponentAc.cpp.

◆ log_DIAGNOSTIC_StoreAllocationSucceeded()

void Svc::WasmSequencerComponentBase::log_DIAGNOSTIC_StoreAllocationSucceeded ( U16  moduleCount) const
protected

Log event StoreAllocationSucceeded

The interpreter store was allocated with capacity for the given number of modules

Definition at line 3832 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_BufferTooLarge()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_BufferTooLarge ( const Svc::WasmSequencer_HostFunction &  host_function,
U32  size,
U32  maxSize 
) const
protected

Log event BufferTooLarge

A guest host function supplied a buffer larger than the host maximum for that call

Definition at line 5499 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_BufferTooSmall()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_BufferTooSmall ( const Svc::WasmSequencer_HostFunction &  host_function,
U32  size,
U32  valueSize 
) const
protected

Log event BufferTooSmall

A guest host function supplied a buffer too small to hold the host value being returned

Definition at line 5622 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_FileOpenError()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_FileOpenError ( const Fw::StringBase &  fileName,
I32  status 
) const
protected

Log event FileOpenError

Failed to open the requested Wasm module file

Definition at line 4908 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_HostFunctionInvalidId()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_HostFunctionInvalidId ( const Svc::WasmSequencer_HostFunction &  host_function,
I64  id 
) const
protected

Log event HostFunctionInvalidId

A guest host function supplied a 64-bit id (telemetry channel or parameter id) that does not fit in the narrower id type used by the framework. Casting it directly would silently alias a different, valid id, so the request is rejected rather than truncated.

Definition at line 7397 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_HostFunctionInvalidPointer()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_HostFunctionInvalidPointer ( const Svc::WasmSequencer_HostFunction &  host_function,
const Svc::WasmSequencer_Status &  code 
) const
protected

Log event HostFunctionInvalidPointer.

Definition at line 5745 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_HostFunctionInvalidPort()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_HostFunctionInvalidPort ( const Svc::WasmSequencer_HostFunction &  host_function,
I32  index,
U32  numPorts 
) const
protected

Log event HostFunctionInvalidPort

A guest serial port host function requested a port index outside the configured range

Definition at line 5934 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_HostFunctionInvalidSeverity()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_HostFunctionInvalidSeverity ( I32  raw,
const Fw::StringBase &  msg 
) const
protected

Log event HostFunctionInvalidSeverity

The guest requested an event at a severity that is not permitted for guest programs (an out-of-range id, or FATAL/COMMAND which are reserved for the host). The guest message is preserved and reported here at WARNING_HI.

Definition at line 6282 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_InvalidBlockingTypeValue()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_InvalidBlockingTypeValue ( I32  invalidValue) const
protected

Log event InvalidBlockingTypeValue.

Definition at line 5852 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_InvalidModuleEntrypoint()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_InvalidModuleEntrypoint ( Svc::WasmSequencer_ModuleIdx  moduleIdx,
const Svc::WasmSequencer_Status &  status 
) const
protected

Log event InvalidModuleEntrypoint.

Definition at line 7784 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_LogWarningHi()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_LogWarningHi ( const Fw::StringBase &  msg) const
protected

Log event LogWarningHi

A WARNING_HI event emitted by the guest program

Definition at line 7889 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_ModuleLoadFailed()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_ModuleLoadFailed ( const Svc::WasmSequencer_Status &  status) const
protected

Log event ModuleLoadFailed

A module failed to decode/validate while loading

Definition at line 5179 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_ModuleMainInvokeFailed()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_ModuleMainInvokeFailed ( const Svc::WasmSequencer_Status &  status) const
protected

Log event ModuleMainInvokeFailed

Failed to invoke a module's main entrypoint

Definition at line 5264 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_ModuleStartInvokeFailed()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_ModuleStartInvokeFailed ( const Svc::WasmSequencer_Status &  status) const
protected

Log event ModuleStartInvokeFailed

Failed to invoke a module's start function

Definition at line 5349 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_SequenceExited()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_SequenceExited ( Svc::WasmSequencer_ModuleIdx  index,
const Svc::WasmSequencer_SequencePhase &  phase,
I32  code 
) const
protected

Log event SequenceExited

The sequence finished with a non-zero code: the guest returned a non-zero value from main, or called fprime.exit with a non-zero code

Definition at line 6646 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_SequenceFilePathNotContained()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_SequenceFilePathNotContained ( const Fw::StringBase &  baseDir,
const Fw::StringBase &  fileName 
) const
protected

Log event SequenceFilePathNotContained

A ground-supplied sequence file name contained a ".." path-traversal component while SEQ_BASE_DIR was configured, so it could escape the base directory. The load is rejected rather than opening a path outside the configured base dir.

Definition at line 5091 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_SequenceFilePathTooLong()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_SequenceFilePathTooLong ( const Fw::StringBase &  baseDir,
const Fw::StringBase &  fileName 
) const
protected

Log event SequenceFilePathTooLong

The SEQ_BASE_DIR base directory joined with the requested sequence file path exceeds the file-path buffer; the load will fail to open the truncated path.

Definition at line 5003 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_SequenceHostFailure()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_SequenceHostFailure ( Svc::WasmSequencer_ModuleIdx  index,
const Svc::WasmSequencer_SequencePhase &  phase,
const Svc::WasmSequencer_ExitReason &  reason,
const Svc::WasmSequencer_HostFunction &  hostFunction 
) const
protected

Log event SequenceHostFailure

A host function the sequence was awaiting failed: an error reply, a reply timeout, an unexpected reply, or an incomparable timer

Definition at line 7017 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_SequencePanic()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_SequencePanic ( Svc::WasmSequencer_ModuleIdx  index,
const Svc::WasmSequencer_SequencePhase &  phase,
I32  code 
) const
protected

Log event SequencePanic

The guest called fprime.panic

Definition at line 6769 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_SequenceTrapped()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_SequenceTrapped ( Svc::WasmSequencer_ModuleIdx  index,
const Svc::WasmSequencer_SequencePhase &  phase,
const Svc::WasmSequencer_TrapReason &  reason 
) const
protected

Log event SequenceTrapped

The interpreter aborted the sequence with a byte-code trap

Definition at line 6892 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_SerialInFrameTooLarge()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_SerialInFrameTooLarge ( U32  portIndex,
U32  size,
U32  maxSize 
) const
protected

Log event SerialInFrameTooLarge

An inbound serial frame was larger than the receiving queue could ever hold and was dropped. serialIn is fed by external hardware/ground data, so an oversized frame is rejected here rather than asserting on flight software.

Definition at line 6162 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_SerialPortSendFailed()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_SerialPortSendFailed ( const Svc::WasmSequencer_HostFunction &  host_function,
I32  status 
) const
protected

Log event SerialPortSendFailed

A guest serial port payload could not be serialized onto the serial output port (the receiving port rejected the guest-supplied bytes)

Definition at line 6057 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_SleepDurationTooLarge()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_SleepDurationTooLarge ( const Svc::WasmSequencer_HostFunction &  host_function,
U64  micros 
) const
protected

Log event SleepDurationTooLarge

The guest requested a sleep whose duration (in microseconds) does not fit the host timer representation (its whole-seconds part overflows U32)

Definition at line 7292 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_TooManyBlockingCommands()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_TooManyBlockingCommands ( ) const
protected

Log event TooManyBlockingCommands

A blocking command could not be queued because too many commands are already waiting on the sequencer to finish

Definition at line 5434 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_HI_WrongCmdResponseIndex()

void Svc::WasmSequencerComponentBase::log_WARNING_HI_WrongCmdResponseIndex ( FwOpcodeType  opcode,
const Fw::CmdResponse &  response,
U16  actualCmdIdx,
U16  expectedCmdIdx 
) const
protected

Log event WrongCmdResponseIndex

A command response arrived for the correct opcode from this sequence, but for a different dispatch instance than the one currently being awaited.

Definition at line 7643 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_LO_CmdResponseFromOldSequence()

void Svc::WasmSequencerComponentBase::log_WARNING_LO_CmdResponseFromOldSequence ( FwOpcodeType  opcode,
const Fw::CmdResponse &  response,
U16  oldSequenceIdx,
U16  currentSequenceIdx 
) const
protected

Log event CmdResponseFromOldSequence

A command response arrived carrying a context (cmdUid) from a previous sequence run. Reported (not failed) because a late reply after CANCEL is nominal.

Definition at line 7502 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_LO_ControllerBusy()

void Svc::WasmSequencerComponentBase::log_WARNING_LO_ControllerBusy ( const Svc::WasmSequencer_SignalSource &  signalSource,
const Svc::WasmSequencer_ControllerStateMachine_State &  state 
) const
protected

Log event ControllerBusy

A command was issued in a state where it is not valid

Definition at line 3979 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_LO_ControllerCannotInvoke()

void Svc::WasmSequencerComponentBase::log_WARNING_LO_ControllerCannotInvoke ( ) const
protected

Log event ControllerCannotInvoke

A command was issued in a state where it is not valid

Definition at line 3914 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_LO_GlobalGetFailed()

void Svc::WasmSequencerComponentBase::log_WARNING_LO_GlobalGetFailed ( const Fw::StringBase &  module_name,
const Fw::StringBase &  globalName,
const Svc::WasmSequencer_Status &  reason 
) const
protected

Log event GlobalGetFailed.

Definition at line 4375 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_LO_GlobalSetFailed()

void Svc::WasmSequencerComponentBase::log_WARNING_LO_GlobalSetFailed ( const Fw::StringBase &  module_name,
const Fw::StringBase &  globalName,
const Svc::WasmSequencer_Status &  reason 
) const
protected

Log event GlobalSetFailed.

Definition at line 4266 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_LO_LogWarningLo()

void Svc::WasmSequencerComponentBase::log_WARNING_LO_LogWarningLo ( const Fw::StringBase &  msg) const
protected

Log event LogWarningLo

A WARNING_LO event emitted by the guest program

Definition at line 7964 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_LO_MemoryGrowRejected()

void Svc::WasmSequencerComponentBase::log_WARNING_LO_MemoryGrowRejected ( const Svc::WasmSequencer_MemoryGrowFailReason &  reason,
U64  requestedSize 
) const
protected

Log event MemoryGrowRejected

A guest memory.grow could not be serviced by the guest bump allocator and was rejected. The guest sees memory.grow return -1; execution continues.

Parameters
reasonwhy the grow was rejected
requestedSizethe requested new linear-memory size in bytes

Definition at line 4161 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_LO_ModuleNotFound()

void Svc::WasmSequencerComponentBase::log_WARNING_LO_ModuleNotFound ( const Fw::StringBase &  module_name) const
protected

Log event ModuleNotFound

Failed to find a loaded module with the requested name

Definition at line 4086 of file WasmSequencerComponentAc.cpp.

◆ log_WARNING_LO_SequenceNotRunning()

void Svc::WasmSequencerComponentBase::log_WARNING_LO_SequenceNotRunning ( ) const
protected

Log event SequenceNotRunning

No sequence is running so we cannot continue from a pause

Definition at line 7227 of file WasmSequencerComponentAc.cpp.

◆ parameterLoaded()

void Svc::WasmSequencerComponentBase::parameterLoaded ( FwPrmIdType  id,
Fw::ParamValid  valid 
)
protectedvirtual

Called for each parameter when parameters are loaded.

By default this notifies the component via parameterUpdated when the parameter loaded successfully (valid or default). You may override it, for example to distinguish load from update.

Parameters
idThe parameter ID
validThe parameter validity status

Definition at line 8651 of file WasmSequencerComponentAc.cpp.

◆ parametersLoaded()

void Svc::WasmSequencerComponentBase::parametersLoaded ( )
protectedvirtual

Called whenever parameters are loaded.

By default this notifies the component of each parameter via parameterUpdated. You may override it, for example to suppress notification on load.

Definition at line 8645 of file WasmSequencerComponentAc.cpp.

◆ parameterUpdated()

void Svc::WasmSequencerComponentBase::parameterUpdated ( FwPrmIdType  id)
protectedvirtual

Called whenever a parameter is updated.

This function does nothing by default. You may override it.

Parameters
idThe parameter ID

Definition at line 8639 of file WasmSequencerComponentAc.cpp.

◆ paramGet_HOST_FUNCTION_TIMEOUT_SECS()

F32 Svc::WasmSequencerComponentBase::paramGet_HOST_FUNCTION_TIMEOUT_SECS ( Fw::ParamValid &  valid)
protected

Get parameter HOST_FUNCTION_TIMEOUT_SECS

Returns
The parameter value

the number of seconds to wait before giving up on a host function/command. if <= 0 or greater than U32 max, never time out. accuracy of this timeout is determined by the rate group driving this component. it will be rounded up.

Parameters
validWhether the parameter is valid

Definition at line 8666 of file WasmSequencerComponentAc.cpp.

◆ paramGet_INSTRUCTION_FUEL()

FwSizeType Svc::WasmSequencerComponentBase::paramGet_INSTRUCTION_FUEL ( Fw::ParamValid &  valid)
protected

Get parameter INSTRUCTION_FUEL

Returns
The parameter value

Number of Wasm instructions to execute per interpreter cycle. Larger numbers will effect the responsiveness of the interpreter to PAUSE commands. The interpreter will always pause before commands.

Larger numbers make the interpreter faster because the engine doesn't need to feed itself through a queue to fuel more cycles.

Parameters
validWhether the parameter is valid

Definition at line 8679 of file WasmSequencerComponentAc.cpp.

◆ paramGet_SEQ_BASE_DIR()

Fw::ParamString Svc::WasmSequencerComponentBase::paramGet_SEQ_BASE_DIR ( Fw::ParamValid &  valid)
protected

Get parameter SEQ_BASE_DIR

Returns
The parameter value

A literal prefix prepended to every requested sequence file path before resolution following the rules of Os::File::open. When non-empty it also acts as a containment boundary: a requested name with a ".." component is rejected rather than being allowed to escape the prefix.

Parameters
validWhether the parameter is valid

Definition at line 8692 of file WasmSequencerComponentAc.cpp.

◆ PAUSE_cmdHandler()

virtual void Svc::WasmSequencerComponentBase::PAUSE_cmdHandler ( FwOpcodeType  opCode,
U32  cmdSeq 
)
protectedpure virtual

Handler for command PAUSE

Pauses the execution of the sequencer, just before it is about to start spinning. This simply pends a pause flag that will be taken before the sequence engine starts up again.

This command completes immediately

Parameters
opCodeThe opcode
cmdSeqThe command sequence number

◆ PAUSE_cmdHandlerBase()

void Svc::WasmSequencerComponentBase::PAUSE_cmdHandlerBase ( FwOpcodeType  opCode,
U32  cmdSeq,
Fw::CmdArgBuffer &  args 
)
protected

Base-class handler function for command PAUSE

Pauses the execution of the sequencer, just before it is about to start spinning. This simply pends a pause flag that will be taken before the sequence engine starts up again.

This command completes immediately

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
argsThe command argument buffer

Definition at line 3286 of file WasmSequencerComponentAc.cpp.

◆ PAUSE_preMsgHook()

void Svc::WasmSequencerComponentBase::PAUSE_preMsgHook ( FwOpcodeType  opCode,
U32  cmdSeq 
)
protectedvirtual

Pre-message hook for command PAUSE.

Parameters
opCodeThe opcode
cmdSeqThe command sequence number

Definition at line 3751 of file WasmSequencerComponentAc.cpp.

◆ regCommands()

void Svc::WasmSequencerComponentBase::regCommands ( )

Register commands with the Command Dispatcher.

Connect the dispatcher first

Definition at line 1595 of file WasmSequencerComponentAc.cpp.

◆ RUN_cmdHandler()

virtual void Svc::WasmSequencerComponentBase::RUN_cmdHandler ( FwOpcodeType  opCode,
U32  cmdSeq,
const Fw::CmdStringArg &  fileName,
const Svc::BlockState &  block 
)
protectedpure virtual

Handler for command RUN

Run a Wasm module main function on it's own in the interpreter This command first resets the store (discarding any modules previously staged with LOAD), then is short-hand for:

CANCEL # doesn't actually cancel a sequence, just resets the store
LOAD [fileName] ""
INVOKE "" [block]

If $block == Svc.BlockState.BLOCK this command will wait for completion.

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
fileNameThe name of the sequence file
blockBlock until sequence has finished running

◆ RUN_cmdHandlerBase()

void Svc::WasmSequencerComponentBase::RUN_cmdHandlerBase ( FwOpcodeType  opCode,
U32  cmdSeq,
Fw::CmdArgBuffer &  args 
)
protected

Base-class handler function for command RUN

Run a Wasm module main function on it's own in the interpreter This command first resets the store (discarding any modules previously staged with LOAD), then is short-hand for:

CANCEL # doesn't actually cancel a sequence, just resets the store
LOAD [fileName] ""
INVOKE "" [block]

If $block == Svc.BlockState.BLOCK this command will wait for completion.

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
argsThe command argument buffer

Definition at line 3024 of file WasmSequencerComponentAc.cpp.

◆ RUN_preMsgHook()

void Svc::WasmSequencerComponentBase::RUN_preMsgHook ( FwOpcodeType  opCode,
U32  cmdSeq 
)
protectedvirtual

Pre-message hook for command RUN.

Parameters
opCodeThe opcode
cmdSeqThe command sequence number

Definition at line 3707 of file WasmSequencerComponentAc.cpp.

◆ seqCancelIn_handler()

virtual void Svc::WasmSequencerComponentBase::seqCancelIn_handler ( FwIndexType  portNum)
protectedpure virtual

Handler for input port seqCancelIn.

Parameters
portNumThe port number

◆ seqCancelIn_handlerBase()

void Svc::WasmSequencerComponentBase::seqCancelIn_handlerBase ( FwIndexType  portNum)
protected

Handler base-class function for input port seqCancelIn.

Parameters
portNumThe port number

Definition at line 2317 of file WasmSequencerComponentAc.cpp.

◆ seqDoneOut_out()

void Svc::WasmSequencerComponentBase::seqDoneOut_out ( FwIndexType  portNum,
FwOpcodeType  opCode,
U32  cmdSeq,
const Fw::CmdResponse &  response 
) const
protected

Invoke output port seqDoneOut.

Parameters
portNumThe port number
opCodeCommand Op Code
cmdSeqCommand Sequence
responseThe command response argument

Definition at line 2602 of file WasmSequencerComponentAc.cpp.

◆ seqRunIn_handler()

virtual void Svc::WasmSequencerComponentBase::seqRunIn_handler ( FwIndexType  portNum,
const Fw::StringBase &  filename,
const Svc::SeqArgs &  args 
)
protectedpure virtual

Handler for input port seqRunIn.

Parameters
portNumThe port number
filenameThe sequence file
argsSequence arguments

◆ seqRunIn_handlerBase()

void Svc::WasmSequencerComponentBase::seqRunIn_handlerBase ( FwIndexType  portNum,
const Fw::StringBase &  filename,
const Svc::SeqArgs &  args 
)
protected

Handler base-class function for input port seqRunIn.

Parameters
portNumThe port number
filenameThe sequence file
argsSequence arguments

Definition at line 2330 of file WasmSequencerComponentAc.cpp.

◆ seqRunIn_preMsgHook()

void Svc::WasmSequencerComponentBase::seqRunIn_preMsgHook ( FwIndexType  portNum,
const Fw::StringBase &  filename,
const Svc::SeqArgs &  args 
)
protectedvirtual

Pre-message hook for async input port seqRunIn.

Parameters
portNumThe port number
filenameThe sequence file
argsSequence arguments

Definition at line 2509 of file WasmSequencerComponentAc.cpp.

◆ seqStartOut_out()

void Svc::WasmSequencerComponentBase::seqStartOut_out ( FwIndexType  portNum,
const Fw::StringBase &  filename,
const Svc::SeqArgs &  args 
) const
protected

Invoke output port seqStartOut.

Parameters
portNumThe port number
filenameThe sequence file
argsSequence arguments

Definition at line 2626 of file WasmSequencerComponentAc.cpp.

◆ serialIn_handler()

virtual void Svc::WasmSequencerComponentBase::serialIn_handler ( FwIndexType  portNum,
Fw::LinearBufferBase &  buffer 
)
protectedpure virtual

Handler for input port serialIn.

Parameters
portNumThe port number
bufferThe serialization buffer

◆ serialIn_handlerBase()

void Svc::WasmSequencerComponentBase::serialIn_handlerBase ( FwIndexType  portNum,
Fw::LinearBufferBase &  buffer 
)
protected

Handler base-class function for input port serialIn.

Parameters
portNumThe port number
bufferThe serialization buffer

Definition at line 2456 of file WasmSequencerComponentAc.cpp.

◆ serialOut_out()

Fw::SerializeStatus Svc::WasmSequencerComponentBase::serialOut_out ( FwIndexType  portNum,
Fw::LinearBufferBase &  buffer 
)
protected

Invoke output port serialOut.

Parameters
portNumThe port number
bufferThe serialization buffer

Definition at line 2656 of file WasmSequencerComponentAc.cpp.

◆ set_cmdOut_OutputPort()

void Svc::WasmSequencerComponentBase::set_cmdOut_OutputPort ( FwIndexType  portNum,
Fw::InputComPort *  port 
)

Connect port to cmdOut[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 1337 of file WasmSequencerComponentAc.cpp.

◆ set_cmdRegOut_OutputPort()

void Svc::WasmSequencerComponentBase::set_cmdRegOut_OutputPort ( FwIndexType  portNum,
Fw::InputCmdRegPort *  port 
)

Connect port to cmdRegOut[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 1213 of file WasmSequencerComponentAc.cpp.

◆ set_cmdResponseOut_OutputPort()

void Svc::WasmSequencerComponentBase::set_cmdResponseOut_OutputPort ( FwIndexType  portNum,
Fw::InputCmdResponsePort *  port 
)

Connect port to cmdResponseOut[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 1227 of file WasmSequencerComponentAc.cpp.

◆ set_getParam_OutputPort()

void Svc::WasmSequencerComponentBase::set_getParam_OutputPort ( FwIndexType  portNum,
Fw::InputPrmGetPort *  port 
)

Connect port to getParam[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 1351 of file WasmSequencerComponentAc.cpp.

◆ set_getTlmChan_OutputPort()

void Svc::WasmSequencerComponentBase::set_getTlmChan_OutputPort ( FwIndexType  portNum,
Fw::InputTlmGetPort *  port 
)

Connect port to getTlmChan[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 1365 of file WasmSequencerComponentAc.cpp.

◆ set_logOut_OutputPort()

void Svc::WasmSequencerComponentBase::set_logOut_OutputPort ( FwIndexType  portNum,
Fw::InputLogPort *  port 
)

Connect port to logOut[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 1241 of file WasmSequencerComponentAc.cpp.

◆ set_prmGet_OutputPort()

void Svc::WasmSequencerComponentBase::set_prmGet_OutputPort ( FwIndexType  portNum,
Fw::InputPrmGetPort *  port 
)

Connect port to prmGet[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 1273 of file WasmSequencerComponentAc.cpp.

◆ set_prmSet_OutputPort()

void Svc::WasmSequencerComponentBase::set_prmSet_OutputPort ( FwIndexType  portNum,
Fw::InputPrmSetPort *  port 
)

Connect port to prmSet[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 1287 of file WasmSequencerComponentAc.cpp.

◆ set_seqDoneOut_OutputPort()

void Svc::WasmSequencerComponentBase::set_seqDoneOut_OutputPort ( FwIndexType  portNum,
Fw::InputCmdResponsePort *  port 
)

Connect port to seqDoneOut[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 1379 of file WasmSequencerComponentAc.cpp.

◆ set_seqStartOut_OutputPort()

void Svc::WasmSequencerComponentBase::set_seqStartOut_OutputPort ( FwIndexType  portNum,
Svc::InputCmdSeqInPort *  port 
)

Connect port to seqStartOut[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 1393 of file WasmSequencerComponentAc.cpp.

◆ set_timeCaller_OutputPort()

void Svc::WasmSequencerComponentBase::set_timeCaller_OutputPort ( FwIndexType  portNum,
Fw::InputTimePort *  port 
)

Connect port to timeCaller[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 1301 of file WasmSequencerComponentAc.cpp.

◆ set_tlmOut_OutputPort()

void Svc::WasmSequencerComponentBase::set_tlmOut_OutputPort ( FwIndexType  portNum,
Fw::InputTlmPort *  port 
)

Connect port to tlmOut[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 1315 of file WasmSequencerComponentAc.cpp.

◆ Svc_WasmSequencer_ControllerStateMachine_action_cancelPendingRequest()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_cancelPendingRequest ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_RequestContext &  value 
)
protectedpure virtual

Implementation for action cancelPendingRequest of state machine Svc_WasmSequencer_ControllerStateMachine

Abort a load/invoke that was cancelled before the engine ran Reports a done on seqDoneOut for a port-sourced RUN

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_action_clearCancelRequested()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_clearCancelRequested ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action clearCancelRequested of state machine Svc_WasmSequencer_ControllerStateMachine

Acknowledge/clear any pending cancel

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_ControllerStateMachine_action_incrementSequenceFailure()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_incrementSequenceFailure ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action incrementSequenceFailure of state machine Svc_WasmSequencer_ControllerStateMachine

Increment the SequencesFailed telemetry counter

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_ControllerStateMachine_action_invokeMain()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_invokeMain ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_RequestContext &  value 
)
protectedpure virtual

Implementation for action invokeMain of state machine Svc_WasmSequencer_ControllerStateMachine

Invoke the main function for module in context

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_action_invokeStart()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_invokeStart ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_RequestContext &  value 
)
protectedpure virtual

Implementation for action invokeStart of state machine Svc_WasmSequencer_ControllerStateMachine

Invoke the start function on a loaded module

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_action_load()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_load ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_LoadRequest &  value 
)
protectedpure virtual

Implementation for action load of state machine Svc_WasmSequencer_ControllerStateMachine

Load a module into the store. Emits loadSucceded or loadFailed depending on result

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_action_processInvoke()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_processInvoke ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_InvokeRequest &  value 
)
protectedpure virtual

Implementation for action processInvoke of state machine Svc_WasmSequencer_ControllerStateMachine

Action to save the invoke arguments and emit an 'invoked' signal

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_action_reportModuleInvalidMain()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_reportModuleInvalidMain ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_RequestContext &  value 
)
protectedpure virtual

Implementation for action reportModuleInvalidMain of state machine Svc_WasmSequencer_ControllerStateMachine

Emit an event noting that a given module has no [valid] main function

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_action_reportModuleMainFailed()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_reportModuleMainFailed ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_RequestContext &  value 
)
protectedpure virtual

Implementation for action reportModuleMainFailed of state machine Svc_WasmSequencer_ControllerStateMachine

Emit an event noting a module failed during execution. Increment telemetry counters.

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_action_reportModuleMainInvokeFailed()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_reportModuleMainInvokeFailed ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_RequestContext &  value 
)
protectedpure virtual

Implementation for action reportModuleMainInvokeFailed of state machine Svc_WasmSequencer_ControllerStateMachine

Emit an event noting why the invocation of a module main failed

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_action_reportModuleStarted()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_reportModuleStarted ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_RequestContext &  value 
)
protectedpure virtual

Implementation for action reportModuleStarted of state machine Svc_WasmSequencer_ControllerStateMachine

Reports that a module started running it's main function

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_action_reportModuleStartFailed()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_reportModuleStartFailed ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_RequestContext &  value 
)
protectedpure virtual

Implementation for action reportModuleStartFailed of state machine Svc_WasmSequencer_ControllerStateMachine

Emit an event noting a module failed during execution of start. Increment telemetry counters.

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_action_reportModuleStartInvokeFailed()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_reportModuleStartInvokeFailed ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_RequestContext &  value 
)
protectedpure virtual

Implementation for action reportModuleStartInvokeFailed of state machine Svc_WasmSequencer_ControllerStateMachine

Emit an event noting why the invocation of a module start failed

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_action_reportModuleSucceeded()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_reportModuleSucceeded ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_RequestContext &  value 
)
protectedpure virtual

Implementation for action reportModuleSucceeded of state machine Svc_WasmSequencer_ControllerStateMachine

Emit an event noting a module succeeded during execution. Increment telemetry counters.

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_action_resetStore()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_resetStore ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action resetStore of state machine Svc_WasmSequencer_ControllerStateMachine

Create a new store with N_MODULES (parameter) modules

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_ControllerStateMachine_action_respond_block_ERROR()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_respond_block_ERROR ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_RequestContext &  value 
)
protectedpure virtual

Implementation for action respond_block_ERROR of state machine Svc_WasmSequencer_ControllerStateMachine

Responds to $block == BLOCK requests with ERROR. Responds to any pending WAIT requests with ERROR

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_action_respond_block_OK()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_respond_block_OK ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_RequestContext &  value 
)
protectedpure virtual

Implementation for action respond_block_OK of state machine Svc_WasmSequencer_ControllerStateMachine

Responds to $block == BLOCK requests with OK Responds to any pending WAIT requests with OK

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_action_respond_ERROR()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_respond_ERROR ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_RequestContext &  value 
)
protectedpure virtual

Implementation for action respond_ERROR of state machine Svc_WasmSequencer_ControllerStateMachine

Responds to request with EXECUTION_ERROR Reports a done on seqDoneOut for a port-sourced RUN

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_action_respond_noblock_OK()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_respond_noblock_OK ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_RequestContext &  value 
)
protectedpure virtual

Implementation for action respond_noblock_OK of state machine Svc_WasmSequencer_ControllerStateMachine

Responds to $block == NO_BLOCK requests with OK

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_action_respondInvoke_BUSY()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_respondInvoke_BUSY ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_InvokeRequest &  value 
)
protectedpure virtual

Implementation for action respondInvoke_BUSY of state machine Svc_WasmSequencer_ControllerStateMachine

Responds to request with BUSY Emit an event to say why we are rejecting this request in the current state

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_action_respondInvoke_ERROR()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_respondInvoke_ERROR ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_InvokeRequest &  value 
)
protectedpure virtual

Implementation for action respondInvoke_ERROR of state machine Svc_WasmSequencer_ControllerStateMachine

Responds to request with EXECUTION_ERROR Emit an event to say why we are rejecting this request in the current state

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_action_respondLoad_BUSY()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_respondLoad_BUSY ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_LoadRequest &  value 
)
protectedpure virtual

Implementation for action respondLoad_BUSY of state machine Svc_WasmSequencer_ControllerStateMachine

Responds to request with BUSY Emit an event to say why we are rejecting this request in the current state Reports a done on seqDoneOut for a port-sourced RUN

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_action_runEngine()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_runEngine ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_RequestContext &  value 
)
protectedpure virtual

Implementation for action runEngine of state machine Svc_WasmSequencer_ControllerStateMachine

Send a signal to the engine state machine to begin running The engine will asynchronously reply with the engineFinished signal

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_action_setCancelRequested()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_action_setCancelRequested ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action setCancelRequested of state machine Svc_WasmSequencer_ControllerStateMachine

Latch a cancel that arrives while a sequence is loading/resolving

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_ControllerStateMachine_guard_cancelRequested()

virtual bool Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_guard_cancelRequested ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal 
) const
protectedpure virtual

Implementation for guard cancelRequested of state machine Svc_WasmSequencer_ControllerStateMachine

True if a cancel was latched since the controller last came to rest.

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_ControllerStateMachine_guard_interpreterSucceeded()

virtual bool Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_guard_interpreterSucceeded ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal 
) const
protectedpure virtual

Implementation for guard interpreterSucceeded of state machine Svc_WasmSequencer_ControllerStateMachine

Check if the last engine execution finished executing successfully

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_ControllerStateMachine_guard_invokeSucceeded()

virtual bool Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_guard_invokeSucceeded ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_RequestContext &  value 
) const
protectedpure virtual

Implementation for guard invokeSucceeded of state machine Svc_WasmSequencer_ControllerStateMachine

return true if invokeStatus == SPACEWASM_OK. This flag is set as a result of invokeStart/invokeMain

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_guard_moduleHasStart()

virtual bool Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_guard_moduleHasStart ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_RequestContext &  value 
) const
protectedpure virtual

Implementation for guard moduleHasStart of state machine Svc_WasmSequencer_ControllerStateMachine

return true if this module has a start function

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_ControllerStateMachine_guard_moduleHasValidMain()

virtual bool Svc::WasmSequencerComponentBase::Svc_WasmSequencer_ControllerStateMachine_guard_moduleHasValidMain ( SmId  smId,
Svc_WasmSequencer_ControllerStateMachine::Signal  signal,
const Svc::WasmSequencer_RequestContext &  value 
) const
protectedpure virtual

Implementation for guard moduleHasValidMain of state machine Svc_WasmSequencer_ControllerStateMachine

return true if this module has a valid main function ([] -> i32)

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_InterpreterStateMachine_action_checkSleepTimers()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_checkSleepTimers ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action checkSleepTimers of state machine Svc_WasmSequencer_InterpreterStateMachine

A periodic check on the pending timer to see if we can wake up

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_action_checkTimeout()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_checkTimeout ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action checkTimeout of state machine Svc_WasmSequencer_InterpreterStateMachine

A periodic check on any host function to guard against timeouts

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_action_clearContext()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_clearContext ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action clearContext of state machine Svc_WasmSequencer_InterpreterStateMachine

Clear the current executing context

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_action_clearExitStatus()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_clearExitStatus ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action clearExitStatus of state machine Svc_WasmSequencer_InterpreterStateMachine.

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_action_clearPause()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_clearPause ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action clearPause of state machine Svc_WasmSequencer_InterpreterStateMachine

sets the pause flag to false

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_action_clearPendingHostFunction()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_clearPendingHostFunction ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action clearPendingHostFunction of state machine Svc_WasmSequencer_InterpreterStateMachine

clears the pending host function port call

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_action_cmdReplyOK()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_cmdReplyOK ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal,
const Svc::WasmSequencer_CommandRequest &  value 
)
protectedpure virtual

Implementation for action cmdReplyOK of state machine Svc_WasmSequencer_InterpreterStateMachine

Respond to a pending command with OK

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_InterpreterStateMachine_action_dequeueSerialAndResume()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_dequeueSerialAndResume ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal,
const FwIndexType &  value 
)
protectedpure virtual

Implementation for action dequeueSerialAndResume of state machine Svc_WasmSequencer_InterpreterStateMachine

Dequeue a serial message into the host guest memory and resume the interpreter

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_InterpreterStateMachine_action_dispatchPendingHostFunction()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_dispatchPendingHostFunction ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action dispatchPendingHostFunction of state machine Svc_WasmSequencer_InterpreterStateMachine

dispatch a host function port call

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_action_finish()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_finish ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action finish of state machine Svc_WasmSequencer_InterpreterStateMachine

Send a signal back to the controller state machine that we have finished executing The response codes are stored in m_exit (reason, code, lastTrapReason)

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_action_reportPaused()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_reportPaused ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action reportPaused of state machine Svc_WasmSequencer_InterpreterStateMachine

reports that execution was paused at a breakpoint

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_action_reset()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_reset ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action reset of state machine Svc_WasmSequencer_InterpreterStateMachine

resets the engine's state (clears operand stack, pc, fp, sp)

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_action_resume()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_resume ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action resume of state machine Svc_WasmSequencer_InterpreterStateMachine

spacewasm_engine_resume

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_action_resumeI32()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_resumeI32 ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal,
I32  value 
)
protectedpure virtual

Implementation for action resumeI32 of state machine Svc_WasmSequencer_InterpreterStateMachine

spacewasm_engine_resume_some(I32(value))

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_InterpreterStateMachine_action_setContext()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_setContext ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal,
const Svc::WasmSequencer_RequestContext &  value 
)
protectedpure virtual

Implementation for action setContext of state machine Svc_WasmSequencer_InterpreterStateMachine

Set the current executing context

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_InterpreterStateMachine_action_setExitCode()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_setExitCode ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal,
I32  value 
)
protectedpure virtual

Implementation for action setExitCode of state machine Svc_WasmSequencer_InterpreterStateMachine.

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_CANCEL()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_CANCEL ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action setExitReason_CANCEL of state machine Svc_WasmSequencer_InterpreterStateMachine.

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_HOST_FAILURE()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_HOST_FAILURE ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action setExitReason_HOST_FAILURE of state machine Svc_WasmSequencer_InterpreterStateMachine.

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_INTERPRETER_FINISHED()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_INTERPRETER_FINISHED ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action setExitReason_INTERPRETER_FINISHED of state machine Svc_WasmSequencer_InterpreterStateMachine.

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_INTERPRETER_TRAP()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_INTERPRETER_TRAP ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action setExitReason_INTERPRETER_TRAP of state machine Svc_WasmSequencer_InterpreterStateMachine.

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_REPLY_TIMEOUT()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_REPLY_TIMEOUT ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action setExitReason_REPLY_TIMEOUT of state machine Svc_WasmSequencer_InterpreterStateMachine.

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_TIMER_INCOMPARABLE()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_TIMER_INCOMPARABLE ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action setExitReason_TIMER_INCOMPARABLE of state machine Svc_WasmSequencer_InterpreterStateMachine.

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_UNEXPECTED_REPLY()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_setExitReason_UNEXPECTED_REPLY ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action setExitReason_UNEXPECTED_REPLY of state machine Svc_WasmSequencer_InterpreterStateMachine.

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_action_setLastHostFunction()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_setLastHostFunction ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action setLastHostFunction of state machine Svc_WasmSequencer_InterpreterStateMachine.

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_action_setTrapReason()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_setTrapReason ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal,
const Svc::WasmSequencer_TrapReason &  value 
)
protectedpure virtual

Implementation for action setTrapReason of state machine Svc_WasmSequencer_InterpreterStateMachine.

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_InterpreterStateMachine_action_signalEntered()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_signalEntered ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action signalEntered of state machine Svc_WasmSequencer_InterpreterStateMachine

generic signal raised

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_action_spin()

virtual void Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_action_spin ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
)
protectedpure virtual

Implementation for action spin of state machine Svc_WasmSequencer_InterpreterStateMachine

spins the interpreter loop, executing up to a bounded number of instructions

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_guard_blockingSerialIn()

virtual bool Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_guard_blockingSerialIn ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal,
const FwIndexType &  value 
) const
protectedpure virtual

Implementation for guard blockingSerialIn of state machine Svc_WasmSequencer_InterpreterStateMachine

Check if we are currently blocking on a serial_recv() for a given serial port index

Parameters
smIdThe state machine id
signalThe signal
valueThe value

◆ Svc_WasmSequencer_InterpreterStateMachine_guard_dequeueSucceeded()

virtual bool Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_guard_dequeueSucceeded ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
) const
protectedpure virtual

Implementation for guard dequeueSucceeded of state machine Svc_WasmSequencer_InterpreterStateMachine

Return true dequeueSerialAndResume processed a message successfully

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_guard_pendingHostFunction()

virtual bool Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_guard_pendingHostFunction ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
) const
protectedpure virtual

Implementation for guard pendingHostFunction of state machine Svc_WasmSequencer_InterpreterStateMachine

a host function is waiting to be processed

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_guard_pendingHostFunctionIsSleep()

virtual bool Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_guard_pendingHostFunctionIsSleep ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
) const
protectedpure virtual

Implementation for guard pendingHostFunctionIsSleep of state machine Svc_WasmSequencer_InterpreterStateMachine

the pending host function is a sleep (therefore we need to check the sleep timers)

Parameters
smIdThe state machine id
signalThe signal

◆ Svc_WasmSequencer_InterpreterStateMachine_guard_pendingPause()

virtual bool Svc::WasmSequencerComponentBase::Svc_WasmSequencer_InterpreterStateMachine_guard_pendingPause ( SmId  smId,
Svc_WasmSequencer_InterpreterStateMachine::Signal  signal 
) const
protectedpure virtual

Implementation for guard pendingPause of state machine Svc_WasmSequencer_InterpreterStateMachine

return true if execution should pause before spinning the interpreter again

Parameters
smIdThe state machine id
signalThe signal

◆ tlmWrite()

void Svc::WasmSequencerComponentBase::tlmWrite ( FwChanIdType  id,
Fw::TlmBuffer &  _tlmBuff,
Fw::Time  _tlmTime = Fw::Time() 
) const
protected

Write telemetry channel given its local id and serialized value. Warning: This is a low level telemetry interface that does not guarentee channel type safety. It is up to the caller to make sure the serialized data matches the definition in the model. Update on change semantics are ignored, this telemetry is always written

Parameters
idThe channel id
_tlmBuffThe serialized telemetry value
_tlmTimeTimestamp. Default: unspecified, request from getTime port

Definition at line 8268 of file WasmSequencerComponentAc.cpp.

◆ tlmWrite_CommandsDispatched()

void Svc::WasmSequencerComponentBase::tlmWrite_CommandsDispatched ( U64  arg,
Fw::Time  _tlmTime = Fw::Time() 
)
protected

Write telemetry channel CommandsDispatched

Commands dispatched total

Parameters
argThe telemetry value
_tlmTimeTimestamp. Default: unspecified, request from getTime port

Definition at line 8484 of file WasmSequencerComponentAc.cpp.

◆ tlmWrite_CommandsFailed()

void Svc::WasmSequencerComponentBase::tlmWrite_CommandsFailed ( U64  arg,
Fw::Time  _tlmTime = Fw::Time() 
)
protected

Write telemetry channel CommandsFailed

Number of commands that failed

Parameters
argThe telemetry value
_tlmTimeTimestamp. Default: unspecified, request from getTime port

Definition at line 8521 of file WasmSequencerComponentAc.cpp.

◆ tlmWrite_ControllerState()

void Svc::WasmSequencerComponentBase::tlmWrite_ControllerState ( const Svc::WasmSequencer_ControllerStateMachine_State &  arg,
Fw::Time  _tlmTime = Fw::Time() 
)
protected

Write telemetry channel ControllerState

Current executing state of the sequencer controller

Parameters
argThe telemetry value
_tlmTimeTimestamp. Default: unspecified, request from getTime port

Definition at line 8299 of file WasmSequencerComponentAc.cpp.

◆ tlmWrite_InterpreterState()

void Svc::WasmSequencerComponentBase::tlmWrite_InterpreterState ( const Svc::WasmSequencer_InterpreterStateMachine_State &  arg,
Fw::Time  _tlmTime = Fw::Time() 
)
protected

Write telemetry channel InterpreterState

Current executing state of the WebAssembly interpreter engine

Parameters
argThe telemetry value
_tlmTimeTimestamp. Default: unspecified, request from getTime port

Definition at line 8336 of file WasmSequencerComponentAc.cpp.

◆ tlmWrite_LastTrapReason()

void Svc::WasmSequencerComponentBase::tlmWrite_LastTrapReason ( const Svc::WasmSequencer_TrapReason &  arg,
Fw::Time  _tlmTime = Fw::Time() 
)
protected

Write telemetry channel LastTrapReason

Reason last sequence trapped

Parameters
argThe telemetry value
_tlmTimeTimestamp. Default: unspecified, request from getTime port

Definition at line 8558 of file WasmSequencerComponentAc.cpp.

◆ tlmWrite_SeqName()

void Svc::WasmSequencerComponentBase::tlmWrite_SeqName ( const Fw::StringBase &  arg,
Fw::Time  _tlmTime = Fw::Time() 
)
protected

Write telemetry channel SeqName

Currently running sequence name. When a module is loaded under an empty name (RUN, or LOAD with no name) the name is the filename without .wasm; otherwise it is the module name provided to LOAD

Parameters
argThe telemetry value
_tlmTimeTimestamp. Default: unspecified, request from getTime port

Definition at line 8595 of file WasmSequencerComponentAc.cpp.

◆ tlmWrite_SequencesCancelled()

void Svc::WasmSequencerComponentBase::tlmWrite_SequencesCancelled ( U64  arg,
Fw::Time  _tlmTime = Fw::Time() 
)
protected

Write telemetry channel SequencesCancelled

Sequences that were cancelled

Parameters
argThe telemetry value
_tlmTimeTimestamp. Default: unspecified, request from getTime port

Definition at line 8447 of file WasmSequencerComponentAc.cpp.

◆ tlmWrite_SequencesFailed()

void Svc::WasmSequencerComponentBase::tlmWrite_SequencesFailed ( U64  arg,
Fw::Time  _tlmTime = Fw::Time() 
)
protected

Write telemetry channel SequencesFailed

Sequences that failed to validate or execute

Parameters
argThe telemetry value
_tlmTimeTimestamp. Default: unspecified, request from getTime port

Definition at line 8410 of file WasmSequencerComponentAc.cpp.

◆ tlmWrite_SequencesSucceeded()

void Svc::WasmSequencerComponentBase::tlmWrite_SequencesSucceeded ( U64  arg,
Fw::Time  _tlmTime = Fw::Time() 
)
protected

Write telemetry channel SequencesSucceeded

Sequences successfully completed

Parameters
argThe telemetry value
_tlmTimeTimestamp. Default: unspecified, request from getTime port

Definition at line 8373 of file WasmSequencerComponentAc.cpp.

◆ unLock()

void Svc::WasmSequencerComponentBase::unLock ( )
protectedvirtual

Unlock the guarded mutex.

Definition at line 8735 of file WasmSequencerComponentAc.cpp.

◆ WAIT_cmdHandler()

virtual void Svc::WasmSequencerComponentBase::WAIT_cmdHandler ( FwOpcodeType  opCode,
U32  cmdSeq 
)
protectedpure virtual

Handler for command WAIT

Wait for the interpreter to finish and return it's result as a CmdResponse

Parameters
opCodeThe opcode
cmdSeqThe command sequence number

◆ WAIT_cmdHandlerBase()

void Svc::WasmSequencerComponentBase::WAIT_cmdHandlerBase ( FwOpcodeType  opCode,
U32  cmdSeq,
Fw::CmdArgBuffer &  args 
)
protected

Base-class handler function for command WAIT

Wait for the interpreter to finish and return it's result as a CmdResponse

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
argsThe command argument buffer

Definition at line 3201 of file WasmSequencerComponentAc.cpp.

◆ WAIT_preMsgHook()

void Svc::WasmSequencerComponentBase::WAIT_preMsgHook ( FwOpcodeType  opCode,
U32  cmdSeq 
)
protectedvirtual

Pre-message hook for command WAIT.

Parameters
opCodeThe opcode
cmdSeqThe command sequence number

Definition at line 3740 of file WasmSequencerComponentAc.cpp.

◆ writeTelemetry_handler()

virtual void Svc::WasmSequencerComponentBase::writeTelemetry_handler ( FwIndexType  portNum,
U32  context 
)
protectedpure virtual

Handler for input port writeTelemetry.

Parameters
portNumThe port number
contextThe call order

◆ writeTelemetry_handlerBase()

void Svc::WasmSequencerComponentBase::writeTelemetry_handlerBase ( FwIndexType  portNum,
U32  context 
)
protected

Handler base-class function for input port writeTelemetry.

Parameters
portNumThe port number
contextThe call order

Definition at line 2392 of file WasmSequencerComponentAc.cpp.

◆ writeTelemetry_preMsgHook()

void Svc::WasmSequencerComponentBase::writeTelemetry_preMsgHook ( FwIndexType  portNum,
U32  context 
)
protectedvirtual

Pre-message hook for async input port writeTelemetry.

Parameters
portNumThe port number
contextThe call order

Definition at line 2519 of file WasmSequencerComponentAc.cpp.

Friends And Related Function Documentation

◆ WasmSequencerTester

friend class WasmSequencerTester
friend

Friend class tester implementation to support white-box testing.

Definition at line 84 of file WasmSequencerComponentAc.hpp.

◆ WasmSequencerTesterBase

friend class WasmSequencerTesterBase
friend

Friend class tester to support autocoded test harness.

Definition at line 82 of file WasmSequencerComponentAc.hpp.


The documentation for this class was generated from the following files: