F´ Flight Software - C/C++ Documentation NASA-v1.6.0
A framework for building embedded system applications to NASA flight quality standards.
Loading...
Searching...
No Matches
PortBase.hpp
Go to the documentation of this file.
1#ifndef FW_PORT_BASE_HPP
2#define FW_PORT_BASE_HPP
3
4#include <Fw/Obj/ObjBase.hpp>
5#include <FpConfig.hpp>
7
8#if FW_PORT_TRACING == 1
9extern "C" {
10 void setConnTrace(bool trace);
11}
12#endif
13
14namespace Fw {
15
16 class PortBase : public Fw::ObjBase {
17 public:
18#if FW_PORT_TRACING == 1
19 static void setTrace(bool trace); // !< turn tracing on or off
20 void ovrTrace(bool ovr, bool trace); // !< override tracing for a particular port
21#endif
22
23 bool isConnected();
24 protected:
25 // Should only be accessed by derived classes
26 PortBase(); // Constructor
27 virtual ~PortBase(); // Destructor
28 virtual void init(); // !< initialization function
29
30#if FW_PORT_TRACING == 1
31 void trace(); // !< trace port calls if active
32#endif
33 Fw::ObjBase* m_connObj; // !< object port is connected to
34
35#if FW_OBJECT_TO_STRING
36 virtual void toString(char* str, NATIVE_INT_TYPE size);
37#endif
38
39
40 private:
41#if FW_PORT_TRACING == 1
42 static bool s_trace; // !< global tracing is active
43 bool m_trace; // !< local trace flag
44 bool m_ovr_trace; // !< flag to override global trace
45#endif
46 // Disable constructors
49 PortBase& operator=(PortBase&);
50
51 };
52
53}
54
55#endif
PlatformIntType NATIVE_INT_TYPE
Definition BasicTypes.h:51
C++-compatible configuration header for fprime configuration.
Declarations for Fw::ObjBase and Fw::ObjRegistry.
Brief class description.
Definition ObjBase.hpp:32
virtual void init()
Definition PortBase.cpp:36
bool isConnected()
Definition PortBase.cpp:41
virtual ~PortBase()
Definition PortBase.cpp:32
Fw::ObjBase * m_connObj
Definition PortBase.hpp:33
Definition Buffer.cpp:21