source file of the GNU LilyPond music typesetter
- (c) 1997--2004 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+ (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
*/
#ifndef BOOK_HH
#define BOOK_HH
-#include "input.hh"
#include "lily-proto.hh"
-#include "parray.hh"
-#include "smobs.hh"
+#include "std-vector.hh"
+#include "object-key.hh"
+#include "std-string.hh"
+#include "virtual-methods.hh"
-class Book : public Input
+class Book
{
- DECLARE_SMOBS (Book, foo);
+ DECLARE_SMOBS (Book);
public:
+ string user_key_;
SCM header_;
- Book_paper_def *bookpaper_;
-
- Link_array<Score> scores_;
- Book ();
+ Output_def *paper_;
+ SCM scores_;
+ SCM input_location_;
- void process (String outname, Music_output_def*, SCM header);
- SCM to_stencil (Music_output_def*, SCM header);
+ Book (Book const &);
+ Input *origin() const;
+ VIRTUAL_COPY_CONSTRUCTOR(Book, Book);
+ Book ();
+ void add_score (SCM);
+ Paper_book *process (Output_def *def_paper,
+ Output_def *def_layout);
+ void set_keys ();
};
+
DECLARE_UNSMOB (Book, book);
#endif /* BOOK_HH */