F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
EnableSectionPortAc.hpp
Go to the documentation of this file.
1 // ======================================================================
2 // \title EnableSectionPortAc.hpp
3 // \author Generated by fpp-to-cpp
4 // \brief hpp file for EnableSection port
5 // ======================================================================
6 
7 #ifndef Svc_EnableSectionPortAc_HPP
8 #define Svc_EnableSectionPortAc_HPP
9 
10 #include <cstdio>
11 #include <cstring>
12 
14 #include "Fw/FPrimeBasicTypes.hpp"
19 #include "Fw/Types/String.hpp"
21 
22 namespace Svc {
23 
27  public Fw::InputPortBase
28  {
29 
30  public:
31 
32  // ----------------------------------------------------------------------
33  // Constants
34  // ----------------------------------------------------------------------
35 
36  enum {
41  };
42 
43  public:
44 
45  // ----------------------------------------------------------------------
46  // Types
47  // ----------------------------------------------------------------------
48 
50  typedef void (*CompFuncPtr)(
51  Fw::PassiveComponentBase* callComp,
52  FwIndexType portNum,
53  const Svc::TelemetrySection& section,
54  const Fw::Enabled& enabled
55  );
56 
57  public:
58 
59  // ----------------------------------------------------------------------
60  // Input Port Member functions
61  // ----------------------------------------------------------------------
62 
65 
67  void init();
68 
70  void addCallComp(
71  Fw::PassiveComponentBase* callComp,
72  CompFuncPtr funcPtr
73  );
74 
76  void invoke(
77  const Svc::TelemetrySection& section,
78  const Fw::Enabled& enabled
79  );
80 
81  private:
82 
83 #if FW_PORT_SERIALIZATION == 1
84 
86  Fw::SerializeStatus invokeSerial(Fw::LinearBufferBase& _buffer);
87 
88 #endif
89 
90  private:
91 
92  // ----------------------------------------------------------------------
93  // Member variables
94  // ----------------------------------------------------------------------
95 
97  CompFuncPtr m_func;
98 
99  };
100 
104  public Fw::OutputPortBase
105  {
106 
107  public:
108 
109  // ----------------------------------------------------------------------
110  // Output Port Member functions
111  // ----------------------------------------------------------------------
112 
115 
117  void init();
118 
120  void addCallPort(
121  InputEnableSectionPort* callPort
122  );
123 
125  void invoke(
126  const Svc::TelemetrySection& section,
127  const Fw::Enabled& enabled
128  ) const;
129 
130  private:
131 
132  // ----------------------------------------------------------------------
133  // Member variables
134  // ----------------------------------------------------------------------
135 
137  InputEnableSectionPort* m_port;
138 
139  };
140 
141 }
142 
143 #endif
The size of the serial representations of the port arguments.
SerializeStatus
forward declaration for string
void(* CompFuncPtr)(Fw::PassiveComponentBase *callComp, FwIndexType portNum, const Svc::TelemetrySection &section, const Fw::Enabled &enabled)
The port callback function type.
void init()
Initialization function.
The size of the serial representation.
Enabled and disabled states.
void init()
Initialization function.
void addCallPort(InputEnableSectionPort *callPort)
Register an input port.
void addCallComp(Fw::PassiveComponentBase *callComp, CompFuncPtr funcPtr)
Register a component.
PlatformIndexType FwIndexType
void invoke(const Svc::TelemetrySection &section, const Fw::Enabled &enabled) const
Invoke a port interface.
The size of the serial representation.
RateGroupDivider component implementation.
void invoke(const Svc::TelemetrySection &section, const Fw::Enabled &enabled)
Invoke a port interface.