[AFV] Ref T739, context function to unregister per identifier

This commit is contained in:
Klaus Basan
2019-10-29 23:58:57 +01:00
committed by Mat Sutcliffe
parent 134c805990
commit 8a89b8f261
5 changed files with 19 additions and 4 deletions

View File

@@ -88,14 +88,17 @@ namespace BlackCore
public slots:
// ------------- DBus ---------------
//! All registered devices
virtual BlackMisc::Audio::CAudioDeviceInfoList getRegisteredDevices() const = 0;
//! Register a device on a machine (for core/GUI it will return all known devices on all machines)
virtual void registerDevices(const BlackMisc::Audio::CAudioDeviceInfoList &devices) = 0;
//! Unregister devices
virtual void unRegisterDevices(const BlackMisc::Audio::CAudioDeviceInfoList &devices) = 0;
//! All registered devices
virtual BlackMisc::Audio::CAudioDeviceInfoList getRegisteredDevices() const = 0;
//! Remove all devices for identifer (i.e. "a machine")
virtual void unRegisterDevicesFor(const BlackMisc::CIdentifier &identifier) = 0;
// ------------- DBus ---------------

View File

@@ -48,6 +48,11 @@ namespace BlackCore
m_registeredDevices.unRegisterDevices(devices);
}
void CContextAudio::unRegisterDevicesFor(const CIdentifier &identifier)
{
m_registeredDevices.unRegisterDevices(identifier);
}
CAudioDeviceInfoList CContextAudio::getRegisteredDevices() const
{
return m_registeredDevices;

View File

@@ -44,9 +44,10 @@ namespace BlackCore
// Interface implementations for DBus
//! \publicsection
//! @{
virtual BlackMisc::Audio::CAudioDeviceInfoList getRegisteredDevices() const override;
virtual void registerDevices(const BlackMisc::Audio::CAudioDeviceInfoList &devices) override;
virtual void unRegisterDevices(const BlackMisc::Audio::CAudioDeviceInfoList &devices) override;
virtual BlackMisc::Audio::CAudioDeviceInfoList getRegisteredDevices() const override;
virtual void unRegisterDevicesFor(const BlackMisc::CIdentifier &identifier) override;
//! @}
protected:

View File

@@ -54,6 +54,11 @@ namespace BlackCore
m_dBusInterface->callDBus(QLatin1String("unRegisterDevices"));
}
void CContextAudioProxy::unRegisterDevicesFor(const CIdentifier &identifier)
{
m_dBusInterface->callDBus(QLatin1String("unRegisterDevicesFor"), identifier);
}
CAudioDeviceInfoList CContextAudioProxy::getRegisteredDevices() const
{
return m_dBusInterface->callDBusRet<BlackMisc::Audio::CAudioDeviceInfoList>(QLatin1String("getRegisteredDevices"));

View File

@@ -62,9 +62,10 @@ namespace BlackCore
//! \publicsection
//! @{
//! Register a device on a machine (for core/GUI it will return all known devices on all machines)
virtual BlackMisc::Audio::CAudioDeviceInfoList getRegisteredDevices() const override;
virtual void registerDevices(const BlackMisc::Audio::CAudioDeviceInfoList &devices) override;
virtual void unRegisterDevices(const BlackMisc::Audio::CAudioDeviceInfoList &devices) override;
virtual BlackMisc::Audio::CAudioDeviceInfoList getRegisteredDevices() const override;
virtual void unRegisterDevicesFor(const BlackMisc::CIdentifier &identifier) override;
//! @}
private: