F´ Flight Software - C/C++ Documentation  NASA-v1.5.0
A framework for building embedded system applications to NASA flight quality standards.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
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