F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
Loading...
Searching...
No Matches
CommandDispatcherImpl.hpp
Go to the documentation of this file.
1
14
#ifndef COMMANDDISPATCHERIMPL_HPP_
15
#define COMMANDDISPATCHERIMPL_HPP_
16
17
#include <
Svc/CmdDispatcher/CommandDispatcherComponentAc.hpp
>
18
#include <
Os/Mutex.hpp
>
19
#include <
CommandDispatcherImplCfg.hpp
>
20
21
namespace
Svc
{
22
31
32
class
CommandDispatcherImpl
:
public
CommandDispatcherComponentBase
{
33
public
:
41
CommandDispatcherImpl
(
const
char
* name);
45
virtual
~CommandDispatcherImpl
();
46
PROTECTED:
47
PRIVATE:
57
void
compCmdStat_handler(
NATIVE_INT_TYPE
portNum,
FwOpcodeType
opCode, U32 cmdSeq,
const
Fw::CmdResponse
&response);
66
void
seqCmdBuff_handler(
NATIVE_INT_TYPE
portNum,
Fw::ComBuffer
&data, U32 context);
75
void
compCmdReg_handler(
NATIVE_INT_TYPE
portNum,
FwOpcodeType
opCode);
84
void
pingIn_handler(
NATIVE_INT_TYPE
portNum, U32 key);
91
void
CMD_NO_OP_cmdHandler(
FwOpcodeType
opCode, U32 cmdSeq);
100
void
CMD_NO_OP_STRING_cmdHandler(
FwOpcodeType
opCode, U32 cmdSeq,
const
Fw::CmdStringArg
& arg1);
110
void
CMD_TEST_CMD_1_cmdHandler(
FwOpcodeType
opCode, U32 cmdSeq, I32 arg1,
F32
arg2,
U8
arg3);
120
void
CMD_CLEAR_TRACKING_cmdHandler(
FwOpcodeType
opCode, U32 cmdSeq);
121
132
133
struct
DispatchEntry {
134
bool
used;
135
U32 opcode;
136
NATIVE_INT_TYPE
port;
137
} m_entryTable[
CMD_DISPATCHER_DISPATCH_TABLE_SIZE
];
138
151
152
struct
SequenceTracker {
153
bool
used;
154
U32 seq;
155
FwOpcodeType
opCode;
156
U32 context;
157
NATIVE_INT_TYPE
callerPort;
158
} m_sequenceTracker[
CMD_DISPATCHER_SEQUENCER_TABLE_SIZE
];
159
160
U32 m_seq;
161
162
U32 m_numCmdsDispatched;
163
U32 m_numCmdErrors;
164
165
};
166
}
167
168
#endif
/* COMMANDDISPATCHERIMPL_HPP_ */
NATIVE_INT_TYPE
PlatformIntType NATIVE_INT_TYPE
Definition
BasicTypes.h:55
F32
float F32
32-bit floating point
Definition
BasicTypes.h:49
U8
uint8_t U8
8-bit unsigned integer
Definition
BasicTypes.h:30
CommandDispatcherComponentAc.hpp
CommandDispatcherImplCfg.hpp
CMD_DISPATCHER_SEQUENCER_TABLE_SIZE
@ CMD_DISPATCHER_SEQUENCER_TABLE_SIZE
Definition
CommandDispatcherImplCfg.hpp:15
CMD_DISPATCHER_DISPATCH_TABLE_SIZE
@ CMD_DISPATCHER_DISPATCH_TABLE_SIZE
Definition
CommandDispatcherImplCfg.hpp:14
FwOpcodeType
U32 FwOpcodeType
Definition
FpConfig.h:91
Mutex.hpp
Fw::CmdResponse
Enum representing a command response.
Definition
CmdResponseEnumAc.hpp:19
Fw::CmdStringArg
Definition
CmdString.hpp:17
Fw::ComBuffer
Definition
ComBuffer.hpp:20
Svc::CommandDispatcherComponentBase
Auto-generated base for CommandDispatcher component.
Definition
CommandDispatcherComponentAc.hpp:40
Svc::CommandDispatcherImpl
Command Dispatcher component class.
Definition
CommandDispatcherImpl.hpp:32
Svc::CommandDispatcherImpl::~CommandDispatcherImpl
virtual ~CommandDispatcherImpl()
Component destructor.
Definition
CommandDispatcherImpl.cpp:24
Svc
Definition
ActiveRateGroupCfg.hpp:18
Svc
CmdDispatcher
CommandDispatcherImpl.hpp
Generated by
1.9.8