SDRAngel
4.11.5
Developer docs for <a href="https://github.com/f4exb/sdrangel">SDRangel<\a>, an Open Source Qt5 / OpenGL 3.0+ SDR and signal analyzer frontend to various hardware.
|
#include <udpsinkfecworker.h>
Inherits QThread.
Classes | |
class | MsgConfigureRemoteAddress |
class | MsgStartStop |
class | MsgUDPFECEncodeAndSend |
Public Member Functions | |
UDPSinkFECWorker () | |
~UDPSinkFECWorker () | |
void | startStop (bool start) |
void | pushTxFrame (RemoteSuperBlock *txBlocks, uint32_t nbBlocksFEC, uint32_t txDelay, uint16_t frameIndex) |
void | setRemoteAddress (const QString &address, uint16_t port) |
Public Attributes | |
MessageQueue | m_inputMessageQueue |
Queue for asynchronous inbound communication. More... | |
Private Slots | |
void | handleInputMessages () |
Private Member Functions | |
void | startWork () |
void | stopWork () |
void | run () |
void | encodeAndTransmit (RemoteSuperBlock *txBlockx, uint16_t frameIndex, uint32_t nbBlocksFEC, uint32_t txDelay) |
Private Attributes | |
QMutex | m_startWaitMutex |
QWaitCondition | m_startWaiter |
volatile bool | m_running |
CM256 | m_cm256 |
CM256 library object. More... | |
bool | m_cm256Valid |
true if CM256 library is initialized correctly More... | |
QUdpSocket * | m_udpSocket |
QString | m_remoteAddress |
uint16_t | m_remotePort |
QHostAddress | m_remoteHostAddress |
Definition at line 34 of file udpsinkfecworker.h.
UDPSinkFECWorker::UDPSinkFECWorker | ( | ) |
Definition at line 27 of file udpsinkfecworker.cpp.
Referenced by UDPSinkFECWorker::MsgStartStop::MsgStartStop().
UDPSinkFECWorker::~UDPSinkFECWorker | ( | ) |
Definition at line 36 of file udpsinkfecworker.cpp.
Referenced by UDPSinkFECWorker::MsgStartStop::MsgStartStop().
|
private |
< Main interface with CM256 encoder
< Pointers to data for CM256 encoder
< FEC data
Definition at line 135 of file udpsinkfecworker.cpp.
References i, m_cm256Valid, and m_udpSocket.
Referenced by handleInputMessages().
|
privateslot |
Definition at line 100 of file udpsinkfecworker.cpp.
References encodeAndTransmit(), UDPSinkFECWorker::MsgUDPFECEncodeAndSend::getFrameIndex(), Message::getIdentifier(), UDPSinkFECWorker::MsgUDPFECEncodeAndSend::getNbBlocsFEC(), UDPSinkFECWorker::MsgStartStop::getStartStop(), UDPSinkFECWorker::MsgUDPFECEncodeAndSend::getTxBlocks(), UDPSinkFECWorker::MsgUDPFECEncodeAndSend::getTxDelay(), m_inputMessageQueue, m_remoteAddress, m_remoteHostAddress, m_remotePort, Message::match(), MessageQueue::pop(), startWork(), and stopWork().
void UDPSinkFECWorker::pushTxFrame | ( | RemoteSuperBlock * | txBlocks, |
uint32_t | nbBlocksFEC, | ||
uint32_t | txDelay, | ||
uint16_t | frameIndex | ||
) |
Definition at line 86 of file udpsinkfecworker.cpp.
References UDPSinkFECWorker::MsgUDPFECEncodeAndSend::create(), m_inputMessageQueue, and MessageQueue::push().
Referenced by UDPSinkFECWorker::MsgStartStop::MsgStartStop().
|
private |
void UDPSinkFECWorker::setRemoteAddress | ( | const QString & | address, |
uint16_t | port | ||
) |
Definition at line 95 of file udpsinkfecworker.cpp.
References UDPSinkFECWorker::MsgConfigureRemoteAddress::create(), m_inputMessageQueue, and MessageQueue::push().
Referenced by UDPSinkFECWorker::MsgStartStop::MsgStartStop(), UDPSinkFEC::setRemoteAddress(), and UDPSinkFEC::start().
void UDPSinkFECWorker::startStop | ( | bool | start | ) |
Definition at line 40 of file udpsinkfecworker.cpp.
References UDPSinkFECWorker::MsgStartStop::create(), m_inputMessageQueue, and MessageQueue::push().
Referenced by UDPSinkFECWorker::MsgStartStop::MsgStartStop(), UDPSinkFEC::start(), and UDPSinkFEC::stop().
|
private |
Definition at line 46 of file udpsinkfecworker.cpp.
References m_running, m_startWaiter, m_startWaitMutex, and m_udpSocket.
Referenced by handleInputMessages().
|
private |
Definition at line 61 of file udpsinkfecworker.cpp.
References m_running, and m_udpSocket.
Referenced by handleInputMessages().
|
private |
CM256 library object.
Definition at line 140 of file udpsinkfecworker.h.
|
private |
true if CM256 library is initialized correctly
Definition at line 141 of file udpsinkfecworker.h.
Referenced by encodeAndTransmit().
MessageQueue UDPSinkFECWorker::m_inputMessageQueue |
Queue for asynchronous inbound communication.
Definition at line 126 of file udpsinkfecworker.h.
Referenced by handleInputMessages(), pushTxFrame(), setRemoteAddress(), and startStop().
|
private |
Definition at line 143 of file udpsinkfecworker.h.
Referenced by handleInputMessages().
|
private |
Definition at line 145 of file udpsinkfecworker.h.
Referenced by handleInputMessages().
|
private |
Definition at line 144 of file udpsinkfecworker.h.
Referenced by handleInputMessages().
|
private |
Definition at line 139 of file udpsinkfecworker.h.
Referenced by run(), startWork(), and stopWork().
|
private |
Definition at line 138 of file udpsinkfecworker.h.
Referenced by run(), and startWork().
|
private |
Definition at line 137 of file udpsinkfecworker.h.
Referenced by startWork().
|
private |
Definition at line 142 of file udpsinkfecworker.h.
Referenced by encodeAndTransmit(), startWork(), and stopWork().