]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/col-info.hh
release: 1.1.60
[lilypond.git] / lily / include / col-info.hh
1 /*
2   col-info.hh -- declare Column_info
3
4   source file of the GNU LilyPond music typesetter
5
6   (c)  1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
7 */
8
9
10 #ifndef COL_INFO_HH
11 #define COL_INFO_HH
12
13 #include "lily-proto.hh"
14 #include "pointer.hh"
15 #include "interval.hh"
16 #include "drul-array.hh"
17
18 struct Spacer_rod {
19   Real distance_f_;
20   int other_idx_;
21   void print () const;
22 };
23
24 /// helper struct for #Spacing_problem#
25 struct Column_info {
26   Paper_column *pcol_l_;
27   P<Real> fixpos_p_;
28
29   Interval width_;
30   int rank_i_;
31   /// did some tricks to make this column come out.
32   bool ugh_b_;          
33
34   Drul_array< Array<Spacer_rod> > rods_;
35
36   Column_info();
37   Column_info (Paper_column *,Real const *);
38
39   int rank_i () const;
40   void print() const;
41   bool fixed_b() const ;
42   Real fixed_position() const ;
43 };
44
45 #endif // COL_INFO_HH