]> git.donarmstrong.com Git - lilypond.git/blob - hdr/staffcommands.hh
release: 0.0.18
[lilypond.git] / hdr / staffcommands.hh
1 /*
2   lilypond, (c) 1996 Han-Wen Nienhuys
3 */
4 #ifndef SCORECOMMANDS_HH
5 #define SCORECOMMANDS_HH
6
7 #include "proto.hh"
8 #include "command.hh"
9 #include "vray.hh"
10 #include "plist.hh"
11
12
13 struct Staff_commands_at : public IPointerList<Command*> {
14     Real when;
15
16     /****************/
17     
18     bool is_breakable();
19
20     Staff_commands_at(Real);
21     void set_breakable();
22     void add_command_to_break(Command pre, Command mid,Command post);
23     void print() const;
24     void OK() const;
25     void insert_between(Command victim, PCursor<Command*> firstc,
26                         PCursor<Command*> last);
27     void add(Command c);
28
29 };
30
31 /// the list of commands in Score
32 struct Staff_commands : public IPointerList<Staff_commands_at*>
33 {
34     Staff_commands_at*find(Real);
35     void add(Command,Real);
36     void clean(Real last);
37     void OK() const;
38     void print() const;
39     Real last() const;
40 };
41 /** the list of commands in Score. Put in a separate class, since it
42   otherwise clutters the methods of Score.
43
44   */
45
46 #endif
47