2 command-request.hh -- declare non-musical requests
4 source file of the GNU LilyPond music typesetter
6 (c) 1997--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
10 #ifndef COMMANDREQUEST_HH
11 #define COMMANDREQUEST_HH
15 #include "duration.hh"
16 #include "musical-pitch.hh"
17 #include "protected-scm.hh"
19 class Break_req : public Request {
24 VIRTUAL_COPY_CONS(Music);
27 class Mark_req : public Request {
29 Protected_scm mark_label_;
31 virtual bool do_equal_b (Request const*) const;
32 VIRTUAL_COPY_CONS(Music);
36 /** Baseclass for time_signature/partial req. It has to be handled by
37 Staff_{walker,column} baseclass. */
38 class Timing_req : public Request {
40 VIRTUAL_COPY_CONS(Music);
44 class Tempo_req : public Timing_req
52 virtual void do_print () const;
53 VIRTUAL_COPY_CONS(Music);
54 bool do_equal_b (Request const *) const;
59 todo: allow C time_signature
61 class Time_signature_change_req : public Timing_req {
66 Time_signature_change_req();
68 virtual void do_print () const;
69 bool do_equal_b (Request const *) const;
70 VIRTUAL_COPY_CONS(Music);
74 /// check if we're at start of a measure.
75 class Barcheck_req : public Timing_req {
77 bool do_equal_b (Request const *) const;
78 VIRTUAL_COPY_CONS(Music);
82 /** draw a (repeat)-bar. This something different than #Barcheck_req#,
83 the latter should only happen at the start of a measure. */
84 class Bar_req : public Request {
89 virtual bool do_equal_b (Request const*) const;
90 virtual void do_print () const;
92 VIRTUAL_COPY_CONS(Music);
95 class Breathing_sign_req : public Request {
96 VIRTUAL_COPY_CONS(Music);
102 class Key_change_req : public Request
105 Protected_scm pitch_alist_;
108 VIRTUAL_COPY_CONS(Music);
109 void transpose (Musical_pitch d);
110 bool do_equal_b (Request const * )const;
113 class Clef_change_req : public Request {
116 Clef_change_req (String);
118 virtual void do_print () const;
119 VIRTUAL_COPY_CONS(Music);
123 #endif // COMMANDREQUEST_HH