lilypond-1.1.31
[lilypond.git] / hdr / swalker.hh
blobd224477b605923659bd5aec9137314bacc320b79
2 /*
3 swalker.hh -- part of LilyPond
5 (c) 1996,97 Han-Wen Nienhuys
6 */
8 #ifndef SWALKER_HH
9 #define SWALKER_HH
11 #include "staff.hh"
13 struct Staff_walker : public PCursor<Staff_column*> {
14 Staff * staff_;
15 PScore * pscore_;
17 int break_status;
19 /****************/
21 int priority() const; // Command
22 Moment when() const;
23 virtual ~Staff_walker();
24 Staff_walker(Staff*, PScore*);
25 void process() ;
26 void process_command(Command *);
27 void operator++(int);
28 /// every time ++ is called
29 virtual void reset()=0;
30 virtual void process_requests()=0;
31 virtual void do_TYPESET_command(Command*)=0;
32 virtual void do_INTERPRET_command(Command*)=0 ;
33 private:
34 Staff_walker(Staff_walker const&);
36 /**
37 manage run-time info when walking staffcolumns such as: key,
38 meter, pending beams & slurs
41 #endif // SWALKER_HH