25 m_allocation_failure_response(
BufferRepeater::NUM_BUFFER_REPEATER_FAILURE_OPTIONS) {}
30 this->m_allocation_failure_response = allocation_failure_response;
33 bool BufferRepeater ::check_allocation(
FwIndexType index,
37 bool is_valid = (new_allocation.
getData() !=
nullptr) && (new_allocation.
getSize() >= incoming_buffer.
getSize());
41 switch (this->m_allocation_failure_response) {
63 void BufferRepeater ::portIn_handler(
FwIndexType portNum,
70 if (this->check_allocation(i, new_allocation, buffer)) {
bool isConnected_portOut_OutputPort(FwIndexType portNum) const
void setSize(FwSizeType size)
BufferRepeaterFailureOption
void log_WARNING_HI_AllocationSoftFailure(I32 port, FwSizeType size) const
void portOut_out(FwIndexType portNum, Fw::Buffer &fwBuffer) const
Invoke output port portOut.
BufferRepeater(const char *const compName)
FwSizeType getSize() const
Fw::Buffer allocate_out(FwIndexType portNum, FwSizeType size) const
Invoke output port allocate.
void log_FATAL_AllocationHardFailure(I32 port, FwSizeType size) const
PlatformIndexType FwIndexType
#define FW_ASSERT_NO_OVERFLOW(value, T)
void configure(BufferRepeaterFailureOption allocation_failure_response)
RateGroupDivider component implementation.
void deallocate_out(FwIndexType portNum, Fw::Buffer &fwBuffer) const
Invoke output port deallocate.
Auto-generated base for BufferRepeater component.