F´ Flight Software - C/C++ Documentation
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 Generated by fpp-to-cpp
4 // \brief hpp file for Health component base class
5 // ======================================================================
6 
7 #ifndef Svc_HealthComponentAc_HPP
8 #define Svc_HealthComponentAc_HPP
9 
10 #include <atomic>
11 
12 #include "Fw/Cmd/CmdPortAc.hpp"
13 #include "Fw/Cmd/CmdRegPortAc.hpp"
15 #include "Fw/Cmd/CmdString.hpp"
17 #include "Fw/FPrimeBasicTypes.hpp"
18 #include "Fw/Log/LogPortAc.hpp"
19 #include "Fw/Log/LogString.hpp"
20 #include "Fw/Log/LogTextPortAc.hpp"
21 #if !FW_DIRECT_PORT_CALLS
23 #endif
24 #if !FW_DIRECT_PORT_CALLS
26 #endif
27 #include "Fw/Time/TimePortAc.hpp"
28 #include "Fw/Tlm/TlmPortAc.hpp"
29 #include "Fw/Tlm/TlmString.hpp"
31 #include "Svc/Ping/PingPortAc.hpp"
35 
36 namespace Svc {
37 
44  {
45 
46  // ----------------------------------------------------------------------
47  // Friend classes
48  // ----------------------------------------------------------------------
49 
51  friend class HealthTesterBase;
53  friend class HealthTester;
54 
55  protected:
56 
57  // ----------------------------------------------------------------------
58  // Constants
59  // ----------------------------------------------------------------------
60 
62  enum {
64  };
65 
67  enum {
70  };
71 
73  enum {
80  };
81 
83  enum {
86  };
87 
89  enum {
93  };
94 
96  enum {
105  };
106 
108  enum {
110  };
111 
112  public:
113 
114  // ----------------------------------------------------------------------
115  // Component initialization
116  // ----------------------------------------------------------------------
117 
119  void init(
120  FwSizeType queueDepth,
121  FwEnumStoreType instance = 0
122  );
123 
124 #if !FW_DIRECT_PORT_CALLS
125 
126  public:
127 
128  // ----------------------------------------------------------------------
129  // Getters for special input ports
130  // ----------------------------------------------------------------------
131 
136  FwIndexType portNum
137  );
138 
139 #endif
140 
141 #if !FW_DIRECT_PORT_CALLS
142 
143  public:
144 
145  // ----------------------------------------------------------------------
146  // Getters for typed input ports
147  // ----------------------------------------------------------------------
148 
153  FwIndexType portNum
154  );
155 
160  FwIndexType portNum
161  );
162 
163 #endif
164 
165 #if !FW_DIRECT_PORT_CALLS
166 
167  public:
168 
169  // ----------------------------------------------------------------------
170  // Connect input ports to special output ports
171  // ----------------------------------------------------------------------
172 
175  FwIndexType portNum,
176  Fw::InputCmdRegPort* port
177  );
178 
181  FwIndexType portNum,
183  );
184 
186  void set_Log_OutputPort(
187  FwIndexType portNum,
188  Fw::InputLogPort* port
189  );
190 
191 #if FW_ENABLE_TEXT_LOGGING == 1
192 
194  void set_LogText_OutputPort(
195  FwIndexType portNum,
196  Fw::InputLogTextPort* port
197  );
198 
199 #endif
200 
202  void set_Time_OutputPort(
203  FwIndexType portNum,
204  Fw::InputTimePort* port
205  );
206 
208  void set_Tlm_OutputPort(
209  FwIndexType portNum,
210  Fw::InputTlmPort* port
211  );
212 
213 #endif
214 
215 #if !FW_DIRECT_PORT_CALLS
216 
217  public:
218 
219  // ----------------------------------------------------------------------
220  // Connect typed input ports to typed output ports
221  // ----------------------------------------------------------------------
222 
225  FwIndexType portNum,
226  Svc::InputPingPort* port
227  );
228 
231  FwIndexType portNum,
233  );
234 
235 #endif
236 
237 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION
238 
239  public:
240 
241  // ----------------------------------------------------------------------
242  // Connect serial input ports to special output ports
243  // ----------------------------------------------------------------------
244 
247  FwIndexType portNum,
248  Fw::InputSerializePort* port
249  );
250 
253  FwIndexType portNum,
254  Fw::InputSerializePort* port
255  );
256 
258  void set_Log_OutputPort(
259  FwIndexType portNum,
260  Fw::InputSerializePort* port
261  );
262 
263 #if FW_ENABLE_TEXT_LOGGING == 1
264 
266  void set_LogText_OutputPort(
267  FwIndexType portNum,
268  Fw::InputSerializePort* port
269  );
270 
271 #endif
272 
274  void set_Time_OutputPort(
275  FwIndexType portNum,
276  Fw::InputSerializePort* port
277  );
278 
280  void set_Tlm_OutputPort(
281  FwIndexType portNum,
282  Fw::InputSerializePort* port
283  );
284 
285 #endif
286 
287 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION
288 
289  public:
290 
291  // ----------------------------------------------------------------------
292  // Connect serial input ports to typed output ports
293  // ----------------------------------------------------------------------
294 
297  FwIndexType portNum,
298  Fw::InputSerializePort* port
299  );
300 
303  FwIndexType portNum,
304  Fw::InputSerializePort* port
305  );
306 
307 #endif
308 
309  public:
310 
311  // ----------------------------------------------------------------------
312  // Command registration
313  // ----------------------------------------------------------------------
314 
318  void regCommands();
319 
320  protected:
321 
322  // ----------------------------------------------------------------------
323  // Component construction and destruction
324  // ----------------------------------------------------------------------
325 
328  const char* compName = ""
329  );
330 
332  virtual ~HealthComponentBase();
333 
334  protected:
335 
336  // ----------------------------------------------------------------------
337  // Getters for numbers of special input ports
338  // ----------------------------------------------------------------------
339 
345  }
346 
347  protected:
348 
349  // ----------------------------------------------------------------------
350  // Getters for numbers of typed input ports
351  // ----------------------------------------------------------------------
352 
358  }
359 
363  static constexpr FwIndexType getNum_Run_InputPorts() {
364  return NUM_RUN_INPUT_PORTS;
365  }
366 
367  protected:
368 
369  // ----------------------------------------------------------------------
370  // Getters for numbers of special output ports
371  // ----------------------------------------------------------------------
372 
378  }
379 
385  }
386 
390  static constexpr FwIndexType getNum_Log_OutputPorts() {
391  return NUM_LOG_OUTPUT_PORTS;
392  }
393 
394 #if FW_ENABLE_TEXT_LOGGING == 1
395 
399  static constexpr FwIndexType getNum_LogText_OutputPorts() {
401  }
402 
403 #endif
404 
409  return NUM_TIME_OUTPUT_PORTS;
410  }
411 
415  static constexpr FwIndexType getNum_Tlm_OutputPorts() {
416  return NUM_TLM_OUTPUT_PORTS;
417  }
418 
419  protected:
420 
421  // ----------------------------------------------------------------------
422  // Getters for numbers of typed output ports
423  // ----------------------------------------------------------------------
424 
430  }
431 
437  }
438 
439  protected:
440 
441  // ----------------------------------------------------------------------
442  // Connection status queries for special output ports
443  // ----------------------------------------------------------------------
444 
449  FwIndexType portNum
450  ) const;
451 
456  FwIndexType portNum
457  ) const;
458 
463  FwIndexType portNum
464  ) const;
465 
466 #if FW_ENABLE_TEXT_LOGGING == 1
467 
471  bool isConnected_LogText_OutputPort(
472  FwIndexType portNum
473  ) const;
474 
475 #endif
476 
481  FwIndexType portNum
482  ) const;
483 
488  FwIndexType portNum
489  ) const;
490 
491  protected:
492 
493  // ----------------------------------------------------------------------
494  // Connection status queries for typed output ports
495  // ----------------------------------------------------------------------
496 
501  FwIndexType portNum
502  ) const;
503 
508  FwIndexType portNum
509  ) const;
510 
511 #if FW_DIRECT_PORT_CALLS
512  public:
513 #else
514  protected:
515 #endif
516 
517  // ----------------------------------------------------------------------
518  // Port handler base-class functions for special input ports
519  //
520  // Call these functions directly to bypass the corresponding ports
521  // ----------------------------------------------------------------------
522 
524  void CmdDisp_handlerBase(
525  FwIndexType portNum,
526  FwOpcodeType opCode,
527  U32 cmdSeq,
528  Fw::CmdArgBuffer& args
529  );
530 
531  protected:
532 
533  // ----------------------------------------------------------------------
534  // Handlers to implement for typed input ports
535  // ----------------------------------------------------------------------
536 
538  virtual void PingReturn_handler(
539  FwIndexType portNum,
540  U32 key
541  ) = 0;
542 
544  virtual void Run_handler(
545  FwIndexType portNum,
546  U32 context
547  ) = 0;
548 
549 #if FW_DIRECT_PORT_CALLS
550  public:
551 #else
552  protected:
553 #endif
554 
555  // ----------------------------------------------------------------------
556  // Port handler base-class functions for typed input ports
557  //
558  // Call these functions directly to bypass the corresponding ports
559  // ----------------------------------------------------------------------
560 
563  FwIndexType portNum,
564  U32 key
565  );
566 
568  void Run_handlerBase(
569  FwIndexType portNum,
570  U32 context
571  );
572 
573  protected:
574 
575  // ----------------------------------------------------------------------
576  // Pre-message hooks for typed async input ports
577  //
578  // Each of these functions is invoked just before processing a message
579  // on the corresponding port. By default, they do nothing. You can
580  // override them to provide specific pre-message behavior.
581  // ----------------------------------------------------------------------
582 
584  virtual void PingReturn_preMsgHook(
585  FwIndexType portNum,
586  U32 key
587  );
588 
589  protected:
590 
591  // ----------------------------------------------------------------------
592  // Invocation functions for typed output ports
593  // ----------------------------------------------------------------------
594 
596  void PingSend_out(
597  FwIndexType portNum,
598  U32 key
599  ) const;
600 
602  void WdogStroke_out(
603  FwIndexType portNum,
604  U32 code
605  ) const;
606 
607  protected:
608 
609  // ----------------------------------------------------------------------
610  // Command response
611  // ----------------------------------------------------------------------
612 
614  void cmdResponse_out(
615  FwOpcodeType opCode,
616  U32 cmdSeq,
617  Fw::CmdResponse response
618  );
619 
620  protected:
621 
622  // ----------------------------------------------------------------------
623  // Command handlers to implement
624  // ----------------------------------------------------------------------
625 
629  virtual void HLTH_ENABLE_cmdHandler(
630  FwOpcodeType opCode,
631  U32 cmdSeq,
632  Fw::Enabled enable
633  ) = 0;
634 
638  virtual void HLTH_PING_ENABLE_cmdHandler(
639  FwOpcodeType opCode,
640  U32 cmdSeq,
641  const Fw::CmdStringArg& entry,
642  Fw::Enabled enable
643  ) = 0;
644 
648  virtual void HLTH_CHNG_PING_cmdHandler(
649  FwOpcodeType opCode,
650  U32 cmdSeq,
651  const Fw::CmdStringArg& entry,
652  U32 warningValue,
653  U32 fatalValue
654  ) = 0;
655 
656  protected:
657 
658  // ----------------------------------------------------------------------
659  // Command handler base-class functions
660  //
661  // Call these functions directly to bypass the command input port
662  // ----------------------------------------------------------------------
663 
668  FwOpcodeType opCode,
669  U32 cmdSeq,
670  Fw::CmdArgBuffer& args
671  );
672 
677  FwOpcodeType opCode,
678  U32 cmdSeq,
679  Fw::CmdArgBuffer& args
680  );
681 
686  FwOpcodeType opCode,
687  U32 cmdSeq,
688  Fw::CmdArgBuffer& args
689  );
690 
691  protected:
692 
693  // ----------------------------------------------------------------------
694  // Pre-message hooks for async commands
695  //
696  // Each of these functions is invoked just before processing the
697  // corresponding command. By default they do nothing. You can
698  // override them to provide specific pre-command behavior.
699  // ----------------------------------------------------------------------
700 
702  virtual void HLTH_ENABLE_preMsgHook(
703  FwOpcodeType opCode,
704  U32 cmdSeq
705  );
706 
708  virtual void HLTH_PING_ENABLE_preMsgHook(
709  FwOpcodeType opCode,
710  U32 cmdSeq
711  );
712 
714  virtual void HLTH_CHNG_PING_preMsgHook(
715  FwOpcodeType opCode,
716  U32 cmdSeq
717  );
718 
719  protected:
720 
721  // ----------------------------------------------------------------------
722  // Event logging functions
723  // ----------------------------------------------------------------------
724 
729  const Fw::StringBase& entry
730  ) const;
731 
736  const Fw::StringBase& entry
737  ) const;
738 
743  const Fw::StringBase& entry,
744  U32 badKey
745  ) const;
746 
751  Fw::Enabled enabled
752  ) const;
753 
758  Fw::Enabled enabled,
759  const Fw::StringBase& entry
760  ) const;
761 
766  const Fw::StringBase& entry
767  ) const;
768 
773  const Fw::StringBase& entry,
774  U32 warn,
775  U32 fatal
776  ) const;
777 
782  const Fw::StringBase& entry,
783  U32 warn,
784  U32 fatal
785  ) const;
786 
787  protected:
788 
789  // ----------------------------------------------------------------------
790  // Telemetry serialized write
791  // ----------------------------------------------------------------------
792 
797  void tlmWrite(
798  FwChanIdType id,
799  Fw::TlmBuffer& _tlmBuff,
800  Fw::Time _tlmTime = Fw::Time()
801  ) const;
802 
803  protected:
804 
805  // ----------------------------------------------------------------------
806  // Telemetry write functions
807  // ----------------------------------------------------------------------
808 
813  U32 arg,
814  Fw::Time _tlmTime = Fw::Time()
815  ) const;
816 
817  protected:
818 
819  // ----------------------------------------------------------------------
820  // Time
821  // ----------------------------------------------------------------------
822 
826  Fw::Time getTime() const;
827 
828  protected:
829 
830  // ----------------------------------------------------------------------
831  // Message dispatch functions
832  // ----------------------------------------------------------------------
833 
835  virtual MsgDispatchStatus doDispatch();
836 
837  protected:
838 
839  // ----------------------------------------------------------------------
840  // Helper functions for dispatching current messages
841  // ----------------------------------------------------------------------
842 
845 
846  private:
847 
848  // ----------------------------------------------------------------------
849  // Calls for messages received on special input ports
850  // ----------------------------------------------------------------------
851 
853  static void m_p_CmdDisp_in(
854  Fw::PassiveComponentBase* callComp,
855  FwIndexType portNum,
856  FwOpcodeType opCode,
857  U32 cmdSeq,
858  Fw::CmdArgBuffer& args
859  );
860 
861  private:
862 
863  // ----------------------------------------------------------------------
864  // Calls for messages received on typed input ports
865  // ----------------------------------------------------------------------
866 
868  static void m_p_PingReturn_in(
869  Fw::PassiveComponentBase* callComp,
870  FwIndexType portNum,
871  U32 key
872  );
873 
875  static void m_p_Run_in(
876  Fw::PassiveComponentBase* callComp,
877  FwIndexType portNum,
878  U32 context
879  );
880 
881  private:
882 
883  // ----------------------------------------------------------------------
884  // Invocation functions for special output ports
885  // ----------------------------------------------------------------------
886 
888  void CmdReg_out(
889  FwIndexType portNum,
890  FwOpcodeType opCode
891  ) const;
892 
894  void CmdStatus_out(
895  FwIndexType portNum,
896  FwOpcodeType opCode,
897  U32 cmdSeq,
898  const Fw::CmdResponse& response
899  ) const;
900 
902  void Log_out(
903  FwIndexType portNum,
904  FwEventIdType id,
905  Fw::Time& timeTag,
906  const Fw::LogSeverity& severity,
907  Fw::LogBuffer& args
908  ) const;
909 
910 #if FW_ENABLE_TEXT_LOGGING
911 
913  void LogText_out(
914  FwIndexType portNum,
915  FwEventIdType id,
916  Fw::Time& timeTag,
917  const Fw::LogSeverity& severity,
918  Fw::TextLogString& text
919  ) const;
920 
921 #endif
922 
924  void Time_out(
925  FwIndexType portNum,
926  Fw::Time& time
927  ) const;
928 
930  void Tlm_out(
931  FwIndexType portNum,
932  FwChanIdType id,
933  Fw::Time& timeTag,
934  Fw::TlmBuffer& val
935  ) const;
936 
937 #if !FW_DIRECT_PORT_CALLS
938 
939  private:
940 
941  // ----------------------------------------------------------------------
942  // Special input ports
943  // ----------------------------------------------------------------------
944 
946  Fw::InputCmdPort m_CmdDisp_InputPort[NUM_CMDDISP_INPUT_PORTS];
947 
948 #endif
949 
950 #if !FW_DIRECT_PORT_CALLS
951 
952  private:
953 
954  // ----------------------------------------------------------------------
955  // Typed input ports
956  // ----------------------------------------------------------------------
957 
959  Svc::InputPingPort m_PingReturn_InputPort[NUM_PINGRETURN_INPUT_PORTS];
960 
962  Svc::InputSchedPort m_Run_InputPort[NUM_RUN_INPUT_PORTS];
963 
964 #endif
965 
966 #if !FW_DIRECT_PORT_CALLS
967 
968  private:
969 
970  // ----------------------------------------------------------------------
971  // Special output ports
972  // ----------------------------------------------------------------------
973 
975  Fw::OutputCmdRegPort m_CmdReg_OutputPort[NUM_CMDREG_OUTPUT_PORTS];
976 
979 
981  Fw::OutputLogPort m_Log_OutputPort[NUM_LOG_OUTPUT_PORTS];
982 
983 #if FW_ENABLE_TEXT_LOGGING == 1
984 
986  Fw::OutputLogTextPort m_LogText_OutputPort[NUM_LOGTEXT_OUTPUT_PORTS];
987 
988 #endif
989 
991  Fw::OutputTimePort m_Time_OutputPort[NUM_TIME_OUTPUT_PORTS];
992 
994  Fw::OutputTlmPort m_Tlm_OutputPort[NUM_TLM_OUTPUT_PORTS];
995 
996 #endif
997 
998 #if !FW_DIRECT_PORT_CALLS
999 
1000  private:
1001 
1002  // ----------------------------------------------------------------------
1003  // Typed output ports
1004  // ----------------------------------------------------------------------
1005 
1007  Svc::OutputPingPort m_PingSend_OutputPort[NUM_PINGSEND_OUTPUT_PORTS];
1008 
1010  Svc::OutputWatchDogPort m_WdogStroke_OutputPort[NUM_WDOGSTROKE_OUTPUT_PORTS];
1011 
1012 #endif
1013 
1014  };
1015 
1016 }
1017 
1018 #endif
virtual void HLTH_CHNG_PING_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &entry, U32 warningValue, U32 fatalValue)=0
void regCommands()
Register commands with the Command Dispatcher.
Auto-generated base for Health component.
void CmdDisp_handlerBase(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Handler base-class function for input port CmdDisp.
virtual void Run_handler(FwIndexType portNum, U32 context)=0
Handler for input port Run.
void cmdResponse_out(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response)
Emit command response.
virtual ~HealthComponentBase()
Destroy HealthComponentBase object.
FwIdType FwOpcodeType
The type of a command opcode.
void tlmWrite_PingLateWarnings(U32 arg, Fw::Time _tlmTime=Fw::Time()) const
void log_FATAL_HLTH_PING_WRONG_KEY(const Fw::StringBase &entry, U32 badKey) const
PlatformSizeType FwSizeType
void set_CmdStatus_OutputPort(FwIndexType portNum, Fw::InputCmdResponsePort *port)
Connect port to CmdStatus[portNum].
I32 FwEnumStoreType
virtual MsgDispatchStatus doDispatch()
Called in the message loop to dispatch a message from the queue.
Warn that a ping target is longer than the warning value.
virtual void PingReturn_preMsgHook(FwIndexType portNum, U32 key)
Pre-message hook for async input port PingReturn.
void log_WARNING_LO_HLTH_CHECK_LOOKUP_ERROR(const Fw::StringBase &entry) const
static constexpr FwIndexType getNum_Tlm_OutputPorts()
void log_WARNING_HI_HLTH_PING_INVALID_VALUES(const Fw::StringBase &entry, U32 warn, U32 fatal) const
void tlmWrite(FwChanIdType id, Fw::TlmBuffer &_tlmBuff, Fw::Time _tlmTime=Fw::Time()) const
bool isConnected_Tlm_OutputPort(FwIndexType portNum) const
Declare FATAL since task is no longer responding.
bool isConnected_Log_OutputPort(FwIndexType portNum) const
Enum representing a command response.
void PingSend_out(FwIndexType portNum, U32 key) const
Invoke output port PingSend.
void set_WdogStroke_OutputPort(FwIndexType portNum, Svc::InputWatchDogPort *port)
Connect port to WdogStroke[portNum].
static constexpr FwIndexType getNum_CmdStatus_OutputPorts()
virtual void HLTH_ENABLE_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command HLTH_ENABLE.
bool isConnected_WdogStroke_OutputPort(FwIndexType portNum) const
void set_CmdReg_OutputPort(FwIndexType portNum, Fw::InputCmdRegPort *port)
Connect port to CmdReg[portNum].
void init()
Object initializer.
Definition: ObjBase.cpp:24
Declare FATAL since task is no longer responding.
static constexpr FwIndexType getNum_Log_OutputPorts()
void WdogStroke_out(FwIndexType portNum, U32 code) const
Invoke output port WdogStroke.
FwIdType FwEventIdType
The type of an event identifier.
Svc::InputPingPort * get_PingReturn_InputPort(FwIndexType portNum)
static constexpr FwIndexType getNum_Run_InputPorts()
static constexpr FwIndexType getNum_PingSend_OutputPorts()
void PingReturn_handlerBase(FwIndexType portNum, U32 key)
Handler base-class function for input port PingReturn.
static constexpr FwIndexType getNum_CmdDisp_InputPorts()
bool isConnected_CmdStatus_OutputPort(FwIndexType portNum) const
void log_ACTIVITY_HI_HLTH_CHECK_PING(Fw::Enabled enabled, const Fw::StringBase &entry) const
void set_Time_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to Time[portNum].
FwIdType FwChanIdType
The type of a telemetry channel identifier.
friend class HealthTester
Friend class tester implementation to support white-box testing.
void HLTH_PING_ENABLE_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Enum representing event severity.
virtual void HLTH_ENABLE_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, Fw::Enabled enable)=0
void set_PingSend_OutputPort(FwIndexType portNum, Svc::InputPingPort *port)
Connect port to PingSend[portNum].
Enabled and disabled states.
bool isConnected_CmdReg_OutputPort(FwIndexType portNum) const
static constexpr FwIndexType getNum_WdogStroke_OutputPorts()
bool isConnected_Time_OutputPort(FwIndexType portNum) const
void log_FATAL_HLTH_PING_LATE(const Fw::StringBase &entry) const
Fw::InputCmdPort * get_CmdDisp_InputPort(FwIndexType portNum)
HealthComponentBase(const char *compName="")
Construct HealthComponentBase object.
virtual void HLTH_PING_ENABLE_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &entry, Fw::Enabled enable)=0
virtual void HLTH_CHNG_PING_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command HLTH_CHNG_PING.
bool isConnected_PingSend_OutputPort(FwIndexType portNum) const
static constexpr FwIndexType getNum_CmdReg_OutputPorts()
PlatformIndexType FwIndexType
A command to enable or disable health checks.
virtual void PingReturn_handler(FwIndexType portNum, U32 key)=0
Handler for input port PingReturn.
void set_Tlm_OutputPort(FwIndexType portNum, Fw::InputTlmPort *port)
Connect port to Tlm[portNum].
RateGroupDivider component implementation.
Svc::InputSchedPort * get_Run_InputPort(FwIndexType portNum)
void set_Log_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to Log[portNum].
static constexpr FwIndexType getNum_PingReturn_InputPorts()
MsgDispatchStatus dispatchCurrentMessages()
Dispatch all current messages unless ERROR or EXIT occurs.
void log_ACTIVITY_HI_HLTH_CHECK_ENABLE(Fw::Enabled enabled) const
void HLTH_CHNG_PING_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void log_WARNING_HI_HLTH_PING_WARN(const Fw::StringBase &entry) const
void HLTH_ENABLE_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
virtual void HLTH_PING_ENABLE_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command HLTH_PING_ENABLE.
friend class HealthTesterBase
Friend class tester to support autocoded test harness.
static constexpr FwIndexType getNum_Time_OutputPorts()
void Run_handlerBase(FwIndexType portNum, U32 context)
Handler base-class function for input port Run.
void log_ACTIVITY_HI_HLTH_PING_UPDATED(const Fw::StringBase &entry, U32 warn, U32 fatal) const