]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/dot-column.hh
release: 1.5.13
[lilypond.git] / lily / include / dot-column.hh
index 01e3e3d3e5ef2f1f16cd94011f47b91d8e4a8c43..65eb4c5a7559f19b3daa4bf3e8a73f0629dceb72 100644 (file)
@@ -3,29 +3,27 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
+  (c)  1997--2001 Han-Wen Nienhuys <hanwen@cs.uu.nl>
 */
 
 
 #ifndef DOT_COLUMN_HH
 #define DOT_COLUMN_HH
 
-#include "horizontal-group-item.hh"
+#include "lily-guile.hh"
 
 /**
   Group dots.  This is needed because, the dots have to be aligned per voice
  */
-class Dot_column : public Horizontal_group_item
+class Dot_column               // interface
 {
-  Link_array<Rhythmic_head> head_l_arr_;
-  Link_array<Dots> dot_l_arr_;
-  void add (Dots*);
-
 public:
-  DECLARE_MY_RUNTIME_TYPEINFO;
-  void add (Rhythmic_head*);
-protected:
-  virtual void do_pre_processing ();
-  virtual void do_substitute_dependency (Score_elem *o, Score_elem*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 (SCM dotlist);
 };
 #endif // DOT_COLUMN_HH