]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/dot-column.hh
* flower
[lilypond.git] / lily / include / dot-column.hh
index 374181e0142fa0ceb2c7f5821fb51811ad679bfc..ac9bbc488c65d8e27b708c776a3c418975c47d24 100644 (file)
@@ -3,30 +3,28 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c)  1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+  (c) 1997--2005 Han-Wen Nienhuys <hanwen@cs.uu.nl>
 */
 
-
 #ifndef DOT_COLUMN_HH
 #define DOT_COLUMN_HH
 
-#include "axis-group-item.hh"
+#include "lily-guile.hh"
+
+class Grob;
 
 /**
-  Group dots.  This is needed because, the dots have to be aligned per voice
- */
-class Dot_column : public Axis_group_item
+   Group dots.  This is needed because, the dots have to be aligned per voice
+*/
+class Dot_column // interface
 {
-  Link_array<Rhythmic_head> head_l_arr_;
-  Link_array<Dots> dot_l_arr_;
-
 public:
-  
-  void add_head (Rhythmic_head*);
-  void add_dots (Dots*);
-  Dot_column ();
-protected:
-  virtual void do_pre_processing ();
-  virtual void do_substitute_element_pointer (Score_element *o, Score_element*n);
+  static int compare (Grob *const &, Grob *const &);
+  static void add_head (Grob *dotcol, Grob *rh);
+
+  static bool has_interface (Grob *);
+  DECLARE_SCHEME_CALLBACK (force_shift_callback, (SCM, SCM));
+  DECLARE_SCHEME_CALLBACK (side_position, (SCM, SCM));
+  static SCM do_shifts (Grob *);
 };
 #endif // DOT_COLUMN_HH