]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/performance.hh
release: 1.0.1
[lilypond.git] / lily / include / performance.hh
1 /*
2   performance.hh -- declare Performance
3
4   (c)  1997--1998 Jan Nieuwenhuizen <janneke@gnu.org>
5  */
6
7 #ifndef PERFORMANCE_HH
8 #define PERFORMANCE_HH
9
10 #include "lily-proto.hh"
11 #include "plist.hh"
12 #include "music-output.hh"
13
14 /** all stuff which goes onto midi. notes, signs, symbols in a score
15      #Performance# contains the items, the columns.
16     */
17
18 class Performance : public Music_output {
19 public:
20   Performance ();
21   ~Performance () {}
22
23   void add_column (Audio_column*);
24   void add_staff (Audio_staff* l);
25   void add_element (Audio_element*p);
26
27     
28   void output (Midi_stream& midi_stream_r);
29   void output_header_track (Midi_stream& midi_stream_r);
30
31   void print() const;
32   void process();
33
34   Pointer_list<Audio_column*> audio_column_p_list_;
35   Link_list<Audio_staff*> audio_staff_l_list_;
36   Pointer_list<Audio_element*> audio_elem_p_list_;
37   Midi_def  * midi_l_;
38 };
39
40 #endif // PERFORMANCE_HH