summaryrefslogtreecommitdiffstats
path: root/examples/multimedia/audiooutput/audiooutput.h
diff options
context:
space:
mode:
authorVaL Doroshchuk <valentyn.doroshchuk@qt.io>2017-09-18 11:42:32 +0200
committerVaL Doroshchuk <valentyn.doroshchuk@qt.io>2017-09-28 14:00:55 +0000
commitcd39b3726db7df2d3d8b2ec2584f1aae6255e4aa (patch)
tree1ad09cc22ad5703e749257d20530d92d66f06deb /examples/multimedia/audiooutput/audiooutput.h
parent1a8b30c10602aded40bd420614cbc6c7a3d3ba13 (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.h36
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);