]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/command-request.hh
release: 1.3.93
[lilypond.git] / lily / include / command-request.hh
index 805f100031dea1b4f3db034e45aaf4714d851633..078e02dd2f07e109ff913db02fa5fb0852662c46 100644 (file)
@@ -3,7 +3,7 @@
 
   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 "array.hh"
 #include "duration.hh"
 #include "musical-pitch.hh"
+#include "protected-scm.hh"
 
 class Break_req : public Request {
 public:
-  enum { DISALLOW = -10000, FORCE = 10000 };
-  int penalty_i_;
+  Real penalty_f_;
   Break_req ();
 protected:
   VIRTUAL_COPY_CONS(Music);
@@ -26,10 +26,8 @@ protected:
 
 class Mark_req : public Request {
 public:
-  Mark_req (String);
-  String str_;
-protected:
-  virtual void do_print () const;  
+  virtual bool do_equal_b (Request const*) const;
+  SCM mark_label ();
   VIRTUAL_COPY_CONS(Music);
 };
 
@@ -50,22 +48,12 @@ public:
 
   Tempo_req();
 protected:
-    virtual void do_print () const;
-  VIRTUAL_COPY_CONS(Music);
-  bool do_equal_b (Request *) const;
-};
 
-class Partial_measure_req  : public Timing_req  {
-public:
-  Moment length_mom_;
-
-  Partial_measure_req (Moment);
-protected:
   VIRTUAL_COPY_CONS(Music);
-  virtual void do_print () const;
-  bool do_equal_b (Request*) const;
+  bool do_equal_b (Request const *) const;
 };
 
+
 /**
   todo: allow C time_signature
  */
@@ -76,51 +64,27 @@ public:
 
   Time_signature_change_req();
 protected:
-  virtual void do_print () const;
-  bool do_equal_b (Request*) const;
-  VIRTUAL_COPY_CONS(Music);
-};
 
-/// toggle Cadenza mode
-class Cadenza_req  : public Timing_req  {
-public:
-  /// turn on?
-  bool on_b_;
-  Cadenza_req (bool);
-protected:
-  virtual void do_print () const;
-  
-  bool do_equal_b (Request*) const;
+  bool do_equal_b (Request const *) const;
   VIRTUAL_COPY_CONS(Music);
 };
 
+
 /// check if we're at start of a  measure.
 class Barcheck_req  : public Timing_req  {
 public:
-  bool do_equal_b (Request *) const;
+  bool do_equal_b (Request const *) const;
   VIRTUAL_COPY_CONS(Music);
 };
 
-class Measure_grouping_req : public Timing_req  {
-public:
-  Array<int> beat_i_arr_;
-  Array<Moment> elt_length_arr_;
-protected:
-  virtual void do_print () const;
-  bool do_equal_b (Request *) const;
-  VIRTUAL_COPY_CONS(Music);
-};
 
 /** draw a (repeat)-bar. This something different than #Barcheck_req#,
   the latter should only happen at the start of a measure.  */
 class Bar_req  : public Request  {
 public:
-  String type_str_;
+
   Bar_req (String);
 protected:
-  virtual void do_print () const;
-  bool do_equal_b (Request*) const;
-
   VIRTUAL_COPY_CONS(Music);
 };
 
@@ -130,30 +94,16 @@ class Breathing_sign_req : public Request {
 
 /**
     Handle key changes.
-    Routines for sharps and flats are separated, 
-    so that caller may identify non-conventional keys.
 */
-class Key_change_req  : public Request  {
+class Key_change_req  : public Request
+{
 public:
-  Array<Musical_pitch> pitch_arr_;
-  int modality_i_;
-  bool ordinary_key_b_;
-
-  Key_change_req();
-
-  /// squash the octaves to 1
-  void squash_octaves();
-  /// return number of flats in key
-  int flats_i();
-
-  /// return number of sharps in key
-  int sharps_i();
-  bool minor_b() const;
-
+  SCM pitch_alist ();
+  
 protected:
   VIRTUAL_COPY_CONS(Music);
   void transpose (Musical_pitch  d);
-  virtual void do_print () const;
+  bool do_equal_b (Request const * )const; 
 };
 
 class Clef_change_req  : public Request  {
@@ -161,7 +111,7 @@ public:
   String clef_str_;
   Clef_change_req (String);
 protected:
-  virtual void do_print () const;
+
   VIRTUAL_COPY_CONS(Music);
 };