summaryrefslogtreecommitdiff
path: root/noncore/multimedia/tonleiter/tonleiterdatahelper.h
Unidiff
Diffstat (limited to 'noncore/multimedia/tonleiter/tonleiterdatahelper.h') (more/less context) (show whitespace changes)
-rw-r--r--noncore/multimedia/tonleiter/tonleiterdatahelper.h53
1 files changed, 53 insertions, 0 deletions
diff --git a/noncore/multimedia/tonleiter/tonleiterdatahelper.h b/noncore/multimedia/tonleiter/tonleiterdatahelper.h
new file mode 100644
index 0000000..94895ea
--- a/dev/null
+++ b/noncore/multimedia/tonleiter/tonleiterdatahelper.h
@@ -0,0 +1,53 @@
1#ifndef TONLEITER_DATA_HELPER_H
2#define TONLEITER_DATA_HELPER_H
3
4#include <qstring.h>
5#include <qvaluelist.h>
6
7namespace Note
8{
9 const QString notenames[]={"C","C#","D","D#","E","F","F#","G","G#","A","A#","B"};
10
11 int getOctaveOfNote(int note);
12 QString getNameOfNote(int note);
13 int getNoteFromName(QString name,int octave);
14 int octaveOfBaseNote(int base,int note);
15};
16
17class Instrument
18{
19private:
20 QString name;
21 int frets;
22 QValueList<int> strings;
23public:
24 Instrument();
25 Instrument(QString name,int frets,QValueList<int> strings);
26 ~Instrument();
27public:
28 int noOfStrings();
29 int noOfFrets();
30 QString instName();
31 int string(int id);
32 int noOfOctaves();
33};
34
35class Scale
36{
37private:
38 QValueList<int> halftones;
39 QString name;
40public:
41 Scale();
42 Scale(QString name,QValueList<int> halftones);
43 ~Scale();
44public:
45 int noOfHaltones();
46 int getHalfTone(int id);
47 QString scaleName();
48 bool noteInScale(int base,int note);
49};
50
51
52#endif //TONLEITER_DATA_HELPER_H
53