F´ Flight Software - C/C++ Documentation  devel
A framework for building embedded system applications to NASA flight quality standards.
CmdRegPortAc.hpp
Go to the documentation of this file.
1 // ======================================================================
2 // \title CmdRegPortAc.hpp
3 // \author Generated by fpp-to-cpp
4 // \brief hpp file for CmdReg port
5 // ======================================================================
6 
7 #ifndef Fw_CmdRegPortAc_HPP
8 #define Fw_CmdRegPortAc_HPP
9 
10 #include <cstdio>
11 #include <cstring>
12 
13 #include "FpConfig.hpp"
18 #include "Fw/Types/StringType.hpp"
19 
20 namespace Fw {
21 
25  public Fw::InputPortBase
26  {
27 
28  public:
29 
30  // ----------------------------------------------------------------------
31  // Constants
32  // ----------------------------------------------------------------------
33 
34  enum {
37  sizeof(FwOpcodeType)
38  };
39 
40  public:
41 
42  // ----------------------------------------------------------------------
43  // Types
44  // ----------------------------------------------------------------------
45 
47  typedef void (*CompFuncPtr)(
48  Fw::PassiveComponentBase* callComp,
49  FwIndexType portNum,
50  FwOpcodeType opCode
51  );
52 
53  public:
54 
55  // ----------------------------------------------------------------------
56  // Input Port Member functions
57  // ----------------------------------------------------------------------
58 
61 
63  void init();
64 
66  void addCallComp(
67  Fw::PassiveComponentBase* callComp,
68  CompFuncPtr funcPtr
69  );
70 
72  void invoke(
73  FwOpcodeType opCode
74  );
75 
76  private:
77 
78 #if FW_PORT_SERIALIZATION == 1
79 
81  Fw::SerializeStatus invokeSerial(Fw::SerializeBufferBase& _buffer);
82 
83 #endif
84 
85  private:
86 
87  // ----------------------------------------------------------------------
88  // Member variables
89  // ----------------------------------------------------------------------
90 
92  CompFuncPtr m_func;
93 
94  };
95 
99  public Fw::OutputPortBase
100  {
101 
102  public:
103 
104  // ----------------------------------------------------------------------
105  // Output Port Member functions
106  // ----------------------------------------------------------------------
107 
110 
112  void init();
113 
115  void addCallPort(
116  InputCmdRegPort* callPort
117  );
118 
120  void invoke(
121  FwOpcodeType opCode
122  );
123 
124  private:
125 
126  // ----------------------------------------------------------------------
127  // Member variables
128  // ----------------------------------------------------------------------
129 
131  InputCmdRegPort* m_port;
132 
133  };
134 
135 }
136 
137 #endif
U32 FwOpcodeType
Definition: FpConfig.h:78
PlatformIndexType FwIndexType
Definition: FpConfig.h:20
C++-compatible configuration header for fprime configuration.
void(* CompFuncPtr)(Fw::PassiveComponentBase *callComp, FwIndexType portNum, FwOpcodeType opCode)
The port callback function type.
void addCallComp(Fw::PassiveComponentBase *callComp, CompFuncPtr funcPtr)
Register a component.
InputCmdRegPort()
Constructor.
void invoke(FwOpcodeType opCode)
Invoke a port interface.
void init()
Initialization function.
@ SERIALIZED_SIZE
The size of the serial representations of the port arguments.
OutputCmdRegPort()
Constructor.
void addCallPort(InputCmdRegPort *callPort)
Register an input port.
void invoke(FwOpcodeType opCode)
Invoke a port interface.
void init()
Initialization function.
SerializeStatus
forward declaration for string