summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@nokia.com>2012-05-27 12:20:55 +0200
committerQt by Nokia <qt-info@nokia.com>2012-06-05 12:44:29 +0200
commit487010e5797da8634cdec44e94b5476695c1bd15 (patch)
tree352eacc906e11960e376b5ac48435070159d5369
parentaae2e2104b78117955305ff7d3b06741f4aee69e (diff)
Remove the last remainders of the old plugin system
Port the last two currently unused plugins (v4l and wmf) over to the new plugin format. Fix documentation that still mentioned Q_EXPORT_PLUGIN. Change-Id: I18200dd792e8973687e92180fc41d11395b35132 Reviewed-by: Jonas Rabbe <jonas.rabbe@gmail.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
-rw-r--r--src/multimedia/audio/qaudiosystemplugin.cpp14
-rw-r--r--src/plugins/v4l/v4l.json3
-rw-r--r--src/plugins/v4l/v4lserviceplugin.cpp10
-rw-r--r--src/plugins/v4l/v4lserviceplugin.h2
-rw-r--r--src/plugins/wmf/wmf.json3
-rw-r--r--src/plugins/wmf/wmfserviceplugin.cpp11
-rw-r--r--src/plugins/wmf/wmfserviceplugin.h2
7 files changed, 18 insertions, 27 deletions
diff --git a/src/multimedia/audio/qaudiosystemplugin.cpp b/src/multimedia/audio/qaudiosystemplugin.cpp
index a6457f031..0fcfd5561 100644
--- a/src/multimedia/audio/qaudiosystemplugin.cpp
+++ b/src/multimedia/audio/qaudiosystemplugin.cpp
@@ -54,9 +54,17 @@ QT_BEGIN_NAMESPACE
\internal
Writing a audio plugin is achieved by subclassing this base class,
- reimplementing the pure virtual functions keys(), availableDevices(),
+ reimplementing the pure virtual functions availableDevices(),
createInput(), createOutput() and createDeviceInfo() then exporting
- the class with the Q_EXPORT_PLUGIN2() macro.
+ the class with the Q_PLUGIN_METADATA() macro.
+
+ The json file containing the meta data should contain a list of keys
+ matching the plugin. Add "default" to your list of keys available
+ to override the default audio device to be provided by your plugin.
+
+ \code
+ { "Keys": [ "default" ] }
+ \endcode
Unit tests are available to help in debugging new plugins.
@@ -69,8 +77,6 @@ QT_BEGIN_NAMESPACE
creating a plugin subclassing QAudioSystemPlugin, QAbstractAudioDeviceInfo,
QAbstractAudioOutput and QAbstractAudioInput.
- Add "default" to your list of keys() available to override the default
- audio device to be provided by your plugin.
-audio-backend configure option will force compiling in of the builtin backend
into the QtMultimedia library at compile time. This is automatic by default
diff --git a/src/plugins/v4l/v4l.json b/src/plugins/v4l/v4l.json
new file mode 100644
index 000000000..f87f329c1
--- /dev/null
+++ b/src/plugins/v4l/v4l.json
@@ -0,0 +1,3 @@
+{
+ "Keys": ["org.qt-project.qt.radio"]
+}
diff --git a/src/plugins/v4l/v4lserviceplugin.cpp b/src/plugins/v4l/v4lserviceplugin.cpp
index a506eafff..49adbd942 100644
--- a/src/plugins/v4l/v4lserviceplugin.cpp
+++ b/src/plugins/v4l/v4lserviceplugin.cpp
@@ -50,12 +50,6 @@
#include <qmediaserviceprovider.h>
-QStringList V4LServicePlugin::keys() const
-{
- return QStringList() <<
- QLatin1String(Q_MEDIASERVICE_RADIO);
-}
-
QMediaService* V4LServicePlugin::create(QString const& key)
{
if (key == QLatin1String(Q_MEDIASERVICE_RADIO))
@@ -78,7 +72,3 @@ QString V4LServicePlugin::deviceDescription(const QByteArray &service, const QBy
{
return QString();
}
-
-
-Q_EXPORT_PLUGIN2(qtmedia_v4lengine, V4LServicePlugin);
-
diff --git a/src/plugins/v4l/v4lserviceplugin.h b/src/plugins/v4l/v4lserviceplugin.h
index 7d83fc376..190812f30 100644
--- a/src/plugins/v4l/v4lserviceplugin.h
+++ b/src/plugins/v4l/v4lserviceplugin.h
@@ -51,8 +51,8 @@ class V4LServicePlugin : public QMediaServiceProviderPlugin, public QMediaServic
{
Q_OBJECT
Q_INTERFACES(QMediaServiceSupportedDevicesInterface)
+ Q_PLUGIN_METADATA(IID "org.qt-project.qt.mediaserviceproviderfactory/5.0" FILE "v4l.json")
public:
- QStringList keys() const;
QMediaService* create(QString const& key);
void release(QMediaService *service);
diff --git a/src/plugins/wmf/wmf.json b/src/plugins/wmf/wmf.json
new file mode 100644
index 000000000..c4a27ea01
--- /dev/null
+++ b/src/plugins/wmf/wmf.json
@@ -0,0 +1,3 @@
+{
+ "Keys": ["org.qt-project.qt.mediaplayer"]
+}
diff --git a/src/plugins/wmf/wmfserviceplugin.cpp b/src/plugins/wmf/wmfserviceplugin.cpp
index 188651649..6876d28d0 100644
--- a/src/plugins/wmf/wmfserviceplugin.cpp
+++ b/src/plugins/wmf/wmfserviceplugin.cpp
@@ -49,15 +49,6 @@
#endif
#include <qmediaserviceprovider.h>
-QStringList WMFServicePlugin::keys() const
-{
- return QStringList()
-#ifdef QMEDIA_MEDIAFOUNDATION_PLAYER
- << QLatin1String(Q_MEDIASERVICE_MEDIAPLAYER)
-#endif
- ;
-}
-
QMediaService* WMFServicePlugin::create(QString const& key)
{
#ifdef QMEDIA_MEDIAFOUNDATION_PLAYER
@@ -93,5 +84,3 @@ QString WMFServicePlugin::deviceDescription(const QByteArray &service, const QBy
return QString();
}
-Q_EXPORT_PLUGIN2(qtmedia_wmfengine, WMFServicePlugin);
-
diff --git a/src/plugins/wmf/wmfserviceplugin.h b/src/plugins/wmf/wmfserviceplugin.h
index d9e1efa9a..e2672db1a 100644
--- a/src/plugins/wmf/wmfserviceplugin.h
+++ b/src/plugins/wmf/wmfserviceplugin.h
@@ -54,8 +54,8 @@ class WMFServicePlugin
Q_OBJECT
Q_INTERFACES(QMediaServiceSupportedDevicesInterface)
Q_INTERFACES(QMediaServiceFeaturesInterface)
+ Q_PLUGIN_METADATA(IID "org.qt-project.qt.mediaserviceproviderfactory/5.0" FILE "wmf.json")
public:
- QStringList keys() const;
QMediaService* create(QString const& key);
void release(QMediaService *service);