]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/tuplet-spanner.hh
release: 1.3.28
[lilypond.git] / lily / include / tuplet-spanner.hh
1 /*
2   plet-spanner.hh -- part of GNU LilyPond
3
4   (c)  1997--2000 Jan Nieuwenhuizen <janneke@gnu.org>
5 */
6
7 #ifndef Tuplet_spanner_HH
8 #define Tuplet_spanner_HH
9
10 #include "pointer.hh"
11 #include "spanner.hh"
12
13 /** supportable plet: triplets, eentweetjes, ottava, etc.
14
15     TODO: quantise, we don't want to collide with staff lines.
16     (or should we be above staff?)
17
18   todo: handle breaking elegantly.
19 */
20 class Tuplet_spanner : public Spanner
21 {
22 public:
23   Tuplet_spanner ();
24  
25   void add_column (Note_column*);
26   void add_beam (Beam*);
27 protected:
28   void calc_dy (Real *) const;
29   void calc_position_and_height (Real*,Real *dy)const;
30   
31   virtual Molecule* do_brew_molecule_p () const;
32   VIRTUAL_COPY_CONS(Score_element);
33   virtual void do_add_processing ();
34   virtual void do_post_processing ();
35   virtual Direction get_default_dir () const;
36 };
37
38 #endif // Tuplet_spanner_HH
39