summaryrefslogtreecommitdiffstats
path: root/src/multimedia/platform
diff options
context:
space:
mode:
Diffstat (limited to 'src/multimedia/platform')
-rw-r--r--src/multimedia/platform/qplatformmediadevices.cpp23
-rw-r--r--src/multimedia/platform/qplatformmediadevices_p.h29
-rw-r--r--src/multimedia/platform/qplatformvideodevices.cpp2
3 files changed, 11 insertions, 43 deletions
diff --git a/src/multimedia/platform/qplatformmediadevices.cpp b/src/multimedia/platform/qplatformmediadevices.cpp
index 95cf3b7a0..09c26a670 100644
--- a/src/multimedia/platform/qplatformmediadevices.cpp
+++ b/src/multimedia/platform/qplatformmediadevices.cpp
@@ -132,27 +132,8 @@ QPlatformAudioSink *QPlatformMediaDevices::audioOutputDevice(const QAudioFormat
return p;
}
-void QPlatformMediaDevices::audioInputsChanged() const
-{
- const auto devices = allMediaDevices();
- for (auto m : devices)
- emit m->audioInputsChanged();
-}
-
-void QPlatformMediaDevices::audioOutputsChanged() const
-{
- const auto devices = allMediaDevices();
- for (auto m : devices)
- emit m->audioOutputsChanged();
-}
-
-void QPlatformMediaDevices::videoInputsChanged() const
-{
- const auto devices = allMediaDevices();
- for (auto m : devices)
- emit m->videoInputsChanged();
-}
-
void QPlatformMediaDevices::prepareAudio() { }
QT_END_NAMESPACE
+
+#include "moc_qplatformmediadevices_p.cpp"
diff --git a/src/multimedia/platform/qplatformmediadevices_p.h b/src/multimedia/platform/qplatformmediadevices_p.h
index 9b8d0d5e7..d475495d1 100644
--- a/src/multimedia/platform/qplatformmediadevices_p.h
+++ b/src/multimedia/platform/qplatformmediadevices_p.h
@@ -17,10 +17,10 @@
#include <private/qtmultimediaglobal_p.h>
#include <qlist.h>
+#include <qobject.h>
QT_BEGIN_NAMESPACE
-class QObject;
class QMediaDevices;
class QAudioDevice;
class QCameraDevice;
@@ -29,11 +29,12 @@ class QPlatformAudioSink;
class QAudioFormat;
class QPlatformMediaIntegration;
-class Q_MULTIMEDIA_EXPORT QPlatformMediaDevices
+class Q_MULTIMEDIA_EXPORT QPlatformMediaDevices : public QObject
{
+ Q_OBJECT
public:
QPlatformMediaDevices();
- virtual ~QPlatformMediaDevices();
+ ~QPlatformMediaDevices() override;
static void setDevices(QPlatformMediaDevices *);
static QPlatformMediaDevices *instance();
@@ -49,26 +50,12 @@ public:
QPlatformAudioSink *audioOutputDevice(const QAudioFormat &format,
const QAudioDevice &deviceInfo, QObject *parent);
- void addMediaDevices(QMediaDevices *m)
- {
- m_devices.append(m);
- }
- void removeMediaDevices(QMediaDevices *m)
- {
- m_devices.removeAll(m);
- }
-
- QList<QMediaDevices *> allMediaDevices() const { return m_devices; }
-
- void videoInputsChanged() const;
-
virtual void prepareAudio();
-protected:
- void audioInputsChanged() const;
- void audioOutputsChanged() const;
-
- QList<QMediaDevices *> m_devices;
+Q_SIGNALS:
+ void audioInputsChanged();
+ void audioOutputsChanged();
+ void videoInputsChanged();
};
QT_END_NAMESPACE
diff --git a/src/multimedia/platform/qplatformvideodevices.cpp b/src/multimedia/platform/qplatformvideodevices.cpp
index 9d2fc3c31..e556bb899 100644
--- a/src/multimedia/platform/qplatformvideodevices.cpp
+++ b/src/multimedia/platform/qplatformvideodevices.cpp
@@ -13,7 +13,7 @@ QPlatformVideoDevices::~QPlatformVideoDevices()
void QPlatformVideoDevices::videoInputsChanged()
{
- QPlatformMediaDevices::instance()->videoInputsChanged();
+ emit QPlatformMediaDevices::instance()->videoInputsChanged();
}
QT_END_NAMESPACE