]> git.donarmstrong.com Git - lilypond.git/blob - hdr/paper.hh
release: 0.0.27
[lilypond.git] / hdr / paper.hh
1 #include "proto.hh"
2 #include "real.hh"
3 #include "string.hh"
4 #include "moment.hh"
5
6 /// symbols, dimensions and constants
7 struct Paperdef {
8     Lookup *lookup_p_;
9     String outfile;
10
11     Real linewidth;
12
13     /// how much space does a whole note take (ideally?)
14     Real whole_width;
15
16     /// ideal = geometric_ ^ log2(duration)
17     Real geometric_;
18     
19     /****************/
20     void reinit();
21     Paperdef(Lookup*);
22     void set(Lookup*);
23     ~Paperdef();
24     Paperdef(Paperdef const&);
25     Real interline()const;
26     Real internote()const;
27     Real rule_thickness()const;
28     Real standard_height()const;
29     Real note_width() const;
30     void print() const;
31     Real duration_to_dist(Moment);
32 };
33 /** This struct takes care of all kinds of symbols, dimensions and
34  constants. Most of them are related to the point-size of the fonts,
35  so therefore, the lookup table for symbols is also in here.
36
37  see TODO
38  */