lilypond-1.3.12
[lilypond.git] / lily / melisma-engraver.cc
blob2bc76c99309ceba781493053c755ce85c37cee9d
1 /*
2 melisma-engraver.cc -- implement Melisma_engraver
4 source file of the GNU LilyPond music typesetter
6 (c) 1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
8 */
10 #include "engraver.hh"
11 #include "musical-request.hh"
13 /**
14 Signal existence of melismas.
16 class Melisma_engraver:public Engraver
18 public:
19 VIRTUAL_COPY_CONS(Translator);
20 bool do_try_music (Music *);
23 ADD_THIS_TRANSLATOR(Melisma_engraver);
25 bool
26 Melisma_engraver::do_try_music (Music *m )
28 if (dynamic_cast<Melisma_playing_req*>(m))
30 SCM plain (get_property ("melismaBusy", 0));
31 SCM slur (get_property ("slurMelismaBusy", 0));
32 SCM tie (get_property ("tieMelismaBusy", 0));
33 return (gh_boolean_p (plain) && gh_scm2bool (plain))
34 || (gh_boolean_p (slur) && gh_scm2bool (slur))
35 || (gh_boolean_p (tie) && gh_scm2bool (tie));
37 return false;