2 note-performer.cc -- implement Note_performer
4 source file of the GNU LilyPond music typesetter
6 (c) 1996, 1997--1998 Jan Nieuwenhuizen <janneke@gnu.org>
9 #include "note-performer.hh"
10 #include "musical-request.hh"
11 #include "audio-item.hh"
14 IMPLEMENT_IS_TYPE_B1 (Note_performer,Performer);
15 ADD_THIS_TRANSLATOR (Note_performer);
17 Note_performer::Note_performer ()
23 Note_performer::do_print () const
27 note_req_l_->print ();
32 Note_performer::do_process_requests ()
34 // this is _really_ braindead, but it generates some output
35 if (!note_req_l_ || !note_req_l_->access_Melodic_req () || !note_req_l_->access_Rhythmic_req ())
38 int transposing_i = 0;
40 Scalar prop = get_property ("transposing");
41 if (!prop.empty_b () && prop.isnum_b ())
45 play (new Audio_note (note_req_l_, transposing_i));
51 Note_performer::do_try_request (Request* req_l)
56 if (!req_l->access_Musical_req () || !req_l->access_Musical_req ()->access_Note_req ())
59 note_req_l_ = req_l->access_Musical_req ()->access_Melodic_req ();