]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/lookup.hh
release: 0.1.59
[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
39   Atom streepje (int type) const;
40
41   Atom vbrace (Real &dy) const;
42   Atom vbracket (Real &dy) const;
43   Atom meter (Array<Scalar>) const;
44   Atom stem (Real y1_pos, Real y2_pos) const;
45   Atom rule_symbol (Real height, Real width) const;
46   Atom accidental (int) const;
47   Atom ball (int) const;
48   Atom flag (int, Direction) const;
49   Atom rest (int, bool outside) const;
50   Atom clef (String) const;
51   Atom bar (String, Real height) const;
52     
53   Atom dots () const;
54   Atom slur (Array<Offset> controls) const;
55   Atom plet (Real &dy, Real &dx, Direction dir) const;
56   Atom text (String style, String text, int align = 1) const;
57   Atom script (String idx) const;
58   Atom hairpin (Real & width, bool decresc, bool continued) const;
59   Atom dynamic (String) const;
60 };
61
62 #endif // LOOKUPSYMS_HH