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
messagekeyselectionchanged.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 MESSAGEKEYSELECTIONCHANGED_H
21 #define MESSAGEKEYSELECTIONCHANGED_H
22 
23 #include "message.h"
24 #include "../piano/pianodefines.h"
25 #include "../piano/key.h"
26 #include <cstdint>
27 
29 {
30 public:
31  MessageKeySelectionChanged(int index, const Key *key, piano::KeyState keyState = piano::STATE_NORMAL);
33 
34  int getKeyNumber() const {return mIndex;}
35  const Key *getKey() const {return mKey;}
37 
38  bool isForced() const {return mKeyState == piano::STATE_FORCED;}
39 
40 private:
41  const int mIndex;
42  const Key *mKey;
44 };
45 
46 #endif // MESSAGEKEYSELECTIONCHANGED_H
Normal state.
Definition: pianodefines.h:41
Class describing a single piano key.
Definition: key.h:45
MessageKeySelectionChanged(int index, const Key *key, piano::KeyState keyState=piano::STATE_NORMAL)
piano::KeyState getKeyState() const
The Message class.
Definition: message.h:43
KeyState
The KeyState enum.
Definition: pianodefines.h:40
Key is forced.
Definition: pianodefines.h:42