lilypond-1.3.66
[lilypond.git] / lily / include / performer.hh
blob8cba9f6cba649ce14fa890f31490702fce1fb2f9
1 /*
2 performer.hh -- declare Performer
4 (c) 1996--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
5 Jan Nieuwenhuizen <janneke@gnu.org>
6 */
8 #ifndef PERFORMER_HH
9 #define PERFORMER_HH
11 #include "audio-element-info.hh"
12 #include "array.hh"
13 #include "request.hh"
14 #include "score-element-info.hh"
15 #include "translator.hh"
17 /**
18 Convert a music definition into a audio representation.
19 A baseclass
21 class Performer : public virtual Translator
23 public:
24 VIRTUAL_COPY_CONS(Translator);
25 friend class Performer_group_performer;
26 Performer_group_performer* daddy_perf_l() const;
28 protected:
29 virtual void announce_element (Audio_element_info);
30 virtual void acknowledge_element (Audio_element_info);
31 virtual void process_acknowledged ();
32 virtual int get_tempo_i() const;
33 virtual void play_element (Audio_element * elem_p );
37 #endif // PERFORMER_HH