QMediaService Class
The QMediaService class provides a common base class for media service implementations. More...
Header: | #include <QMediaService> |
qmake: | QT += multimedia |
Inherits: | QObject |
Public Functions
virtual | ~QMediaService() |
virtual void | releaseControl(QMediaControl *control) = 0 |
virtual QMediaControl * | requestControl(const char *interface) = 0 |
T | requestControl() |
- 30 public functions inherited from QObject
Protected Functions
QMediaService(QObject *parent) |
- 9 protected functions inherited from QObject
Related Non-Members
typedef | QObjectList |
QList<T> | qFindChildren(const QObject *obj, const QRegExp ®Exp) |
T | qobject_cast(QObject *object) |
T | qobject_cast(const QObject *object) |
Macros
QT_NO_NARROWING_CONVERSIONS_IN_CONNECT | |
Q_CLASSINFO(Name, Value) | |
Q_DISABLE_COPY(Class) | |
Q_DISABLE_COPY_MOVE(Class) | |
Q_DISABLE_MOVE(Class) | |
Q_EMIT | |
Q_ENUM(...) | |
Q_ENUM_NS(...) | |
Q_FLAG(...) | |
Q_FLAG_NS(...) | |
Q_GADGET | |
Q_INTERFACES(...) | |
Q_INVOKABLE | |
Q_NAMESPACE | |
Q_OBJECT | |
Q_PROPERTY(...) | |
Q_REVISION | |
Q_SET_OBJECT_NAME(Object) | |
Q_SIGNAL | |
Q_SIGNALS | |
Q_SLOT | |
Q_SLOTS |
Additional Inherited Members
- 1 property inherited from QObject
- 1 public slot inherited from QObject
- 2 signals inherited from QObject
- 9 static public members inherited from QObject
Detailed Description
Media services provide implementations of the functionality promised by media objects, and allow multiple providers to implement a QMediaObject.
To provide the functionality of a QMediaObject media services implement QMediaControl interfaces. Services typically implement one core media control which provides the core feature of a media object, and some number of additional controls which provide either optional features of the media object, or features of a secondary media object or peripheral object.
A pointer to media service's QMediaControl implementation can be obtained by passing the control's interface name to the requestControl() function.
QMediaPlayerControl *control = qobject_cast<QMediaPlayerControl *>( mediaService->requestControl("org.qt-project.qt.mediaplayercontrol/5.0"));
Media objects can use services loaded dynamically from plug-ins or implemented statically within an applications. Plug-in based services should also implement the QMediaServiceProviderPlugin interface. Static services should implement the QMediaServiceProvider interface. In general, implementing a QMediaService is outside of the scope of this documentation and support on the relevant mailing lists or IRC channels should be sought.
See also QMediaObject and QMediaControl.
Member Function Documentation
[protected]
QMediaService::QMediaService(QObject *parent)
Construct a media service with the given parent. This class is meant as a base class for Multimedia services so this constructor is protected.
[virtual]
QMediaService::~QMediaService()
Destroys a media service.
[pure virtual]
void QMediaService::releaseControl(QMediaControl *control)
Releases a control back to the service.
[pure virtual]
QMediaControl *QMediaService::requestControl(const char *interface)
Returns a pointer to the media control implementing interface.
If the service does not implement the control, or if it is unavailable a null pointer is returned instead.
Controls must be returned to the service when no longer needed using the releaseControl() function.
T QMediaService::requestControl()
Returns a pointer to the media control of type T implemented by a media service.
If the service does not implement the control, or if it is unavailable a null pointer is returned instead.
Controls must be returned to the service when no longer needed using the releaseControl() function.