31 void GenericHubComponentImpl ::send_data(
const HubType type,
41 status = serialize.
serialize(static_cast<U32>(type));
43 status = serialize.serialize(static_cast<U32>(port));
45 status = serialize.serialize(data, size);
47 outgoing.
setSize(static_cast<U32>(serialize.getBuffLength()));
71 type =
static_cast<HubType>(type_in);
73 status = incoming.deserialize(port);
75 status = incoming.deserialize(size);
80 U32 rawSize =
static_cast<U32
>(fwBuffer.
getSize() -
sizeof(U32) -
sizeof(U32) -
sizeof(
FwBuffSizeType));
81 FW_ASSERT(rawSize == static_cast<U32>(size));
85 status = wrapper.setBuffLen(rawSize);
87 portOut_out(static_cast<FwIndexType>(port), wrapper);
103 status = incoming.deserialize(timeTag);
105 status = incoming.deserialize(severity);
107 status = incoming.deserialize(args);
111 this->
LogSend_out(static_cast<FwIndexType>(port),
id, timeTag, severity, args);
123 status = incoming.deserialize(timeTag);
125 status = incoming.deserialize(val);
129 this->
TlmSend_out(static_cast<FwIndexType>(port),
id, timeTag, val);
136 void GenericHubComponentImpl ::LogRecv_handler(
const FwIndexType portNum,
144 serializer.resetSer();
145 status = serializer.serialize(
id);
147 status = serializer.serialize(timeTag);
149 status = serializer.serialize(severity);
151 status = serializer.serialize(args);
154 this->send_data(HubType::HUB_TYPE_EVENT, portNum, buffer, size);
158 void GenericHubComponentImpl ::TlmRecv_handler(
const FwIndexType portNum,
165 serializer.resetSer();
166 status = serializer.serialize(
id);
168 status = serializer.serialize(timeTag);
170 status = serializer.serialize(val);
173 this->send_data(HubType::HUB_TYPE_CHANNEL, portNum, buffer, size);
180 void GenericHubComponentImpl ::portIn_handler(
FwIndexType portNum,
Serialization/Deserialization operation was successful.
void bufferDeallocate_out(FwIndexType portNum, Fw::Buffer &fwBuffer)
Invoke output port bufferDeallocate.
Buffer type transmission.
PlatformSizeType FwSizeType
SerializeStatus serialize(U8 val)
serialize 8-bit unsigned int
void LogSend_out(FwIndexType portNum, FwEventIdType id, Fw::Time &timeTag, const Fw::LogSeverity &severity, Fw::LogBuffer &args)
Invoke output port LogSend.
void setSize(SizeType size)
FwSizeStoreType FwBuffSizeType
void dataOut_out(FwIndexType portNum, Fw::Buffer &fwBuffer)
Invoke output port dataOut.
Fw::Buffer dataOutAllocate_out(FwIndexType portNum, U32 size)
Invoke output port dataOutAllocate.
Fw::SerializeStatus portOut_out(FwIndexType portNum, Fw::SerializeBufferBase &buffer)
Invoke output port portOut.
Auto-generated base for GenericHub component.
SerializeStatus
forward declaration for string
ExternalSerializeBufferWithMemberCopy getDeserializer()
FwIdType FwEventIdType
The type of an event identifier.
Serializable::SizeType getBuffLength() const
returns current buffer size
#define FW_LOG_BUFFER_MAX_SIZE
void buffersOut_out(FwIndexType portNum, Fw::Buffer &fwBuffer)
Invoke output port buffersOut.
External serialize buffer with no copy semantics.
#define FW_TLM_BUFFER_MAX_SIZE
FwIdType FwChanIdType
The type of a telemetry channel identifier.
Enum representing event severity.
GenericHubComponentImpl(const char *const compName)
void TlmSend_out(FwIndexType portNum, FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val)
Invoke output port TlmSend.
uint8_t U8
8-bit unsigned integer
The size of the serial representation.
~GenericHubComponentImpl()
SerializeStatus deserialize(U8 &val)
deserialize 8-bit unsigned int
PlatformIndexType FwIndexType
RateGroupDivider component implementation.
void dataInDeallocate_out(FwIndexType portNum, Fw::Buffer &fwBuffer)
Invoke output port dataInDeallocate.
virtual U8 * getBuffAddr()=0
gets buffer address for data filling
void set(U8 *data, SizeType size, U32 context=NO_CONTEXT)
ExternalSerializeBufferWithMemberCopy getSerializer()
#define FW_PORT_SERIALIZATION
for multi-note systems)