2 paper-column.hh -- declare Paper_column
4 source file of the GNU LilyPond music typesetter
6 (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
13 #include "axis-group-item.hh"
18 stuff grouped vertically.
19 This is a class to address items vertically. It contains the data for:
26 the linespacing problem
30 class Paper_column : public Axis_group_item {
32 VIRTUAL_COPY_CONS(Score_element);
33 Drul_array<Array<Column_rod> > minimal_dists_arr_drul_;
34 Drul_array<Array<Column_spring> > spring_arr_drul_;
36 /// set a minimum distance
37 void add_rod (Paper_column * to, Real distance);
38 void add_spring (Paper_column * to, Real dist, Real strength);
40 virtual Paper_column * column_l () const;
41 virtual Line_of_score *line_l () const;
44 /// if lines are broken then this column is in #line#
45 Line_of_score *line_l_;
48 /// which one (left =0)
51 Paper_column (Moment when);
52 Moment when_mom ()const;
54 bool musical_b () const;
57 virtual void do_print() const;
61 The ranking: left is smaller than right
69 // #include "compare.hh"
70 // INSTANTIATE_COMPARE(Paper_column &, Paper_column::compare);