]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/staff-performer.hh
3352e85b77ccbe193898fa84b28edf363e1bb20e
[lilypond.git] / lily / include / staff-performer.hh
1 /*
2   staff-performer.hh -- declare Staff_performer
3
4   (c) 1996,  1997--1998 Han-Wen Nienhuys <hanwen@stack.nl>
5                  Jan Nieuwenhuizen <jan@digicash.com>
6  */
7
8 #ifndef STAFF_PERFORMER_HH
9 #define STAFF_PERFORMER_HH
10
11 #include "performer-group-performer.hh"
12
13 /** Perform a staff. Individual notes should have their instrument
14   (staff-wide) set, so we override play()
15
16   */
17 class Staff_performer : public Performer_group_performer 
18 {
19 public:
20   TRANSLATOR_CLONE(Staff_performer);
21   DECLARE_MY_RUNTIME_TYPEINFO;
22
23   Staff_performer ();
24   ~Staff_performer ();
25
26   String new_instrument_str ();
27   String instrument_str_;
28
29 protected:
30   virtual void play (Audio_element* p);
31   virtual void do_removal_processing ();
32   virtual void do_creation_processing ();
33   virtual void do_process_requests ();
34
35 private:
36   Audio_staff* audio_staff_p_;
37 };
38
39 #endif // STAFF_PERFORMER_HH