X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fgrace-music.cc;h=ffac90114cb52e0ebfb74bf4d3f7755f912f54b0;hb=9e781b7dc83b60a543ce218aa1a5f139f74c760f;hp=02abe88c6046575af8250607f835ebcb9ed76d05;hpb=4eee0d110ca632aa8adf3af223f7040c7b9752ff;p=lilypond.git diff --git a/lily/grace-music.cc b/lily/grace-music.cc index 02abe88c60..ffac90114c 100644 --- a/lily/grace-music.cc +++ b/lily/grace-music.cc @@ -1,27 +1,37 @@ -/* - grace-music.cc -- implement Grace_music - - source file of the GNU LilyPond music typesetter - - (c) 1999--2004 Han-Wen Nienhuys - +/* + This file is part of LilyPond, the GNU music typesetter. + + Copyright (C) 1999--2014 Han-Wen Nienhuys + + 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. + + 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. + + You should have received a copy of the GNU General Public License + along with LilyPond. If not, see . */ -#include "grace-music.hh" -#include "grace-iterator.hh" +#include "music.hh" +#include "music-wrapper.hh" -Moment -Grace_music::start_mom () const +class Grace_music { - Moment *l = unsmob_moment (Music_wrapper::length_callback (self_scm ())); - Moment gl; - gl.grace_part_ = -(l->main_part_ + l->grace_part_ ); - return gl; -} +public: + DECLARE_SCHEME_CALLBACK (start_callback, (SCM)); +}; -Grace_music::Grace_music (SCM x) - : Music_wrapper (x) +MAKE_SCHEME_CALLBACK (Grace_music, start_callback, 1); +SCM +Grace_music::start_callback (SCM m) { + Moment *l = unsmob_moment (Music_wrapper::length_callback (m)); + Moment gl; + gl.grace_part_ = -(l->main_part_ + l->grace_part_); + return gl.smobbed_copy (); } - -ADD_MUSIC (Grace_music);