F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
GpioWritePortAc.hpp
Go to the documentation of this file.
1 // ======================================================================
2 // \title GpioWritePortAc.hpp
3 // \author Generated by fpp-to-cpp
4 // \brief hpp file for GpioWrite port
5 // ======================================================================
6 
7 #ifndef Drv_GpioWritePortAc_HPP
8 #define Drv_GpioWritePortAc_HPP
9 
11 #include "Fw/FPrimeBasicTypes.hpp"
12 #include "Fw/Types/LogicEnumAc.hpp"
13 #if !FW_DIRECT_PORT_CALLS
17 #endif
18 
19 namespace Drv {
20 
21 #if !FW_DIRECT_PORT_CALLS
22 
25  public Fw::InputPortBase
26  {
27 
28  public:
29 
30  // ----------------------------------------------------------------------
31  // Public types for InputGpioWritePort
32  // ----------------------------------------------------------------------
33 
36  Fw::PassiveComponentBase* callComp,
37  FwIndexType portNum,
38  const Fw::Logic& state
39  );
40 
41  public:
42 
43  // ----------------------------------------------------------------------
44  // Public constructors for InputGpioWritePort
45  // ----------------------------------------------------------------------
46 
49 
50  public:
51 
52  // ----------------------------------------------------------------------
53  // Public member functions for InputGpioWritePort
54  // ----------------------------------------------------------------------
55 
57  void init();
58 
60  void addCallComp(
61  Fw::PassiveComponentBase* callComp,
62  CompFuncPtr funcPtr
63  );
64 
66  Drv::GpioStatus invoke(const Fw::Logic& state);
67 
68  private:
69 
70  // ----------------------------------------------------------------------
71  // Private member functions for InputGpioWritePort
72  // ----------------------------------------------------------------------
73 
74 #if FW_PORT_SERIALIZATION == 1
75 
78  Fw::SerializeStatus invokeSerial(
79  Fw::LinearBufferBase& _buffer
80  );
81 
82 #endif
83 
84  private:
85 
86  // ----------------------------------------------------------------------
87  // Private member variables for InputGpioWritePort
88  // ----------------------------------------------------------------------
89 
91  CompFuncPtr m_func;
92 
93  };
94 
97  public Fw::OutputPortBase
98  {
99 
100  public:
101 
102  // ----------------------------------------------------------------------
103  // Public constructors for OutputGpioWritePort
104  // ----------------------------------------------------------------------
105 
108 
109  public:
110 
111  // ----------------------------------------------------------------------
112  // Public member functions for OutputGpioWritePort
113  // ----------------------------------------------------------------------
114 
116  void init();
117 
119  void addCallPort(
120  InputGpioWritePort* callPort
121  );
122 
125  Drv::GpioStatus invoke(const Fw::Logic& state) const;
126 
127  private:
128 
129  // ----------------------------------------------------------------------
130  // Private member variables for OutputGpioWritePort
131  // ----------------------------------------------------------------------
132 
134  InputGpioWritePort* m_port;
135 
136  };
137 
138 #endif
139 
140 }
141 
142 #endif
OutputGpioWritePort()
Constructor.
void init()
Initialization function.
Output GpioWrite port.
Drv::GpioStatus invoke(const Fw::Logic &state) const
Input GpioWrite port.
SerializeStatus
forward declaration for string
void init()
Initialization function.
Drv::GpioStatus invoke(const Fw::Logic &state)
Invoke a port interface.
InputGpioWritePort()
Constructor.
void addCallPort(InputGpioWritePort *callPort)
Register an input port.
void addCallComp(Fw::PassiveComponentBase *callComp, CompFuncPtr funcPtr)
Register a component.
Drv::GpioStatus(* CompFuncPtr)(Fw::PassiveComponentBase *callComp, FwIndexType portNum, const Fw::Logic &state)
The port callback function type.
PlatformIndexType FwIndexType
Logic states.
Definition: LogicEnumAc.hpp:17