diff -r 93b982ccede2 -r 5daf16870df6 src/multimedia/audio/qaudiodeviceinfo_symbian_p.h --- a/src/multimedia/audio/qaudiodeviceinfo_symbian_p.h Mon Jun 21 22:38:13 2010 +0100 +++ b/src/multimedia/audio/qaudiodeviceinfo_symbian_p.h Thu Jul 22 16:41:55 2010 +0100 @@ -53,11 +53,16 @@ #ifndef QAUDIODEVICEINFO_SYMBIAN_P_H #define QAUDIODEVICEINFO_SYMBIAN_P_H +#include #include #include QT_BEGIN_NAMESPACE +namespace SymbianAudio { +class DevSoundWrapper; +} + class QAudioDeviceInfoInternal : public QAbstractAudioDeviceInfo { @@ -82,24 +87,33 @@ static QByteArray defaultOutputDevice(); static QList availableDevices(QAudio::Mode); +private slots: + void devsoundInitializeComplete(int err); + private: void getSupportedFormats() const; private: - QScopedPointer m_devsound; + mutable bool m_initializing; + int m_intializationResult; QString m_deviceName; QAudio::Mode m_mode; + struct Capabilities + { + QList m_frequencies; + QList m_channels; + QList m_sampleSizes; + QList m_byteOrders; + QList m_sampleTypes; + }; + // Mutable to allow lazy initialization when called from const-qualified // public functions (isFormatSupported, nearestFormat) mutable bool m_updated; - mutable QStringList m_codecs; - mutable QList m_frequencies; - mutable QList m_channels; - mutable QList m_sampleSizes; - mutable QList m_byteOrders; - mutable QList m_sampleTypes; + mutable QMap m_capabilities; + mutable Capabilities m_unionCapabilities; }; QT_END_NAMESPACE