![]() |
F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
|
Health component implementation class. More...
#include <Svc/Health/HealthComponentImpl.hpp>
Classes | |
struct | PingEntry |
struct for ping entry More... | |
Public Member Functions | |
HealthImpl (const char *const compName) | |
HealthImpl constructor. More... | |
void | init (const FwSizeType queueDepth, const FwEnumStoreType instance) |
HealthImpl initialization function. More... | |
void | setPingEntries (PingEntry *pingEntries, FwIndexType numPingEntries, U32 watchDogCode) |
Set ping entry tables. More... | |
~HealthImpl () | |
Component destructor. More... | |
![]() | |
void | init (FwSizeType queueDepth, FwEnumStoreType instance=0) |
Initialize HealthComponentBase object. More... | |
Fw::InputCmdPort * | get_CmdDisp_InputPort (FwIndexType portNum) |
Svc::InputPingPort * | get_PingReturn_InputPort (FwIndexType portNum) |
Svc::InputSchedPort * | get_Run_InputPort (FwIndexType portNum) |
void | set_CmdReg_OutputPort (FwIndexType portNum, Fw::InputCmdRegPort *port) |
Connect port to CmdReg[portNum]. More... | |
void | set_CmdStatus_OutputPort (FwIndexType portNum, Fw::InputCmdResponsePort *port) |
Connect port to CmdStatus[portNum]. More... | |
void | set_Log_OutputPort (FwIndexType portNum, Fw::InputLogPort *port) |
Connect port to Log[portNum]. More... | |
void | set_Time_OutputPort (FwIndexType portNum, Fw::InputTimePort *port) |
Connect port to Time[portNum]. More... | |
void | set_Tlm_OutputPort (FwIndexType portNum, Fw::InputTlmPort *port) |
Connect port to Tlm[portNum]. More... | |
void | set_PingSend_OutputPort (FwIndexType portNum, Svc::InputPingPort *port) |
Connect port to PingSend[portNum]. More... | |
void | set_WdogStroke_OutputPort (FwIndexType portNum, Svc::InputWatchDogPort *port) |
Connect port to WdogStroke[portNum]. More... | |
void | regCommands () |
Register commands with the Command Dispatcher. More... | |
![]() | |
void | setIdBase (const FwIdType) |
Set the ID base. More... | |
FwIdType | getIdBase () const |
Protected Member Functions | |
virtual void | doOtherChecks () |
additional checks function More... | |
![]() | |
HealthComponentBase (const char *compName="") | |
Construct HealthComponentBase object. More... | |
virtual | ~HealthComponentBase () |
Destroy HealthComponentBase object. More... | |
FwIndexType | getNum_CmdDisp_InputPorts () const |
FwIndexType | getNum_PingReturn_InputPorts () const |
FwIndexType | getNum_Run_InputPorts () const |
FwIndexType | getNum_CmdReg_OutputPorts () const |
FwIndexType | getNum_CmdStatus_OutputPorts () const |
FwIndexType | getNum_Log_OutputPorts () const |
FwIndexType | getNum_Time_OutputPorts () const |
FwIndexType | getNum_Tlm_OutputPorts () const |
FwIndexType | getNum_PingSend_OutputPorts () const |
FwIndexType | getNum_WdogStroke_OutputPorts () const |
bool | isConnected_CmdReg_OutputPort (FwIndexType portNum) |
bool | isConnected_CmdStatus_OutputPort (FwIndexType portNum) |
bool | isConnected_Log_OutputPort (FwIndexType portNum) |
bool | isConnected_Time_OutputPort (FwIndexType portNum) |
bool | isConnected_Tlm_OutputPort (FwIndexType portNum) |
bool | isConnected_PingSend_OutputPort (FwIndexType portNum) |
bool | isConnected_WdogStroke_OutputPort (FwIndexType portNum) |
void | PingReturn_handlerBase (FwIndexType portNum, U32 key) |
Handler base-class function for input port PingReturn. More... | |
void | Run_handlerBase (FwIndexType portNum, U32 context) |
Handler base-class function for input port Run. More... | |
virtual void | PingReturn_preMsgHook (FwIndexType portNum, U32 key) |
Pre-message hook for async input port PingReturn. More... | |
void | PingSend_out (FwIndexType portNum, U32 key) |
Invoke output port PingSend. More... | |
void | WdogStroke_out (FwIndexType portNum, U32 code) |
Invoke output port WdogStroke. More... | |
void | cmdResponse_out (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response) |
Emit command response. More... | |
void | HLTH_ENABLE_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args) |
void | HLTH_PING_ENABLE_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args) |
void | HLTH_CHNG_PING_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args) |
virtual void | HLTH_ENABLE_preMsgHook (FwOpcodeType opCode, U32 cmdSeq) |
Pre-message hook for command HLTH_ENABLE. More... | |
virtual void | HLTH_PING_ENABLE_preMsgHook (FwOpcodeType opCode, U32 cmdSeq) |
Pre-message hook for command HLTH_PING_ENABLE. More... | |
virtual void | HLTH_CHNG_PING_preMsgHook (FwOpcodeType opCode, U32 cmdSeq) |
Pre-message hook for command HLTH_CHNG_PING. More... | |
void | log_WARNING_HI_HLTH_PING_WARN (const Fw::StringBase &entry) const |
void | log_FATAL_HLTH_PING_LATE (const Fw::StringBase &entry) const |
void | log_FATAL_HLTH_PING_WRONG_KEY (const Fw::StringBase &entry, U32 badKey) const |
void | log_ACTIVITY_HI_HLTH_CHECK_ENABLE (Fw::Enabled enabled) const |
void | log_ACTIVITY_HI_HLTH_CHECK_PING (Fw::Enabled enabled, const Fw::StringBase &entry) const |
void | log_WARNING_LO_HLTH_CHECK_LOOKUP_ERROR (const Fw::StringBase &entry) const |
void | log_ACTIVITY_HI_HLTH_PING_UPDATED (const Fw::StringBase &entry, U32 warn, U32 fatal) const |
void | log_WARNING_HI_HLTH_PING_INVALID_VALUES (const Fw::StringBase &entry, U32 warn, U32 fatal) const |
void | tlmWrite_PingLateWarnings (U32 arg, Fw::Time _tlmTime=Fw::Time()) const |
Fw::Time | getTime () const |
virtual MsgDispatchStatus | doDispatch () |
Called in the message loop to dispatch a message from the queue. More... | |
MsgDispatchStatus | dispatchCurrentMessages () |
Dispatch all current messages unless ERROR or EXIT occurs. More... | |
![]() | |
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... | |
![]() | |
PassiveComponentBase (const char *name) | |
Named constructor. More... | |
virtual | ~PassiveComponentBase () |
Destructor. More... | |
void | init (FwEnumStoreType instance) |
Initialization function. More... | |
FwEnumStoreType | getInstance () const |
![]() | |
ObjBase (const char *name) | |
ObjBase constructor. More... | |
virtual | ~ObjBase () |
Destructor. More... | |
void | init () |
Object initializer. More... | |
Friends | |
class | HealthTester |
Health component implementation class.
The health component iterates through each entry in its table and checks its status. If a ping entry tracker is enabled, it will ping its corresponding port with a provided key. If a ping return is outstanding, a counter is decremented, and its value is checked against warning and fault thresholds. A watchdog is always stroked in the run handler.
Definition at line 32 of file HealthComponentImpl.hpp.
Svc::HealthImpl::HealthImpl | ( | const char *const | compName | ) |
HealthImpl constructor.
The constructor for Health
compName | component name |
Definition at line 23 of file HealthComponentImpl.cpp.
Svc::HealthImpl::~HealthImpl | ( | ) |
Component destructor.
The destructor for HealthImpl is empty
Definition at line 68 of file HealthComponentImpl.cpp.
|
protectedvirtual |
additional checks function
Does additional checks based on the platform
Definition at line 24 of file HealthComponentStubChecks.cpp.
void Svc::HealthImpl::init | ( | const FwSizeType | queueDepth, |
const FwEnumStoreType | instance | ||
) |
HealthImpl initialization function.
Initializes the autocoded base class, ping table, and data members
queueDepth | Depth of queue |
instance | The instance number |
Definition at line 40 of file HealthComponentImpl.cpp.
void Svc::HealthImpl::setPingEntries | ( | PingEntry * | pingEntries, |
FwIndexType | numPingEntries, | ||
U32 | watchDogCode | ||
) |
Set ping entry tables.
Provides a table of ping entries
pingEntries | Pointer to provided ping table entries |
numPingEntries | Number of ping entries in table |
watchDogCode | Value that is sent to watchdog |
Definition at line 46 of file HealthComponentImpl.cpp.
|
friend |
Definition at line 34 of file HealthComponentImpl.hpp.