X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fpaper-outputter.hh;h=cd1a5e2c92fb4ffb34a0581f85398750c1276d28;hb=8659a99f233f5c4684292728e7ad4206669b35b0;hp=f1ff1a2131db81465c064b489d8b157bbb59c99b;hpb=a6bd229f7fe1dc4a03478e14ccc0c0c66b225061;p=lilypond.git diff --git a/lily/include/paper-outputter.hh b/lily/include/paper-outputter.hh index f1ff1a2131..cd1a5e2c92 100644 --- a/lily/include/paper-outputter.hh +++ b/lily/include/paper-outputter.hh @@ -1,7 +1,7 @@ /* This file is part of LilyPond, the GNU music typesetter. - Copyright (C) 1997--2010 Han-Wen Nienhuys + Copyright (C) 1997--2015 Han-Wen Nienhuys LilyPond is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -30,26 +30,27 @@ Glue between the backend (grobs, systems, pages) and the output file. proxy for Scheme backends. */ -class Paper_outputter +class Paper_outputter : public Smob { +public: + SCM mark_smob () const; + virtual ~Paper_outputter (); +private: SCM output_module_; string file_name_; SCM file_; public: - DECLARE_SMOBS (Paper_outputter); + Paper_outputter (SCM port, const string &format); -public: - SCM file () const; + void close (); SCM dump_string (SCM); - void output_scheme (SCM scm); - Paper_outputter (SCM port, string format); - SCM scheme_to_string (SCM); + SCM file () const; + SCM module () const; + SCM output_scheme (SCM scm); void output_stencil (Stencil); - void close (); + SCM scheme_to_string (SCM); }; -Paper_outputter *get_paper_outputter (string, string); -DECLARE_UNSMOB (Paper_outputter, outputter); #endif /* PAPER_OUTPUTTER_HH */