2 rod.cc -- implement Rod, Column_rod
4 source file of the GNU LilyPond music typesetter
6 (c) 1998 Han-Wen Nienhuys <hanwen@cs.ruu.nl>
12 #include "single-malt-grouping-item.hh"
16 Rod::Rod (Single_malt_grouping_item *l, Single_malt_grouping_item *r)
18 item_l_drul_[LEFT] =l;
19 item_l_drul_[RIGHT]=r;
21 Interval li (l->my_width ());
22 Interval ri (r->my_width ());
23 if (li.empty_b () || ri.empty_b ())
26 distance_f_ = li[RIGHT] - ri[LEFT] + 1.5 PT; // ugh
32 item_l_drul_[LEFT] = item_l_drul_[RIGHT] =0;
36 Column_rod::print () const
39 DOUT << "Column_rod { rank = "
40 << other_l_->rank_i () << ", dist = " << distance_f_ << "}\n";
44 Column_rod::Column_rod ()
51 Column_rod::compare (const Column_rod &r1, const Column_rod &r2)
53 return r1.other_l_->rank_i() - r2.other_l_->rank_i();
58 item_l_drul_[RIGHT]->column_l ()->add_rod
59 (item_l_drul_[LEFT]->column_l (), distance_f_);
60 item_l_drul_[LEFT]->column_l ()->add_rod
61 (item_l_drul_[RIGHT]->column_l (), distance_f_);