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 {
32 virtual bool do_equal_b (Request const*) const;
33 VIRTUAL_COPY_CONS(Music);
37 /** Baseclass for time_signature/partial req. It has to be handled by
38 Staff_{walker,column} baseclass. */
39 class Timing_req : public Request {
41 VIRTUAL_COPY_CONS(Music);
45 class Tempo_req : public Timing_req
53 virtual void do_print () const;
54 VIRTUAL_COPY_CONS(Music);
55 bool do_equal_b (Request const *) const;
60 todo: allow C time_signature
62 class Time_signature_change_req : public Timing_req {
67 Time_signature_change_req();
69 virtual void do_print () const;
70 bool do_equal_b (Request const *) const;
71 VIRTUAL_COPY_CONS(Music);
75 /// check if we're at start of a measure.
76 class Barcheck_req : public Timing_req {
78 bool do_equal_b (Request const *) const;
79 VIRTUAL_COPY_CONS(Music);
83 /** draw a (repeat)-bar. This something different than #Barcheck_req#,
84 the latter should only happen at the start of a measure. */
85 class Bar_req : public Request {
90 virtual bool do_equal_b (Request const*) const;
91 virtual void do_print () const;
93 VIRTUAL_COPY_CONS(Music);
96 class Breathing_sign_req : public Request {
97 VIRTUAL_COPY_CONS(Music);
103 class Key_change_req : public Request
109 VIRTUAL_COPY_CONS(Music);
110 void transpose (Musical_pitch d);
111 bool do_equal_b (Request const * )const;
114 class Clef_change_req : public Request {
117 Clef_change_req (String);
119 virtual void do_print () const;
120 VIRTUAL_COPY_CONS(Music);
124 #endif // COMMANDREQUEST_HH