31 const U8* getBuffAddr()
const {
71 this->m_func = funcPtr;
82 #if FW_PORT_TRACING == 1
89 return this->m_func(this->
m_comp, this->
m_portNum, version_id, version_string, status);
92 #if FW_PORT_SERIALIZATION == 1
99 #if FW_PORT_TRACING == 1
113 Fw::ExternalString version_string(__fprime_ac_version_string_buffer,
sizeof __fprime_ac_version_string_buffer);
125 this->m_func(this->
m_comp, this->
m_portNum, version_id, version_string, status);
138 Fw::OutputPortBase(),
155 this->m_port = callPort;
158 #if FW_PORT_SERIALIZATION == 1
159 this->m_serPort =
nullptr;
170 #if FW_PORT_TRACING == 1
174 #if FW_PORT_SERIALIZATION
175 FW_ASSERT((this->m_port !=
nullptr) || (this->m_serPort !=
nullptr));
177 if (this->m_port !=
nullptr) {
178 this->m_port->
invoke(version_id, version_string, status);
182 VersionPortBuffer _buffer;
184 _status = _buffer.serialize(version_id);
187 _status = _buffer.serialize(version_string);
190 _status = _buffer.serialize(status);
193 _status = this->m_serPort->invokeSerial(_buffer);
198 this->m_port->
invoke(version_id, version_string, status);
uint8_t U8
8-bit unsigned integer
PlatformAssertArgType FwAssertArgType
A string backed by an external buffer.
NATIVE_UINT_TYPE SizeType
SerializeStatus deserialize(U8 &val)
deserialize 8-bit unsigned int
static constexpr SizeType BUFFER_SIZE(SizeType maxLength)
Get the size of a null-terminated string buffer.
void addCallPort(InputVersionPort *callPort)
Register an input port.
void init()
Initialization function.
void invoke(const Svc::VersionCfg::VersionEnum &version_id, Fw::StringBase &version_string, Svc::VersionStatus &status)
Invoke a port interface.
OutputVersionPort()
Constructor.
An enumeration for version status.
SerializeStatus
forward declaration for string
@ FW_SERIALIZE_OK
Serialization/Deserialization operation was successful.