2 paper-def.hh -- declare Paper_def
4 source file of the GNU LilyPond music typesetter
6 (c) 1996--2003 Han-Wen Nienhuys <hanwen@cs.uu.nl>
14 #include "lily-proto.hh"
15 #include "lily-guile.hh"
18 #include "interval.hh"
19 #include "music-output-def.hh"
24 Symbols, dimensions and constants pertaining to visual output.
26 This struct takes care of all kinds of symbols, dimensions and
27 constants. Most of them are related to the point-size of the fonts,
28 so therefore, the lookup table for symbols is also in here.
32 add support for multiple fontsizes
34 remove all utility funcs
37 add support for other len->wid conversions.
40 Interesting variables:
42 /// The distance between lines
46 class Paper_def : public Music_output_def
49 VIRTUAL_COPY_CONS (Music_output_def);
52 Paper_outputter* get_paper_outputter (String) const;
54 SCM font_descriptions ()const;
55 virtual ~Paper_def ();
56 static int score_count_;
61 Real get_realvar (SCM symbol) const;
64 Paper_def (Paper_def const&);
66 Interval line_dimensions_int (int) const;
68 void output_settings (Paper_outputter*) const;
70 Font_metric * find_font (SCM name, Real mag);
73 friend int yyparse (void*);
76 Paper_def * unsmob_paper (SCM x);
77 Font_metric *select_font (Paper_def *paper, SCM chain);
79 #endif // Paper_def_HH