Main Backend class interface. More...
#include <phonon/BackendInterface>
Public Types | |
enum | Class { MediaObjectClass, VolumeFaderEffectClass, AudioOutputClass, AudioDataOutputClass, VisualizationClass, VideoDataOutputClass, EffectClass, VideoWidgetClass, VideoGraphicsObjectClass } |
Public Member Functions | |
virtual QObject * | createObject (Class c, QObject *parent, const QList< QVariant > &args=QList< QVariant >())=0 |
virtual QList< int > | objectDescriptionIndexes (ObjectDescriptionType type) const =0 |
virtual QHash< QByteArray, QVariant > | objectDescriptionProperties (ObjectDescriptionType type, int index) const =0 |
virtual bool | startConnectionChange (QSet< QObject * >)=0 |
virtual bool | connectNodes (QObject *, QObject *)=0 |
virtual bool | disconnectNodes (QObject *, QObject *)=0 |
virtual bool | endConnectionChange (QSet< QObject * >)=0 |
virtual QStringList | availableMimeTypes () const =0 |
Main Backend class interface.
This interface defines the main factory of the backend. The createObject function creates all the objects needed by the frontend.
The objectDescriptionIndexes and objectDescriptionProperties functions return information about available devices, effects and codecs.
An implementation could look like this:
Classes that the createObject function has to handle.
|
pure virtual |
gets all available mime types
|
pure virtual |
Defines a signal connection between the two given nodes.
|
pure virtual |
Returns a new instance of the requested class.
c | The requested class. |
parent | The parent object. |
args | Additional arguments (documented in Class). |
|
pure virtual |
Cuts a signal connection between the two given nodes.
|
pure virtual |
When this function is called the nodes given in the parameter list may lose signal data when a port is not connected.
|
pure virtual |
Returns the unique identifiers for the devices/effects/codecs of the given type
.
type | see ObjectDescriptionType |
|
pure virtual |
Given a unique identifier that was returned from objectDescriptionIndexes this function returns a hash mapping property names to values.
The property "name" must always be present. All other properties are optional.
List of possible properties:
name: The
name of the device/effect/codec/... description: A
text explaining what this device/effect/codec/... is/can do icon: An
icon name (using the freedesktop naming scheme) or a QIcon for this device/effect/codec/... available: A
bool telling whether the device is present or unplugged.type | see ObjectDescriptionType |
index | The unique identifier that is returned from objectDescriptionIndexes |
|
pure virtual |
When this function is called the nodes given in the parameter list should not lose any signal data when connections are changed.