F´ Flight Software - C/C++ Documentation  NASA-v1.5.0
A framework for building embedded system applications to NASA flight quality standards.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
SchedPortAc.hpp
Go to the documentation of this file.
1 /*
2  * SchedPort.hpp
3  *
4  * Created on: Wednesday, 14 October 2020
5  * Author: mstarch
6  *
7  */
8 #ifndef SVC_SCHED_PORT_HPP_
9 #define SVC_SCHED_PORT_HPP_
10 
11 #include <cstring>
12 #include <cstdio>
13 #include <FpConfig.hpp>
17 #include <Fw/Types/BasicTypes.hpp>
19 #include <Fw/Types/StringType.hpp>
20 
21 
22 namespace Svc {
23 
26 
28  public:
29  enum {
31  };
32  typedef void (*CompFuncPtr)(Fw::PassiveComponentBase* callComp, NATIVE_INT_TYPE portNum, NATIVE_UINT_TYPE context);
33 
34  InputSchedPort(void);
35  void init(void);
36  void addCallComp(Fw::PassiveComponentBase* callComp, CompFuncPtr funcPtr);
37  void invoke(NATIVE_UINT_TYPE context);
38  protected:
39  private:
40  CompFuncPtr m_func;
41 #if FW_PORT_SERIALIZATION == 1
42  Fw::SerializeStatus invokeSerial(Fw::SerializeBufferBase &buffer);
43 #endif
44 };
47 
49  public:
50  OutputSchedPort(void);
51  void init(void);
52  void addCallPort(InputSchedPort* callPort);
53  void invoke(NATIVE_UINT_TYPE context);
54  protected:
55  private:
56  InputSchedPort* m_port;
57  };
58 } // end namespace Svc
59 #endif /* SVC_SCHED_PORT_HPP_ */
60 
StringType.hpp
Declares ISF string base class.
InputPortBase.hpp
Svc::InputSchedPort::CompFuncPtr
void(* CompFuncPtr)(Fw::PassiveComponentBase *callComp, NATIVE_INT_TYPE portNum, NATIVE_UINT_TYPE context)
port callback definition
Definition: SchedPortAc.hpp:32
PassiveComponentBase.hpp
Fw::SerializeBufferBase
Definition: Serializable.hpp:43
Fw::SerializeStatus
SerializeStatus
forward declaration for string
Definition: Serializable.hpp:14
Svc::InputSchedPort::addCallComp
void addCallComp(Fw::PassiveComponentBase *callComp, CompFuncPtr funcPtr)
call to register a component
Definition: SchedPortAc.cpp:42
Serializable.hpp
Svc::InputSchedPort::init
void init(void)
initialization function
Definition: SchedPortAc.cpp:38
Svc::InputSchedPort::SERIALIZED_SIZE
@ SERIALIZED_SIZE
serialized size of port arguments
Definition: SchedPortAc.hpp:30
Fw::PassiveComponentBase
Definition: PassiveComponentBase.hpp:10
Svc::InputSchedPort::InputSchedPort
InputSchedPort(void)
constructor
Definition: SchedPortAc.cpp:33
Fw::InputPortBase
Definition: InputPortBase.hpp:14
Svc::InputSchedPort
Definition: SchedPortAc.hpp:27
Svc::InputSchedPort::invoke
void invoke(NATIVE_UINT_TYPE context)
invoke port interface
Definition: SchedPortAc.cpp:52
NATIVE_UINT_TYPE
unsigned int NATIVE_UINT_TYPE
native unsigned integer type declaration
Definition: BasicTypes.hpp:30
Svc::OutputSchedPort::invoke
void invoke(NATIVE_UINT_TYPE context)
Definition: SchedPortAc.cpp:103
Svc::OutputSchedPort::addCallPort
void addCallPort(InputSchedPort *callPort)
Definition: SchedPortAc.cpp:93
OutputPortBase.hpp
Svc::OutputSchedPort::init
void init(void)
Definition: SchedPortAc.cpp:89
FpConfig.hpp
ISF configuration file.
Fw::OutputPortBase
Definition: OutputPortBase.hpp:13
Svc
Definition: ActiveLoggerComponentAc.cpp:22
Svc::OutputSchedPort::OutputSchedPort
OutputSchedPort(void)
Definition: SchedPortAc.cpp:84
BasicTypes.hpp
Declares ISF basic types.
NATIVE_INT_TYPE
int NATIVE_INT_TYPE
native integer type declaration
Definition: BasicTypes.hpp:29
Svc::OutputSchedPort
Definition: SchedPortAc.hpp:48