diff options
author | VaL Doroshchuk <valentyn.doroshchuk@qt.io> | 2017-09-18 11:42:32 +0200 |
---|---|---|
committer | VaL Doroshchuk <valentyn.doroshchuk@qt.io> | 2017-09-28 14:00:55 +0000 |
commit | cd39b3726db7df2d3d8b2ec2584f1aae6255e4aa (patch) | |
tree | 1ad09cc22ad5703e749257d20530d92d66f06deb /examples/multimedia/audiooutput/audiooutput.h | |
parent | 1a8b30c10602aded40bd420614cbc6c7a3d3ba13 (diff) |
Modernize the Audio Output example
Changed initialization style.
Recoded toggleMode.
Removed unneeded defines, function members.
Changed signal/slot connection style.
Changed foreach to c++11 style.
Fixed bug with wrong duration seconds.
Task-number: QTBUG-60627
Change-Id: Ib62f7979f2a32d629482026e0d954612b2665d66
Reviewed-by: Christian Stromme <christian.stromme@qt.io>
Diffstat (limited to 'examples/multimedia/audiooutput/audiooutput.h')
-rw-r--r-- | examples/multimedia/audiooutput/audiooutput.h | 36 |
1 files changed, 15 insertions, 21 deletions
diff --git a/examples/multimedia/audiooutput/audiooutput.h b/examples/multimedia/audiooutput/audiooutput.h index d5c2b4cc2..489624160 100644 --- a/examples/multimedia/audiooutput/audiooutput.h +++ b/examples/multimedia/audiooutput/audiooutput.h @@ -53,14 +53,14 @@ #include <QPushButton> #include <QSlider> #include <QTimer> +#include <QScopedPointer> class Generator : public QIODevice { Q_OBJECT public: - Generator(const QAudioFormat &format, qint64 durationUs, int sampleRate, QObject *parent); - ~Generator(); + Generator(const QAudioFormat &format, qint64 durationUs, int sampleRate); void start(); void stop(); @@ -73,7 +73,7 @@ private: void generateData(const QAudioFormat &format, qint64 durationUs, int sampleRate); private: - qint64 m_pos; + qint64 m_pos = 0; QByteArray m_buffer; }; @@ -87,30 +87,24 @@ public: private: void initializeWindow(); - void initializeAudio(); - void createAudioOutput(); + void initializeAudio(const QAudioDeviceInfo &deviceInfo); private: - QTimer *m_pushTimer; + QTimer *m_pushTimer = nullptr; // Owned by layout - QPushButton *m_modeButton; - QPushButton *m_suspendResumeButton; - QComboBox *m_deviceBox; - QLabel *m_volumeLabel; - QSlider *m_volumeSlider; - - QAudioDeviceInfo m_device; - Generator *m_generator; - QAudioOutput *m_audioOutput; - QIODevice *m_output; // not owned - QAudioFormat m_format; - - bool m_pullMode; - QByteArray m_buffer; + QPushButton *m_modeButton = nullptr; + QPushButton *m_suspendResumeButton = nullptr; + QComboBox *m_deviceBox = nullptr; + QLabel *m_volumeLabel = nullptr; + QSlider *m_volumeSlider = nullptr; + + QScopedPointer<Generator> m_generator; + QScopedPointer<QAudioOutput> m_audioOutput; + + bool m_pullMode = true; private slots: - void pushTimerExpired(); void toggleMode(); void toggleSuspendResume(); void deviceChanged(int index); |