]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/score.hh
Fix some bugs in the dynamic engraver and PostScript backend
[lilypond.git] / lily / include / score.hh
1 /*
2   score.hh -- declare Score
3
4   source file of the GNU LilyPond music typesetter
5
6   (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
7 */
8
9 #ifndef SCORE_HH
10 #define SCORE_HH
11
12 #include "lily-proto.hh"
13
14 #include "input.hh"
15 #include "std-vector.hh"
16 #include "smobs.hh"
17 #include "virtual-methods.hh"
18 #include "std-string.hh"
19
20 class Score : public Input
21 {
22   DECLARE_SMOBS (Score, foo);
23
24   SCM music_;
25
26 public:
27   vector<Output_def*> defs_;
28   string user_key_;
29   SCM header_;
30   bool error_found_;
31
32   Score ();
33   Score (Score const &);
34
35   
36   SCM get_music () const;
37   void add_output_def (Output_def *def);
38   void set_music (SCM music);
39   SCM book_rendering (Output_def *, Output_def *, Object_key *);
40 };
41
42 DECLARE_UNSMOB (Score, score);
43
44 void default_rendering (SCM, SCM, SCM, SCM, SCM, SCM);
45 SCM ly_render_output (SCM, SCM);
46 SCM ly_run_translator (SCM, SCM, SCM);
47
48 #endif /* SCORE_HH */