]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/lookup.hh
lilypond-0.1.28
[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
17 /** handy interface to symbol table
18  */
19 struct Lookup {
20   Paper_def * paper_l_;
21   Symtables *symtables_p_;
22   String texsetting;
23
24   Lookup();
25   Lookup (Lookup const &);
26   ~Lookup();
27   
28   void add (String, Symtable*);
29   void print() const;
30
31   Atom fill (Box b) const;
32   Atom beam_element (int,int,Real=0) const;
33
34   /// round slope to closest TeXslope
35   Atom beam (Real&,Real) const;
36
37   Atom streepje (int type) const;
38
39   Atom vbrace (Real &dy) const;
40   Atom meter (Array<Scalar>) const;
41   Atom stem (Real y1_pos, Real y2_pos) const;
42   Atom rule_symbol (Real height, Real width) const;
43   Atom accidental (int) const;
44   Atom ball (int) const;
45   Atom flag (int, Direction) const;
46   Atom rest (int, bool outside) const;
47   Atom clef (String) const;
48   Atom bar (String, Real height) const;
49     
50   Atom dots () const;
51   Atom slur (int dy, Real &dx, Direction dir) const;
52   Atom half_slur (int dy, Real &dx, Direction dir, int xpart) const;
53   Atom half_slur_middlepart (Real &dx, Direction dir) const;
54   Atom big_slur (int dy, Real &dx, Direction dir) const;
55   Atom text (String style, String text, int align = 1) const;
56   Atom script (String idx) const;
57   Atom hairpin (Real & width, bool decresc) const;
58   Atom dynamic (String) const;
59 };
60
61 #endif