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

#include <Svc/FpySequencer/FpySequencer.hpp>

Inheritance diagram for Svc::FpySequencer:
Svc::FpySequencerComponentBase Fw::ActiveComponentBase Fw::QueuedComponentBase Fw::PassiveComponentBase Fw::ObjBase

Classes

union  DirectiveUnion
 

Public Member Functions

 FpySequencer (const char *const compName)
 
 ~FpySequencer ()
 
void allocateBuffer (FwEnumStoreType identifier, Fw::MemAllocator &allocator, FwSizeType bytes)
 
void deallocateBuffer (Fw::MemAllocator &allocator)
 
- Public Member Functions inherited from Svc::FpySequencerComponentBase
void init (FwSizeType queueDepth, FwEnumStoreType instance=0)
 Initialize FpySequencerComponentBase object. More...
 
Fw::InputCmdPortget_cmdIn_InputPort (FwIndexType portNum)
 
Svc::InputSchedPortget_checkTimers_InputPort (FwIndexType portNum)
 
Fw::InputCmdResponsePortget_cmdResponseIn_InputPort (FwIndexType portNum)
 
Svc::InputPingPortget_pingIn_InputPort (FwIndexType portNum)
 
Svc::InputCmdSeqInPortget_seqRunIn_InputPort (FwIndexType portNum)
 
Svc::InputSchedPortget_tlmWrite_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_pingOut_OutputPort (FwIndexType portNum, Svc::InputPingPort *port)
 Connect port to pingOut[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, Os::Task::ParamType stackSize=Os::Task::TASK_DEFAULT, Os::Task::ParamType cpuAffinity=Os::Task::TASK_DEFAULT, Os::Task::ParamType identifier=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::PassiveComponentBase
void setIdBase (const U32)
 Set the ID base. More...
 
U32 getIdBase () const
 

Protected Member Functions

bool Svc_FpySequencer_SequencerStateMachine_guard_goalStateIs_RUNNING (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal) const override
 
bool Svc_FpySequencer_SequencerStateMachine_guard_shouldDebugBreak (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal) const override
 
bool Svc_FpySequencer_SequencerStateMachine_guard_debugBreakOnce (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal) const override
 
void checkTimers_handler (FwIndexType portNum, U32 context) override
 Handler for input port checkTimers. More...
 
void cmdResponseIn_handler (FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response) override
 Handler for input port cmdResponseIn. More...
 
void seqRunIn_handler (FwIndexType portNum, const Fw::StringBase &filename) override
 Handler for input port seqRunIn. More...
 
void pingIn_handler (FwIndexType portNum, U32 key) override
 Handler for input port pingIn. More...
 
void tlmWrite_handler (FwIndexType portNum, U32 context) override
 Handler for input port tlmWrite. More...
 
void directive_waitAbs_internalInterfaceHandler (const FpySequencer_WaitAbsDirective &directive) override
 Internal interface handler for directive_waitAbs. More...
 
void directive_waitRel_internalInterfaceHandler (const FpySequencer_WaitRelDirective &directive) override
 Internal interface handler for directive_waitRel. More...
 
void directive_setLocalVar_internalInterfaceHandler (const FpySequencer_SetLocalVarDirective &directive) override
 Internal interface handler for directive_setLocalVar. More...
 
void directive_goto_internalInterfaceHandler (const Svc::FpySequencer_GotoDirective &directive) override
 Internal interface handler for directive_goto. More...
 
void directive_if_internalInterfaceHandler (const Svc::FpySequencer_IfDirective &directive) override
 Internal interface handler for directive_if. More...
 
void directive_noOp_internalInterfaceHandler (const Svc::FpySequencer_NoOpDirective &directive) override
 Internal interface handler for directive_noOp. More...
 
void directive_getTlm_internalInterfaceHandler (const Svc::FpySequencer_GetTlmDirective &directive) override
 Internal interface handler for directive_getTlm. More...
 
void directive_getPrm_internalInterfaceHandler (const Svc::FpySequencer_GetPrmDirective &directive) override
 Internal interface handler for directive_getPrm. More...
 
void parametersLoaded () override
 Called whenever parameters are loaded. More...
 
void parameterUpdated (FwPrmIdType id) override
 Called whenever a parameter is updated. More...
 
- Protected Member Functions inherited from Svc::FpySequencerComponentBase
 FpySequencerComponentBase (const char *compName="")
 Construct FpySequencerComponentBase object. More...
 
virtual ~FpySequencerComponentBase ()
 Destroy FpySequencerComponentBase object. More...
 
FwIndexType getNum_cmdIn_InputPorts () const
 
FwIndexType getNum_checkTimers_InputPorts () const
 
FwIndexType getNum_cmdResponseIn_InputPorts () const
 
FwIndexType getNum_pingIn_InputPorts () const
 
FwIndexType getNum_seqRunIn_InputPorts () const
 
FwIndexType getNum_tlmWrite_InputPorts () const
 
FwIndexType getNum_cmdRegOut_OutputPorts () const
 
FwIndexType getNum_cmdResponseOut_OutputPorts () const
 
FwIndexType getNum_logOut_OutputPorts () const
 
FwIndexType getNum_prmGet_OutputPorts () const
 
FwIndexType getNum_prmSet_OutputPorts () const
 
FwIndexType getNum_timeCaller_OutputPorts () const
 
FwIndexType getNum_tlmOut_OutputPorts () const
 
FwIndexType getNum_cmdOut_OutputPorts () const
 
FwIndexType getNum_getParam_OutputPorts () const
 
FwIndexType getNum_getTlmChan_OutputPorts () const
 
FwIndexType getNum_pingOut_OutputPorts () const
 
bool isConnected_cmdRegOut_OutputPort (FwIndexType portNum)
 
bool isConnected_cmdResponseOut_OutputPort (FwIndexType portNum)
 
bool isConnected_logOut_OutputPort (FwIndexType portNum)
 
bool isConnected_prmGet_OutputPort (FwIndexType portNum)
 
bool isConnected_prmSet_OutputPort (FwIndexType portNum)
 
bool isConnected_timeCaller_OutputPort (FwIndexType portNum)
 
bool isConnected_tlmOut_OutputPort (FwIndexType portNum)
 
bool isConnected_cmdOut_OutputPort (FwIndexType portNum)
 
bool isConnected_getParam_OutputPort (FwIndexType portNum)
 
bool isConnected_getTlmChan_OutputPort (FwIndexType portNum)
 
bool isConnected_pingOut_OutputPort (FwIndexType portNum)
 
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 pingIn_handlerBase (FwIndexType portNum, U32 key)
 Handler base-class function for input port pingIn. More...
 
void seqRunIn_handlerBase (FwIndexType portNum, const Fw::StringBase &filename)
 Handler base-class function for input port seqRunIn. More...
 
void tlmWrite_handlerBase (FwIndexType portNum, U32 context)
 Handler base-class function for input port tlmWrite. 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 pingIn_preMsgHook (FwIndexType portNum, U32 key)
 Pre-message hook for async input port pingIn. More...
 
virtual void seqRunIn_preMsgHook (FwIndexType portNum, const Fw::StringBase &filename)
 Pre-message hook for async input port seqRunIn. More...
 
virtual void tlmWrite_preMsgHook (FwIndexType portNum, U32 context)
 Pre-message hook for async input port tlmWrite. More...
 
void cmdOut_out (FwIndexType portNum, Fw::ComBuffer &data, U32 context)
 Invoke output port cmdOut. More...
 
Fw::ParamValid getParam_out (FwIndexType portNum, FwPrmIdType id, Fw::ParamBuffer &val)
 Invoke output port getParam. More...
 
Fw::TlmValid getTlmChan_out (FwIndexType portNum, FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val)
 Invoke output port getTlmChan. More...
 
void pingOut_out (FwIndexType portNum, U32 key)
 Invoke output port pingOut. More...
 
void directive_getPrm_internalInterfaceInvoke (const Svc::FpySequencer_GetPrmDirective &directive)
 Internal interface base-class function for directive_getPrm. More...
 
void directive_getTlm_internalInterfaceInvoke (const Svc::FpySequencer_GetTlmDirective &directive)
 Internal interface base-class function for directive_getTlm. More...
 
void directive_goto_internalInterfaceInvoke (const Svc::FpySequencer_GotoDirective &directive)
 Internal interface base-class function for directive_goto. More...
 
void directive_if_internalInterfaceInvoke (const Svc::FpySequencer_IfDirective &directive)
 Internal interface base-class function for directive_if. More...
 
void directive_noOp_internalInterfaceInvoke (const Svc::FpySequencer_NoOpDirective &directive)
 Internal interface base-class function for directive_noOp. More...
 
void directive_setLocalVar_internalInterfaceInvoke (const Svc::FpySequencer_SetLocalVarDirective &directive)
 Internal interface base-class function for directive_setLocalVar. More...
 
void directive_waitAbs_internalInterfaceInvoke (const Svc::FpySequencer_WaitAbsDirective &directive)
 Internal interface base-class function for directive_waitAbs. More...
 
void directive_waitRel_internalInterfaceInvoke (const Svc::FpySequencer_WaitRelDirective &directive)
 Internal interface base-class function for directive_waitRel. More...
 
Svc_FpySequencer_SequencerStateMachine::State sequencer_getState () const
 Get the state of state machine instance sequencer. More...
 
void sequencer_sendSignal_cmd_VALIDATE (const Svc::FpySequencer_SequenceExecutionArgs &value)
 Send signal cmd_VALIDATE to state machine sequencer. More...
 
void sequencer_sendSignal_cmd_RUN (const Svc::FpySequencer_SequenceExecutionArgs &value)
 Send signal cmd_RUN to state machine sequencer. More...
 
void sequencer_sendSignal_cmd_RUN_VALIDATED (const Svc::FpySequencer_SequenceExecutionArgs &value)
 Send signal cmd_RUN_VALIDATED to state machine sequencer. More...
 
void sequencer_sendSignal_cmd_CANCEL ()
 Send signal cmd_CANCEL to state machine sequencer. More...
 
void sequencer_sendSignal_cmd_DEBUG_SET_BREAKPOINT (const Svc::FpySequencer_DebugBreakpointArgs &value)
 Send signal cmd_DEBUG_SET_BREAKPOINT to state machine sequencer. More...
 
void sequencer_sendSignal_cmd_DEBUG_CLEAR_BREAKPOINT ()
 Send signal cmd_DEBUG_CLEAR_BREAKPOINT to state machine sequencer. More...
 
void sequencer_sendSignal_result_failure ()
 Send signal result_failure to state machine sequencer. More...
 
void sequencer_sendSignal_result_success ()
 Send signal result_success to state machine sequencer. More...
 
void sequencer_sendSignal_entered ()
 Send signal entered to state machine sequencer. More...
 
void sequencer_sendSignal_result_dispatchStatement_success ()
 Send signal result_dispatchStatement_success to state machine sequencer. More...
 
void sequencer_sendSignal_result_dispatchStatement_failure ()
 Send signal result_dispatchStatement_failure to state machine sequencer. More...
 
void sequencer_sendSignal_result_dispatchStatement_noMoreStatements ()
 Send signal result_dispatchStatement_noMoreStatements to state machine sequencer. More...
 
void sequencer_sendSignal_checkTimersIn ()
 Send signal checkTimersIn to state machine sequencer. More...
 
void sequencer_sendSignal_result_checkShouldWake_wakeup ()
 Send signal result_checkShouldWake_wakeup to state machine sequencer. More...
 
void sequencer_sendSignal_result_checkShouldWake_keepSleeping ()
 Send signal result_checkShouldWake_keepSleeping to state machine sequencer. More...
 
void sequencer_sendSignal_result_timeOpFailed ()
 Send signal result_timeOpFailed to state machine sequencer. More...
 
void sequencer_sendSignal_stmtResponse_beginSleep ()
 Send signal stmtResponse_beginSleep to state machine sequencer. More...
 
void sequencer_sendSignal_stmtResponse_success ()
 Send signal stmtResponse_success to state machine sequencer. More...
 
void sequencer_sendSignal_stmtResponse_failure ()
 Send signal stmtResponse_failure to state machine sequencer. More...
 
void sequencer_sendSignal_stmtResponse_unexpected ()
 Send signal stmtResponse_unexpected to state machine sequencer. More...
 
void sequencer_sendSignal_result_checkStatementTimeout_statementTimeout ()
 Send signal result_checkStatementTimeout_statementTimeout to state machine sequencer. More...
 
void sequencer_sendSignal_result_checkStatementTimeout_noTimeout ()
 Send signal result_checkStatementTimeout_noTimeout to state machine sequencer. More...
 
void sequencer_sendSignal_cmd_DEBUG_CONTINUE ()
 Send signal cmd_DEBUG_CONTINUE to state machine sequencer. More...
 
void sequencer_sendSignal_cmd_DEBUG_BREAK (const Svc::FpySequencer_DebugBreakpointArgs &value)
 Send signal cmd_DEBUG_BREAK to state machine sequencer. More...
 
virtual void Svc_FpySequencer_SequencerStateMachine_action_signalEntered (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal)=0
 
virtual void Svc_FpySequencer_SequencerStateMachine_action_setSequenceFilePath (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal, const Svc::FpySequencer_SequenceExecutionArgs &value)=0
 
virtual void Svc_FpySequencer_SequencerStateMachine_action_setSequenceBlockState (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal, const Svc::FpySequencer_SequenceExecutionArgs &value)=0
 
virtual void Svc_FpySequencer_SequencerStateMachine_action_validate (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal)=0
 
virtual void Svc_FpySequencer_SequencerStateMachine_action_report_seqSucceeded (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal)=0
 
virtual void Svc_FpySequencer_SequencerStateMachine_action_report_seqCancelled (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal)=0
 
virtual void Svc_FpySequencer_SequencerStateMachine_action_setGoalState_RUNNING (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal)=0
 
virtual void Svc_FpySequencer_SequencerStateMachine_action_setGoalState_VALID (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal)=0
 
virtual void Svc_FpySequencer_SequencerStateMachine_action_setGoalState_IDLE (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal)=0
 
virtual void Svc_FpySequencer_SequencerStateMachine_action_sendCmdResponse_OK (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal)=0
 
virtual void Svc_FpySequencer_SequencerStateMachine_action_sendCmdResponse_EXECUTION_ERROR (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal)=0
 
virtual void Svc_FpySequencer_SequencerStateMachine_action_clearSequenceFile (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal)=0
 
virtual void Svc_FpySequencer_SequencerStateMachine_action_clearDebugBreakpoint (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal)=0
 
virtual void Svc_FpySequencer_SequencerStateMachine_action_checkShouldWake (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal)=0
 
virtual void Svc_FpySequencer_SequencerStateMachine_action_dispatchStatement (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal)=0
 
virtual void Svc_FpySequencer_SequencerStateMachine_action_resetRuntime (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal)=0
 
virtual void Svc_FpySequencer_SequencerStateMachine_action_checkStatementTimeout (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal)=0
 
virtual void Svc_FpySequencer_SequencerStateMachine_action_incrementSequenceCounter (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal)=0
 
virtual void Svc_FpySequencer_SequencerStateMachine_action_report_debugBroken (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal)=0
 
virtual void Svc_FpySequencer_SequencerStateMachine_action_setDebugBreakpoint (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal, const Svc::FpySequencer_DebugBreakpointArgs &value)=0
 
virtual bool Svc_FpySequencer_SequencerStateMachine_guard_goalStateIs_RUNNING (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal) const =0
 
virtual bool Svc_FpySequencer_SequencerStateMachine_guard_shouldDebugBreak (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal) const =0
 
virtual bool Svc_FpySequencer_SequencerStateMachine_guard_debugBreakOnce (SmId smId, Svc_FpySequencer_SequencerStateMachine::Signal signal) const =0
 
void cmdResponse_out (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response)
 Emit command response. More...
 
void RUN_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void VALIDATE_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void RUN_VALIDATED_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void CANCEL_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void DEBUG_SET_BREAKPOINT_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void DEBUG_BREAK_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void DEBUG_CONTINUE_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void DEBUG_CLEAR_BREAKPOINT_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 VALIDATE_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command VALIDATE. More...
 
virtual void RUN_VALIDATED_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command RUN_VALIDATED. More...
 
virtual void CANCEL_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command CANCEL. More...
 
virtual void DEBUG_SET_BREAKPOINT_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command DEBUG_SET_BREAKPOINT. More...
 
virtual void DEBUG_BREAK_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command DEBUG_BREAK. More...
 
virtual void DEBUG_CONTINUE_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command DEBUG_CONTINUE. More...
 
virtual void DEBUG_CLEAR_BREAKPOINT_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command DEBUG_CLEAR_BREAKPOINT. More...
 
void log_WARNING_HI_InvalidCommand (I32 state) const
 Log event InvalidCommand. More...
 
void log_WARNING_HI_InvalidSeqRunCall (I32 state) const
 Log event InvalidSeqRunCall. More...
 
void log_WARNING_HI_FileOpenError (const Fw::StringBase &filePath, I32 errorCode) const
 Log event FileOpenError. More...
 
void log_WARNING_HI_FileReadError (const Fw::StringBase &filePath, I32 errorCode) const
 Log event FileReadError. More...
 
void log_WARNING_HI_EndOfFileError (const Fw::StringBase &filePath) const
 Log event EndOfFileError. More...
 
void log_WARNING_HI_FileReadDeserializeError (const Fw::StringBase &filePath, I32 errorCode, U64 buffLeft, U64 buffLength) const
 Log event FileReadDeserializeError. More...
 
void log_WARNING_HI_WrongSchemaVersion (U8 expected, U8 actual) const
 Log event WrongSchemaVersion. More...
 
void log_WARNING_HI_WrongCRC (U32 expected, U32 actual) const
 Log event WrongCRC. More...
 
void log_WARNING_HI_ExtraBytesInSequence (U32 remaining) const
 Log event ExtraBytesInSequence. More...
 
void log_WARNING_HI_InsufficientBufferSpace (U64 bufferSize, const Fw::StringBase &filePath) const
 Log event InsufficientBufferSpace. More...
 
void log_WARNING_HI_StatementFailed (Svc::Fpy::StatementType stmtType, U32 stmtOpcode, U32 stmtIdx, const Fw::StringBase &filePath, Fw::CmdResponse response) const
 Log event StatementFailed. More...
 
void log_ACTIVITY_HI_SequenceDone (const Fw::StringBase &filePath) const
 Log event SequenceDone. More...
 
void log_ACTIVITY_HI_SequenceCancelled (const Fw::StringBase &filePath) const
 Log event SequenceCancelled. More...
 
void log_WARNING_HI_UnknownSequencerDirective (U32 opcode, U32 stmtIdx, const Fw::StringBase &filePath) const
 Log event UnknownSequencerDirective. More...
 
void log_WARNING_HI_CommandSerializeError (U32 cmdOpcode, U64 bufCapacity, U64 curPos, U64 writeSize, U8 errorCode, U32 stmtIdx) const
 Log event CommandSerializeError. More...
 
void log_WARNING_LO_CmdResponseWhileNotRunningSequence (I32 state, U32 opcode, Fw::CmdResponse response) const
 Log event CmdResponseWhileNotRunningSequence. More...
 
void log_WARNING_LO_CmdResponseFromOldSequence (U32 opcode, Fw::CmdResponse response, U16 oldSequenceIdx, U16 currentSequenceIdx) const
 Log event CmdResponseFromOldSequence. More...
 
void log_WARNING_HI_CmdResponseWhileNotAwaiting (U32 opcode, Fw::CmdResponse response) const
 Log event CmdResponseWhileNotAwaiting. More...
 
void log_WARNING_HI_WrongCmdResponseOpcode (U32 opcode, Fw::CmdResponse response, U32 expectedOpcode) const
 Log event WrongCmdResponseOpcode. More...
 
void log_WARNING_HI_WrongCmdResponseIndex (U32 opcode, Fw::CmdResponse response, U16 actualCmdIdx, U16 expectedCmdIdx) const
 Log event WrongCmdResponseIndex. More...
 
void log_WARNING_HI_DirectiveDeserializeError (U32 opcode, U32 stmtIdx, I32 errorCode, U64 buffLeft, U64 buffLength) const
 Log event DirectiveDeserializeError. More...
 
void log_WARNING_HI_MismatchedTimeBase (I32 internalTimeBase, I32 otherTimeBase) const
 Log event MismatchedTimeBase. More...
 
void log_WARNING_HI_MismatchedTimeContext (I32 internalTimeContext, I32 otherTimeContext) const
 Log event MismatchedTimeContext. More...
 
void log_WARNING_HI_StatementTimedOut (Svc::Fpy::StatementType stmtType, U32 stmtOpcode, U32 stmtIdx, const Fw::StringBase &filePath) const
 Log event StatementTimedOut. More...
 
void log_WARNING_HI_TooManySequenceArgs (U8 count, U8 max) const
 Log event TooManySequenceArgs. More...
 
void log_WARNING_HI_TooManySequenceStatements (U16 count, U16 max) const
 Log event TooManySequenceStatements. More...
 
void log_ACTIVITY_HI_DebugBroken (U32 stmtIdx, bool breakOnce) const
 Log event DebugBroken. More...
 
void log_ACTIVITY_HI_DebugBreakpointSet (U32 breakpointIdx, bool breakOnce) const
 Log event DebugBreakpointSet. More...
 
void log_ACTIVITY_HI_DebugBreakpointCleared () const
 Log event DebugBreakpointCleared. More...
 
void tlmWrite_State (I32 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_StatementsDispatched (U64 arg, Fw::Time _tlmTime=Fw::Time())
 
void tlmWrite_StatementsFailed (U64 arg, Fw::Time _tlmTime=Fw::Time())
 
void tlmWrite_SeqPath (const Fw::StringBase &arg, Fw::Time _tlmTime=Fw::Time())
 
void tlmWrite_DebugBreakpointIdx (U32 arg, Fw::Time _tlmTime=Fw::Time())
 
void tlmWrite_Debug (const Svc::FpySequencer_DebugTelemetry &arg, Fw::Time _tlmTime=Fw::Time())
 
void tlmWrite_STATEMENT_TIMEOUT_SECS (F32 arg, Fw::Time _tlmTime=Fw::Time())
 
F32 paramGet_STATEMENT_TIMEOUT_SECS (Fw::ParamValid &valid)
 
Fw::Time getTime () const
 
- 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)
 
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...
 

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 Types inherited from Svc::FpySequencerComponentBase
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_PINGIN_INPUT_PORTS = 1, NUM_SEQRUNIN_INPUT_PORTS = 1,
  NUM_TLMWRITE_INPUT_PORTS = 1
}
 Enumerations for numbers of typed 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_PINGOUT_OUTPUT_PORTS = 1 }
 Enumerations for numbers of typed output ports. More...
 
enum  {
  OPCODE_RUN = 0x0, OPCODE_VALIDATE = 0x1, OPCODE_RUN_VALIDATED = 0x2, OPCODE_CANCEL = 0x3,
  OPCODE_DEBUG_SET_BREAKPOINT = 0x4, OPCODE_DEBUG_BREAK = 0x5, OPCODE_DEBUG_CONTINUE = 0x6, OPCODE_DEBUG_CLEAR_BREAKPOINT = 0x7,
  OPCODE_STATEMENT_TIMEOUT_SECS_SET = 0x8, OPCODE_STATEMENT_TIMEOUT_SECS_SAVE = 0x9
}
 Command opcodes. More...
 
enum  {
  EVENTID_INVALIDCOMMAND = 0x0, EVENTID_INVALIDSEQRUNCALL = 0x1, EVENTID_FILEOPENERROR = 0x2, EVENTID_FILEREADERROR = 0x3,
  EVENTID_ENDOFFILEERROR = 0x4, EVENTID_FILEREADDESERIALIZEERROR = 0x5, EVENTID_WRONGSCHEMAVERSION = 0x6, EVENTID_WRONGCRC = 0x7,
  EVENTID_EXTRABYTESINSEQUENCE = 0x8, EVENTID_INSUFFICIENTBUFFERSPACE = 0x9, EVENTID_STATEMENTFAILED = 0xa, EVENTID_SEQUENCEDONE = 0xb,
  EVENTID_SEQUENCECANCELLED = 0xc, EVENTID_UNKNOWNSEQUENCERDIRECTIVE = 0xd, EVENTID_COMMANDSERIALIZEERROR = 0xe, EVENTID_CMDRESPONSEWHILENOTRUNNINGSEQUENCE = 0xf,
  EVENTID_CMDRESPONSEFROMOLDSEQUENCE = 0x10, EVENTID_CMDRESPONSEWHILENOTAWAITING = 0x11, EVENTID_WRONGCMDRESPONSEOPCODE = 0x12, EVENTID_WRONGCMDRESPONSEINDEX = 0x13,
  EVENTID_DIRECTIVEDESERIALIZEERROR = 0x14, EVENTID_MISMATCHEDTIMEBASE = 0x15, EVENTID_MISMATCHEDTIMECONTEXT = 0x16, EVENTID_STATEMENTTIMEDOUT = 0x17,
  EVENTID_TOOMANYSEQUENCEARGS = 0x18, EVENTID_TOOMANYSEQUENCESTATEMENTS = 0x19, EVENTID_DEBUGBROKEN = 0x1a, EVENTID_DEBUGBREAKPOINTSET = 0x1b,
  EVENTID_DEBUGBREAKPOINTCLEARED = 0x1c
}
 Event IDs. More...
 
enum  {
  CHANNELID_STATE = 0x0, CHANNELID_SEQUENCESSUCCEEDED = 0x1, CHANNELID_SEQUENCESFAILED = 0x2, CHANNELID_SEQUENCESCANCELLED = 0x3,
  CHANNELID_STATEMENTSDISPATCHED = 0x4, CHANNELID_STATEMENTSFAILED = 0x5, CHANNELID_SEQPATH = 0x6, CHANNELID_DEBUGBREAKPOINTIDX = 0x7,
  CHANNELID_DEBUG = 0x8, CHANNELID_STATEMENT_TIMEOUT_SECS = 0x9
}
 Channel IDs. More...
 
enum  { PARAMID_STATEMENT_TIMEOUT_SECS = 0x0 }
 Parameter IDs. More...
 
enum  SmId : FwEnumStoreType { SmId::sequencer }
 State machine identifiers. More...
 
- Protected Types inherited from Fw::ActiveComponentBase
enum  Lifecycle { CREATED, DISPATCHING, FINALIZING, DONE }
 Tracks the lifecycle of the component. More...
 
- 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

Definition at line 40 of file FpySequencer.hpp.

Constructor & Destructor Documentation

◆ FpySequencer()

Svc::FpySequencer::FpySequencer ( const char *const  compName)

Construct object FpySequencer

Parameters
compNameThe component name

Definition at line 15 of file FpySequencer.cpp.

◆ ~FpySequencer()

Svc::FpySequencer::~FpySequencer ( )

Destroy object FpySequencer

Definition at line 32 of file FpySequencer.cpp.

Member Function Documentation

◆ allocateBuffer()

void Svc::FpySequencer::allocateBuffer ( FwEnumStoreType  identifier,
Fw::MemAllocator allocator,
FwSizeType  bytes 
)

Definition at line 9 of file FpySequencerValidationState.cpp.

◆ checkTimers_handler()

void Svc::FpySequencer::checkTimers_handler ( FwIndexType  portNum,
U32  context 
)
overrideprotectedvirtual

Handler for input port checkTimers.

Parameters
portNumThe port number
contextThe call order

Implements Svc::FpySequencerComponentBase.

Definition at line 204 of file FpySequencer.cpp.

◆ cmdResponseIn_handler()

void Svc::FpySequencer::cmdResponseIn_handler ( FwIndexType  portNum,
FwOpcodeType  opCode,
U32  cmdSeq,
const Fw::CmdResponse response 
)
overrideprotectedvirtual

Handler for input port cmdResponseIn.

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

Implements Svc::FpySequencerComponentBase.

Definition at line 218 of file FpySequencer.cpp.

◆ deallocateBuffer()

void Svc::FpySequencer::deallocateBuffer ( Fw::MemAllocator allocator)

Definition at line 23 of file FpySequencerValidationState.cpp.

◆ directive_getPrm_internalInterfaceHandler()

void Svc::FpySequencer::directive_getPrm_internalInterfaceHandler ( const Svc::FpySequencer_GetPrmDirective directive)
overrideprotectedvirtual

Internal interface handler for directive_getPrm.

Implements Svc::FpySequencerComponentBase.

Definition at line 62 of file FpySequencerDirectives.cpp.

◆ directive_getTlm_internalInterfaceHandler()

void Svc::FpySequencer::directive_getTlm_internalInterfaceHandler ( const Svc::FpySequencer_GetTlmDirective directive)
overrideprotectedvirtual

Internal interface handler for directive_getTlm.

Implements Svc::FpySequencerComponentBase.

Definition at line 57 of file FpySequencerDirectives.cpp.

◆ directive_goto_internalInterfaceHandler()

void Svc::FpySequencer::directive_goto_internalInterfaceHandler ( const Svc::FpySequencer_GotoDirective directive)
overrideprotectedvirtual

Internal interface handler for directive_goto.

Implements Svc::FpySequencerComponentBase.

Definition at line 42 of file FpySequencerDirectives.cpp.

◆ directive_if_internalInterfaceHandler()

void Svc::FpySequencer::directive_if_internalInterfaceHandler ( const Svc::FpySequencer_IfDirective directive)
overrideprotectedvirtual

Internal interface handler for directive_if.

Implements Svc::FpySequencerComponentBase.

Definition at line 47 of file FpySequencerDirectives.cpp.

◆ directive_noOp_internalInterfaceHandler()

void Svc::FpySequencer::directive_noOp_internalInterfaceHandler ( const Svc::FpySequencer_NoOpDirective directive)
overrideprotectedvirtual

Internal interface handler for directive_noOp.

Implements Svc::FpySequencerComponentBase.

Definition at line 52 of file FpySequencerDirectives.cpp.

◆ directive_setLocalVar_internalInterfaceHandler()

void Svc::FpySequencer::directive_setLocalVar_internalInterfaceHandler ( const FpySequencer_SetLocalVarDirective directive)
overrideprotectedvirtual

Internal interface handler for directive_setLocalVar.

Implements Svc::FpySequencerComponentBase.

Definition at line 36 of file FpySequencerDirectives.cpp.

◆ directive_waitAbs_internalInterfaceHandler()

void Svc::FpySequencer::directive_waitAbs_internalInterfaceHandler ( const FpySequencer_WaitAbsDirective directive)
overrideprotectedvirtual

Internal interface handler for directive_waitAbs.

Implements Svc::FpySequencerComponentBase.

Definition at line 31 of file FpySequencerDirectives.cpp.

◆ directive_waitRel_internalInterfaceHandler()

void Svc::FpySequencer::directive_waitRel_internalInterfaceHandler ( const FpySequencer_WaitRelDirective directive)
overrideprotectedvirtual

Internal interface handler for directive_waitRel.

Implements Svc::FpySequencerComponentBase.

Definition at line 26 of file FpySequencerDirectives.cpp.

◆ parametersLoaded()

void Svc::FpySequencer::parametersLoaded ( )
overrideprotectedvirtual

Called whenever parameters are loaded.

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

Reimplemented from Svc::FpySequencerComponentBase.

Definition at line 352 of file FpySequencer.cpp.

◆ parameterUpdated()

void Svc::FpySequencer::parameterUpdated ( FwPrmIdType  id)
overrideprotectedvirtual

Called whenever a parameter is updated.

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

Reimplemented from Svc::FpySequencerComponentBase.

Definition at line 359 of file FpySequencer.cpp.

◆ pingIn_handler()

void Svc::FpySequencer::pingIn_handler ( FwIndexType  portNum,
U32  key 
)
overrideprotectedvirtual

Handler for input port pingIn.

Parameters
portNumThe port number
keyValue to return to pinger

Implements Svc::FpySequencerComponentBase.

Definition at line 210 of file FpySequencer.cpp.

◆ seqRunIn_handler()

void Svc::FpySequencer::seqRunIn_handler ( FwIndexType  portNum,
const Fw::StringBase filename 
)
overrideprotectedvirtual

Handler for input port seqRunIn.

Implements Svc::FpySequencerComponentBase.

Definition at line 309 of file FpySequencer.cpp.

◆ Svc_FpySequencer_SequencerStateMachine_guard_debugBreakOnce()

bool Svc::FpySequencer::Svc_FpySequencer_SequencerStateMachine_guard_debugBreakOnce ( SmId  smId,
Svc_FpySequencer_SequencerStateMachine::Signal  signal 
) const
overrideprotected

Implementation for guard debugBreakOnce of state machine Svc_FpySequencer_SequencerStateMachine

return true if this debug breakpoint should only happen once

Parameters
smIdThe state machine id
signalThe signal

Definition at line 325 of file FpySequencerStateMachine.cpp.

◆ Svc_FpySequencer_SequencerStateMachine_guard_goalStateIs_RUNNING()

bool Svc::FpySequencer::Svc_FpySequencer_SequencerStateMachine_guard_goalStateIs_RUNNING ( SmId  smId,
Svc_FpySequencer_SequencerStateMachine::Signal  signal 
) const
overrideprotected

Implementation for guard goalStateIs_RUNNING of state machine Svc_FpySequencer_SequencerStateMachine

return true if the goal state is RUNNING

Parameters
smIdThe state machine id
signalThe signal

Definition at line 304 of file FpySequencerStateMachine.cpp.

◆ Svc_FpySequencer_SequencerStateMachine_guard_shouldDebugBreak()

bool Svc::FpySequencer::Svc_FpySequencer_SequencerStateMachine_guard_shouldDebugBreak ( SmId  smId,
Svc_FpySequencer_SequencerStateMachine::Signal  signal 
) const
overrideprotected

Implementation for guard shouldDebugBreak of state machine Svc_FpySequencer_SequencerStateMachine

return true if should debug break at this point in execution, before dispatching next stmt

Parameters
smIdThe state machine id
signalThe signal

Definition at line 315 of file FpySequencerStateMachine.cpp.

◆ tlmWrite_handler()

void Svc::FpySequencer::tlmWrite_handler ( FwIndexType  portNum,
U32  context 
)
overrideprotectedvirtual

Handler for input port tlmWrite.

Parameters
portNumThe port number
contextThe call order

Implements Svc::FpySequencerComponentBase.

Definition at line 323 of file FpySequencer.cpp.


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