X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fpaper-def.hh;h=17847564c689ab44e6e793ebb5430250e1410065;hb=f988425624a6f6d1a48aea0ac0c1c84ff0857e56;hp=4195ca77f9d88ed1b65b18cf686e81af3223e9ea;hpb=4ac2a813e27e121f4577f75b428544f69ade3b6c;p=lilypond.git diff --git a/lily/include/paper-def.hh b/lily/include/paper-def.hh index 4195ca77f9..17847564c6 100644 --- a/lily/include/paper-def.hh +++ b/lily/include/paper-def.hh @@ -3,20 +3,23 @@ source file of the GNU LilyPond music typesetter - (c) 1996, 1997--1998 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" /** @@ -30,71 +33,44 @@ add support for multiple fontsizes + remove all utility funcs + + add support for other len->wid conversions. - Input_engraver should be in here. - */ + + Interesting variables: + + /// The distance between lines + interline + +*/ class Paper_def : public Music_output_def { - Assoc *lookup_p_assoc_p_; - static int default_count_i_; - + Protected_scm lookup_alist_; protected: - VIRTUAL_COPY_CONS(Paper_def,Music_output_def); + VIRTUAL_COPY_CONS(Music_output_def); public: virtual ~Paper_def (); - DECLARE_MY_RUNTIME_TYPEINFO; - - Array shape_int_a_; - - Real get_var (String) const; + 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 (); - void set_lookup (int, Lookup*); - + void set_lookup (int, SCM lookup_smob); Paper_def (Paper_def const&); - /// The distance between beams of multiplicity_i - Real interbeam_f (int multiplicity_i) const; - - /// The thickness of a beam - Real beam_thickness_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; - - /// thickness of the staff line - Real staffline_f () const; Interval line_dimensions_int (int) const; - Real linewidth_f () const; - - /// height of the staff - Real staffheight_f () const; - - /// width of a crotchet ball - Real note_width () const; - void print () const; Lookup const * lookup_l (int sz) const; // TODO naming - - /** convert a duration to an idealspacing - influence using the geometric_ and paratime_signatures. - */ - 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; virtual int get_next_default_count () const; static void reset_default_count(); - void output_settings (Paper_outputter*) const; - Paper_outputter* paper_outputter_p (Paper_stream*, Scope*, String) const; Paper_stream* paper_stream_p () const; String base_output_str () const;