F´ Flight Software - C/C++ Documentation  NASA-v1.5.0
A framework for building embedded system applications to NASA flight quality standards.
HealthComponentAc.hpp
Go to the documentation of this file.
1 // ======================================================================
2 // \title HealthComponentAc.hpp
3 // \author Auto-generated
4 // \brief hpp file for Health component base class
5 //
6 // \copyright
7 // Copyright 2009-2015, by the California Institute of Technology.
8 // ALL RIGHTS RESERVED. United States Government Sponsorship
9 // acknowledged.
10 //
11 // ======================================================================
12 
13 #ifndef HEALTH_COMP_HPP_
14 #define HEALTH_COMP_HPP_
15 
16 #include <FpConfig.hpp>
20 #include <Fw/Cmd/CmdString.hpp>
21 #include <Fw/Tlm/TlmString.hpp>
22 #include <Fw/Time/TimePortAc.hpp>
23 #include <Fw/Log/LogString.hpp>
24 #include <Fw/Cmd/CmdArgBuffer.hpp>
25 #include <Fw/Tlm/TlmBuffer.hpp>
26 #include <Fw/Time/Time.hpp>
27 #include <Fw/Log/LogBuffer.hpp>
28 #include <Fw/Log/TextLogString.hpp>
30 #include <Svc/Ping/PingPortAc.hpp>
32 #include <Fw/Cmd/CmdPortAc.hpp>
34 #include <Fw/Cmd/CmdRegPortAc.hpp>
35 #include <Fw/Tlm/TlmPortAc.hpp>
36 #include <Fw/Time/TimePortAc.hpp>
37 #include <Fw/Log/LogPortAc.hpp>
38 #if FW_ENABLE_TEXT_LOGGING == 1
39 #include <Fw/Log/LogTextPortAc.hpp>
40 #endif
41 
42 namespace Svc {
43 
49  {
50 
51  // ----------------------------------------------------------------------
52  // Friend classes
53  // ----------------------------------------------------------------------
54 
58 
59  public:
60 
61  // ----------------------------------------------------------------------
62  // Getters for typed input ports
63  // ----------------------------------------------------------------------
64 
71  );
72 
79  );
80 
87  );
88 
89  public:
90 
91  // ----------------------------------------------------------------------
92  // Connect typed input ports to typed output ports
93  // ----------------------------------------------------------------------
94 
99  Svc::InputPingPort *port
100  );
101 
107  );
108 
114  );
115 
120  Fw::InputCmdRegPort *port
121  );
122 
125  void set_Tlm_OutputPort(
127  Fw::InputTlmPort *port
128  );
129 
132  void set_Time_OutputPort(
134  Fw::InputTimePort *port
135  );
136 
139  void set_Log_OutputPort(
141  Fw::InputLogPort *port
142  );
143 
144 #if FW_ENABLE_TEXT_LOGGING == 1
145  void set_LogText_OutputPort(
149  Fw::InputLogTextPort *port
150  );
151 #endif
152 
153 #if FW_PORT_SERIALIZATION
154 
155  public:
156 
157  // ----------------------------------------------------------------------
158  // Connect serialization input ports to typed output ports
159  // ----------------------------------------------------------------------
160 
165  Fw::InputSerializePort *port
166  );
167 
172  Fw::InputSerializePort *port
173  );
174 
179  Fw::InputSerializePort *port
180  );
181 
186  Fw::InputSerializePort *port
187  );
188 
191  void set_Tlm_OutputPort(
193  Fw::InputSerializePort *port
194  );
195 
198  void set_Time_OutputPort(
200  Fw::InputSerializePort *port
201  );
202 
205  void set_Log_OutputPort(
207  Fw::InputSerializePort *port
208  );
209 
210 #if FW_ENABLE_TEXT_LOGGING == 1
211  void set_LogText_OutputPort(
215  Fw::InputSerializePort *port
216  );
217 #endif
218 
219 #endif
220 
221  public:
222 
223  // ----------------------------------------------------------------------
224  // Command registration
225  // ----------------------------------------------------------------------
226 
231  void regCommands(void);
232 
234 
235  // ----------------------------------------------------------------------
236  // Component construction, initialization, and destruction
237  // ----------------------------------------------------------------------
238 
239 #if FW_OBJECT_NAMES == 1
243  const char* compName
244  );
245 #else
246  HealthComponentBase(void);
249 #endif
250 
253  void init(
254  NATIVE_INT_TYPE queueDepth,
255  NATIVE_INT_TYPE instance = 0
256  );
257 
260  virtual ~HealthComponentBase(void);
261 
263 
264  // ----------------------------------------------------------------------
265  // Handlers to implement for typed input ports
266  // ----------------------------------------------------------------------
267 
269  //
270  virtual void PingReturn_handler(
272  U32 key
273  ) = 0;
274 
276  //
277  virtual void Run_handler(
279  NATIVE_UINT_TYPE context
280  ) = 0;
281 
283 
284  // ----------------------------------------------------------------------
285  // Port handler base-class functions for typed input ports.
286  // ----------------------------------------------------------------------
287  // Call these functions directly to bypass the corresponding ports.
288  // ----------------------------------------------------------------------
289 
292  void PingReturn_handlerBase(
294  U32 key
295  );
296 
299  void Run_handlerBase(
301  NATIVE_UINT_TYPE context
302  );
303 
305 
306  // ----------------------------------------------------------------------
307  // Pre-message hooks for typed async input ports.
308  // ----------------------------------------------------------------------
309  // Each of these functions is invoked just before processing a message
310  // on the corresponding port. By default they do nothing. You can
311  // override them to provide specific pre-message behavior.
312  // ----------------------------------------------------------------------
313 
316  virtual void PingReturn_preMsgHook(
318  U32 key
319  );
320 
322 
323  // ----------------------------------------------------------------------
324  // Invocation functions for typed output ports
325  // ----------------------------------------------------------------------
326 
329  void PingSend_out(
331  U32 key
332  );
333 
336  void WdogStroke_out(
338  U32 code
339  );
340 
342 
343  // ----------------------------------------------------------------------
344  // Getters for numbers of input ports
345  // ----------------------------------------------------------------------
346 
351  NATIVE_INT_TYPE getNum_PingReturn_InputPorts(void);
352 
358 
364 
365 
366  // ----------------------------------------------------------------------
367  // Enumerations for number of ports
368  // ----------------------------------------------------------------------
369 
370  enum {
374  };
375 
377 
378  // ----------------------------------------------------------------------
379  // Getters for numbers of output ports
380  // ----------------------------------------------------------------------
381 
386  NATIVE_INT_TYPE getNum_PingSend_OutputPorts(void);
387 
393 
399 
405 
411 
417 
423 
424 #if FW_ENABLE_TEXT_LOGGING == 1
425  NATIVE_INT_TYPE getNum_LogText_OutputPorts(void);
430 #endif
431 
432 
433  enum {
442  };
443 
445 
446  // ----------------------------------------------------------------------
447  // Connection status queries for output ports
448  // ----------------------------------------------------------------------
449 
454  bool isConnected_PingSend_OutputPort(
456  );
457 
464  );
465 
472  );
473 
480  );
481 
488  );
489 
496  );
497 
504  );
505 
506 #if FW_ENABLE_TEXT_LOGGING == 1
507  bool isConnected_LogText_OutputPort(
513  );
514 #endif
515 
517 
518  // ----------------------------------------------------------------------
519  // Message dispatch
520  // ----------------------------------------------------------------------
521 
524  virtual MsgDispatchStatus doDispatch(void);
525 
527 
528  // ----------------------------------------------------------------------
529  // Command enums
530  // ----------------------------------------------------------------------
531 
532  typedef enum {
533  HLTH_CHK_DISABLED, /* */
535  HealthEnabled_MAX
537 
538  typedef enum {
543 
545 
546  // ----------------------------------------------------------------------
547  // Command opcodes
548  // ----------------------------------------------------------------------
549 
550  enum {
551  OPCODE_HLTH_ENABLE = 0x0, /* A command to enable or disable health checks */
552  OPCODE_HLTH_PING_ENABLE = 0x1, /* Ignore a particular ping entry */
553  OPCODE_HLTH_CHNG_PING = 0x2, /* Change ping value */
554  };
555 
557 
558  // ----------------------------------------------------------------------
559  // Command handlers to implement
560  // ----------------------------------------------------------------------
561 
563  /* A command to enable or disable health checks */
564  virtual void HLTH_ENABLE_cmdHandler(
565  FwOpcodeType opCode,
566  U32 cmdSeq,
568  ) = 0;
569 
571  /* Ignore a particular ping entry */
573  FwOpcodeType opCode,
574  U32 cmdSeq,
575  const Fw::CmdStringArg& entry,
577  ) = 0;
578 
580  /* Change ping value */
582  FwOpcodeType opCode,
583  U32 cmdSeq,
584  const Fw::CmdStringArg& entry,
585  U32 warningValue,
586  U32 fatalValue
587  ) = 0;
588 
590 
591  // ----------------------------------------------------------------------
592  // Pre-message hooks for async commands.
593  // ----------------------------------------------------------------------
594  // Each of these functions is invoked just before processing the
595  // corresponding command. By default they do nothing. You can
596  // override them to provide specific pre-command behavior.
597  // ----------------------------------------------------------------------
598 
601  virtual void HLTH_ENABLE_preMsgHook(
602  FwOpcodeType opCode,
603  U32 cmdSeq
604  );
605 
608  virtual void HLTH_PING_ENABLE_preMsgHook(
609  FwOpcodeType opCode,
610  U32 cmdSeq
611  );
612 
615  virtual void HLTH_CHNG_PING_preMsgHook(
616  FwOpcodeType opCode,
617  U32 cmdSeq
618  );
619 
621 
622  // ----------------------------------------------------------------------
623  // Command handler base-class functions.
624  // Call these functions directly to bypass the command input port.
625  // ----------------------------------------------------------------------
626 
629  void HLTH_ENABLE_cmdHandlerBase(
630  FwOpcodeType opCode,
631  U32 cmdSeq,
633  );
634 
638  FwOpcodeType opCode,
639  U32 cmdSeq,
641  );
642 
646  FwOpcodeType opCode,
647  U32 cmdSeq,
649  );
650 
652 
653  // ----------------------------------------------------------------------
654  // Command response
655  // ----------------------------------------------------------------------
656 
659  void cmdResponse_out(
660  FwOpcodeType opCode,
661  U32 cmdSeq,
663  );
664 
666 
667  // ----------------------------------------------------------------------
668  // Event IDs
669  // ----------------------------------------------------------------------
670 
671  enum {
672  EVENTID_HLTH_PING_WARN = 0x0, /* Warn that a ping target is longer than the warning value */
673  EVENTID_HLTH_PING_LATE = 0x1, /* Declare FATAL since task is no longer responding */
674  EVENTID_HLTH_PING_WRONG_KEY = 0x2, /* Declare FATAL since task is no longer responding */
675  EVENTID_HLTH_CHECK_ENABLE = 0x3, /* Report checking turned on or off */
676  EVENTID_HLTH_CHECK_PING = 0x4, /* Report a particular entry on or off */
677  EVENTID_HLTH_CHECK_LOOKUP_ERROR = 0x5, /* Entry was not found */
678  EVENTID_HLTH_PING_UPDATED = 0x6, /* Report changed ping */
679  EVENTID_HLTH_PING_INVALID_VALUES = 0x7, /* Report changed ping */
680  };
681 
682  PROTECTED:
683 
684  // ----------------------------------------------------------------------
685  // Event enums
686  // ----------------------------------------------------------------------
687 
688  typedef enum {
689  HEALTH_CHECK_DISABLED, /* */
691  HealthIsEnabled_MAX
693 
694  typedef enum {
699 
701 
702  // ----------------------------------------------------------------------
703  // Event logging functions
704  // ----------------------------------------------------------------------
705 
708  /* Warn that a ping target is longer than the warning value */
709  void log_WARNING_HI_HLTH_PING_WARN(
710  Fw::LogStringArg& entry
711  );
712 
713 
716  /* Declare FATAL since task is no longer responding */
718  Fw::LogStringArg& entry
719  );
720 
721 
724  /* Declare FATAL since task is no longer responding */
726  Fw::LogStringArg& entry,
727  U32 badKey
728  );
729 
730 
733  /* Report checking turned on or off */
735  HealthIsEnabled enabled
736  );
737 
738 
741  /* Report a particular entry on or off */
743  HealthPingIsEnabled enabled,
744  Fw::LogStringArg& entry
745  );
746 
747 
750  /* Entry was not found */
752  Fw::LogStringArg& entry
753  );
754 
755 
758  /* Report changed ping */
760  Fw::LogStringArg& entry,
761  U32 warn,
762  U32 fatal
763  );
764 
765 
768  /* Report changed ping */
770  Fw::LogStringArg& entry,
771  U32 warn,
772  U32 fatal
773  );
774 
775 
777 
778  // ----------------------------------------------------------------------
779  // Channel IDs
780  // ----------------------------------------------------------------------
781 
782  enum {
783  CHANNELID_PINGLATEWARNINGS = 0x0,
784  };
785 
786  PROTECTED:
787 
788  // ----------------------------------------------------------------------
789  // Telemetry write functions
790  // ----------------------------------------------------------------------
791 
794  /* Number of overrun warnings */
795  void tlmWrite_PingLateWarnings(
796  U32 arg
797  );
798 
800 
801  // ----------------------------------------------------------------------
802  // Time
803  // ----------------------------------------------------------------------
804 
809  Fw::Time getTime(void);
810 
811 
813 
814  // ----------------------------------------------------------------------
815  // Typed input ports
816  // ----------------------------------------------------------------------
817 
820  Svc::InputPingPort m_PingReturn_InputPort[NUM_PINGRETURN_INPUT_PORTS];
821 
825 
829 
831 
832  // ----------------------------------------------------------------------
833  // Typed output ports
834  // ----------------------------------------------------------------------
835 
838  Svc::OutputPingPort m_PingSend_OutputPort[NUM_PINGSEND_OUTPUT_PORTS];
839 
843 
847 
851 
855 
859 
863 
864 #if FW_ENABLE_TEXT_LOGGING == 1
865  Fw::OutputLogTextPort m_LogText_OutputPort[NUM_LOGTEXT_OUTPUT_PORTS];
868 #endif
869 
871 
872  // ----------------------------------------------------------------------
873  // Calls for messages received on typed input ports
874  // ----------------------------------------------------------------------
875 
878  static void m_p_PingReturn_in(
879  Fw::PassiveComponentBase* callComp,
881  U32 key
882  );
883 
886  static void m_p_Run_in(
887  Fw::PassiveComponentBase* callComp,
889  NATIVE_UINT_TYPE context
890  );
891 
894  static void m_p_CmdDisp_in(
895  Fw::PassiveComponentBase* callComp,
897  FwOpcodeType opCode,
898  U32 cmdSeq,
900  );
901 
902 
903  PRIVATE:
904  // ----------------------------------------------------------------------
905  // Counter values for event throttling
906  // ----------------------------------------------------------------------
907 
908  };
909 
910 } // end namespace Svc
911 #endif
Svc::HealthComponentBase::WdogStroke_out
void WdogStroke_out(NATIVE_INT_TYPE portNum, U32 code)
Definition: HealthComponentAc.cpp:625
Fw::InputTimePort
Definition: TimePortAc.hpp:28
Svc::HealthComponentBase::HLTH_CHNG_PING_preMsgHook
virtual void HLTH_CHNG_PING_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Definition: HealthComponentAc.cpp:1090
Fw::InputTlmPort
Definition: TlmPortAc.hpp:29
Svc::HealthComponentBase::getNum_CmdDisp_InputPorts
NATIVE_INT_TYPE getNum_CmdDisp_InputPorts(void)
Definition: HealthComponentAc.cpp:671
Svc::HealthComponentBase
Auto-generated base for Health component.
Definition: HealthComponentAc.hpp:49
Svc::HealthComponentBase::regCommands
void regCommands(void)
Register commands with the Command Dispatcher.
Definition: HealthComponentAc.cpp:288
LogBuffer.hpp
PRIVATE
#define PRIVATE
overridable private for unit testing
Definition: BasicTypes.hpp:118
Fw::Time
Definition: Time.hpp:10
Svc::HealthComponentBase::HLTH_PING_ENABLE_cmdHandler
virtual void HLTH_PING_ENABLE_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &entry, PingEnabled enable)=0
Handler for command HLTH_PING_ENABLE.
Svc::HealthComponentBase::m_Log_OutputPort
Fw::OutputLogPort m_Log_OutputPort[NUM_LOG_OUTPUT_PORTS]
Definition: HealthComponentAc.hpp:862
TlmPortAc.hpp
Fw::QueuedComponentBase::doDispatch
virtual MsgDispatchStatus doDispatch(void)=0
method to dispatch a single message in the queue.
Fw::OutputTlmPort
Definition: TlmPortAc.hpp:50
Svc::HealthComponentBase::OPCODE_HLTH_CHNG_PING
PROTECTED OPCODE_HLTH_CHNG_PING
Definition: HealthComponentAc.hpp:553
Fw::CommandResponse
CommandResponse
Definition: CmdResponsePortAc.hpp:24
Svc::HealthComponentBase::isConnected_CmdStatus_OutputPort
bool isConnected_CmdStatus_OutputPort(NATIVE_INT_TYPE portNum)
Definition: HealthComponentAc.cpp:753
Svc::HealthComponentBase::NUM_CMDDISP_INPUT_PORTS
@ NUM_CMDDISP_INPUT_PORTS
Definition: HealthComponentAc.hpp:373
Svc::HealthComponentBase::HealthEnabled
PROTECTED HealthEnabled_MAX HealthEnabled
Definition: HealthComponentAc.hpp:536
Fw::LogStringArg
Definition: LogString.hpp:11
Svc::HealthComponentBase::getNum_Time_OutputPorts
NATIVE_INT_TYPE getNum_Time_OutputPorts(void)
Definition: HealthComponentAc.cpp:703
Fw::OutputCmdResponsePort
Definition: CmdResponsePortAc.hpp:58
Svc::HealthComponentBase::log_WARNING_HI_HLTH_PING_INVALID_VALUES
void log_WARNING_HI_HLTH_PING_INVALID_VALUES(Fw::LogStringArg &entry, U32 warn, U32 fatal)
Definition: HealthComponentAc.cpp:1872
Fw::InputCmdRegPort
Definition: CmdRegPortAc.hpp:27
Svc::HealthComponentBase::NUM_PINGRETURN_INPUT_PORTS
@ NUM_PINGRETURN_INPUT_PORTS
Definition: HealthComponentAc.hpp:371
Svc::HealthComponentBase::OPCODE_HLTH_PING_ENABLE
PROTECTED OPCODE_HLTH_PING_ENABLE
Definition: HealthComponentAc.hpp:552
CmdRegPortAc.hpp
Svc::HealthComponentBase::getNum_Tlm_OutputPorts
NATIVE_INT_TYPE getNum_Tlm_OutputPorts(void)
Definition: HealthComponentAc.cpp:695
Svc::HealthComponentBase::set_Log_OutputPort
void set_Log_OutputPort(NATIVE_INT_TYPE portNum, Fw::InputLogPort *port)
Definition: HealthComponentAc.cpp:172
Svc::InputWatchDogPort
Definition: WatchDogPortAc.hpp:27
Svc::HealthComponentBase::log_ACTIVITY_HI_HLTH_PING_UPDATED
void log_ACTIVITY_HI_HLTH_PING_UPDATED(Fw::LogStringArg &entry, U32 warn, U32 fatal)
Definition: HealthComponentAc.cpp:1748
Svc::HealthComponentBase::getNum_CmdReg_OutputPorts
NATIVE_INT_TYPE getNum_CmdReg_OutputPorts(void)
Definition: HealthComponentAc.cpp:687
Svc::HealthComponentBase::EVENTID_HLTH_CHECK_PING
PROTECTED EVENTID_HLTH_CHECK_PING
Definition: HealthComponentAc.hpp:676
Svc::HealthComponentBase::HealthIsEnabled
PROTECTED HealthIsEnabled_MAX HealthIsEnabled
Definition: HealthComponentAc.hpp:692
TextLogString.hpp
Svc::HealthComponentBase::log_WARNING_LO_HLTH_CHECK_LOOKUP_ERROR
void log_WARNING_LO_HLTH_CHECK_LOOKUP_ERROR(Fw::LogStringArg &entry)
Definition: HealthComponentAc.cpp:1660
Svc::HealthComponentBase::set_WdogStroke_OutputPort
void set_WdogStroke_OutputPort(NATIVE_INT_TYPE portNum, Svc::InputWatchDogPort *port)
Definition: HealthComponentAc.cpp:122
Svc::HealthComponentBase::isConnected_CmdReg_OutputPort
bool isConnected_CmdReg_OutputPort(NATIVE_INT_TYPE portNum)
Definition: HealthComponentAc.cpp:763
InputSerializePort.hpp
Svc::HealthComponentBase::PingEnabled_MAX
@ PingEnabled_MAX
Definition: HealthComponentAc.hpp:541
Svc::HealthComponentBase::get_Run_InputPort
Svc::InputSchedPort * get_Run_InputPort(NATIVE_INT_TYPE portNum)
Definition: HealthComponentAc.cpp:94
Svc::HealthComponentBase::m_CmdStatus_OutputPort
Fw::OutputCmdResponsePort m_CmdStatus_OutputPort[NUM_CMDSTATUS_OUTPUT_PORTS]
Definition: HealthComponentAc.hpp:846
Fw::CmdStringArg
Definition: CmdString.hpp:11
Svc::HealthComponentBase::NUM_TIME_OUTPUT_PORTS
@ NUM_TIME_OUTPUT_PORTS
Definition: HealthComponentAc.hpp:439
Svc::HealthComponentBase::portNum
PRIVATE NATIVE_INT_TYPE portNum
Definition: HealthComponentAc.hpp:880
Svc::HealthComponentBase::HEALTH_PING_DISABLED
@ HEALTH_PING_DISABLED
Definition: HealthComponentAc.hpp:695
Svc::HealthComponentBase::EVENTID_HLTH_CHECK_ENABLE
PROTECTED EVENTID_HLTH_CHECK_ENABLE
Definition: HealthComponentAc.hpp:675
CmdPortAc.hpp
Svc::HealthComponentBase::HEALTH_PING_ENABLED
@ HEALTH_PING_ENABLED
Definition: HealthComponentAc.hpp:696
Svc::HealthComponentBase::NUM_PINGSEND_OUTPUT_PORTS
@ NUM_PINGSEND_OUTPUT_PORTS
Definition: HealthComponentAc.hpp:434
Svc::HealthComponentBase::EVENTID_HLTH_PING_INVALID_VALUES
PROTECTED EVENTID_HLTH_PING_INVALID_VALUES
Definition: HealthComponentAc.hpp:679
Svc::HealthComponentBase::cmdSeq
PROTECTED U32 cmdSeq
Definition: HealthComponentAc.hpp:566
Svc::HealthComponentBase::enable
PROTECTED U32 HealthEnabled enable
Definition: HealthComponentAc.hpp:568
Fw::PassiveComponentBase
Definition: PassiveComponentBase.hpp:10
Svc::HealthComponentBase::HEALTH_CHECK_ENABLED
PROTECTED HEALTH_CHECK_ENABLED
Definition: HealthComponentAc.hpp:690
LogString.hpp
Fw::ObjBase::init
void init(void)
Object initializer.
Definition: ObjBase.cpp:26
Svc::HealthComponentBase::set_CmdReg_OutputPort
void set_CmdReg_OutputPort(NATIVE_INT_TYPE portNum, Fw::InputCmdRegPort *port)
Definition: HealthComponentAc.cpp:142
Fw::OutputLogPort
Definition: LogPortAc.hpp:61
Svc::HealthComponentBase::isConnected_Tlm_OutputPort
bool isConnected_Tlm_OutputPort(NATIVE_INT_TYPE portNum)
Definition: HealthComponentAc.cpp:773
Svc::HealthComponentBase::log_ACTIVITY_HI_HLTH_CHECK_PING
void log_ACTIVITY_HI_HLTH_CHECK_PING(HealthPingIsEnabled enabled, Fw::LogStringArg &entry)
Definition: HealthComponentAc.cpp:1554
Svc::HealthComponentBase::EVENTID_HLTH_PING_UPDATED
PROTECTED EVENTID_HLTH_PING_UPDATED
Definition: HealthComponentAc.hpp:678
Svc::HealthComponentBase::NUM_LOG_OUTPUT_PORTS
@ NUM_LOG_OUTPUT_PORTS
Definition: HealthComponentAc.hpp:440
Svc::HealthComponentBase::HLTH_CHNG_PING_cmdHandlerBase
void HLTH_CHNG_PING_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Definition: HealthComponentAc.cpp:1029
Svc::InputPingPort
Definition: PingPortAc.hpp:27
ActiveComponentBase.hpp
Svc::OutputPingPort
Definition: PingPortAc.hpp:48
Svc::InputSchedPort
Definition: SchedPortAc.hpp:27
TlmString.hpp
Svc::HealthComponentBase::log_FATAL_HLTH_PING_WRONG_KEY
void log_FATAL_HLTH_PING_WRONG_KEY(Fw::LogStringArg &entry, U32 badKey)
Definition: HealthComponentAc.cpp:1339
TlmBuffer.hpp
Svc::HealthComponentBase::key
PROTECTED U32 key
Definition: HealthComponentAc.hpp:273
FwOpcodeType
#define FwOpcodeType
Type representation for a command opcode.
Definition: FpConfig.hpp:62
Svc::HealthComponentBase::log_FATAL_HLTH_PING_LATE
void log_FATAL_HLTH_PING_LATE(Fw::LogStringArg &entry)
Definition: HealthComponentAc.cpp:1240
Fw::QueuedComponentBase::MsgDispatchStatus
MsgDispatchStatus
Definition: QueuedComponentBase.hpp:25
Svc::HealthComponentBase::m_p_Run_in
static void m_p_Run_in(Fw::PassiveComponentBase *callComp, NATIVE_INT_TYPE portNum, NATIVE_UINT_TYPE context)
Definition: HealthComponentAc.cpp:2013
NATIVE_UINT_TYPE
unsigned int NATIVE_UINT_TYPE
native unsigned integer type declaration
Definition: BasicTypes.hpp:30
Svc::HealthComponentBase::NUM_TLM_OUTPUT_PORTS
@ NUM_TLM_OUTPUT_PORTS
Definition: HealthComponentAc.hpp:438
Svc::HealthComponentBase::Run_handlerBase
void Run_handlerBase(NATIVE_INT_TYPE portNum, NATIVE_UINT_TYPE context)
Definition: HealthComponentAc.cpp:2083
PingPortAc.hpp
Fw::CmdArgBuffer
Definition: CmdArgBuffer.hpp:22
Svc::HealthComponentBase::getNum_WdogStroke_OutputPorts
NATIVE_INT_TYPE getNum_WdogStroke_OutputPorts(void)
Definition: HealthComponentAc.cpp:663
CmdString.hpp
Fw::OutputCmdRegPort
Definition: CmdRegPortAc.hpp:48
Svc::HealthComponentBase::HLTH_PING_ENABLE_preMsgHook
virtual void HLTH_PING_ENABLE_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Definition: HealthComponentAc.cpp:1020
Svc::HealthComponentBase::isConnected_Log_OutputPort
bool isConnected_Log_OutputPort(NATIVE_INT_TYPE portNum)
Definition: HealthComponentAc.cpp:793
Svc::HealthComponentBase::get_PingReturn_InputPort
Svc::InputPingPort * get_PingReturn_InputPort(NATIVE_INT_TYPE portNum)
Definition: HealthComponentAc.cpp:87
Svc::HealthComponentBase::~HealthComponentBase
virtual ~HealthComponentBase(void)
Definition: HealthComponentAc.cpp:606
Svc::HealthComponentBase::set_PingSend_OutputPort
void set_PingSend_OutputPort(NATIVE_INT_TYPE portNum, Svc::InputPingPort *port)
Definition: HealthComponentAc.cpp:112
Svc::HealthComponentBase::m_Tlm_OutputPort
Fw::OutputTlmPort m_Tlm_OutputPort[NUM_TLM_OUTPUT_PORTS]
Definition: HealthComponentAc.hpp:854
CmdResponsePortAc.hpp
Svc::HealthComponentBase::NUM_CMDSTATUS_OUTPUT_PORTS
@ NUM_CMDSTATUS_OUTPUT_PORTS
Definition: HealthComponentAc.hpp:436
Svc::HealthComponentBase::EVENTID_HLTH_PING_WRONG_KEY
PROTECTED EVENTID_HLTH_PING_WRONG_KEY
Definition: HealthComponentAc.hpp:674
Svc::OutputWatchDogPort
Definition: WatchDogPortAc.hpp:48
Svc::HealthComponentBase::m_Run_InputPort
Svc::InputSchedPort m_Run_InputPort[NUM_RUN_INPUT_PORTS]
Definition: HealthComponentAc.hpp:824
WatchDogPortAc.hpp
Svc::HealthComponentBase::PingEnabled
PingEnabled
Definition: HealthComponentAc.hpp:538
LogTextPortAc.hpp
Fw::QueuedComponentBase
Definition: QueuedComponentBase.hpp:21
Svc::HealthComponentBase::HealthPingIsEnabled_MAX
@ HealthPingIsEnabled_MAX
Definition: HealthComponentAc.hpp:697
Fw::InputCmdPort
Definition: CmdPortAc.hpp:28
FpConfig.hpp
ISF configuration file.
Svc::HealthComponentBase::set_CmdStatus_OutputPort
void set_CmdStatus_OutputPort(NATIVE_INT_TYPE portNum, Fw::InputCmdResponsePort *port)
Definition: HealthComponentAc.cpp:132
Svc::HealthComponentBase::args
PROTECTED U32 Fw::CmdArgBuffer & args
Definition: HealthComponentAc.hpp:633
Svc::HealthComponentBase::getNum_CmdStatus_OutputPorts
NATIVE_INT_TYPE getNum_CmdStatus_OutputPorts(void)
Definition: HealthComponentAc.cpp:679
Svc
Definition: ActiveLoggerComponentAc.cpp:22
SchedPortAc.hpp
Svc::HealthComponentBase::response
PROTECTED U32 Fw::CommandResponse response
Definition: HealthComponentAc.hpp:663
Svc::HealthComponentBase::NUM_LOGTEXT_OUTPUT_PORTS
@ NUM_LOGTEXT_OUTPUT_PORTS
Definition: HealthComponentAc.hpp:441
Svc::HealthComponentBase::log_ACTIVITY_HI_HLTH_CHECK_ENABLE
void log_ACTIVITY_HI_HLTH_CHECK_ENABLE(HealthIsEnabled enabled)
Definition: HealthComponentAc.cpp:1456
Svc::HealthComponentBase::set_Time_OutputPort
void set_Time_OutputPort(NATIVE_INT_TYPE portNum, Fw::InputTimePort *port)
Definition: HealthComponentAc.cpp:162
Fw::InputCmdResponsePort
Definition: CmdResponsePortAc.hpp:37
Svc::HealthComponentBase::isConnected_Time_OutputPort
bool isConnected_Time_OutputPort(NATIVE_INT_TYPE portNum)
Definition: HealthComponentAc.cpp:783
Svc::HealthComponentBase::HLTH_CHNG_PING_cmdHandler
virtual void HLTH_CHNG_PING_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &entry, U32 warningValue, U32 fatalValue)=0
Handler for command HLTH_CHNG_PING.
Svc::HealthComponentBase::Run_handler
virtual void Run_handler(NATIVE_INT_TYPE portNum, NATIVE_UINT_TYPE context)=0
Handler for input port Run.
Svc::HealthComponentBase::HLTH_PING_DISABLED
@ HLTH_PING_DISABLED
Definition: HealthComponentAc.hpp:539
Svc::HealthComponentBase::EVENTID_HLTH_CHECK_LOOKUP_ERROR
PROTECTED EVENTID_HLTH_CHECK_LOOKUP_ERROR
Definition: HealthComponentAc.hpp:677
Svc::HealthComponentBase::NUM_CMDREG_OUTPUT_PORTS
@ NUM_CMDREG_OUTPUT_PORTS
Definition: HealthComponentAc.hpp:437
Svc::HealthComponentBase::HLTH_PING_ENABLED
@ HLTH_PING_ENABLED
Definition: HealthComponentAc.hpp:540
Fw::InputLogPort
Definition: LogPortAc.hpp:40
Fw::OutputTimePort
Definition: TimePortAc.hpp:49
Svc::HealthComponentBase::m_p_CmdDisp_in
static void m_p_CmdDisp_in(Fw::PassiveComponentBase *callComp, NATIVE_INT_TYPE portNum, FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Definition: HealthComponentAc.cpp:819
Svc::HealthComponentBase::HLTH_PING_ENABLE_cmdHandlerBase
void HLTH_PING_ENABLE_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Definition: HealthComponentAc.cpp:959
Svc::HealthComponentBase::m_Time_OutputPort
Fw::OutputTimePort m_Time_OutputPort[NUM_TIME_OUTPUT_PORTS]
Definition: HealthComponentAc.hpp:858
Svc::HealthComponentBase::m_WdogStroke_OutputPort
Svc::OutputWatchDogPort m_WdogStroke_OutputPort[NUM_WDOGSTROKE_OUTPUT_PORTS]
Definition: HealthComponentAc.hpp:842
Svc::HealthComponentBase::get_CmdDisp_InputPort
Fw::InputCmdPort * get_CmdDisp_InputPort(NATIVE_INT_TYPE portNum)
Definition: HealthComponentAc.cpp:101
Svc::HealthComponentBase::m_CmdReg_OutputPort
Fw::OutputCmdRegPort m_CmdReg_OutputPort[NUM_CMDREG_OUTPUT_PORTS]
Definition: HealthComponentAc.hpp:850
Svc::HealthComponentBase::HealthPingIsEnabled
HealthPingIsEnabled
Definition: HealthComponentAc.hpp:694
Svc::HealthComponentBase::getNum_Log_OutputPorts
NATIVE_INT_TYPE getNum_Log_OutputPorts(void)
Definition: HealthComponentAc.cpp:711
Svc::HealthComponentBase::NUM_WDOGSTROKE_OUTPUT_PORTS
@ NUM_WDOGSTROKE_OUTPUT_PORTS
Definition: HealthComponentAc.hpp:435
Svc::HealthComponentBase::EVENTID_HLTH_PING_LATE
PROTECTED EVENTID_HLTH_PING_LATE
Definition: HealthComponentAc.hpp:673
Svc::HealthComponentBase::m_CmdDisp_InputPort
Fw::InputCmdPort m_CmdDisp_InputPort[NUM_CMDDISP_INPUT_PORTS]
Definition: HealthComponentAc.hpp:828
Time.hpp
Svc::HealthComponentBase::HealthComponentBaseFriend
friend class HealthComponentBaseFriend
Definition: HealthComponentAc.hpp:57
NATIVE_INT_TYPE
int NATIVE_INT_TYPE
native integer type declaration
Definition: BasicTypes.hpp:29
Svc::HealthComponentBase::HLTH_CHK_ENABLED
PROTECTED HLTH_CHK_ENABLED
Definition: HealthComponentAc.hpp:534
Svc::HealthComponentBase::PROTECTED
PROTECTED PROTECTED
Definition: HealthComponentAc.hpp:554
OutputSerializePort.hpp
Svc::HealthComponentBase::isConnected_WdogStroke_OutputPort
bool isConnected_WdogStroke_OutputPort(NATIVE_INT_TYPE portNum)
Definition: HealthComponentAc.cpp:743
TimePortAc.hpp
LogPortAc.hpp
Fw::OutputLogTextPort
Definition: LogTextPortAc.hpp:61
Svc::HealthComponentBase::getNum_Run_InputPorts
NATIVE_INT_TYPE getNum_Run_InputPorts(void)
Definition: HealthComponentAc.cpp:655
CmdArgBuffer.hpp
Svc::HealthComponentBase::NUM_RUN_INPUT_PORTS
@ NUM_RUN_INPUT_PORTS
Definition: HealthComponentAc.hpp:372
Fw::InputLogTextPort
Definition: LogTextPortAc.hpp:40
Svc::HealthComponentBase::set_Tlm_OutputPort
void set_Tlm_OutputPort(NATIVE_INT_TYPE portNum, Fw::InputTlmPort *port)
Definition: HealthComponentAc.cpp:152