F´ Flight Software - C/C++ Documentation
NASA-v1.5.0
A framework for building embedded system applications to NASA flight quality standards.
|
Go to the documentation of this file.
14 #ifndef COMMANDDISPATCHERIMPL_HPP_
15 #define COMMANDDISPATCHERIMPL_HPP_
U32 context
context passed by user
#define PRIVATE
overridable private for unit testing
I32 m_seq
current command sequence number
Auto-generated base for CommandDispatcher component.
PRIVATE NATIVE_INT_TYPE portNum
void pingIn_handler(NATIVE_INT_TYPE portNum, U32 key)
component ping handler
U32 opcode
opcode of entry
struct Svc::CommandDispatcherImpl::DispatchEntry m_entryTable[CMD_DISPATCHER_DISPATCH_TABLE_SIZE]
table of dispatch entries
uint8_t U8
8-bit unsigned integer
table used to store opcode to port mappings
U32 m_numCmdErrors
number of commands with an error
NATIVE_INT_TYPE port
which port the entry invokes
CommandDispatcherImpl(const char *name)
Command Dispatcher constructor.
Command Dispatcher component class.
NATIVE_INT_TYPE callerPort
port command source port
void CMD_NO_OP_STRING_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &arg1)
NO_OP with string command handler.
PROTECTED FwOpcodeType U32 Fw::CommandResponse response
void CMD_NO_OP_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)
NO_OP command handler.
void init(void)
Object initializer.
PROTECTED FwOpcodeType opCode
float F32
32-bit floating point
#define FwOpcodeType
Type representation for a command opcode.
@ CMD_DISPATCHER_DISPATCH_TABLE_SIZE
table used to store opcode that are being executed
PROTECTED FwOpcodeType U32 cmdSeq
void CMD_CLEAR_TRACKING_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)
A command to clear the command tracking.
struct Svc::CommandDispatcherImpl::SequenceTracker m_sequenceTracker[CMD_DISPATCHER_SEQUENCER_TABLE_SIZE]
sequence tracking port for command completions;
U32 m_numCmdsDispatched
number of commands dispatched
void seqCmdBuff_handler(NATIVE_INT_TYPE portNum, Fw::ComBuffer &data, U32 context)
component command buffer handler
bool used
if this slot is used
FwOpcodeType opCode
opcode being tracked
void compCmdReg_handler(NATIVE_INT_TYPE portNum, FwOpcodeType opCode)
component command registration handler
bool used
if entry has been used yet
virtual ~CommandDispatcherImpl()
Component destructor.
virtual void compCmdStat_handler(NATIVE_INT_TYPE portNum, FwOpcodeType opCode, U32 cmdSeq, Fw::CommandResponse response)=0
Handler for input port compCmdStat.
@ CMD_DISPATCHER_SEQUENCER_TABLE_SIZE
void CMD_TEST_CMD_1_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, I32 arg1, F32 arg2, U8 arg3)
A test command with different argument types.
int NATIVE_INT_TYPE
native integer type declaration
U32 seq
command sequence number