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 <limesdroutputthread.h>
Public Member Functions | |
LimeSDROutputThread (lms_stream_t *stream, SampleSourceFifo *sampleFifo, QObject *parent=0) | |
~LimeSDROutputThread () | |
virtual void | startWork () |
virtual void | stopWork () |
virtual void | setDeviceSampleRate (int sampleRate) |
virtual bool | isRunning () |
void | setLog2Interpolation (unsigned int log2_ioterp) |
Private Member Functions | |
void | run () |
void | callback (qint16 *buf, qint32 len) |
Private Attributes | |
QMutex | m_startWaitMutex |
QWaitCondition | m_startWaiter |
bool | m_running |
lms_stream_t * | m_stream |
qint16 | m_buf [2 *LIMESDROUTPUT_BLOCKSIZE] |
SampleSourceFifo * | m_sampleFifo |
unsigned int | m_log2Interp |
Interpolators< qint16, SDR_TX_SAMP_SZ, 12 > | m_interpolators |
Definition at line 33 of file limesdroutputthread.h.
LimeSDROutputThread::LimeSDROutputThread | ( | lms_stream_t * | stream, |
SampleSourceFifo * | sampleFifo, | ||
QObject * | parent = 0 |
||
) |
Definition at line 24 of file limesdroutputthread.cpp.
References LIMESDROUTPUT_BLOCKSIZE, and m_buf.
LimeSDROutputThread::~LimeSDROutputThread | ( | ) |
Definition at line 34 of file limesdroutputthread.cpp.
References stopWork().
|
private |
Definition at line 109 of file limesdroutputthread.cpp.
References 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_interpolators, m_log2Interp, m_sampleFifo, and SampleSourceFifo::readAdvance().
Referenced by run().
|
inlinevirtual |
Implements DeviceLimeSDRShared::ThreadInterface.
Definition at line 44 of file limesdroutputthread.h.
References m_running, and setLog2Interpolation().
Referenced by LimeSDROutput::applySettings().
|
private |
Definition at line 77 of file limesdroutputthread.cpp.
References callback(), LIMESDROUTPUT_BLOCKSIZE, m_buf, m_running, m_startWaiter, and m_stream.
|
inlinevirtual |
Implements DeviceLimeSDRShared::ThreadInterface.
Definition at line 43 of file limesdroutputthread.h.
void LimeSDROutputThread::setLog2Interpolation | ( | unsigned int | log2_ioterp | ) |
Definition at line 72 of file limesdroutputthread.cpp.
References m_log2Interp.
Referenced by LimeSDROutput::applySettings(), isRunning(), and LimeSDROutput::start().
|
virtual |
Implements DeviceLimeSDRShared::ThreadInterface.
Definition at line 39 of file limesdroutputthread.cpp.
References m_running, m_startWaiter, m_startWaitMutex, and m_stream.
Referenced by LimeSDROutput::applySettings(), and LimeSDROutput::start().
|
virtual |
Implements DeviceLimeSDRShared::ThreadInterface.
Definition at line 57 of file limesdroutputthread.cpp.
References m_running, and m_stream.
Referenced by LimeSDROutput::applySettings(), LimeSDROutput::stop(), and ~LimeSDROutputThread().
|
private |
Definition at line 53 of file limesdroutputthread.h.
Referenced by LimeSDROutputThread(), and run().
|
private |
Definition at line 58 of file limesdroutputthread.h.
Referenced by callback().
|
private |
Definition at line 56 of file limesdroutputthread.h.
Referenced by callback(), and setLog2Interpolation().
|
private |
Definition at line 50 of file limesdroutputthread.h.
Referenced by isRunning(), run(), startWork(), and stopWork().
|
private |
Definition at line 54 of file limesdroutputthread.h.
Referenced by callback().
|
private |
Definition at line 49 of file limesdroutputthread.h.
Referenced by run(), and startWork().
|
private |
Definition at line 48 of file limesdroutputthread.h.
Referenced by startWork().
|
private |
Definition at line 52 of file limesdroutputthread.h.
Referenced by run(), startWork(), and stopWork().