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 <bladerf2inputthread.h>
Inherits QThread.
Classes | |
struct | Channel |
Public Member Functions | |
BladeRF2InputThread (struct bladerf *dev, unsigned int nbRxChannels, QObject *parent=NULL) | |
~BladeRF2InputThread () | |
void | startWork () |
void | stopWork () |
bool | isRunning () const |
unsigned int | getNbChannels () const |
void | setLog2Decimation (unsigned int channel, unsigned int log2_decim) |
unsigned int | getLog2Decimation (unsigned int channel) const |
void | setFcPos (unsigned int channel, int fcPos) |
int | getFcPos (unsigned int channel) const |
void | setFifo (unsigned int channel, SampleSinkFifo *sampleFifo) |
SampleSinkFifo * | getFifo (unsigned int channel) |
Private Member Functions | |
void | run () |
unsigned int | getNbFifos () |
void | callbackSI (const qint16 *buf, qint32 len, unsigned int channel=0) |
void | callbackMI (const qint16 *buf, qint32 samplesPerChannel) |
Private Attributes | |
QMutex | m_startWaitMutex |
QWaitCondition | m_startWaiter |
bool | m_running |
struct bladerf * | m_dev |
Channel * | m_channels |
Array of channels dynamically allocated for the given number of Rx channels. More... | |
qint16 * | m_buf |
Full buffer for SISO or MIMO operation. More... | |
unsigned int | m_nbChannels |
Definition at line 37 of file bladerf2inputthread.h.
BladeRF2InputThread::BladeRF2InputThread | ( | struct bladerf * | dev, |
unsigned int | nbRxChannels, | ||
QObject * | parent = NULL |
||
) |
Definition at line 22 of file bladerf2inputthread.cpp.
References DeviceBladeRF2::blockSize, i, m_buf, m_channels, and BladeRF2InputThread::Channel::m_convertBuffer.
BladeRF2InputThread::~BladeRF2InputThread | ( | ) |
Definition at line 38 of file bladerf2inputthread.cpp.
References m_buf, m_channels, m_running, and stopWork().
|
private |
Definition at line 188 of file bladerf2inputthread.cpp.
References callbackSI(), m_channels, and m_nbChannels.
Referenced by run().
|
private |
Definition at line 207 of file bladerf2inputthread.cpp.
References Decimators< StorageType, T, SdrBits, InputBits >::decimate1(), Decimators< StorageType, T, SdrBits, InputBits >::decimate16_cen(), Decimators< StorageType, T, SdrBits, InputBits >::decimate16_inf(), Decimators< StorageType, T, SdrBits, InputBits >::decimate16_sup(), Decimators< StorageType, T, SdrBits, InputBits >::decimate2_cen(), Decimators< StorageType, T, SdrBits, InputBits >::decimate2_inf(), Decimators< StorageType, T, SdrBits, InputBits >::decimate2_sup(), Decimators< StorageType, T, SdrBits, InputBits >::decimate32_cen(), Decimators< StorageType, T, SdrBits, InputBits >::decimate32_inf(), Decimators< StorageType, T, SdrBits, InputBits >::decimate32_sup(), Decimators< StorageType, T, SdrBits, InputBits >::decimate4_cen(), Decimators< StorageType, T, SdrBits, InputBits >::decimate4_inf(), Decimators< StorageType, T, SdrBits, InputBits >::decimate4_sup(), Decimators< StorageType, T, SdrBits, InputBits >::decimate64_cen(), Decimators< StorageType, T, SdrBits, InputBits >::decimate64_inf(), Decimators< StorageType, T, SdrBits, InputBits >::decimate64_sup(), Decimators< StorageType, T, SdrBits, InputBits >::decimate8_cen(), Decimators< StorageType, T, SdrBits, InputBits >::decimate8_inf(), Decimators< StorageType, T, SdrBits, InputBits >::decimate8_sup(), m_channels, BladeRF2InputThread::Channel::m_convertBuffer, BladeRF2InputThread::Channel::m_decimators, BladeRF2InputThread::Channel::m_sampleFifo, and SampleSinkFifo::write().
Referenced by callbackMI(), and run().
int BladeRF2InputThread::getFcPos | ( | unsigned int | channel | ) | const |
Definition at line 163 of file bladerf2inputthread.cpp.
References m_channels, BladeRF2InputThread::Channel::m_fcPos, and m_nbChannels.
Referenced by getNbChannels(), BladeRF2Input::start(), and BladeRF2Input::stop().
SampleSinkFifo * BladeRF2InputThread::getFifo | ( | unsigned int | channel | ) |
Definition at line 179 of file bladerf2inputthread.cpp.
References m_channels, m_nbChannels, and BladeRF2InputThread::Channel::m_sampleFifo.
Referenced by getNbChannels(), BladeRF2Input::start(), and BladeRF2Input::stop().
unsigned int BladeRF2InputThread::getLog2Decimation | ( | unsigned int | channel | ) | const |
Definition at line 147 of file bladerf2inputthread.cpp.
References m_channels, BladeRF2InputThread::Channel::m_log2Decim, and m_nbChannels.
Referenced by getNbChannels(), BladeRF2Input::start(), and BladeRF2Input::stop().
|
inline |
Definition at line 47 of file bladerf2inputthread.h.
References getFcPos(), getFifo(), getLog2Decimation(), m_nbChannels, setFcPos(), setFifo(), and setLog2Decimation().
Referenced by BladeRF2Input::start(), and BladeRF2Input::stop().
|
private |
Definition at line 126 of file bladerf2inputthread.cpp.
References i, m_channels, and m_nbChannels.
Referenced by run().
|
inline |
|
private |
Definition at line 68 of file bladerf2inputthread.cpp.
References DeviceBladeRF2::blockSize, callbackMI(), callbackSI(), getNbFifos(), m_buf, m_dev, m_nbChannels, m_running, and m_startWaiter.
void BladeRF2InputThread::setFcPos | ( | unsigned int | channel, |
int | fcPos | ||
) |
Definition at line 156 of file bladerf2inputthread.cpp.
References m_channels, BladeRF2InputThread::Channel::m_fcPos, and m_nbChannels.
Referenced by BladeRF2Input::applySettings(), getNbChannels(), BladeRF2Input::handleMessage(), BladeRF2Input::start(), and BladeRF2Input::stop().
void BladeRF2InputThread::setFifo | ( | unsigned int | channel, |
SampleSinkFifo * | sampleFifo | ||
) |
Definition at line 172 of file bladerf2inputthread.cpp.
References m_channels, m_nbChannels, and BladeRF2InputThread::Channel::m_sampleFifo.
Referenced by getNbChannels(), BladeRF2Input::start(), and BladeRF2Input::stop().
void BladeRF2InputThread::setLog2Decimation | ( | unsigned int | channel, |
unsigned int | log2_decim | ||
) |
Definition at line 140 of file bladerf2inputthread.cpp.
References m_channels, BladeRF2InputThread::Channel::m_log2Decim, and m_nbChannels.
Referenced by BladeRF2Input::applySettings(), getNbChannels(), BladeRF2Input::start(), and BladeRF2Input::stop().
void BladeRF2InputThread::startWork | ( | ) |
Definition at line 50 of file bladerf2inputthread.cpp.
References m_running, m_startWaiter, and m_startWaitMutex.
Referenced by BladeRF2Input::start(), and BladeRF2Input::stop().
void BladeRF2InputThread::stopWork | ( | ) |
Definition at line 62 of file bladerf2inputthread.cpp.
References m_running.
Referenced by BladeRF2Input::start(), BladeRF2Input::stop(), and ~BladeRF2InputThread().
|
private |
Full buffer for SISO or MIMO operation.
Definition at line 80 of file bladerf2inputthread.h.
Referenced by BladeRF2InputThread(), run(), and ~BladeRF2InputThread().
|
private |
Array of channels dynamically allocated for the given number of Rx channels.
Definition at line 79 of file bladerf2inputthread.h.
Referenced by BladeRF2InputThread(), callbackMI(), callbackSI(), getFcPos(), getFifo(), getLog2Decimation(), getNbFifos(), setFcPos(), setFifo(), setLog2Decimation(), and ~BladeRF2InputThread().
|
private |
Definition at line 77 of file bladerf2inputthread.h.
Referenced by run().
|
private |
Definition at line 81 of file bladerf2inputthread.h.
Referenced by callbackMI(), getFcPos(), getFifo(), getLog2Decimation(), getNbChannels(), getNbFifos(), run(), setFcPos(), setFifo(), and setLog2Decimation().
|
private |
Definition at line 76 of file bladerf2inputthread.h.
Referenced by isRunning(), run(), startWork(), stopWork(), and ~BladeRF2InputThread().
|
private |
Definition at line 75 of file bladerf2inputthread.h.
Referenced by run(), and startWork().
|
private |
Definition at line 74 of file bladerf2inputthread.h.
Referenced by startWork().