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"
18 #include "protected-scm.hh"
20 class Break_req : public Request {
25 VIRTUAL_COPY_CONS(Music);
28 class Mark_req : public Request {
30 Protected_scm mark_label_;
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 void do_print () const;
91 bool do_equal_b (Request const *) const;
93 VIRTUAL_COPY_CONS(Music);
96 class Breathing_sign_req : public Request {
97 VIRTUAL_COPY_CONS(Music);
102 Routines for sharps and flats are separated,
103 so that caller may identify non-conventional keys.
105 class Key_change_req : public Request
110 Key_change_req(Key_change_req const &);
114 VIRTUAL_COPY_CONS(Music);
115 void transpose (Musical_pitch d);
116 virtual void do_print () const;
119 class Clef_change_req : public Request {
122 Clef_change_req (String);
124 virtual void do_print () const;
125 VIRTUAL_COPY_CONS(Music);
129 #endif // COMMANDREQUEST_HH