Entropy Piano Tuner  1.1.3 (documentation not yet complete)
An open-source experimental software for piano tuning by entropy minimization
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
volumecontrollevel.cpp
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright 2015 Haye Hinrichsen, Christoph Wick
3  *
4  * This file is part of Entropy Piano Tuner.
5  *
6  * Entropy Piano Tuner is free software: you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by the
8  * Free Software Foundation, either version 3 of the License, or (at your
9  * option) any later version.
10  *
11  * Entropy Piano Tuner is distributed in the hope that it will be useful, but
12  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13  * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
14  * more details.
15  *
16  * You should have received a copy of the GNU General Public License along with
17  * Entropy Piano Tuner. If not, see http://www.gnu.org/licenses/.
18  *****************************************************************************/
19 
20 #include "volumecontrollevel.h"
21 #include "../core/audio/recorder/audiorecorderadapter.h"
22 #include <QLabel>
23 #include <QDebug>
24 
26  : QProgressBar(parent),
27  mValueBuffer(0)
28 {
29  QObject::connect(&mUpdateTimer, SIGNAL(timeout()), this, SLOT(updateValue()));
30  mUpdateTimer.start(1000 / 24); // 24 fps
31  setMaximum(100000);
32  setWhatsThis(tr("This bar displays the current input level."));
33 }
34 
36 {
37  mUpdateTimer.stop();
38 }
39 
40 
42 {
43  mValueBuffer = std::max(0.0, std::min(value, 1.0)) * maximum();
44 }
45 
47 {
48  setValue(mValueBuffer);
49  repaint();
50 }
QTimer mUpdateTimer
The timer that will handle the update of the QProgressBar.
double mValueBuffer
The buffered value.
VolumeControlLevel(QWidget *parent)
Default constructor.
void levelChanged(double value) override
Function that is called when the level has changed.
void updateValue()
Update the displayed value with the mValueBuffer.
virtual ~VolumeControlLevel()
Empty virtual destructor.