ifw-ccf 6.0.0
 
Loading...
Searching...
No Matches
ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver Class Reference

The RtmsCcfReceiver struct receives RTMS packets and package these in ifw::ccf::common::DataFrame objects. More...

#include <rtmsCcfReceiver.hpp>

Inheritance diagram for ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver:

Public Member Functions

 RtmsCcfReceiver (std::string address, int port, std::string net_if, int width, int height, int bpp, ifw::fnd::datatype::DataType data_type, int queue_size=10)
 
virtual ~RtmsCcfReceiver ()
 
virtual void HandleLeaderPacket ()
 Invoked to handle a MUDPI/RTMS Leader Packet.
 
virtual void HandlePayloadPacket (mudpiif::mudpiPacketJumbo &packet)
 Invoked to handle a MUDPI/RTMS Payload Packet.
 
virtual void HandleTrailerPacket ()
 Invoked to handle a MUDPI/RTMS Trailer Packet.
 
virtual void HandleLostPackets ()
 Handle the case where packets are lost.
 
virtual void HandleWrongFrameId ()
 Handle the case where a wrong frame ID is received.
 
void GetFrame (const double timeout, ifw::ccf::common::DataFrame &data_frame, bool &frame_received)
 Receive one RTMS frame.
 
int64_t GetLostFramesCount () const
 

Public Attributes

int m_packet_timeout {1000}
 
ifw::ccf::common::FrameQueuem_frame_queue {nullptr}
 
ifw::ccf::common::DataFramem_cur_input_frame {nullptr}
 
std::list< ifw::ccf::common::DataFrame * > m_ready_frames
 
std::mutex m_ready_frames_mutex
 
int m_client_frame_index {0}
 
ifw::fnd::datatype::DataType m_data_type
 
uint16_t m_queue_size {0}
 
uint16_t m_receiver_index {0}
 
int64_t m_lost_frames {0}
 
int64_t m_frame_bytes_received {0}
 
int64_t m_frame_payload_packet_count {0}
 

Detailed Description

The RtmsCcfReceiver struct receives RTMS packets and package these in ifw::ccf::common::DataFrame objects.

RTMS receiver which receives RTMS packets into ifw::ccf::common::DataFrame objects.

Constructor & Destructor Documentation

◆ RtmsCcfReceiver()

ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver::RtmsCcfReceiver ( std::string address,
int port,
std::string net_if,
int width,
int height,
int bpp,
ifw::fnd::datatype::DataType data_type,
int queue_size = 10 )

◆ ~RtmsCcfReceiver()

ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver::~RtmsCcfReceiver ( )
virtual

Member Function Documentation

◆ GetFrame()

void ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver::GetFrame ( const double timeout,
ifw::ccf::common::DataFrame & data_frame,
bool & frame_received )

Receive one RTMS frame.

◆ GetLostFramesCount()

int64_t ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver::GetLostFramesCount ( ) const

◆ HandleLeaderPacket()

void ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver::HandleLeaderPacket ( )
virtual

Invoked to handle a MUDPI/RTMS Leader Packet.

◆ HandleLostPackets()

void ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver::HandleLostPackets ( )
virtual

Handle the case where packets are lost.

◆ HandlePayloadPacket()

void ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver::HandlePayloadPacket ( mudpiif::mudpiPacketJumbo & packet)
virtual

Invoked to handle a MUDPI/RTMS Payload Packet.

◆ HandleTrailerPacket()

void ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver::HandleTrailerPacket ( )
virtual

Invoked to handle a MUDPI/RTMS Trailer Packet.

◆ HandleWrongFrameId()

void ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver::HandleWrongFrameId ( )
virtual

Handle the case where a wrong frame ID is received.

Member Data Documentation

◆ m_client_frame_index

int ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver::m_client_frame_index {0}

◆ m_cur_input_frame

ifw::ccf::common::DataFrame* ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver::m_cur_input_frame {nullptr}

◆ m_data_type

ifw::fnd::datatype::DataType ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver::m_data_type

◆ m_frame_bytes_received

int64_t ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver::m_frame_bytes_received {0}

◆ m_frame_payload_packet_count

int64_t ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver::m_frame_payload_packet_count {0}

◆ m_frame_queue

ifw::ccf::common::FrameQueue* ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver::m_frame_queue {nullptr}

◆ m_lost_frames

int64_t ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver::m_lost_frames {0}

◆ m_packet_timeout

int ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver::m_packet_timeout {1000}

◆ m_queue_size

uint16_t ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver::m_queue_size {0}

◆ m_ready_frames

std::list<ifw::ccf::common::DataFrame*> ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver::m_ready_frames

◆ m_ready_frames_mutex

std::mutex ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver::m_ready_frames_mutex

◆ m_receiver_index

uint16_t ifw::ccf::tools::rtms2ccflib::RtmsCcfReceiver::m_receiver_index {0}

The documentation for this class was generated from the following files: