Made audio output example easier to understand. No real code changes

Maybe it's just me, but every time I try to read the "toggleMode" method
in the audio output example, I get confused on whether I'm switching to/
from push/pull mode, and even what pushing and pulling entails. The name
of the push timer also seemed backwards (which added to the confusion).

Change-Id: I5ff7d18f72490c22b91a948ad7513b402a01c5e4
Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
This commit is contained in:
d3fault
2015-03-13 18:38:37 -07:00
committed by Yoann Lopes
parent 614dee2f8f
commit e88da21a20
2 changed files with 10 additions and 8 deletions

View File

@@ -159,7 +159,7 @@ qint64 Generator::bytesAvailable() const
}
AudioTest::AudioTest()
: m_pullTimer(new QTimer(this))
: m_pushTimer(new QTimer(this))
, m_modeButton(0)
, m_suspendResumeButton(0)
, m_deviceBox(0)
@@ -220,7 +220,7 @@ void AudioTest::initializeWindow()
void AudioTest::initializeAudio()
{
connect(m_pullTimer, SIGNAL(timeout()), SLOT(pullTimerExpired()));
connect(m_pushTimer, SIGNAL(timeout()), SLOT(pushTimerExpired()));
m_pullMode = true;
@@ -259,7 +259,7 @@ AudioTest::~AudioTest()
void AudioTest::deviceChanged(int index)
{
m_pullTimer->stop();
m_pushTimer->stop();
m_generator->stop();
m_audioOutput->stop();
m_audioOutput->disconnect(this);
@@ -273,7 +273,7 @@ void AudioTest::volumeChanged(int value)
m_audioOutput->setVolume(qreal(value/100.0f));
}
void AudioTest::pullTimerExpired()
void AudioTest::pushTimerExpired()
{
if (m_audioOutput && m_audioOutput->state() != QAudio::StoppedState) {
int chunks = m_audioOutput->bytesFree()/m_audioOutput->periodSize();
@@ -290,15 +290,17 @@ void AudioTest::pullTimerExpired()
void AudioTest::toggleMode()
{
m_pullTimer->stop();
m_pushTimer->stop();
m_audioOutput->stop();
if (m_pullMode) {
//switch to push mode (periodically push to QAudioOutput using a timer)
m_modeButton->setText(tr(PULL_MODE_LABEL));
m_output = m_audioOutput->start();
m_pullMode = false;
m_pullTimer->start(20);
m_pushTimer->start(20);
} else {
//switch to pull mode (QAudioOutput pulls from Generator as needed)
m_modeButton->setText(tr(PUSH_MODE_LABEL));
m_pullMode = true;
m_audioOutput->start(m_generator);

View File

@@ -91,7 +91,7 @@ private:
void createAudioOutput();
private:
QTimer *m_pullTimer;
QTimer *m_pushTimer;
// Owned by layout
QPushButton *m_modeButton;
@@ -110,7 +110,7 @@ private:
QByteArray m_buffer;
private slots:
void pullTimerExpired();
void pushTimerExpired();
void toggleMode();
void toggleSuspendResume();
void deviceChanged(int index);