F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
ActiveTextLoggerComponentAc.hpp
Go to the documentation of this file.
1 // ======================================================================
2 // \title ActiveTextLoggerComponentAc.hpp
3 // \author Generated by fpp-to-cpp
4 // \brief hpp file for ActiveTextLogger component base class
5 // ======================================================================
6 
7 #ifndef Svc_ActiveTextLoggerComponentAc_HPP
8 #define Svc_ActiveTextLoggerComponentAc_HPP
9 
11 #include "Fw/FPrimeBasicTypes.hpp"
12 #if FW_ENABLE_TEXT_LOGGING == 1
13 #include "Fw/Log/LogTextPortAc.hpp"
14 #endif
18 
19 namespace Svc {
20 
27  {
28 
29  // ----------------------------------------------------------------------
30  // Friend classes
31  // ----------------------------------------------------------------------
32 
36  friend class ActiveTextLoggerTester;
37 
38  PROTECTED:
39 
40  // ----------------------------------------------------------------------
41  // Constants
42  // ----------------------------------------------------------------------
43 
45  enum {
47  };
48 
49  public:
50 
51  // ----------------------------------------------------------------------
52  // Component initialization
53  // ----------------------------------------------------------------------
54 
56  void init(
57  FwSizeType queueDepth,
58  FwEnumStoreType instance = 0
59  );
60 
61  public:
62 
63  // ----------------------------------------------------------------------
64  // Getters for typed input ports
65  // ----------------------------------------------------------------------
66 
71  FwIndexType portNum
72  );
73 
74  PROTECTED:
75 
76  // ----------------------------------------------------------------------
77  // Component construction and destruction
78  // ----------------------------------------------------------------------
79 
82  const char* compName = ""
83  );
84 
87 
88  PROTECTED:
89 
90  // ----------------------------------------------------------------------
91  // Getters for numbers of typed input ports
92  // ----------------------------------------------------------------------
93 
98 
99  PROTECTED:
100 
101  // ----------------------------------------------------------------------
102  // Handlers to implement for typed input ports
103  // ----------------------------------------------------------------------
104 
106  virtual void TextLogger_handler(
107  FwIndexType portNum,
108  FwEventIdType id,
109  Fw::Time& timeTag,
110  const Fw::LogSeverity& severity,
111  Fw::TextLogString& text
112  ) = 0;
113 
114  PROTECTED:
115 
116  // ----------------------------------------------------------------------
117  // Port handler base-class functions for typed input ports
118  //
119  // Call these functions directly to bypass the corresponding ports
120  // ----------------------------------------------------------------------
121 
124  FwIndexType portNum,
125  FwEventIdType id,
126  Fw::Time& timeTag,
127  const Fw::LogSeverity& severity,
128  Fw::TextLogString& text
129  );
130 
131  PROTECTED:
132 
133  // ----------------------------------------------------------------------
134  // Internal interface handlers
135  // ----------------------------------------------------------------------
136 
139  const Fw::InternalInterfaceString& text
140  ) = 0;
141 
142  PROTECTED:
143 
144  // ----------------------------------------------------------------------
145  // Internal interface base-class functions
146  // ----------------------------------------------------------------------
147 
150  const Fw::InternalInterfaceString& text
151  );
152 
153  PRIVATE:
154 
155  // ----------------------------------------------------------------------
156  // Message dispatch functions
157  // ----------------------------------------------------------------------
158 
160  virtual MsgDispatchStatus doDispatch();
161 
162  PRIVATE:
163 
164  // ----------------------------------------------------------------------
165  // Calls for messages received on typed input ports
166  // ----------------------------------------------------------------------
167 
169  static void m_p_TextLogger_in(
170  Fw::PassiveComponentBase* callComp,
171  FwIndexType portNum,
172  FwEventIdType id,
173  Fw::Time& timeTag,
174  const Fw::LogSeverity& severity,
175  Fw::TextLogString& text
176  );
177 
178  PRIVATE:
179 
180  // ----------------------------------------------------------------------
181  // Typed input ports
182  // ----------------------------------------------------------------------
183 
185  Fw::InputLogTextPort m_TextLogger_InputPort[NUM_TEXTLOGGER_INPUT_PORTS];
186 
187  };
188 
189 }
190 
191 #endif
Definition: Time.hpp:9
virtual void TextQueue_internalInterfaceHandler(const Fw::InternalInterfaceString &text)=0
Internal interface handler for TextQueue.
friend class ActiveTextLoggerTester
Friend class tester implementation to support white-box testing.
PlatformSizeType FwSizeType
I32 FwEnumStoreType
virtual void TextLogger_handler(FwIndexType portNum, FwEventIdType id, Fw::Time &timeTag, const Fw::LogSeverity &severity, Fw::TextLogString &text)=0
Handler for input port TextLogger.
ActiveTextLoggerComponentBase(const char *compName="")
Construct ActiveTextLoggerComponentBase object.
friend class ActiveTextLoggerTesterBase
Friend class tester to support autocoded test harness.
void init()
Object initializer.
Definition: ObjBase.cpp:26
U32 FwEventIdType
The type of an event identifier.
virtual ~ActiveTextLoggerComponentBase()
Destroy ActiveTextLoggerComponentBase object.
Fw::InputLogTextPort * get_TextLogger_InputPort(FwIndexType portNum)
Enum representing event severity.
Auto-generated base for ActiveTextLogger component.
PlatformIndexType FwIndexType
RateGroupDivider component implementation.
void TextLogger_handlerBase(FwIndexType portNum, FwEventIdType id, Fw::Time &timeTag, const Fw::LogSeverity &severity, Fw::TextLogString &text)
Handler base-class function for input port TextLogger.
void TextQueue_internalInterfaceInvoke(const Fw::InternalInterfaceString &text)
Internal interface base-class function for TextQueue.