Go to the
documentation of this file.
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef PHONON_PULSESUPPORT_H
00024 #define PHONON_PULSESUPPORT_H
00025
00026 #include "phonon_export.h"
00027 #include "phononnamespace.h"
00028 #include "objectdescription.h"
00029
00030 #include <QtCore/QtGlobal>
00031 #include <QtCore/QSet>
00032
00033 QT_BEGIN_HEADER
00034 QT_BEGIN_NAMESPACE
00035
00036 namespace Phonon
00037 {
00038 class PHONON_EXPORT PulseSupport : public QObject
00039 {
00040 Q_OBJECT
00041 public:
00042 static PulseSupport* getInstance();
00043 static void shutdown();
00044
00045 bool isActive();
00046 void enable(bool enabled = true);
00047
00048 QList<int> objectDescriptionIndexes(ObjectDescriptionType type) const;
00049 QHash<QByteArray, QVariant> objectDescriptionProperties(ObjectDescriptionType type, int index) const;
00050 QList<int> objectIndexesByCategory(ObjectDescriptionType type, Category category) const;
00051
00052 void setOutputDevicePriorityForCategory(Category category, QList<int> order);
00053 void setCaptureDevicePriorityForCategory(Category category, QList<int> order);
00054
00055 void setStreamPropList(Category category, QString streamUuid);
00056 void emitObjectDescriptionChanged(ObjectDescriptionType);
00057 void emitUsingDevice(QString streamUuid, int device);
00058
00059 bool setOutputDevice(QString streamUuid, int device);
00060 bool setCaptureDevice(QString streamUuid, int device);
00061 void clearStreamCache(QString streamUuid);
00062
00063 signals:
00064 void objectDescriptionChanged(ObjectDescriptionType);
00065 void usingDevice(QString streamUuid, int device);
00066
00067 private:
00068 PulseSupport();
00069 ~PulseSupport();
00070
00071 bool mEnabled;
00072 };
00073 }
00074
00075 QT_END_NAMESPACE
00076 QT_END_HEADER
00077
00078 #endif // PHONON_PULSESUPPORT_H