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
OutputPortBase.cpp
Go to the documentation of this file.
1#include <FpConfig.hpp>
3#include <Os/Log.hpp>
4#include <cstdio>
5#include <Fw/Types/Assert.hpp>
6
7
8namespace Fw {
9
12 ,m_serPort(nullptr)
13#endif
14 {
15
16 }
17
19 }
20
23 }
24#if FW_PORT_SERIALIZATION == 1
25 void OutputPortBase::registerSerialPort(InputPortBase* port) {
26 FW_ASSERT(port);
27 this->m_connObj = port;
28 this->m_serPort = port;
29 }
30
31 SerializeStatus OutputPortBase::invokeSerial(SerializeBufferBase &buffer) {
32 FW_ASSERT(this->m_serPort);
33 return this->m_serPort->invokeSerial(buffer);
34 }
35#endif
36
37#if FW_OBJECT_TO_STRING == 1
38 void OutputPortBase::toString(char* buffer, NATIVE_INT_TYPE size) {
39#if FW_OBJECT_NAMES == 1
40 FW_ASSERT(size > 0);
41 if (snprintf(buffer, size, "OutputPort: %s %s->(%s)", this->m_objName, this->isConnected() ? "C" : "NC",
42 this->isConnected() ? this->m_connObj->getObjName() : "None") < 0) {
43 buffer[0] = 0;
44 }
45#else
46 (void)snprintf(buffer,size,"%s","OutputPort");
47#endif
48
49 }
50#endif
51
52
53}
54
#define FW_ASSERT(...)
Definition Assert.hpp:7
PlatformIntType NATIVE_INT_TYPE
Definition BasicTypes.h:51
#define FW_PORT_SERIALIZATION
Definition FpConfig.h:130
C++-compatible configuration header for fprime configuration.
virtual void init()
virtual void init()
Definition PortBase.cpp:36
bool isConnected()
Definition PortBase.cpp:41
Fw::ObjBase * m_connObj
Definition PortBase.hpp:33
Definition Buffer.cpp:21
SerializeStatus
forward declaration for string