lilypond-1.5.8
[lilypond.git] / hdr / scommands.hh
blob110c6563688775cc09220d10dc42f9c7003396e6
1 /*
2 lilypond, (c) 1996 Han-Wen Nienhuys
3 */
4 #ifndef SCOMMANDS_HH
5 #define SCOMMANDS_HH
7 #include "proto.hh"
8 #include "command.hh"
9 #include "vray.hh"
10 #include "plist.hh"
12 /// the list of commands in Score
13 struct Score_commands : public IPointerList<Command*> {
14 void process_add(Command);
15 Score_commands*parse(Real last)const;
16 void parser_add(Command*);
17 void add_seq(svec<Command>,bool);
18 void clean(Real last);
19 void set_breakable(Real when);
20 bool is_breakable(Real w);
21 PCursor<Command*> last_insertion(Real w);
22 PCursor<Command*> first(Real w);
23 void add_command_to_break(Command pre, Command mid,Command post);
24 void OK() const;
25 void print() const;
26 Real last() const;
27 void insert_between(Command victim, PCursor<Command*> firstc,
28 PCursor<Command*> last);
30 /** the list of commands in Score. Put in a separate class, since it
31 otherwise clutters the methods of Score.
33 This class serves two purposes: it stores the commands (via
34 parser_add()) in the yacc parser. at a later stage, some 'high
35 level' commands are converted (method: parse())
38 #endif