lilypond-1.3.16
[lilypond.git] / lily / include / complex-walker.hh
blobcc16eef1b310c3735e99fc3e29f110b946d74cfe
1 /*
2 complex-walker.hh -- declare Complex_walker
4 (c) 1996,97 Han-Wen Nienhuys
5 */
7 #ifndef COMPLEXWALKER_HH
8 #define COMPLEXWALKER_HH
10 #include "lily-proto.hh"
11 #include "staff-walker.hh"
12 #include "score-elem-info.hh"
14 /**
15 A staff walker which uses registers to decide what to print
17 class Complex_walker: public Staff_walker {
18 bool try_command_request(Command_req *req_l);
19 void do_announces();
20 void try_request(Request*req);
24 public:
25 Walker_registers *walk_regs_p_;
27 /* *************** */
29 void regs_process_requests();
30 void typeset_element(Score_elem *elem_p);
31 void announce_element(Score_elem_info);
32 virtual void process_requests();
33 virtual void do_post_move();
34 virtual void do_pre_move();
36 Complex_walker(Staff*);
37 ~Complex_walker();
39 private:
43 #endif // COMPLEXWALKER_HH