X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Frest.hh;h=138d34af2dcd4644b9557ad7ea349acce1b51aad;hb=5b4b0d6e9a197e8f9eb085b7c2ad78b8be3e5cfc;hp=90e5f518a342760aacc8080a6bb72810c7bd1ff6;hpb=a41a7fb966e8552cc8da7c4eab1b60eb7b8eff3a;p=lilypond.git diff --git a/lily/include/rest.hh b/lily/include/rest.hh index 90e5f518a3..138d34af2d 100644 --- a/lily/include/rest.hh +++ b/lily/include/rest.hh @@ -1,29 +1,31 @@ /* - rest.hh -- part of LilyPond + rest.hh -- declare Rest - (c) 1996,97 Han-Wen Nienhuys + source file of the GNU LilyPond music typesetter + + (c) 1997--2008 Han-Wen Nienhuys */ #ifndef REST_HH #define REST_HH -#include "item.hh" - -/** typeset a Rest. A "vanilla" item. - */ -struct Rest : Item { - int dots; - int balltype; - - /// rests can be translated up and down. - int pos_i_; - /* *************** */ +#include "grob-interface.hh" +class Grob; - Rest(Duration); - void do_print()const; -NAME_MEMBERS(Rest); - Molecule* brew_molecule_p()const; +class Rest +{ +public: + DECLARE_SCHEME_CALLBACK (y_offset_callback, (SCM)); + DECLARE_SCHEME_CALLBACK (calc_cross_staff, (SCM)); + DECLARE_GROB_INTERFACE(); + static string glyph_name (Grob *, int, string, bool); + static SCM brew_internal_stencil (Grob*, bool); + static SCM generic_extent_callback (Grob*, Axis); + DECLARE_SCHEME_CALLBACK (polyphonic_offset_callback, (SCM)); + DECLARE_SCHEME_CALLBACK (print, (SCM)); + DECLARE_SCHEME_CALLBACK (width, (SCM)); + DECLARE_SCHEME_CALLBACK (height, (SCM)); + DECLARE_SCHEME_CALLBACK (pure_height, (SCM, SCM, SCM)); }; -#endif - +#endif // REST_HH