From 171ba7674eba155595e5d2ee2a947a5356b4b1ae Mon Sep 17 00:00:00 2001 From: f4exb Date: Mon, 2 Jan 2017 23:30:50 +0100 Subject: [PATCH] Tx support: fixed buddy handling --- sdrbase/device/devicesinkapi.cpp | 2 ++ sdrbase/device/devicesinkapi.h | 1 + sdrbase/device/devicesourceapi.cpp | 1 + sdrbase/device/devicesourceapi.h | 1 + 4 files changed, 5 insertions(+) diff --git a/sdrbase/device/devicesinkapi.cpp b/sdrbase/device/devicesinkapi.cpp index 4d1e1e35c..36da095e3 100644 --- a/sdrbase/device/devicesinkapi.cpp +++ b/sdrbase/device/devicesinkapi.cpp @@ -389,6 +389,7 @@ void DeviceSinkAPI::addSourceBuddy(DeviceSourceAPI* buddy) std::vector::iterator it = m_sourceBuddies.begin(); m_sourceBuddies.push_back(buddy); + buddy->m_sinkBuddies.push_back(this); qDebug("DeviceSinkAPI::addSourceBuddy: added buddy %s(%s) to the list [%lx] <-> [%lx]", qPrintable(buddy->getHardwareId()), qPrintable(buddy->getSampleSourceSerial()), @@ -401,6 +402,7 @@ void DeviceSinkAPI::addSinkBuddy(DeviceSinkAPI* buddy) std::vector::iterator it = m_sinkBuddies.begin(); m_sinkBuddies.push_back(buddy); + buddy->m_sinkBuddies.push_back(this); qDebug("DeviceSinkAPI::addSinkBuddy: added buddy %s(%s) to the list [%lx] <-> [%lx]", qPrintable(buddy->getHardwareId()), qPrintable(buddy->getSampleSinkSerial()), diff --git a/sdrbase/device/devicesinkapi.h b/sdrbase/device/devicesinkapi.h index bfc1ea8f0..2fd090856 100644 --- a/sdrbase/device/devicesinkapi.h +++ b/sdrbase/device/devicesinkapi.h @@ -148,6 +148,7 @@ protected: void *m_buddySharedPtr; friend class MainWindow; + friend class DeviceSourceAPI; }; diff --git a/sdrbase/device/devicesourceapi.cpp b/sdrbase/device/devicesourceapi.cpp index 0aa35a2f8..175b88067 100644 --- a/sdrbase/device/devicesourceapi.cpp +++ b/sdrbase/device/devicesourceapi.cpp @@ -399,6 +399,7 @@ void DeviceSourceAPI::addSinkBuddy(DeviceSinkAPI* buddy) std::vector::iterator it = m_sinkBuddies.begin(); m_sinkBuddies.push_back(buddy); + buddy->m_sourceBuddies.push_back(this); qDebug("DeviceSourceAPI::addSinkBuddy: added buddy %s(%s) [%lx] <-> [%lx]", qPrintable(buddy->getHardwareId()), qPrintable(buddy->getSampleSinkSerial()), diff --git a/sdrbase/device/devicesourceapi.h b/sdrbase/device/devicesourceapi.h index 59230c9a1..2d80c226e 100644 --- a/sdrbase/device/devicesourceapi.h +++ b/sdrbase/device/devicesourceapi.h @@ -148,6 +148,7 @@ protected: void *m_buddySharedPtr; friend class MainWindow; + friend class DeviceSinkAPI; };