Updated plugins to use new plugin architecture
authorJonas Rabbe <jonas.rabbe@nokia.com>
Wed, 14 Mar 2012 03:02:32 +0000 (13:02 +1000)
committerQt by Nokia <qt-info@nokia.com>
Tue, 20 Mar 2012 22:39:45 +0000 (23:39 +0100)
commita8ba6e3c7f181e387eb53b122d58c433b5784319
tree8a090349fa2698f879085380e6daa625ad979bdf
parent61c09d1614c560de9514ac0fd3344bf0280fca33
Updated plugins to use new plugin architecture

Changed QMediaPluginLoader to use QFactoryLoader instead of QPluginLoader
and used metadata to get keys.
Removed QAudioPluginLoader and changed audio classes to use instead use
QMediaPluginLoader.
The plugins must include the Q_PLUGIN_METADATA macro, and no longer use
the Q_PLUGIN_EXPORT/Q_PLUGIN_EXPORT2 macros.
A json file has been added for each plugin which can contain metadata
which is available to the plugin loader before the plugin is actually
loaded, and is used to read the keys for the plugin, e.g. supported
services.
QFactoryInterface will be deprecated and has been removed from all
plugins.

Change-Id: I035b82f9c9c65717bebf704d560ea8f891df21da
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
61 files changed:
src/imports/audioengine/audioengine.cpp
src/imports/multimedia/multimedia.cpp
src/imports/multimedia/qdeclarativevideooutput.cpp
src/imports/multimedia/qdeclarativevideooutput_p.h
src/imports/multimedia/qsgvideonode_i420.cpp
src/imports/multimedia/qsgvideonode_i420.h
src/imports/multimedia/qsgvideonode_rgb.cpp
src/imports/multimedia/qsgvideonode_rgb.h
src/multimedia/audio/audio.pri
src/multimedia/audio/qaudiodevicefactory.cpp
src/multimedia/audio/qaudiopluginloader.cpp [deleted file]
src/multimedia/audio/qaudiosystemplugin.h
src/multimedia/gsttools_headers/qgstbufferpoolinterface_p.h
src/multimedia/multimedia.pro
src/multimedia/playback/qmediaplaylistioplugin_p.h
src/multimedia/qmediapluginloader.cpp
src/multimedia/qmediapluginloader_p.h
src/multimedia/qmediaserviceproviderplugin.h
src/multimedia/qtmultimediaquicktools_headers/qsgvideonode_p.h
src/plugins/audiocapture/audiocapture.json [new file with mode: 0644]
src/plugins/audiocapture/audiocapture.pro
src/plugins/audiocapture/audiocaptureserviceplugin.cpp
src/plugins/audiocapture/audiocaptureserviceplugin.h
src/plugins/directshow/directshow.json [new file with mode: 0644]
src/plugins/directshow/directshow.pro
src/plugins/directshow/dsserviceplugin.cpp
src/plugins/directshow/dsserviceplugin.h
src/plugins/gstreamer/gstreamer.json [new file with mode: 0644]
src/plugins/gstreamer/gstreamer.pro
src/plugins/gstreamer/qgstreamerserviceplugin.cpp
src/plugins/gstreamer/qgstreamerserviceplugin.h
src/plugins/m3u/m3u.json [new file with mode: 0644]
src/plugins/m3u/m3u.pro
src/plugins/m3u/qm3uhandler.cpp
src/plugins/m3u/qm3uhandler.h
src/plugins/pulseaudio/pulseaudio.json [new file with mode: 0644]
src/plugins/pulseaudio/pulseaudio.pro
src/plugins/pulseaudio/qpulseaudioplugin.cpp
src/plugins/pulseaudio/qpulseaudioplugin.h
src/plugins/qt7/qt7.json [new file with mode: 0644]
src/plugins/qt7/qt7.pro
src/plugins/qt7/qt7serviceplugin.h
src/plugins/qt7/qt7serviceplugin.mm
tests/auto/unit/qmediaplaylist/tst_qmediaplaylist.cpp
tests/auto/unit/qmediapluginloader/tst_qmediapluginloader.cpp
tests/auto/unit/qmediaserviceprovider/mockservice.h [moved from src/plugins/m3u/main.cpp with 80% similarity]
tests/auto/unit/qmediaserviceprovider/mockserviceplugin1/mockserviceplugin1.cpp [new file with mode: 0644]
tests/auto/unit/qmediaserviceprovider/mockserviceplugin1/mockserviceplugin1.json [new file with mode: 0644]
tests/auto/unit/qmediaserviceprovider/mockserviceplugin1/mockserviceplugin1.pro [new file with mode: 0644]
tests/auto/unit/qmediaserviceprovider/mockserviceplugin2/mockserviceplugin2.cpp [new file with mode: 0644]
tests/auto/unit/qmediaserviceprovider/mockserviceplugin2/mockserviceplugin2.json [new file with mode: 0644]
tests/auto/unit/qmediaserviceprovider/mockserviceplugin2/mockserviceplugin2.pro [new file with mode: 0644]
tests/auto/unit/qmediaserviceprovider/mockserviceplugin3/mockserviceplugin3.cpp [moved from src/multimedia/audio/qaudiopluginloader_p.h with 54% similarity]
tests/auto/unit/qmediaserviceprovider/mockserviceplugin3/mockserviceplugin3.json [new file with mode: 0644]
tests/auto/unit/qmediaserviceprovider/mockserviceplugin3/mockserviceplugin3.pro [new file with mode: 0644]
tests/auto/unit/qmediaserviceprovider/mockserviceplugin4/mockserviceplugin4.cpp [new file with mode: 0644]
tests/auto/unit/qmediaserviceprovider/mockserviceplugin4/mockserviceplugin4.json [new file with mode: 0644]
tests/auto/unit/qmediaserviceprovider/mockserviceplugin4/mockserviceplugin4.pro [new file with mode: 0644]
tests/auto/unit/qmediaserviceprovider/qmediaserviceprovider.pro
tests/auto/unit/qmediaserviceprovider/test/test.pro [new file with mode: 0644]
tests/auto/unit/qmediaserviceprovider/tst_qmediaserviceprovider.cpp