]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/note-head.hh
Run `make grand-replace'.
[lilypond.git] / lily / include / note-head.hh
index 1cc0bad9b891ffe129e7fd75d68cec4e745d53c0..de2d61a07df8e54eb004fbd27b3e6d6aed1159d7 100644 (file)
@@ -1,43 +1,29 @@
 /*
   note-head.hh -- part of GNU LilyPond
 
-  (c) 1996--1998 Han-Wen Nienhuys
+  (c) 1996--2008 Han-Wen Nienhuys
 */
 
 #ifndef NOTEHEAD_HH
 #define NOTEHEAD_HH
 
-#include "rhythmic-head.hh"
+#include "stencil.hh"
+#include "grob-interface.hh"
 
-/** ball at the end of the stem. Takes care of:
 
-  * help lines  
+class Note_head
+{
+public:
+  DECLARE_SCHEME_CALLBACK (print, (SCM));
+  DECLARE_SCHEME_CALLBACK (brew_ez_stencil, (SCM));
+  DECLARE_SCHEME_CALLBACK (stem_x_shift, (SCM));
+  DECLARE_SCHEME_CALLBACK (calc_stem_attachment, (SCM));
+  DECLARE_GROB_INTERFACE();
 
-  */
+  static Real stem_attachment_coordinate (Grob *, Axis a);
+  static int get_balltype (Grob *);
 
-class Note_head : public Rhythmic_head {
-public:
-  
-  /// position of top line (5 linestaff: 8)
-  int position_i_;
-
-  /// pitch in steps
-  int steps_i_;
-    
-  /// -1 = lowest, 0 = inside, 1 = top
-  int extremal_i_;
-    
-  /// needed for the help-lines
-  int staff_size_i_;
-  Direction x_dir_;
-    
-  Note_head ();
-  static int compare (Note_head * const &a, Note_head *const &b) ;
-
-protected:
-  virtual Interval do_width () const;
-  virtual void do_pre_processing();
-  virtual Molecule* do_brew_molecule_p() const;
+  static Offset get_stem_attachment (Font_metric *, string);
 };
 #endif // NOTEHEAD_HH