7 #ifndef Drv_LinuxUartDriverComponentAc_HPP 8 #define Drv_LinuxUartDriverComponentAc_HPP 21 #if FW_ENABLE_TEXT_LOGGING == 1 24 #if !FW_DIRECT_PORT_CALLS 27 #if !FW_DIRECT_PORT_CALLS 119 #if !FW_DIRECT_PORT_CALLS 150 #if !FW_DIRECT_PORT_CALLS 164 #if FW_ENABLE_TEXT_LOGGING == 1 167 void set_LogText_OutputPort(
188 #if !FW_DIRECT_PORT_CALLS 222 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 233 Fw::InputSerializePort* port
236 #if FW_ENABLE_TEXT_LOGGING == 1 239 void set_LogText_OutputPort(
241 Fw::InputSerializePort* port
249 Fw::InputSerializePort* port
255 Fw::InputSerializePort* port
260 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 271 Fw::InputSerializePort* port
277 Fw::InputSerializePort* port
283 Fw::InputSerializePort* port
296 const char* compName =
"" 342 #if FW_ENABLE_TEXT_LOGGING == 1 347 static constexpr
FwIndexType getNum_LogText_OutputPorts() {
414 #if FW_ENABLE_TEXT_LOGGING == 1 419 bool isConnected_LogText_OutputPort(
497 #if FW_DIRECT_PORT_CALLS 705 static void m_p_recvReturnIn_in(
712 static void m_p_run_in(
740 #if FW_ENABLE_TEXT_LOGGING 767 #if !FW_DIRECT_PORT_CALLS 786 #if !FW_DIRECT_PORT_CALLS 797 #if FW_ENABLE_TEXT_LOGGING == 1 812 #if !FW_DIRECT_PORT_CALLS 841 std::atomic<FwIndexType> m_WriteErrorThrottle;
844 std::atomic<FwIndexType> m_ReadErrorThrottle;
847 std::atomic<FwIndexType> m_NoBuffersThrottle;
virtual void lock()
Lock the guarded mutex.
virtual void unLock()
Unlock the guarded mutex.
void ready_out(FwIndexType portNum) const
Invoke output port ready.
void log_WARNING_HI_BufferTooSmall(const Fw::StringBase &device, U32 size, U32 needed) const
static constexpr FwIndexType getNum_deallocate_OutputPorts()
void recvReturnIn_handlerBase(FwIndexType portNum, Fw::Buffer &fwBuffer)
Handler base-class function for input port recvReturnIn.
PlatformSizeType FwSizeType
Drv::ByteStreamStatus send_handlerBase(FwIndexType portNum, Fw::Buffer &sendBuffer)
Handler base-class function for input port send.
Throttle reset count for WriteError.
Drv::InputByteStreamSendPort * get_send_InputPort(FwIndexType portNum)
void set_Tlm_OutputPort(FwIndexType portNum, Fw::InputTlmPort *port)
Connect port to Tlm[portNum].
friend class LinuxUartDriverTesterBase
Friend class tester to support autocoded test harness.
virtual void recvReturnIn_handler(FwIndexType portNum, Fw::Buffer &fwBuffer)=0
Handler for input port recvReturnIn.
static constexpr FwIndexType getNum_recv_OutputPorts()
void tlmWrite_BytesRecv(FwSizeType arg, Fw::Time _tlmTime=Fw::Time()) const
bool isConnected_ready_OutputPort(FwIndexType portNum) const
void recv_out(FwIndexType portNum, Fw::Buffer &buffer, const Drv::ByteStreamStatus &status) const
Invoke output port recv.
bool isConnected_Log_OutputPort(FwIndexType portNum) const
LinuxUartDriverComponentBase(const char *compName="")
Construct LinuxUartDriverComponentBase object.
bool isConnected_allocate_OutputPort(FwIndexType portNum) const
Auto-generated base for LinuxUartDriver component.
static constexpr FwIndexType getNum_Log_OutputPorts()
void log_WARNING_HI_WriteError(const Fw::StringBase &device, I32 error)
void set_ready_OutputPort(FwIndexType portNum, Drv::InputByteStreamReadyPort *port)
Connect port to ready[portNum].
void init()
Object initializer.
void log_WARNING_HI_ReadError(const Fw::StringBase &device, I32 error)
Fw::InputBufferSendPort * get_recvReturnIn_InputPort(FwIndexType portNum)
FwIdType FwEventIdType
The type of an event identifier.
void deallocate_out(FwIndexType portNum, Fw::Buffer &fwBuffer) const
Invoke output port deallocate.
Status returned by the send call.
static constexpr FwIndexType getNum_ready_OutputPorts()
Throttle reset count for NoBuffers.
Channel ID for BytesSent.
static constexpr FwIndexType getNum_recvReturnIn_InputPorts()
void set_Log_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to Log[portNum].
void log_WARNING_HI_WriteError_ThrottleClear()
Reset throttle value for WriteError.
FwIdType FwChanIdType
The type of a telemetry channel identifier.
void log_WARNING_HI_OpenError(const Fw::StringBase &device, I32 error, const Fw::StringBase &name) const
static constexpr FwIndexType getNum_run_InputPorts()
virtual Drv::ByteStreamStatus send_handler(FwIndexType portNum, Fw::Buffer &sendBuffer)=0
Handler for input port send.
void log_ACTIVITY_HI_PortOpened(const Fw::StringBase &device) const
Enum representing event severity.
void set_allocate_OutputPort(FwIndexType portNum, Fw::InputBufferGetPort *port)
Connect port to allocate[portNum].
void log_WARNING_HI_NoBuffers(const Fw::StringBase &device)
friend class LinuxUartDriverTester
Friend class tester implementation to support white-box testing.
bool isConnected_deallocate_OutputPort(FwIndexType portNum) const
void tlmWrite(FwChanIdType id, Fw::TlmBuffer &_tlmBuff, Fw::Time _tlmTime=Fw::Time()) const
static constexpr FwIndexType getNum_allocate_OutputPorts()
static constexpr FwIndexType getNum_Time_OutputPorts()
static constexpr FwIndexType getNum_Tlm_OutputPorts()
Channel ID for BytesRecv.
virtual void run_handler(FwIndexType portNum, U32 context)=0
Handler for input port run.
Svc::InputSchedPort * get_run_InputPort(FwIndexType portNum)
void run_handlerBase(FwIndexType portNum, U32 context)
Handler base-class function for input port run.
bool isConnected_Time_OutputPort(FwIndexType portNum) const
void set_deallocate_OutputPort(FwIndexType portNum, Fw::InputBufferSendPort *port)
Connect port to deallocate[portNum].
bool isConnected_Tlm_OutputPort(FwIndexType portNum) const
PlatformIndexType FwIndexType
void set_Time_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to Time[portNum].
virtual ~LinuxUartDriverComponentBase()
Destroy LinuxUartDriverComponentBase object.
void log_WARNING_HI_NoBuffers_ThrottleClear()
Reset throttle value for NoBuffers.
void set_recv_OutputPort(FwIndexType portNum, Drv::InputByteStreamDataPort *port)
Connect port to recv[portNum].
void tlmWrite_BytesSent(FwSizeType arg, Fw::Time _tlmTime=Fw::Time()) const
bool isConnected_recv_OutputPort(FwIndexType portNum) const
Throttle reset count for ReadError.
Fw::Buffer allocate_out(FwIndexType portNum, FwSizeType size) const
Invoke output port allocate.
void log_WARNING_HI_ReadError_ThrottleClear()
Reset throttle value for ReadError.
void log_WARNING_HI_ConfigError(const Fw::StringBase &device, I32 error) const
static constexpr FwIndexType getNum_send_InputPorts()