X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fgregorian-ligature-engraver.hh;h=2f227eff8bb16f6032df710aa6ecaceab244ce6e;hb=9e781b7dc83b60a543ce218aa1a5f139f74c760f;hp=6d8e9a15e43c5fb567aa825087082e45dbadcb33;hpb=21497b2395aa5cc9c7b53942802763d49202a646;p=lilypond.git diff --git a/lily/include/gregorian-ligature-engraver.hh b/lily/include/gregorian-ligature-engraver.hh index 6d8e9a15e4..2f227eff8b 100644 --- a/lily/include/gregorian-ligature-engraver.hh +++ b/lily/include/gregorian-ligature-engraver.hh @@ -1,31 +1,43 @@ -/* - gregorian-ligature-engraver.hh -- declare Gregorian_ligature_engraver - - source file of the GNU LilyPond music typesetter - - (c) 2003 Juergen Reuter - - */ +/* + This file is part of LilyPond, the GNU music typesetter. + + Copyright (C) 2003--2014 Juergen Reuter + + 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 . +*/ #ifndef GREGORIAN_LIGATURE_ENGRAVER_HH #define GREGORIAN_LIGATURE_ENGRAVER_HH -#include "ligature-engraver.hh" +#include "coherent-ligature-engraver.hh" -class Gregorian_ligature_engraver : public Ligature_engraver +class Gregorian_ligature_engraver : public Coherent_ligature_engraver { - Music *porrectus_req_; + Stream_event *pes_or_flexa_req_; public: - TRANSLATOR_DECLARATIONS(Gregorian_ligature_engraver); + // no TRANSLATOR_DECLARATIONS (Gregorian_ligature_engraver) needed + // since this class is abstract protected: - virtual bool try_music (Music *); - virtual void typeset_ligature (Spanner *ligature, - Array primitives); + Gregorian_ligature_engraver (); + + virtual void listen_pes_or_flexa (Stream_event *ev); + virtual void build_ligature (Spanner *ligature, + vector const &primitives); virtual void transform_heads (Spanner *ligature, - Array primitives); /* abstract method */ - virtual void start_translation_timestep (); - void get_set_column (Item *, Paper_column *); + vector const &primitives) = 0; + void stop_translation_timestep (); }; #endif // GREGORIAN_LIGATURE_ENGRAVER_HH