]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/paper-book.hh
(fill_pages): New method. Try to cramp or
[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
9 #ifndef PAPER_BOOK_HH
10 #define PAPER_BOOK_HH
11
12 #include "lily-guile.hh"
13 #include "parray.hh"
14 #include "protected-scm.hh"
15 #include "smobs.hh"
16
17 #define PAGE_LAYOUT "ps"
18
19 class Paper_book
20 {
21 public:
22   Array<SCM> headers_;
23   Array<SCM> global_headers_;
24   Link_array<Paper_def> papers_;
25   Array<SCM> scores_;
26   Real height_;
27   Protected_scm copyright_;
28   Protected_scm tagline_;
29
30   Paper_book ();
31   void init ();
32   Link_array<Page> *get_pages ();
33   Link_array<Page> *fill_pages (Page*, int, Real);
34   SCM get_scopes (int);
35   Stencil* get_title (int);
36   void output (String);
37   void classic_output (String);
38   DECLARE_SMOBS (Paper_book, )
39 };
40
41 DECLARE_UNSMOB (Paper_book, paper_book)
42
43 #endif /* PAPER_BOOK_HH */
44