]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/paper-book.hh
* scm/music-functions.scm (def-grace-function): move macros from
[lilypond.git] / lily / include / paper-book.hh
1 /*
2   paper-book.hh -- declare Paper_book
3
4   source file of the GNU LilyPond music typesetter
5
6   (c) 2004  Jan Nieuwenhuizen <janneke@gnu.org>
7 */
8 #ifndef PAPER_BOOK_HH
9 #define PAPER_BOOK_HH
10
11 #include "lily-guile.hh"
12 #include "parray.hh"
13 #include "protected-scm.hh"
14 #include "smobs.hh"
15
16 struct Score_lines
17 {
18   SCM lines_;
19   SCM header_;
20
21   Score_lines () ;
22   void gc_mark ();
23 };
24
25 /*
26   
27   DOCME.
28   
29 */
30 class Paper_book
31 {
32   DECLARE_SMOBS (Paper_book, );
33
34   SCM lines_;
35   SCM pages_;
36
37   
38   Real height_;                 // what is this variable for? 
39   SCM copyright_;
40   SCM tagline_;
41 public:
42   SCM header_;
43   Array<Score_lines> score_lines_;
44   Output_def *bookpaper_;
45   
46   Paper_book ();
47
48   SCM lines ();
49   SCM pages ();
50   Stencil title (int);
51   void classic_output (String);
52   void init ();
53   void output (String);
54 };
55
56 DECLARE_UNSMOB (Paper_book, paper_book)
57
58 #endif /* PAPER_BOOK_HH */
59