X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fpaper-def.hh;h=8346074e30950e3931dd848d93ef75e9cafda1c8;hb=3b3e161088f1a4be942e67729d0f89f0e8d31c51;hp=a06674be8d6c16a04a2f73e8803c7e756dac431b;hpb=cec6dfa6bf0fb931eb7f42b1ee44ca2ec19a9f34;p=lilypond.git diff --git a/lily/include/paper-def.hh b/lily/include/paper-def.hh index a06674be8d..8346074e30 100644 --- a/lily/include/paper-def.hh +++ b/lily/include/paper-def.hh @@ -3,18 +3,23 @@ source file of the GNU LilyPond music typesetter - (c) 1996,1997 Han-Wen Nienhuys + (c) 1996--2000 Han-Wen Nienhuys */ #ifndef PAPER_DEF_HH #define PAPER_DEF_HH -#include "lily-proto.hh" + +#include "lily-proto.hh" +#include "lily-guile.hh" #include "real.hh" #include "moment.hh" +#include "array.hh" +#include "interval.hh" #include "music-output-def.hh" +#include "protected-scm.hh" /** @@ -28,57 +33,50 @@ add support for multiple fontsizes + remove all utility funcs + + add support for other len->wid conversions. - Input_engraver should be in here. - */ -class Paper_def : public Music_output_def { - Lookup *lookup_p_; - Dictionary *real_vars_p_; + Interesting variables: + + /// The distance between lines + interline + +*/ +class Paper_def : public Music_output_def +{ protected: - VIRTUAL_COPY_CONS(Paper_def,Music_output_def); -public: - virtual ~Paper_def(); - DECLARE_MY_RUNTIME_TYPEINFO; + VIRTUAL_COPY_CONS(Music_output_def); - void set_var (String, Real); - Real get_var (String) const; - void reinit(); - Paper_def(); - void set (Lookup*); +public: + SCM font_descriptions ()const; + virtual ~Paper_def (); + static int default_count_i_; + + /* + JUNKME + */ + Real get_realvar (SCM symbol) const; + Real get_var (String id) const; + SCM get_scmvar (String id)const; + void reinit (); + Paper_def (); Paper_def (Paper_def const&); - /// The distance between beams - Real interbeam_f() const; - /** - The distance between lines - */ - Real interline_f() const; - /// half the distance between lines - Real internote_f() const; - - /// thickness of the standard line - Real rule_thickness() const; - Real whole_width() const; - Real linewidth_f() const; - /// height of the staff - Real standard_height() const; - - /// width of a crotchet ball - Real note_width() const; - void print() const; - - Lookup const * lookup_l(); // TODO naming - - /** convert a duration to an idealspacing - influence using the geometric_ and parameters. - */ - Real duration_to_dist (Moment, Real) const; - Real geometric_spacing(Moment) const; - Real arithmetic_constant(Moment minimal_mom) const; - Real arithmetic_spacing( Moment mom,Real constant) const; + + Interval line_dimensions_int (int) const; + + virtual int get_next_default_count () const; + static void reset_default_count(); + void output_settings (Paper_outputter*) const; + Paper_outputter* paper_outputter_p () ; + + Font_metric * find_font (SCM name, Real mag); + + // urg + friend int yyparse (void*); }; #endif // Paper_def_HH -