]> git.donarmstrong.com Git - lilypond.git/blob - hdr/key.hh
release: 0.0.14
[lilypond.git] / hdr / key.hh
1 /*
2   key.hh -- part of LilyPond
3
4   (c) 1996 Han-Wen Nienhuys
5 */
6
7 #ifndef KEY_HH
8 #define KEY_HH
9
10 #include "vray.hh"
11 #include "scalar.hh"
12
13 class Key {
14     svec<int> accidentals;
15
16     /****************/
17
18 public:
19     svec<int> read(svec<Scalar> );
20     svec<int> oldkey_undo(svec<Scalar>);
21
22     Key();
23     void set(int i, int acc);
24     int acc(int i) { return accidentals[i]; }
25 };
26
27 struct Local_key
28 {
29     void reset(Key);    
30     Key& oct(int);
31     Local_key();
32
33 private:
34     svec<Key> octaves;
35 };
36
37 #endif // KEY_HH
38
39