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
keyindexscaleengine.h
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 #ifndef KEYINDEXSCALEENGINE_H
21 #define KEYINDEXSCALEENGINE_H
22 
23 #include "qwt_scale_engine.h"
24 #include "qwt_scale_div.h"
25 
26 class KeyIndexScaleEngine : public QwtScaleEngine
27 {
28 public:
29  KeyIndexScaleEngine(int maxKeys, int keyOffset);
30 
31  virtual void autoScale(int maxNumSteps, double &x1, double &x2, double &stepSize) const override final;
32  virtual QwtScaleDiv divideScale(double x1, double x2, int maxMajorSteps, int maxMinorSteps, double stepSize=0.0) const override final;
33 
34 private:
35  const int mMaxKeys;
36  const int mKeyOffset;
37 };
38 
39 #endif // KEYINDEXSCALEENGINE_H
virtual void autoScale(int maxNumSteps, double &x1, double &x2, double &stepSize) const overridefinal
virtual QwtScaleDiv divideScale(double x1, double x2, int maxMajorSteps, int maxMinorSteps, double stepSize=0.0) const overridefinal
KeyIndexScaleEngine(int maxKeys, int keyOffset)