]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/notehead.hh
release: 0.0.52
[lilypond.git] / lily / include / notehead.hh
1 /*
2   notehead.hh -- part of LilyPond
3
4   (c) 1996,97 Han-Wen Nienhuys
5 */
6
7 #ifndef NOTEHEAD_HH
8 #define NOTEHEAD_HH
9
10 #include "item.hh"
11
12 /** ball at the end of the stem takes care of:
13
14   * help lines  
15   * proper placing of dots 
16
17   It also is the item for a Rest
18   
19   */
20
21 class Notehead : public Item {
22 public:
23     NAME_MEMBERS(Notehead);
24
25     bool rest_b_;
26     int position;
27     /// -1 = lowest, 0 = inside, 1 = top
28     int extremal;
29     
30     /// needed for the help-lines
31     int staff_size;
32     int dots;
33     int balltype;
34     int x_dir;
35     
36     /* *************** */
37     
38     void set_rhythmic(Rhythmic_req *);
39
40     /**
41       position of top line (5 linestaff: 8)
42       */
43     Notehead(int staff_size);
44     static int compare(Notehead * const &a, Notehead *const &b) ;
45 protected:
46     virtual    void do_print()const;
47     virtual    Molecule* brew_molecule_p()const;
48 };
49 #endif // NOTEHEAD_HH
50