X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fpaper-score.hh;h=8cc83e06444a6d517720a5ebde51f82c9860d4ad;hb=34881554afeaf03a55a3a983caf9cfeaaf3ea060;hp=31914b2c206176575f6a94a100cf5a6d978f219e;hpb=9661ba1fb275f3e14f8a69f2cee2f02a2f893e48;p=lilypond.git diff --git a/lily/include/paper-score.hh b/lily/include/paper-score.hh index 31914b2c20..8cc83e0644 100644 --- a/lily/include/paper-score.hh +++ b/lily/include/paper-score.hh @@ -3,12 +3,11 @@ source file of the GNU LilyPond music typesetter - (c) 1996--2000 Han-Wen Nienhuys + (c) 1996--2004 Han-Wen Nienhuys */ - -#ifndef P_SCORE_HH -#define P_SCORE_HH +#ifndef PAPER_SCORE_HH +#define PAPER_SCORE_HH #include "column-x-positions.hh" #include "parray.hh" @@ -17,43 +16,31 @@ #include "lily-guile.hh" #include "protected-scm.hh" -/** all stuff which goes onto paper. notes, signs, symbols in a score - #Paper_score# contains the items, the columns. - - */ +/* LAYOUT output */ class Paper_score : public Music_output { - SCM main_smob_; public: - Paper_def *paper_l_; + Output_def *layout_; + System *system_; - Paper_outputter *outputter_l_; - Line_of_score * line_l_; - Paper_score (); - /** - @return index of argument. - */ int find_col_idx (Paper_column const *) const; + Link_array broken_col_range (Item const*, Item const*) const; + void typeset_line (System*); + void output (); - Link_array broken_col_range (Item const*,Item const*) const; - void typeset_line (Line_of_score*); - protected: - /* MAIN ROUTINES */ - virtual void process(); + virtual SCM process (String); private: - /// before calc_breaking - void preprocess(); - void calc_idealspacing(); - /// calculate where the lines are to be broken, and use results - Array calc_breaking(); - - /// after calc_breaking - void postprocess(); + Protected_scm systems_; + + void preprocess (); + void calc_idealspacing (); + Array calc_breaking (); + void postprocess (); Paper_score (Paper_score const &); }; -#endif +#endif /* PAPER_SCORE_HH */