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 <xtrxoutputthread.h>
Classes | |
struct | Channel |
Public Member Functions | |
XTRXOutputThread (struct xtrx_dev *dev, unsigned int nbChannels, unsigned int uniqueChannelIndex=0, QObject *parent=0) | |
~XTRXOutputThread () | |
virtual void | startWork () |
virtual void | stopWork () |
virtual bool | isRunning () |
unsigned int | getNbChannels () const |
void | setLog2Interpolation (unsigned int channel, unsigned int log2_interp) |
unsigned int | getLog2Interpolation (unsigned int channel) const |
void | setFifo (unsigned int channel, SampleSourceFifo *sampleFifo) |
SampleSourceFifo * | getFifo (unsigned int channel) |
Private Member Functions | |
void | run () |
unsigned int | getNbFifos () |
void | callback (qint16 *buf, qint32 len) |
void | callbackSO (qint16 *buf, qint32 len) |
void | callbackMO (qint16 *buf0, qint16 *buf1, qint32 len) |
Private Attributes | |
QMutex | m_startWaitMutex |
QWaitCondition | m_startWaiter |
bool | m_running |
struct xtrx_dev * | m_dev |
Channel * | m_channels |
Array of channels dynamically allocated for the given number of Rx channels. More... | |
unsigned int | m_nbChannels |
unsigned int | m_uniqueChannelIndex |
Definition at line 33 of file xtrxoutputthread.h.
XTRXOutputThread::XTRXOutputThread | ( | struct xtrx_dev * | dev, |
unsigned int | nbChannels, | ||
unsigned int | uniqueChannelIndex = 0 , |
||
QObject * | parent = 0 |
||
) |
Definition at line 27 of file xtrxoutputthread.cpp.
References m_channels.
XTRXOutputThread::~XTRXOutputThread | ( | ) |
Definition at line 38 of file xtrxoutputthread.cpp.
References m_channels, m_running, and stopWork().
|
private |
Definition at line 225 of file xtrxoutputthread.cpp.
References SampleSourceFifo::getRWBalance(), Interpolators< T, SdrBits, OutputBits >::interpolate1(), Interpolators< T, SdrBits, OutputBits >::interpolate16_cen(), Interpolators< T, SdrBits, OutputBits >::interpolate2_cen(), Interpolators< T, SdrBits, OutputBits >::interpolate32_cen(), Interpolators< T, SdrBits, OutputBits >::interpolate4_cen(), Interpolators< T, SdrBits, OutputBits >::interpolate64_cen(), Interpolators< T, SdrBits, OutputBits >::interpolate8_cen(), m_channels, XTRXOutputThread::Channel::m_interpolators, XTRXOutputThread::Channel::m_sampleFifo, m_uniqueChannelIndex, and SampleSourceFifo::readAdvance().
|
private |
Definition at line 331 of file xtrxoutputthread.cpp.
References callbackSO(), and m_uniqueChannelIndex.
|
private |
Definition at line 278 of file xtrxoutputthread.cpp.
References SampleSourceFifo::getRWBalance(), Interpolators< T, SdrBits, OutputBits >::interpolate1(), Interpolators< T, SdrBits, OutputBits >::interpolate16_cen(), Interpolators< T, SdrBits, OutputBits >::interpolate2_cen(), Interpolators< T, SdrBits, OutputBits >::interpolate32_cen(), Interpolators< T, SdrBits, OutputBits >::interpolate4_cen(), Interpolators< T, SdrBits, OutputBits >::interpolate64_cen(), Interpolators< T, SdrBits, OutputBits >::interpolate8_cen(), m_channels, XTRXOutputThread::Channel::m_interpolators, XTRXOutputThread::Channel::m_sampleFifo, m_uniqueChannelIndex, and SampleSourceFifo::readAdvance().
Referenced by callbackMO(), and run().
SampleSourceFifo * XTRXOutputThread::getFifo | ( | unsigned int | channel | ) |
Definition at line 104 of file xtrxoutputthread.cpp.
References m_channels, and XTRXOutputThread::Channel::m_sampleFifo.
Referenced by getNbChannels(), and XTRXOutput::start().
unsigned int XTRXOutputThread::getLog2Interpolation | ( | unsigned int | channel | ) | const |
Definition at line 88 of file xtrxoutputthread.cpp.
References m_channels, and XTRXOutputThread::Channel::m_log2Interp.
Referenced by getNbChannels(), and XTRXOutput::start().
|
inline |
Definition at line 44 of file xtrxoutputthread.h.
References getFifo(), getLog2Interpolation(), m_nbChannels, setFifo(), and setLog2Interpolation().
Referenced by XTRXOutput::start(), and XTRXOutput::stop().
|
private |
Definition at line 67 of file xtrxoutputthread.cpp.
References i, and m_channels.
Referenced by run().
|
inlinevirtual |
Implements DeviceXTRXShared::ThreadInterface.
Definition at line 43 of file xtrxoutputthread.h.
References m_running.
Referenced by XTRXOutput::applySettings().
|
private |
Definition at line 113 of file xtrxoutputthread.cpp.
References DeviceXTRX::blockSize, callbackSO(), getNbFifos(), i, m_dev, m_nbChannels, m_running, m_startWaiter, and m_uniqueChannelIndex.
void XTRXOutputThread::setFifo | ( | unsigned int | channel, |
SampleSourceFifo * | sampleFifo | ||
) |
Definition at line 97 of file xtrxoutputthread.cpp.
References m_channels, and XTRXOutputThread::Channel::m_sampleFifo.
Referenced by getNbChannels(), XTRXOutput::start(), and XTRXOutput::stop().
void XTRXOutputThread::setLog2Interpolation | ( | unsigned int | channel, |
unsigned int | log2_interp | ||
) |
Definition at line 81 of file xtrxoutputthread.cpp.
References m_channels, and XTRXOutputThread::Channel::m_log2Interp.
Referenced by XTRXOutput::applySettings(), getNbChannels(), XTRXOutput::start(), and XTRXOutput::stop().
|
virtual |
Implements DeviceXTRXShared::ThreadInterface.
Definition at line 49 of file xtrxoutputthread.cpp.
References m_running, m_startWaiter, and m_startWaitMutex.
Referenced by XTRXOutput::applySettings(), XTRXOutput::start(), and XTRXOutput::stop().
|
virtual |
Implements DeviceXTRXShared::ThreadInterface.
Definition at line 61 of file xtrxoutputthread.cpp.
References m_running.
Referenced by XTRXOutput::applySettings(), XTRXOutput::start(), XTRXOutput::stop(), and ~XTRXOutputThread().
|
private |
Array of channels dynamically allocated for the given number of Rx channels.
Definition at line 71 of file xtrxoutputthread.h.
Referenced by callback(), callbackSO(), getFifo(), getLog2Interpolation(), getNbFifos(), setFifo(), setLog2Interpolation(), XTRXOutputThread(), and ~XTRXOutputThread().
|
private |
Definition at line 69 of file xtrxoutputthread.h.
Referenced by run().
|
private |
Definition at line 72 of file xtrxoutputthread.h.
Referenced by getNbChannels(), and run().
|
private |
Definition at line 68 of file xtrxoutputthread.h.
Referenced by isRunning(), run(), startWork(), stopWork(), and ~XTRXOutputThread().
|
private |
Definition at line 67 of file xtrxoutputthread.h.
Referenced by run(), and startWork().
|
private |
Definition at line 66 of file xtrxoutputthread.h.
Referenced by startWork().
|
private |
Definition at line 73 of file xtrxoutputthread.h.
Referenced by callback(), callbackMO(), callbackSO(), and run().