diff --git a/plugins/samplesink/CMakeLists.txt b/plugins/samplesink/CMakeLists.txt
index 2115d24c1..211ecb4c1 100644
--- a/plugins/samplesink/CMakeLists.txt
+++ b/plugins/samplesink/CMakeLists.txt
@@ -10,7 +10,7 @@ endif(LIBUSB_FOUND AND LIBBLADERF_FOUND)
#find_package(LibHACKRF)
#if(LIBUSB_FOUND AND LIBHACKRF_FOUND)
# add_subdirectory(hackrfoutput)
-3endif(LIBUSB_FOUND AND LIBHACKRF_FOUND)
+#endif(LIBUSB_FOUND AND LIBHACKRF_FOUND)
if (BUILD_DEBIAN)
add_subdirectory(bladerfoutput)
diff --git a/plugins/samplesource/hackrfinput/hackrfinputthread.cpp b/plugins/samplesource/hackrfinput/hackrfinputthread.cpp
index 7a4ed7043..c8c313644 100644
--- a/plugins/samplesource/hackrfinput/hackrfinputthread.cpp
+++ b/plugins/samplesource/hackrfinput/hackrfinputthread.cpp
@@ -14,14 +14,12 @@
// along with this program. If not, see . //
///////////////////////////////////////////////////////////////////////////////////
-#include "../hackrfinput/hackrfinputthread.h"
+#include "hackrfinputthread.h"
#include
#include
-#include "../../../sdrbase/dsp/samplesinkfifo.h"
-
-HackRFInputThread *HackRFInputThread::m_this = 0;
+#include "dsp/samplesinkfifo.h"
HackRFInputThread::HackRFInputThread(hackrf_device* dev, SampleSinkFifo* sampleFifo, QObject* parent) :
QThread(parent),
@@ -33,13 +31,11 @@ HackRFInputThread::HackRFInputThread(hackrf_device* dev, SampleSinkFifo* sampleF
m_log2Decim(0),
m_fcPos(0)
{
- m_this = this;
}
HackRFInputThread::~HackRFInputThread()
{
stopWork();
- m_this = 0;
}
void HackRFInputThread::startWork()
@@ -82,7 +78,7 @@ void HackRFInputThread::run()
//m_running = true;
m_startWaiter.wakeAll();
- rc = (hackrf_error) hackrf_start_rx(m_dev, rx_callback, NULL);
+ rc = (hackrf_error) hackrf_start_rx(m_dev, rx_callback, this);
if (rc != HACKRF_SUCCESS)
{
@@ -207,7 +203,8 @@ void HackRFInputThread::callback(const qint8* buf, qint32 len)
int HackRFInputThread::rx_callback(hackrf_transfer* transfer)
{
+ HackRFInputThread *thread = (HackRFInputThread *) transfer->rx_ctx;
qint32 bytes_to_write = transfer->valid_length;
- m_this->callback((qint8 *) transfer->buffer, bytes_to_write);
+ thread->callback((qint8 *) transfer->buffer, bytes_to_write);
return 0;
}
diff --git a/plugins/samplesource/hackrfinput/hackrfinputthread.h b/plugins/samplesource/hackrfinput/hackrfinputthread.h
index bad9a453c..5ef0fb32a 100644
--- a/plugins/samplesource/hackrfinput/hackrfinputthread.h
+++ b/plugins/samplesource/hackrfinput/hackrfinputthread.h
@@ -53,7 +53,6 @@ private:
int m_samplerate;
unsigned int m_log2Decim;
int m_fcPos;
- static HackRFInputThread *m_this;
Decimators m_decimators;