*** empty log message ***
[lilypond.git] / lily / include / paper-def.hh
blob3acf25a85f2eb712cb53feb1a4d3582b507e69b7
1 /*
2 paper-def.hh -- declare Paper_def
4 source file of the GNU LilyPond music typesetter
6 (c) 1996--2002 Han-Wen Nienhuys <hanwen@cs.uu.nl>
7 */
10 #ifndef PAPER_DEF_HH
11 #define PAPER_DEF_HH
14 #include "lily-proto.hh"
15 #include "lily-guile.hh"
16 #include "real.hh"
17 #include "array.hh"
18 #include "interval.hh"
19 #include "music-output-def.hh"
22 /**
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.
30 TODO:
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
43 interline
46 class Paper_def : public Music_output_def
48 protected:
49 VIRTUAL_COPY_CONS (Music_output_def);
51 public:
52 Paper_outputter* get_paper_outputter () ;
54 SCM font_descriptions ()const;
55 virtual ~Paper_def ();
56 static int score_count_;
59 JUNKME
61 Real get_realvar (SCM symbol) const;
62 Real get_var (String id) const;
63 void reinit ();
64 Paper_def ();
65 Paper_def (Paper_def const&);
67 Interval line_dimensions_int (int) const;
69 virtual int get_next_score_count () const;
70 static void reset_score_count ();
71 void output_settings (Paper_outputter*) const;
73 Font_metric * find_font (SCM name, Real mag);
75 // urg
76 friend int yyparse (void*);
79 #endif // Paper_def_HH