]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/col-info.hh
release: 1.0.15
[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--1998 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
25 /// helper struct for #Spacing_problem#
26 struct Column_info {
27   Paper_column *pcol_l_;
28   P<Real> fixpos_p_;
29
30   Interval width_;
31   int rank_i_;
32   /// did some tricks to make this column come out.
33   bool ugh_b_;          
34
35   Drul_array< Array<Spacer_rod> > rods_;
36   
37   Column_info();
38   Column_info (Paper_column *,Real const *);
39
40   int rank_i () const;
41   void print() const;
42   bool fixed_b() const ;
43   Real fixed_position() const ;
44 };
45
46 #endif // COL_INFO_HH