]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/colhpos.hh
release: 0.1.11
[lilypond.git] / lily / include / colhpos.hh
1 /*
2   colhpos.hh -- part of GNU LilyPond
3
4   (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
5 */
6
7 #ifndef COLHPOS_HH
8 #define COLHPOS_HH
9
10 #include "varray.hh"
11 #include "lily-proto.hh"
12
13 typedef Array<Paper_column*>  Line_of_cols;
14
15 struct Col_hpositions {
16     Line_spacer * spacer_l_;
17     bool ugh_b_;
18     Line_of_cols error_col_l_arr_;
19     Line_of_cols cols;
20     Array<Real> config;
21     Real energy_f_;
22     bool satisfies_constraints_b_;
23
24     /* ************** */
25     void OK() const;
26     ~Col_hpositions();
27     void solve_line();
28     void approximate_solve_line();
29     /** generate a solution with no regard to idealspacings or
30       constraints.  should always work */
31     void stupid_solution();
32     Col_hpositions();
33     void add (Paper_column*c);
34     void print() const;
35 };
36
37
38 #endif // COLHPOS_HH
39