]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/note-head.hh
release: 1.1.25
[lilypond.git] / lily / include / note-head.hh
index 450281825d15bd88985371a2e034ee34f5975a71..853fee35817515bfd2ebc538f29350e607bd9498 100644 (file)
@@ -1,54 +1,45 @@
 /*
   note-head.hh -- part of GNU LilyPond
 
-  (c) 1996,97 Han-Wen Nienhuys
+  (c) 1996--1998 Han-Wen Nienhuys
 */
 
 #ifndef NOTEHEAD_HH
 #define NOTEHEAD_HH
 
-#include "item.hh"
+#include "rhythmic-head.hh"
 
-/** ball at the end of the stem takes care of:
+/** ball at the end of the stem. Takes care of:
 
   * help lines  
-  * proper placing of dots 
 
-  It also is the item for a Rest
-  
   */
 
-class Note_head : public Item {
+class Note_head : public Rhythmic_head {
 public:
-    NAME_MEMBERS();
+  
+  String note_head_type_str_;
 
-    bool rest_b_;
-    int position_i_;
-    
-    /// -1 = lowest, 0 = inside, 1 = top
-    int extremal_i_;
+  /// position of top line (5 linestaff: 8)
+  int position_i_;
+
+  /// pitch in steps
+  int steps_i_;
     
-    /// needed for the help-lines
-    int staff_size_i_;
-    int dots_i_;
-    int balltype_i_;
-    int dot_delta_y_i_;
-    int x_dir_i_;
+  /// -1 = lowest, 0 = inside, 1 = top
+  int extremal_i_;
     
-    /* *************** */
+  /// needed for the help-lines
+  int staff_size_i_;
+  Direction x_dir_;
     
-    void set_rhythmic(Rhythmic_req *);
-
-    /**
-      position of top line (5 linestaff: 8)
-      */
-    Note_head(int staff_size);
-    void set_dots();
-    static int compare(Note_head * const &a, Note_head *const &b) ;
+  Note_head ();
+  static int compare (Note_head * const &a, Note_head *const &b) ;
+
 protected:
-    virtual    void do_print()const;
-    virtual void do_pre_processing();
-    virtual    Molecule* brew_molecule_p()const;
+  virtual Interval do_width () const;
+  virtual void do_pre_processing();
+  virtual Molecule* do_brew_molecule_p() const;
 };
 #endif // NOTEHEAD_HH