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