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"
15 
16 namespace Svc {
17 
24  {
25 
26  // ----------------------------------------------------------------------
27  // Friend classes
28  // ----------------------------------------------------------------------
29 
31  friend class LinuxTimerTesterBase;
33  friend class LinuxTimerTester;
34 
35  protected:
36 
37  // ----------------------------------------------------------------------
38  // Constants
39  // ----------------------------------------------------------------------
40 
42  enum {
44  };
45 
46  public:
47 
48  // ----------------------------------------------------------------------
49  // Component initialization
50  // ----------------------------------------------------------------------
51 
53  void init(
54  FwEnumStoreType instance = 0
55  );
56 
57  public:
58 
59  // ----------------------------------------------------------------------
60  // Connect typed input ports to typed output ports
61  // ----------------------------------------------------------------------
62 
65  FwIndexType portNum,
66  Svc::InputCyclePort* port
67  );
68 
69 #if FW_PORT_SERIALIZATION
70 
71  public:
72 
73  // ----------------------------------------------------------------------
74  // Connect serial input ports to typed output ports
75  // ----------------------------------------------------------------------
76 
79  FwIndexType portNum,
80  Fw::InputSerializePort* port
81  );
82 
83 #endif
84 
85  protected:
86 
87  // ----------------------------------------------------------------------
88  // Component construction and destruction
89  // ----------------------------------------------------------------------
90 
93  const char* compName = ""
94  );
95 
97  virtual ~LinuxTimerComponentBase();
98 
99  protected:
100 
101  // ----------------------------------------------------------------------
102  // Getters for numbers of typed output ports
103  // ----------------------------------------------------------------------
104 
110  }
111 
112  protected:
113 
114  // ----------------------------------------------------------------------
115  // Connection status queries for typed output ports
116  // ----------------------------------------------------------------------
117 
122  FwIndexType portNum
123  );
124 
125  protected:
126 
127  // ----------------------------------------------------------------------
128  // Invocation functions for typed output ports
129  // ----------------------------------------------------------------------
130 
132  void CycleOut_out(
133  FwIndexType portNum,
134  Os::RawTime& cycleStart
135  );
136 
137  private:
138 
139  // ----------------------------------------------------------------------
140  // Typed output ports
141  // ----------------------------------------------------------------------
142 
144  Svc::OutputCyclePort m_CycleOut_OutputPort[NUM_CYCLEOUT_OUTPUT_PORTS];
145 
146  };
147 
148 }
149 
150 #endif
friend class LinuxTimerTester
Friend class tester implementation to support white-box testing.
I32 FwEnumStoreType
void CycleOut_out(FwIndexType portNum, Os::RawTime &cycleStart)
Invoke output port CycleOut.
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()
bool isConnected_CycleOut_OutputPort(FwIndexType portNum)
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].