X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fnote-head.hh;h=1e167d58b284b36835ee43e6f0408e380f4bb3af;hb=8e2eaf4959bec63a1128a444591a540f4f1e2937;hp=aa55ca4967557c94c6b5cbd5cf53e4d444e238bb;hpb=7e72a1e50e94a7f9738d62599de79fe7745f600c;p=lilypond.git diff --git a/lily/include/note-head.hh b/lily/include/note-head.hh index aa55ca4967..1e167d58b2 100644 --- a/lily/include/note-head.hh +++ b/lily/include/note-head.hh @@ -1,34 +1,40 @@ /* - note-head.hh -- part of GNU LilyPond + This file is part of LilyPond, the GNU music typesetter. - (c) 1996--2004 Han-Wen Nienhuys -*/ + Copyright (C) 1996--2015 Han-Wen Nienhuys -#ifndef NOTEHEAD_HH -#define NOTEHEAD_HH + LilyPond is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. -#include "lily-guile.hh" -#include "molecule.hh" + LilyPond is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. -/** ball at the end of the stem. Also takes care of ledger lines. + You should have received a copy of the GNU General Public License + along with LilyPond. If not, see . +*/ - NoteHead is a kind of RhythmicHead, see there. +#ifndef NOTEHEAD_HH +#define NOTEHEAD_HH - Read-only: -*/ +#include "stencil.hh" +#include "grob-interface.hh" -class Note_head +class Note_head { public: - DECLARE_SCHEME_CALLBACK (brew_molecule, (SCM )); - static Interval head_extent (Grob*, Axis); - static Molecule brew_ledger_lines (Grob *me, int pos, int interspaces, - Interval x_extent, Real, bool); - DECLARE_SCHEME_CALLBACK (brew_ez_molecule, (SCM)); - DECLARE_SCHEME_CALLBACK (extent, (SCM,SCM)); - static bool has_interface (Grob*); + DECLARE_SCHEME_CALLBACK (print, (SCM)); + DECLARE_SCHEME_CALLBACK (stem_x_shift, (SCM)); + DECLARE_SCHEME_CALLBACK (calc_stem_attachment, (SCM)); + DECLARE_SCHEME_CALLBACK (include_ledger_line_height, (SCM)); + static Real stem_attachment_coordinate (Grob *, Axis a); - static int get_balltype (Grob*) ; + static int get_balltype (Grob *); + + static Offset get_stem_attachment (Font_metric *, const string&); }; #endif // NOTEHEAD_HH