{
#ifndef NPRINT
DOUT << "column { ";
- if (fixed())
+ if (fixed_b())
DOUT << "fixed at " << fixed_position()<<", ";
assert (pcol_l_);
DOUT << width_.str();
pcol_l_ =0;
}
+bool
+Colinfo::fixed_b () const
+{
+ return fixpos_p_.get_C();
+}
+
+Real
+Colinfo::fixed_position () const
+{
+ return *fixpos_p_;
+}
+
+int
+Colinfo::rank_i () const
+{
+ return pcol_l_->rank_i ();
+}
#include "lily-proto.hh"
#include "pointer.hh"
#include "interval.hh"
+#include "assoc.hh"
/// helper struct for #Spacing_problem#
struct Colinfo {
Paper_column *pcol_l_;
P<Real> fixpos_p_;
+ Assoc<int, Real> min_dists_assoc_;
Interval width_;
int rank_i_;
/// did some tricks to make this column come out.
Colinfo();
Colinfo (Paper_column *,Real const *);
+ int rank_i () const;
void print() const;
- bool fixed() const { return fixpos_p_.get_C();}
- Real fixed_position() const { return *fixpos_p_; }
+ bool fixed_b() const ;
+ Real fixed_position() const ;
};
#endif // COL_INFO_HH
--- /dev/null
+/*
+ separating-line-group-grav.hh -- declare Separating_line_group_engraver
+
+ source file of the GNU LilyPond music typesetter
+
+ (c) 1998 Han-Wen Nienhuys <hanwen@cs.ruu.nl>
+
+ */
+
+#ifndef SEPARATING_LINE_GROUP_GRAV_HH
+#define SEPARATING_LINE_GROUP_GRAV_HH
+
+#include "line-group-grav.hh"
+
+class Separating_line_group_engraver : public Line_group_engraver
+{
+protected:
+ Single_malt_grouping_item * break_malt_p_;
+ Single_malt_grouping_item* nobreak_malt_p_;
+ Separating_group_spanner * sep_span_p_;
+
+ virtual void acknowledge_element (Score_elem_info);
+ virtual void do_creation_processing ();
+ virtual void do_removal_processing ();
+ virtual void do_pre_move_processing ();
+public:
+ Separating_line_group_engraver ();
+ TRANSLATOR_CLONE (Separating_line_group_engraver);
+ DECLARE_MY_RUNTIME_TYPEINFO;
+};
+
+
+#endif /* SEPARATING_LINE_GROUP_GRAV_HH */
+