2 beam-performer.cc -- implement Beam_performer
4 source file of the GNU LilyPond music typesetter
6 (c) 1996--2004 Jan Nieuwenhuizen <janneke@gnu.org>
9 #include "performer.hh"
11 #include "audio-item.hh"
12 #include "audio-column.hh"
13 #include "global-translator.hh"
17 Convert evs to audio beams.
19 class Beam_performer : public Performer {
21 TRANSLATOR_DECLARATIONS(Beam_performer);
24 virtual bool try_music (Music *ev) ;
25 virtual void start_translation_timestep ();
26 virtual void process_music ();
27 void set_melisma (bool);
35 Beam_performer::process_music ()
46 start_ev_->origin ()->warning (_ ("already have a beam"));
57 Beam_performer::set_melisma (bool ml)
59 SCM b = get_property ("autoBeaming");
61 daddy_trans_->set_property ("beamMelismaBusy", ml ? SCM_BOOL_T :SCM_BOOL_F);
66 Beam_performer::start_translation_timestep ()
80 Beam_performer::try_music (Music *m)
82 if (m->is_mus_type ("beam-event"))
84 Direction d = to_dir (m->get_mus_property ("span-direction"));
99 ENTER_DESCRIPTION(Beam_performer,"","",
100 "beam-event","","","");
102 Beam_performer::Beam_performer()