]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/lookup.hh
release: 0.1.57
[lilypond.git] / lily / include / lookup.hh
1 /*
2   lookup.hh -- declare Lookup
3
4   source file of the GNU LilyPond music typesetter
5
6   (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
7 */
8
9 #ifndef LOOKUPSYMS_HH
10 #define LOOKUPSYMS_HH
11
12 #include "atom.hh"
13 #include "fproto.hh"
14 #include "scalar.hh"
15 #include "direction.hh"
16 #include "curve.hh"
17
18 /** handy interface to symbol table
19  */
20 struct Lookup {
21   Paper_def * paper_l_;
22   Symtables *symtables_p_;
23   String texsetting;
24
25   Lookup();
26   Lookup (Lookup const &);
27   ~Lookup();
28   
29   void add (String, Symtable*);
30   void print() const;
31
32   Atom fill (Box b) const;
33   Atom beam_element (int,int,Real=0) const;
34
35   /// round slope to closest TeXslope
36   Atom beam (Real&,Real, Real) const;
37   Atom ps_beam (Real, Real, Real)const;
38   Atom tex_beam (Real&, Real) const;
39
40   Atom streepje (int type) const;
41
42   Atom vbrace (Real &dy) const;
43   Atom vbracket (Real &dy) const;
44   Atom meter (Array<Scalar>) const;
45   Atom stem (Real y1_pos, Real y2_pos) const;
46   Atom rule_symbol (Real height, Real width) const;
47   Atom accidental (int) const;
48   Atom ball (int) const;
49   Atom flag (int, Direction) const;
50   Atom rest (int, bool outside) const;
51   Atom clef (String) const;
52   Atom bar (String, Real height) const;
53     
54   Atom dots () const;
55   Atom slur (Real &dy, Real &dx, Real ht, Direction dir) const;
56   Atom control_slur (Array<Offset> controls, Real dx, Real dy) const;
57   Atom plet (Real &dy, Real &dx, Direction dir) const;
58   Atom tex_slur (int dy, Real &dx, Direction dir) const;
59   Atom ps_slur (Real dy, Real dx, Real ht, Real dir) const;
60   Atom half_slur (int dy, Real &dx, Direction dir, int xpart) const;
61   Atom half_slur_middlepart (Real &dx, Direction dir) const;
62   Atom big_slur (int dy, Real &dx, Direction dir) const;
63   Atom text (String style, String text, int align = 1) const;
64   Atom script (String idx) const;
65   Atom hairpin (Real & width, bool decresc, bool continued) const;
66   Atom dynamic (String) const;
67 };
68
69 #endif