F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
LinuxTimerComponentAc.hpp
Go to the documentation of this file.
1 // ======================================================================
2 // \title LinuxTimerComponentAc.hpp
3 // \author Generated by fpp-to-cpp
4 // \brief hpp file for LinuxTimer component base class
5 // ======================================================================
6 
7 #ifndef Svc_LinuxTimerComponentAc_HPP
8 #define Svc_LinuxTimerComponentAc_HPP
9 
11 #include "Fw/FPrimeBasicTypes.hpp"
12 #if !FW_DIRECT_PORT_CALLS
14 #endif
15 #if !FW_DIRECT_PORT_CALLS
17 #endif
19 
20 namespace Svc {
21 
28  {
29 
30  // ----------------------------------------------------------------------
31  // Friend classes
32  // ----------------------------------------------------------------------
33 
35  friend class LinuxTimerTesterBase;
37  friend class LinuxTimerTester;
38 
39  protected:
40 
41  // ----------------------------------------------------------------------
42  // Constants
43  // ----------------------------------------------------------------------
44 
46  enum {
48  };
49 
50  public:
51 
52  // ----------------------------------------------------------------------
53  // Component initialization
54  // ----------------------------------------------------------------------
55 
57  void init(
58  FwEnumStoreType instance = 0
59  );
60 
61 #if !FW_DIRECT_PORT_CALLS
62 
63  public:
64 
65  // ----------------------------------------------------------------------
66  // Connect typed input ports to typed output ports
67  // ----------------------------------------------------------------------
68 
71  FwIndexType portNum,
72  Svc::InputCyclePort* port
73  );
74 
75 #endif
76 
77 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION
78 
79  public:
80 
81  // ----------------------------------------------------------------------
82  // Connect serial input ports to typed output ports
83  // ----------------------------------------------------------------------
84 
87  FwIndexType portNum,
88  Fw::InputSerializePort* port
89  );
90 
91 #endif
92 
93  protected:
94 
95  // ----------------------------------------------------------------------
96  // Component construction and destruction
97  // ----------------------------------------------------------------------
98 
101  const char* compName = ""
102  );
103 
105  virtual ~LinuxTimerComponentBase();
106 
107  protected:
108 
109  // ----------------------------------------------------------------------
110  // Getters for numbers of typed output ports
111  // ----------------------------------------------------------------------
112 
118  }
119 
120  protected:
121 
122  // ----------------------------------------------------------------------
123  // Connection status queries for typed output ports
124  // ----------------------------------------------------------------------
125 
130  FwIndexType portNum
131  ) const;
132 
133  protected:
134 
135  // ----------------------------------------------------------------------
136  // Invocation functions for typed output ports
137  // ----------------------------------------------------------------------
138 
140  void CycleOut_out(
141  FwIndexType portNum,
142  Os::RawTime& cycleStart
143  ) const;
144 
145 #if !FW_DIRECT_PORT_CALLS
146 
147  private:
148 
149  // ----------------------------------------------------------------------
150  // Typed output ports
151  // ----------------------------------------------------------------------
152 
154  Svc::OutputCyclePort m_CycleOut_OutputPort[NUM_CYCLEOUT_OUTPUT_PORTS];
155 
156 #endif
157 
158  };
159 
160 }
161 
162 #endif
friend class LinuxTimerTester
Friend class tester implementation to support white-box testing.
I32 FwEnumStoreType
void init()
Object initializer.
Definition: ObjBase.cpp:24
virtual ~LinuxTimerComponentBase()
Destroy LinuxTimerComponentBase object.
LinuxTimerComponentBase(const char *compName="")
Construct LinuxTimerComponentBase object.
static constexpr FwIndexType getNum_CycleOut_OutputPorts()
PlatformIndexType FwIndexType
friend class LinuxTimerTesterBase
Friend class tester to support autocoded test harness.
RateGroupDivider component implementation.
Auto-generated base for LinuxTimer component.
void set_CycleOut_OutputPort(FwIndexType portNum, Svc::InputCyclePort *port)
Connect port to CycleOut[portNum].
void CycleOut_out(FwIndexType portNum, Os::RawTime &cycleStart) const
Invoke output port CycleOut.
bool isConnected_CycleOut_OutputPort(FwIndexType portNum) const