]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/musical-request.hh
release: 0.1.61
[lilypond.git] / lily / include / musical-request.hh
index f53fc44de1d96a4ccddd804e1b1c88a2e9d59873..329b1cd0d050dd75b4820b7f8721cd76e599bd72 100644 (file)
@@ -3,7 +3,7 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
+  (c)  1997--1998 Han-Wen Nienhuys <hanwen@stack.nl>
 */
 
 
@@ -37,8 +37,10 @@ public:
   virtual Dynamic_req* dynamic() { return 0; }
   virtual Absolute_dynamic_req * absdynamic() { return 0; }
   virtual Tie_req * tie() { return 0; }
+  virtual Plet_req* plet() { return 0; }
   virtual Span_dynamic_req * span_dynamic() { return 0; }
   virtual Abbreviation_req* abbrev() { return 0; }
+  virtual Multi_measure_rest_req* multi_measure() { return 0; }
   REQUESTMETHODS(Musical_req, musical);
 };
 
@@ -83,7 +85,6 @@ struct Abbreviation_req : public Musical_req {
 class Blank_req  : public Spacing_req, Rhythmic_req  {
 public:
   REQUESTMETHODS(Spacing_req, spacing);
-    
 };
 
 /// Put a text above or below (?) this staff.
@@ -155,7 +156,14 @@ public:
   REQUESTMETHODS(Rest_req,rest);
 };
 
-
+/**
+ Part: typeset a measure with the number of measures rest
+ Score: typeset all individual measures ass full rests
+ */
+class Multi_measure_rest_req : public Rhythmic_req  {
+public:
+  REQUESTMETHODS(Multi_measure_rest_req, multi_measure);
+};
 
 /**
   Requests to start or stop something.
@@ -164,9 +172,9 @@ public:
 class Span_req  : public virtual Musical_req  {
 public:
   /// should the spanner start or stop, or is it unwanted?
-  enum {
+  enum Spantype {
     NOSPAN, START, STOP
-  } spantype ;
+  } spantype;
   bool do_equal_b (Request*) const;
   REQUESTMETHODS(Span_req,span);
 
@@ -174,12 +182,9 @@ public:
   
 };
 
-/** Start / stop a beam at this note.  if #nplet# is set, the staff
-will try to put an appropriate number over the beam */
+/** Start / stop a beam at this note */
 class Beam_req  : public Span_req  {
 public:
-  int nplet;
-
   /* *************** */
   REQUESTMETHODS(Beam_req,beam);
 
@@ -213,6 +218,16 @@ public:
 
 };
 
+/// a plet (bracket with) number
+class Plet_req : public Span_req  {
+public:
+  int plet_i_;
+
+  REQUESTMETHODS(Plet_req,plet);
+
+  Plet_req ();
+};
+
 class Musical_script_req : public Musical_req,  public Script_req {
 public:
   REQUESTMETHODS(Musical_script_req, musicalscript);
@@ -237,6 +252,7 @@ public:
 class Absolute_dynamic_req  : public Dynamic_req  {
 public:
   Loudness loudness_;
+  virtual bool do_equal_b (Request*) const;
   String loudness_str () const;
   Absolute_dynamic_req();
   REQUESTMETHODS(Absolute_dynamic_req, absdynamic);