source file of the GNU LilyPond music typesetter
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+ (c) 1997--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
*/
#include "request.hh"
#include "duration.hh"
#include "musical-pitch.hh"
-
+#include "array.hh"
/** a request with a duration.
This request is used only used as a base class.
class Rhythmic_req : public virtual Request {
public:
Duration duration_;
- virtual void do_print () const;
- bool do_equal_b (Request*) const;
+
+ bool do_equal_b (Request const*) const;
void compress (Moment);
virtual Moment length_mom () const;
static int compare (Rhythmic_req const&,Rhythmic_req const&);
VIRTUAL_COPY_CONS (Music);
Tremolo_req ();
int type_i_;
- virtual void do_print () const;
+
};
-/** a syllable or lyric is a string with rhythm.
+/**
+ a syllable or lyric is a string with rhythm.
*/
-class Lyric_req : public Rhythmic_req {
-public:
- virtual void do_print () const;
- String text_str_;
- VIRTUAL_COPY_CONS(Music);
+class Lyric_req : public Rhythmic_req
+{
+protected:
+ VIRTUAL_COPY_CONS (Music);
};
public:
String articulation_str_;
protected:
- virtual bool do_equal_b (Request*) const;
- virtual void do_print () const;
+ virtual bool do_equal_b (Request const*) const;
+
VIRTUAL_COPY_CONS(Music);
};
-class Text_script_req : public Script_req {
-public:
- String text_str_;
-
- // should be generic property of some kind..
- String style_str_;
+class Text_script_req : public Script_req
+{
protected:
- VIRTUAL_COPY_CONS(Music);
- virtual bool do_equal_b (Request*)const;
- virtual void do_print () const;
+ VIRTUAL_COPY_CONS (Music);
+ virtual bool do_equal_b (Request const*) const;
};
+class Dynamic_script_req : public Script_req
+{
+protected:
+ VIRTUAL_COPY_CONS (Music);
+};
/// request which has some kind of pitch
struct Melodic_req :virtual Request
protected:
/// transpose. #delta# is relative to central c.
virtual void transpose (Musical_pitch delta);
- virtual bool do_equal_b (Request*) const;
- virtual void do_print () const;
+ virtual bool do_equal_b (Request const*) const;
+
VIRTUAL_COPY_CONS(Music);
};
/// specify tonic of a chord
struct Tonic_req : public Melodic_req
{
- VIRTUAL_COPY_CONS(Music);
+ VIRTUAL_COPY_CONS (Music);
+};
+
+/// specify inversion of a chord
+struct Inversion_req : public Melodic_req
+{
+ VIRTUAL_COPY_CONS (Music);
+};
+
+/// specify bass of a chord
+struct Bass_req : public Melodic_req
+{
+ VIRTUAL_COPY_CONS (Music);
};
/// Put a note of specified type, height, and with accidental on the staff.
bool cautionary_b_;
Note_req();
protected:
- virtual void do_print () const;
- bool do_equal_b (Request*) const;
+
+ bool do_equal_b (Request const*) const;
VIRTUAL_COPY_CONS(Music);
};
VIRTUAL_COPY_CONS(Music);
};
-/**
- Part: typeset a measure with the number of measures rest
- Score: typeset all individual measures as full rests
- */
-class Multi_measure_rest_req : public Rhythmic_req {
-public:
- VIRTUAL_COPY_CONS(Music);
-};
-
-/**
- Typeset a repetition sign in each bar.
- */
-class Repetitions_req : public Rhythmic_req {
-public:
- VIRTUAL_COPY_CONS(Music);
-};
/// an extender line
class Extender_req : public Request {
public:
VIRTUAL_COPY_CONS (Music);
};
+
+
+
/**
instruct lyric context to alter typesetting (unimplemented). */
class Melisma_req : public Span_req
public:
VIRTUAL_COPY_CONS(Music);
};
-/**
- Start / stop an abbreviation beam. */
-class Chord_tremolo_req : public Span_req
-{
-public:
- VIRTUAL_COPY_CONS (Music);
- Chord_tremolo_req ();
-
- virtual void do_print () const;
-
- int type_i_;
-};
/**
Helping req to signal start of a melisma from within a context, and
public:
VIRTUAL_COPY_CONS (Music);
};
+
+class Arpeggio_req : public Request
+{
+public:
+ VIRTUAL_COPY_CONS (Music);
+};
+
#endif // MUSICALREQUESTS_HH