7 #ifndef Svc_BufferManagerComponentAc_HPP 8 #define Svc_BufferManagerComponentAc_HPP 18 #if FW_ENABLE_TEXT_LOGGING == 1 141 #if FW_ENABLE_TEXT_LOGGING == 1 144 void set_textEventOut_OutputPort(
163 #if FW_PORT_SERIALIZATION 174 Fw::InputSerializePort* port
177 #if FW_ENABLE_TEXT_LOGGING == 1 180 void set_textEventOut_OutputPort(
182 Fw::InputSerializePort* port
190 Fw::InputSerializePort* port
196 Fw::InputSerializePort* port
209 const char* compName =
"" 247 #if FW_ENABLE_TEXT_LOGGING == 1 252 FwIndexType getNum_textEventOut_OutputPorts()
const;
279 #if FW_ENABLE_TEXT_LOGGING == 1 284 bool isConnected_textEventOut_OutputPort(
470 static void m_p_bufferSendIn_in(
477 static void m_p_schedIn_in(
507 #if FW_ENABLE_TEXT_LOGGING == 1 527 std::atomic<FwIndexType> m_NoBuffsAvailableThrottle;
530 std::atomic<FwIndexType> m_NullEmptyBufferThrottle;
539 bool m_first_update_TotalBuffs;
542 bool m_first_update_CurrBuffs;
545 bool m_first_update_HiBuffs;
548 bool m_first_update_NoBuffs;
551 bool m_first_update_EmptyBuffs;
560 U32 m_last_TotalBuffs;
563 U32 m_last_CurrBuffs;
572 U32 m_last_EmptyBuffs;
void log_WARNING_HI_NoBuffsAvailable(FwSizeType size)
virtual ~BufferManagerComponentBase()
Destroy BufferManagerComponentBase object.
PlatformSizeType FwSizeType
The BufferManager was unable to allocate a requested buffer.
void set_tlmOut_OutputPort(FwIndexType portNum, Fw::InputTlmPort *port)
Connect port to tlmOut[portNum].
Fw::Buffer bufferGetCallee_handlerBase(FwIndexType portNum, FwSizeType size)
Handler base-class function for input port bufferGetCallee.
FwIndexType getNum_eventOut_OutputPorts() const
Throttle reset count for NullEmptyBuffer.
virtual void bufferSendIn_handler(FwIndexType portNum, Fw::Buffer &fwBuffer)=0
Handler for input port bufferSendIn.
virtual void schedIn_handler(FwIndexType portNum, U32 context)=0
Handler for input port schedIn.
FwIndexType getNum_bufferGetCallee_InputPorts() const
The buffer manager received a null pointer and zero-sized buffer as a return. Probably undetected fai...
void init()
Object initializer.
Throttle reset count for NoBuffsAvailable.
Fw::InputBufferSendPort * get_bufferSendIn_InputPort(FwIndexType portNum)
void set_timeCaller_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to timeCaller[portNum].
FwIndexType getNum_bufferSendIn_InputPorts() const
FwIndexType getNum_timeCaller_OutputPorts() const
FwIndexType getNum_tlmOut_OutputPorts() const
void log_WARNING_HI_NullEmptyBuffer()
void log_WARNING_HI_NoBuffsAvailable_ThrottleClear()
Reset throttle value for NoBuffsAvailable.
Fw::InputBufferGetPort * get_bufferGetCallee_InputPort(FwIndexType portNum)
Channel ID for TotalBuffs.
void schedIn_handlerBase(FwIndexType portNum, U32 context)
Handler base-class function for input port schedIn.
void tlmWrite_NoBuffs(U32 arg, Fw::Time _tlmTime=Fw::Time())
Channel ID for CurrBuffs.
FwIndexType getNum_schedIn_InputPorts() const
void tlmWrite_CurrBuffs(U32 arg, Fw::Time _tlmTime=Fw::Time())
void tlmWrite_HiBuffs(U32 arg, Fw::Time _tlmTime=Fw::Time())
friend class BufferManagerTester
Friend class tester implementation to support white-box testing.
virtual void unLock()
Unlock the guarded mutex.
bool isConnected_timeCaller_OutputPort(FwIndexType portNum)
void tlmWrite_TotalBuffs(U32 arg, Fw::Time _tlmTime=Fw::Time())
virtual void lock()
Lock the guarded mutex.
Channel ID for EmptyBuffs.
Svc::InputSchedPort * get_schedIn_InputPort(FwIndexType portNum)
void tlmWrite_EmptyBuffs(U32 arg, Fw::Time _tlmTime=Fw::Time())
friend class BufferManagerTesterBase
Friend class tester to support autocoded test harness.
PlatformIndexType FwIndexType
void log_WARNING_HI_NullEmptyBuffer_ThrottleClear()
Reset throttle value for NullEmptyBuffer.
RateGroupDivider component implementation.
void set_eventOut_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to eventOut[portNum].
virtual Fw::Buffer bufferGetCallee_handler(FwIndexType portNum, FwSizeType size)=0
Handler for input port bufferGetCallee.
bool isConnected_eventOut_OutputPort(FwIndexType portNum)
void bufferSendIn_handlerBase(FwIndexType portNum, Fw::Buffer &fwBuffer)
Handler base-class function for input port bufferSendIn.
Auto-generated base for BufferManager component.
bool isConnected_tlmOut_OutputPort(FwIndexType portNum)
BufferManagerComponentBase(const char *compName="")
Construct BufferManagerComponentBase object.