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

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

#include <Svc/SeqDispatcher/SeqDispatcherComponentAc.hpp>

Inheritance diagram for Svc::SeqDispatcherComponentBase:
Fw::ActiveComponentBase Fw::QueuedComponentBase Fw::PassiveComponentBase Fw::ObjBase Svc::SeqDispatcher

Public Member Functions

void init (FwSizeType queueDepth, FwEnumStoreType instance=0)
 Initialize SeqDispatcherComponentBase object. More...
 
Fw::InputCmdPortget_cmdIn_InputPort (FwIndexType portNum)
 
Fw::InputCmdResponsePortget_seqDoneIn_InputPort (FwIndexType portNum)
 
Svc::InputCmdSeqInPortget_seqRunIn_InputPort (FwIndexType portNum)
 
Svc::InputCmdSeqInPortget_seqStartIn_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_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_seqRunOut_OutputPort (FwIndexType portNum, Svc::InputCmdSeqInPort *port)
 Connect port to seqRunOut[portNum]. More...
 
void regCommands ()
 Register commands with the Command Dispatcher. 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_SEQDONEIN_INPUT_PORTS = 2, NUM_SEQRUNIN_INPUT_PORTS = 1, NUM_SEQSTARTIN_INPUT_PORTS = 2 }
 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_TIMECALLER_OUTPUT_PORTS = 1, NUM_TLMOUT_OUTPUT_PORTS = 1
}
 Enumerations for numbers of special output ports. More...
 
enum  { NUM_SEQRUNOUT_OUTPUT_PORTS = 2 }
 Enumerations for numbers of typed output ports. More...
 
enum  { OPCODE_RUN = 0x0, OPCODE_RUN_ARGS = 0x1, OPCODE_LOG_STATUS = 0x2 }
 Command opcodes. More...
 
enum  {
  EVENTID_INVALIDSEQUENCER = 0x0, EVENTID_NOAVAILABLESEQUENCERS = 0x1, EVENTID_UNKNOWNSEQUENCEFINISHED = 0x2, EVENTID_CONFLICTINGSEQUENCESTARTED = 0x3,
  EVENTID_UNEXPECTEDSEQUENCESTARTED = 0x4, EVENTID_LOGSEQUENCERSTATUS = 0x5
}
 Event IDs. More...
 
enum  { CHANNELID_DISPATCHEDCOUNT = 0x0, CHANNELID_ERRORCOUNT = 0x1, CHANNELID_SEQUENCERSAVAILABLE = 0x2 }
 Channel IDs. More...
 
- Protected Types inherited from Fw::ActiveComponentBase
enum  Lifecycle { CREATED, DISPATCHING, FINALIZING, DONE }
 Tracks the lifecycle of the component. More...
 

Protected Member Functions

 SeqDispatcherComponentBase (const char *compName="")
 Construct SeqDispatcherComponentBase object. More...
 
virtual ~SeqDispatcherComponentBase ()
 Destroy SeqDispatcherComponentBase 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_timeCaller_OutputPort (FwIndexType portNum) const
 
bool isConnected_tlmOut_OutputPort (FwIndexType portNum) const
 
bool isConnected_seqRunOut_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 seqDoneIn_handler (FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)=0
 Handler for input port seqDoneIn. More...
 
virtual void seqRunIn_handler (FwIndexType portNum, const Fw::StringBase &filename, const Svc::SeqArgs &args)=0
 Handler for input port seqRunIn. More...
 
virtual void seqStartIn_handler (FwIndexType portNum, const Fw::StringBase &filename, const Svc::SeqArgs &args)=0
 Handler for input port seqStartIn. More...
 
void seqDoneIn_handlerBase (FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)
 Handler base-class function for input port seqDoneIn. More...
 
void seqRunIn_handlerBase (FwIndexType portNum, const Fw::StringBase &filename, const Svc::SeqArgs &args)
 Handler base-class function for input port seqRunIn. More...
 
void seqStartIn_handlerBase (FwIndexType portNum, const Fw::StringBase &filename, const Svc::SeqArgs &args)
 Handler base-class function for input port seqStartIn. More...
 
virtual void seqDoneIn_preMsgHook (FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)
 Pre-message hook for async input port seqDoneIn. 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 seqStartIn_preMsgHook (FwIndexType portNum, const Fw::StringBase &filename, const Svc::SeqArgs &args)
 Pre-message hook for async input port seqStartIn. More...
 
void seqRunOut_out (FwIndexType portNum, const Fw::StringBase &filename, const Svc::SeqArgs &args) const
 Invoke output port seqRunOut. More...
 
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, Fw::Wait block)=0
 
virtual void RUN_ARGS_cmdHandler (FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &fileName, Fw::Wait block, Svc::SeqArgs buffer)=0
 
virtual void LOG_STATUS_cmdHandler (FwOpcodeType opCode, U32 cmdSeq)=0
 
void RUN_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void RUN_ARGS_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void LOG_STATUS_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 RUN_ARGS_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command RUN_ARGS. More...
 
virtual void LOG_STATUS_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command LOG_STATUS. More...
 
void log_WARNING_HI_InvalidSequencer (U16 idx) const
 Log event InvalidSequencer. More...
 
void log_WARNING_HI_NoAvailableSequencers () const
 Log event NoAvailableSequencers. More...
 
void log_WARNING_LO_UnknownSequenceFinished (U16 idx) const
 Log event UnknownSequenceFinished. More...
 
void log_WARNING_HI_ConflictingSequenceStarted (U16 idx, const Fw::StringBase &newSequence, const Fw::StringBase &sequenceInInternalState) const
 Log event ConflictingSequenceStarted. More...
 
void log_WARNING_LO_UnexpectedSequenceStarted (U16 idx, const Fw::StringBase &newSequence) const
 Log event UnexpectedSequenceStarted. More...
 
void log_ACTIVITY_LO_LogSequencerStatus (U16 idx, Svc::SeqDispatcher_CmdSequencerState state, const Fw::StringBase &filename) const
 Log event LogSequencerStatus. More...
 
void tlmWrite (FwChanIdType id, Fw::TlmBuffer &_tlmBuff, Fw::Time _tlmTime=Fw::Time()) const
 
void tlmWrite_dispatchedCount (U32 arg, Fw::Time _tlmTime=Fw::Time()) const
 
void tlmWrite_errorCount (U32 arg, Fw::Time _tlmTime=Fw::Time()) const
 
void tlmWrite_sequencersAvailable (U32 arg, Fw::Time _tlmTime=Fw::Time()) const
 
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)
 
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_seqDoneIn_InputPorts ()
 
static constexpr FwIndexType getNum_seqRunIn_InputPorts ()
 
static constexpr FwIndexType getNum_seqStartIn_InputPorts ()
 
static constexpr FwIndexType getNum_cmdRegOut_OutputPorts ()
 
static constexpr FwIndexType getNum_cmdResponseOut_OutputPorts ()
 
static constexpr FwIndexType getNum_logOut_OutputPorts ()
 
static constexpr FwIndexType getNum_timeCaller_OutputPorts ()
 
static constexpr FwIndexType getNum_tlmOut_OutputPorts ()
 
static constexpr FwIndexType getNum_seqRunOut_OutputPorts ()
 

Friends

class SeqDispatcherTesterBase
 Friend class tester to support autocoded test harness. More...
 
class SeqDispatcherTester
 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 SeqDispatcher component.

Dispatches command sequences to available command sequencers

Definition at line 44 of file SeqDispatcherComponentAc.hpp.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protected

Enumerations for numbers of special input ports.

Enumerator
NUM_CMDIN_INPUT_PORTS 

Definition at line 64 of file SeqDispatcherComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Enumerations for numbers of typed input ports.

Enumerator
NUM_SEQDONEIN_INPUT_PORTS 
NUM_SEQRUNIN_INPUT_PORTS 
NUM_SEQSTARTIN_INPUT_PORTS 

Definition at line 69 of file SeqDispatcherComponentAc.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_TIMECALLER_OUTPUT_PORTS 
NUM_TLMOUT_OUTPUT_PORTS 

Definition at line 76 of file SeqDispatcherComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Enumerations for numbers of typed output ports.

Enumerator
NUM_SEQRUNOUT_OUTPUT_PORTS 

Definition at line 86 of file SeqDispatcherComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Command opcodes.

Enumerator
OPCODE_RUN 

Dispatches a sequence to the first available sequencer.

OPCODE_RUN_ARGS 

Dispatches a sequence with arguments to the first available sequencer.

OPCODE_LOG_STATUS 

Logs via Events the state of each connected command sequencer.

Definition at line 91 of file SeqDispatcherComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Event IDs.

Enumerator
EVENTID_INVALIDSEQUENCER 
EVENTID_NOAVAILABLESEQUENCERS 
EVENTID_UNKNOWNSEQUENCEFINISHED 
EVENTID_CONFLICTINGSEQUENCESTARTED 
EVENTID_UNEXPECTEDSEQUENCESTARTED 
EVENTID_LOGSEQUENCERSTATUS 

Definition at line 98 of file SeqDispatcherComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Channel IDs.

Enumerator
CHANNELID_DISPATCHEDCOUNT 

Channel ID for dispatchedCount.

CHANNELID_ERRORCOUNT 

Channel ID for errorCount.

CHANNELID_SEQUENCERSAVAILABLE 

Channel ID for sequencersAvailable.

Definition at line 108 of file SeqDispatcherComponentAc.hpp.

Constructor & Destructor Documentation

◆ SeqDispatcherComponentBase()

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

Construct SeqDispatcherComponentBase object.

Parameters
compNameThe component name

Definition at line 673 of file SeqDispatcherComponentAc.cpp.

◆ ~SeqDispatcherComponentBase()

Svc::SeqDispatcherComponentBase::~SeqDispatcherComponentBase ( )
protectedvirtual

Destroy SeqDispatcherComponentBase object.

Definition at line 680 of file SeqDispatcherComponentAc.cpp.

Member Function Documentation

◆ cmdIn_handlerBase()

void Svc::SeqDispatcherComponentBase::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 789 of file SeqDispatcherComponentAc.cpp.

◆ cmdResponse_out()

void Svc::SeqDispatcherComponentBase::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 1109 of file SeqDispatcherComponentAc.cpp.

◆ get_cmdIn_InputPort()

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

Get special input port at index

Returns
cmdIn[portNum]
Parameters
portNumThe port number

Definition at line 354 of file SeqDispatcherComponentAc.cpp.

◆ get_seqDoneIn_InputPort()

Fw::InputCmdResponsePort * Svc::SeqDispatcherComponentBase::get_seqDoneIn_InputPort ( FwIndexType  portNum)

Get typed input port at index

Returns
seqDoneIn[portNum]
Parameters
portNumThe port number

Definition at line 373 of file SeqDispatcherComponentAc.cpp.

◆ get_seqRunIn_InputPort()

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

Get typed input port at index

Returns
seqRunIn[portNum]
Parameters
portNumThe port number

Definition at line 384 of file SeqDispatcherComponentAc.cpp.

◆ get_seqStartIn_InputPort()

Svc::InputCmdSeqInPort * Svc::SeqDispatcherComponentBase::get_seqStartIn_InputPort ( FwIndexType  portNum)

Get typed input port at index

Returns
seqStartIn[portNum]
Parameters
portNumThe port number

Definition at line 395 of file SeqDispatcherComponentAc.cpp.

◆ getNum_cmdIn_InputPorts()

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

Get the number of cmdIn input ports

Returns
The number of cmdIn input ports

Definition at line 340 of file SeqDispatcherComponentAc.hpp.

◆ getNum_cmdRegOut_OutputPorts()

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

Get the number of cmdRegOut output ports

Returns
The number of cmdRegOut output ports

Definition at line 380 of file SeqDispatcherComponentAc.hpp.

◆ getNum_cmdResponseOut_OutputPorts()

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

Get the number of cmdResponseOut output ports

Returns
The number of cmdResponseOut output ports

Definition at line 387 of file SeqDispatcherComponentAc.hpp.

◆ getNum_logOut_OutputPorts()

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

Get the number of logOut output ports

Returns
The number of logOut output ports

Definition at line 394 of file SeqDispatcherComponentAc.hpp.

◆ getNum_seqDoneIn_InputPorts()

static constexpr FwIndexType Svc::SeqDispatcherComponentBase::getNum_seqDoneIn_InputPorts ( )
inlinestaticprotected

Get the number of seqDoneIn input ports

Returns
The number of seqDoneIn input ports

Definition at line 353 of file SeqDispatcherComponentAc.hpp.

◆ getNum_seqRunIn_InputPorts()

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

Get the number of seqRunIn input ports

Returns
The number of seqRunIn input ports

Definition at line 360 of file SeqDispatcherComponentAc.hpp.

◆ getNum_seqRunOut_OutputPorts()

static constexpr FwIndexType Svc::SeqDispatcherComponentBase::getNum_seqRunOut_OutputPorts ( )
inlinestaticprotected

Get the number of seqRunOut output ports

Returns
The number of seqRunOut output ports

Definition at line 432 of file SeqDispatcherComponentAc.hpp.

◆ getNum_seqStartIn_InputPorts()

static constexpr FwIndexType Svc::SeqDispatcherComponentBase::getNum_seqStartIn_InputPorts ( )
inlinestaticprotected

Get the number of seqStartIn input ports

Returns
The number of seqStartIn input ports

Definition at line 367 of file SeqDispatcherComponentAc.hpp.

◆ getNum_timeCaller_OutputPorts()

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

Get the number of timeCaller output ports

Returns
The number of timeCaller output ports

Definition at line 412 of file SeqDispatcherComponentAc.hpp.

◆ getNum_tlmOut_OutputPorts()

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

Get the number of tlmOut output ports

Returns
The number of tlmOut output ports

Definition at line 419 of file SeqDispatcherComponentAc.hpp.

◆ getTime()

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

Get the time

\return The current time

Definition at line 1999 of file SeqDispatcherComponentAc.cpp.

◆ init()

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

Initialize SeqDispatcherComponentBase object.

Parameters
queueDepthThe queue depth
instanceThe instance number

Definition at line 77 of file SeqDispatcherComponentAc.cpp.

◆ isConnected_cmdRegOut_OutputPort()

bool Svc::SeqDispatcherComponentBase::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 692 of file SeqDispatcherComponentAc.cpp.

◆ isConnected_cmdResponseOut_OutputPort()

bool Svc::SeqDispatcherComponentBase::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 703 of file SeqDispatcherComponentAc.cpp.

◆ isConnected_logOut_OutputPort()

bool Svc::SeqDispatcherComponentBase::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 714 of file SeqDispatcherComponentAc.cpp.

◆ isConnected_seqRunOut_OutputPort()

bool Svc::SeqDispatcherComponentBase::isConnected_seqRunOut_OutputPort ( FwIndexType  portNum) const
protected

Check whether port seqRunOut is connected

Returns
Whether port seqRunOut is connected
Parameters
portNumThe port number

Definition at line 770 of file SeqDispatcherComponentAc.cpp.

◆ isConnected_timeCaller_OutputPort()

bool Svc::SeqDispatcherComponentBase::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 740 of file SeqDispatcherComponentAc.cpp.

◆ isConnected_tlmOut_OutputPort()

bool Svc::SeqDispatcherComponentBase::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 751 of file SeqDispatcherComponentAc.cpp.

◆ log_ACTIVITY_LO_LogSequencerStatus()

void Svc::SeqDispatcherComponentBase::log_ACTIVITY_LO_LogSequencerStatus ( U16  idx,
Svc::SeqDispatcher_CmdSequencerState  state,
const Fw::StringBase filename 
) const
protected

Log event LogSequencerStatus.

Definition at line 1778 of file SeqDispatcherComponentAc.cpp.

◆ LOG_STATUS_cmdHandler()

virtual void Svc::SeqDispatcherComponentBase::LOG_STATUS_cmdHandler ( FwOpcodeType  opCode,
U32  cmdSeq 
)
protectedpure virtual

Handler for command LOG_STATUS

Logs via Events the state of each connected command sequencer

Parameters
opCodeThe opcode
cmdSeqThe command sequence number

◆ LOG_STATUS_cmdHandlerBase()

void Svc::SeqDispatcherComponentBase::LOG_STATUS_cmdHandlerBase ( FwOpcodeType  opCode,
U32  cmdSeq,
Fw::CmdArgBuffer args 
)
protected

Base-class handler function for command LOG_STATUS

Logs via Events the state of each connected command sequencer

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
argsThe command argument buffer

Definition at line 1244 of file SeqDispatcherComponentAc.cpp.

◆ LOG_STATUS_preMsgHook()

void Svc::SeqDispatcherComponentBase::LOG_STATUS_preMsgHook ( FwOpcodeType  opCode,
U32  cmdSeq 
)
protectedvirtual

Pre-message hook for command LOG_STATUS.

Parameters
opCodeThe opcode
cmdSeqThe command sequence number

Definition at line 1333 of file SeqDispatcherComponentAc.cpp.

◆ log_WARNING_HI_ConflictingSequenceStarted()

void Svc::SeqDispatcherComponentBase::log_WARNING_HI_ConflictingSequenceStarted ( U16  idx,
const Fw::StringBase newSequence,
const Fw::StringBase sequenceInInternalState 
) const
protected

Log event ConflictingSequenceStarted.

Definition at line 1577 of file SeqDispatcherComponentAc.cpp.

◆ log_WARNING_HI_InvalidSequencer()

void Svc::SeqDispatcherComponentBase::log_WARNING_HI_InvalidSequencer ( U16  idx) const
protected

Log event InvalidSequencer.

Definition at line 1348 of file SeqDispatcherComponentAc.cpp.

◆ log_WARNING_HI_NoAvailableSequencers()

void Svc::SeqDispatcherComponentBase::log_WARNING_HI_NoAvailableSequencers ( ) const
protected

Log event NoAvailableSequencers.

Definition at line 1430 of file SeqDispatcherComponentAc.cpp.

◆ log_WARNING_LO_UnexpectedSequenceStarted()

void Svc::SeqDispatcherComponentBase::log_WARNING_LO_UnexpectedSequenceStarted ( U16  idx,
const Fw::StringBase newSequence 
) const
protected

Log event UnexpectedSequenceStarted.

Definition at line 1683 of file SeqDispatcherComponentAc.cpp.

◆ log_WARNING_LO_UnknownSequenceFinished()

void Svc::SeqDispatcherComponentBase::log_WARNING_LO_UnknownSequenceFinished ( U16  idx) const
protected

Log event UnknownSequenceFinished.

Definition at line 1495 of file SeqDispatcherComponentAc.cpp.

◆ regCommands()

void Svc::SeqDispatcherComponentBase::regCommands ( )

Register commands with the Command Dispatcher.

Connect the dispatcher first

Definition at line 648 of file SeqDispatcherComponentAc.cpp.

◆ RUN_ARGS_cmdHandler()

virtual void Svc::SeqDispatcherComponentBase::RUN_ARGS_cmdHandler ( FwOpcodeType  opCode,
U32  cmdSeq,
const Fw::CmdStringArg fileName,
Fw::Wait  block,
Svc::SeqArgs  buffer 
)
protectedpure virtual

Handler for command RUN_ARGS

Dispatches a sequence with arguments to the first available sequencer

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
fileNameThe name of the sequence file
blockReturn command status when complete or not
bufferArguments to pass to a sequencer

◆ RUN_ARGS_cmdHandlerBase()

void Svc::SeqDispatcherComponentBase::RUN_ARGS_cmdHandlerBase ( FwOpcodeType  opCode,
U32  cmdSeq,
Fw::CmdArgBuffer args 
)
protected

Base-class handler function for command RUN_ARGS

Dispatches a sequence with arguments to the first available sequencer

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
argsThe command argument buffer

Definition at line 1185 of file SeqDispatcherComponentAc.cpp.

◆ RUN_ARGS_preMsgHook()

void Svc::SeqDispatcherComponentBase::RUN_ARGS_preMsgHook ( FwOpcodeType  opCode,
U32  cmdSeq 
)
protectedvirtual

Pre-message hook for command RUN_ARGS.

Parameters
opCodeThe opcode
cmdSeqThe command sequence number

Definition at line 1322 of file SeqDispatcherComponentAc.cpp.

◆ RUN_cmdHandler()

virtual void Svc::SeqDispatcherComponentBase::RUN_cmdHandler ( FwOpcodeType  opCode,
U32  cmdSeq,
const Fw::CmdStringArg fileName,
Fw::Wait  block 
)
protectedpure virtual

Handler for command RUN

Dispatches a sequence to the first available sequencer

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
fileNameThe name of the sequence file
blockReturn command status when complete or not

◆ RUN_cmdHandlerBase()

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

Base-class handler function for command RUN

Dispatches a sequence to the first available sequencer

Parameters
opCodeThe opcode
cmdSeqThe command sequence number
argsThe command argument buffer

Definition at line 1126 of file SeqDispatcherComponentAc.cpp.

◆ RUN_preMsgHook()

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

Pre-message hook for command RUN.

Parameters
opCodeThe opcode
cmdSeqThe command sequence number

Definition at line 1311 of file SeqDispatcherComponentAc.cpp.

◆ seqDoneIn_handler()

virtual void Svc::SeqDispatcherComponentBase::seqDoneIn_handler ( FwIndexType  portNum,
FwOpcodeType  opCode,
U32  cmdSeq,
const Fw::CmdResponse response 
)
protectedpure virtual

Handler for input port seqDoneIn.

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

Implemented in Svc::SeqDispatcher.

◆ seqDoneIn_handlerBase()

void Svc::SeqDispatcherComponentBase::seqDoneIn_handlerBase ( FwIndexType  portNum,
FwOpcodeType  opCode,
U32  cmdSeq,
const Fw::CmdResponse response 
)
protected

Handler base-class function for input port seqDoneIn.

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

Definition at line 841 of file SeqDispatcherComponentAc.cpp.

◆ seqDoneIn_preMsgHook()

void Svc::SeqDispatcherComponentBase::seqDoneIn_preMsgHook ( FwIndexType  portNum,
FwOpcodeType  opCode,
U32  cmdSeq,
const Fw::CmdResponse response 
)
protectedvirtual

Pre-message hook for async input port seqDoneIn.

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

Definition at line 1044 of file SeqDispatcherComponentAc.cpp.

◆ seqRunIn_handler()

virtual void Svc::SeqDispatcherComponentBase::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

Implemented in Svc::SeqDispatcher.

◆ seqRunIn_handlerBase()

void Svc::SeqDispatcherComponentBase::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 912 of file SeqDispatcherComponentAc.cpp.

◆ seqRunIn_preMsgHook()

void Svc::SeqDispatcherComponentBase::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 1055 of file SeqDispatcherComponentAc.cpp.

◆ seqRunOut_out()

void Svc::SeqDispatcherComponentBase::seqRunOut_out ( FwIndexType  portNum,
const Fw::StringBase filename,
const Svc::SeqArgs args 
) const
protected

Invoke output port seqRunOut.

Parameters
portNumThe port number
filenameThe sequence file
argsSequence arguments

Definition at line 1081 of file SeqDispatcherComponentAc.cpp.

◆ seqStartIn_handler()

virtual void Svc::SeqDispatcherComponentBase::seqStartIn_handler ( FwIndexType  portNum,
const Fw::StringBase filename,
const Svc::SeqArgs args 
)
protectedpure virtual

Handler for input port seqStartIn.

Parameters
portNumThe port number
filenameThe sequence file
argsSequence arguments

Implemented in Svc::SeqDispatcher.

◆ seqStartIn_handlerBase()

void Svc::SeqDispatcherComponentBase::seqStartIn_handlerBase ( FwIndexType  portNum,
const Fw::StringBase filename,
const Svc::SeqArgs args 
)
protected

Handler base-class function for input port seqStartIn.

Parameters
portNumThe port number
filenameThe sequence file
argsSequence arguments

Definition at line 974 of file SeqDispatcherComponentAc.cpp.

◆ seqStartIn_preMsgHook()

void Svc::SeqDispatcherComponentBase::seqStartIn_preMsgHook ( FwIndexType  portNum,
const Fw::StringBase filename,
const Svc::SeqArgs args 
)
protectedvirtual

Pre-message hook for async input port seqStartIn.

Parameters
portNumThe port number
filenameThe sequence file
argsSequence arguments

Definition at line 1065 of file SeqDispatcherComponentAc.cpp.

◆ set_cmdRegOut_OutputPort()

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

Connect port to cmdRegOut[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 414 of file SeqDispatcherComponentAc.cpp.

◆ set_cmdResponseOut_OutputPort()

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

Connect port to cmdResponseOut[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 428 of file SeqDispatcherComponentAc.cpp.

◆ set_logOut_OutputPort()

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

Connect port to logOut[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 442 of file SeqDispatcherComponentAc.cpp.

◆ set_seqRunOut_OutputPort()

void Svc::SeqDispatcherComponentBase::set_seqRunOut_OutputPort ( FwIndexType  portNum,
Svc::InputCmdSeqInPort port 
)

Connect port to seqRunOut[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 510 of file SeqDispatcherComponentAc.cpp.

◆ set_timeCaller_OutputPort()

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

Connect port to timeCaller[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 474 of file SeqDispatcherComponentAc.cpp.

◆ set_tlmOut_OutputPort()

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

Connect port to tlmOut[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 488 of file SeqDispatcherComponentAc.cpp.

◆ tlmWrite()

void Svc::SeqDispatcherComponentBase::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 1898 of file SeqDispatcherComponentAc.cpp.

◆ tlmWrite_dispatchedCount()

void Svc::SeqDispatcherComponentBase::tlmWrite_dispatchedCount ( U32  arg,
Fw::Time  _tlmTime = Fw::Time() 
) const
protected

Write telemetry channel dispatchedCount

Number of sequences dispatched

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

Definition at line 1929 of file SeqDispatcherComponentAc.cpp.

◆ tlmWrite_errorCount()

void Svc::SeqDispatcherComponentBase::tlmWrite_errorCount ( U32  arg,
Fw::Time  _tlmTime = Fw::Time() 
) const
protected

Write telemetry channel errorCount

Number of sequences dispatched that returned an error. Note: if a sequence was run in non-blocking mode, even if the sequence errors out, this error count will never increase

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

Definition at line 1951 of file SeqDispatcherComponentAc.cpp.

◆ tlmWrite_sequencersAvailable()

void Svc::SeqDispatcherComponentBase::tlmWrite_sequencersAvailable ( U32  arg,
Fw::Time  _tlmTime = Fw::Time() 
) const
protected

Write telemetry channel sequencersAvailable

Number of sequencers in an available state

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

Definition at line 1973 of file SeqDispatcherComponentAc.cpp.

Friends And Related Function Documentation

◆ SeqDispatcherTester

friend class SeqDispatcherTester
friend

Friend class tester implementation to support white-box testing.

Definition at line 55 of file SeqDispatcherComponentAc.hpp.

◆ SeqDispatcherTesterBase

friend class SeqDispatcherTesterBase
friend

Friend class tester to support autocoded test harness.

Definition at line 53 of file SeqDispatcherComponentAc.hpp.


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