QMetaDataReaderControl Class
The QMetaDataReaderControl class provides read access to the meta-data of a QMediaService's media. More...
Header: | #include <QMetaDataReaderControl> |
qmake: | QT += multimedia |
Inherits: | QMediaControl |
Public Functions
virtual | ~QMetaDataReaderControl() |
virtual QStringList | availableMetaData() const = 0 |
virtual bool | isMetaDataAvailable() const = 0 |
virtual QVariant | metaData(const QString &key) const = 0 |
Signals
void | metaDataAvailableChanged(bool available) |
void | metaDataChanged(const QString &key, const QVariant &value) |
void | metaDataChanged() |
Protected Functions
QMetaDataReaderControl(QObject *parent = nullptr) |
Macros
Detailed Description
If a QMediaService can provide read or write access to the meta-data of its current media it will implement QMetaDataReaderControl. This control provides functions for both retrieving and setting meta-data values. Meta-data may be addressed by the keys defined in the QMediaMetaData namespace.
The functionality provided by this control is exposed to application code by the meta-data members of QMediaObject, and so meta-data access is potentially available in any of the media object classes. Any media service may implement QMetaDataReaderControl.
The interface name of QMetaDataReaderControl is org.qt-project.qt.metadatareadercontrol/5.0
as defined in QMetaDataReaderControl_iid.
See also QMediaService::requestControl() and QMediaObject.
Member Function Documentation
[protected]
QMetaDataReaderControl::QMetaDataReaderControl(QObject *parent = nullptr)
Construct a QMetaDataReaderControl with parent. This class is meant as a base class for service specific meta data providers so this constructor is protected.
[signal]
void QMetaDataReaderControl::metaDataAvailableChanged(bool available)
Signal the availability of meta-data has changed, available will be true if the multimedia object has meta-data.
[signal]
void QMetaDataReaderControl::metaDataChanged(const QString &key, const QVariant &value)
Signal the changes of one meta-data element value with the given key.
Note: Signal metaDataChanged is overloaded in this class. To connect to this signal by using the function pointer syntax, Qt provides a convenient helper for obtaining the function pointer as shown in this example:
connect(metaDataReaderControl, QOverload<const QString &, const QVariant &>::of(&QMetaDataReaderControl::metaDataChanged), [=](const QString &key, const QVariant &value){ /* ... */ });
[signal]
void QMetaDataReaderControl::metaDataChanged()
Signal the changes of meta-data.
If multiple meta-data elements are changed, metaDataChanged(const QString &key, const QVariant &value) signal is emitted for each of them with metaDataChanged() changed emitted once.
Note: Signal metaDataChanged is overloaded in this class. To connect to this signal by using the function pointer syntax, Qt provides a convenient helper for obtaining the function pointer as shown in this example:
connect(metaDataReaderControl, QOverload<>::of(&QMetaDataReaderControl::metaDataChanged), [=](){ /* ... */ });
[virtual]
QMetaDataReaderControl::~QMetaDataReaderControl()
Destroy the meta-data object.
[pure virtual]
QStringList QMetaDataReaderControl::availableMetaData() const
Returns a list of keys there is meta-data available for.
[pure virtual]
bool QMetaDataReaderControl::isMetaDataAvailable() const
Identifies if meta-data is available from a media service.
Returns true if the meta-data is available and false otherwise.
[pure virtual]
QVariant QMetaDataReaderControl::metaData(const QString &key) const
Returns the meta-data for the given key.
Macro Documentation
QMetaDataReaderControl_iid
org.qt-project.qt.metadatareadercontrol/5.0
Defines the interface name of the QMetaDataReaderControl class.
© 2020 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.