]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/tuplet-bracket.hh
* flower
[lilypond.git] / lily / include / tuplet-bracket.hh
1 /*
2   tuplet-bracket.hh -- part of GNU LilyPond
3
4   (c) 1997--2005 Jan Nieuwenhuizen <janneke@gnu.org>
5 */
6
7 #ifndef Tuplet_bracket_HH
8 #define Tuplet_bracket_HH
9
10 #include "lily-guile.hh"
11 #include "lily-proto.hh"
12
13 class Tuplet_bracket
14 {
15 public:
16   DECLARE_SCHEME_CALLBACK (after_line_breaking, (SCM));
17   DECLARE_SCHEME_CALLBACK (before_line_breaking, (SCM));
18   DECLARE_SCHEME_CALLBACK (print, (SCM));
19
20   static bool has_interface (Grob *);
21   static void add_column (Grob *me, Item *);
22   static void add_beam (Grob *me, Grob *);
23   static Grob *parallel_beam (Grob *me, Link_array<Grob> const &cols, bool *equally_long);
24   static void calc_position_and_height (Grob *, Real *, Real *dy);
25   static Stencil make_bracket (Grob *me, Axis protusion_axis,
26                                Offset dz, Drul_array<Real> height,
27                                Interval gap, Drul_array<Real> widen,
28                                Drul_array<Real> shorten);
29   static Direction get_default_dir (Grob *);
30 };
31
32 #endif // Tuplet_bracket_HH
33