source file of the GNU LilyPond music typesetter
- (c) 1996--2002 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+ (c) 1996--2004 Han-Wen Nienhuys <hanwen@cs.uu.nl>
*/
+#include "score.hh"
#include "main.hh"
#include "warn.hh"
#include "font-metric.hh"
#include "scm-hash.hh"
#include "gourlay-breaking.hh"
#include "paper-outputter.hh"
-#include "file-results.hh"
+#include "input-file-results.hh"
#include "misc.hh"
#include "all-font-metrics.hh"
{
system_ = l; // ugh.
}
+
main_smob_ = gh_cons (l->self_scm (), main_smob_);
l->pscore_ = this;
- /*
- We don't unprotect l->self_scm (), we haven't got any place else to
- protect it from collection. */
-
+ scm_gc_unprotect_object (l->self_scm());
}
+
Paper_score::Paper_score (Paper_score const &s)
: Music_output (s)
{
urg. clean me
*/
void
-Paper_score::process ()
+Paper_score::process (String outname)
{
if (verbose_global_b)
- progress_indication (_f ("Element count %d ", system_->element_count ()));
+ progress_indication (_f ("Element count %d (spanners %d) ",
+ system_->element_count (),
+ system_->spanner_count ()));
- progress_indication (_ ("Preprocessing elements...") + " ");
+ progress_indication (_ ("Preprocessing graphical objects...") + " ");
/*
Be sure to set breakability on first & last column.
Array<Column_x_positions> breaking = calc_breaking ();
system_->break_into_pieces (breaking);
- outputter_ = paper_->get_paper_outputter ();
-;
+ outputter_ = paper_->get_paper_outputter (outname);
outputter_->output_header ();
outputter_->output_version ();
progress_indication ("\n");
- if (global_header)
+ if (global_input_file->header_)
{
-
- outputter_->output_scope (global_header, "lilypond");
- outputter_->write_header_fields_to_file (global_header);
+ outputter_->output_scope (global_input_file->header_, "lilypond");
+ outputter_->write_header_fields_to_file (global_input_file->header_);
}
+
if (header_)
{
outputter_->output_scope (header_, "lilypond");
outputter_->write_header_fields_to_file (header_);
}
-
- outputter_->output_comment (_ ("Outputting Score, defined at: "));
- outputter_->output_comment (origin_string_);
- if (paper_->variable_tab_)
- outputter_->output_scope (paper_->variable_tab_, "lilypondpaper");
+ outputter_->output_scope (paper_->scope_, "lilypondpaper");
SCM scm = scm_list_n (ly_symbol2scm ("header-end"), SCM_UNDEFINED);
outputter_->output_scheme (scm);