]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/colhpos.hh
partial: 1.0.1.jcn
[lilypond.git] / lily / include / colhpos.hh
1 /*
2   colhpos.hh -- part of GNU LilyPond
3
4   (c)  1997--1998 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   void set_stupid_solution (Vector);
33   Col_hpositions();
34   void add (Paper_column*c);
35   void print() const;
36 };
37
38
39 #endif // COLHPOS_HH
40