Real by = 0.0;
if (Spanner *mother = dynamic_cast<Spanner *> (state.slur_->original ()))
{
- int k = broken_spanner_index (state.slur_);
+ vsize k = broken_spanner_index (state.slur_);
int j = k + hdir;
if (j < 0 || j >= mother->broken_intos_.size ())
return by;
if (Spanner *mother = dynamic_cast<Spanner *> (slur_->original ()))
{
- int k = broken_spanner_index (slur_);
+ vsize k = broken_spanner_index (slur_);
int j = k + 1;
if (j < 0 || j >= mother->broken_intos_.size ())
return;
columns_
= internal_extract_grob_array (me, ly_symbol2scm ("note-columns"));
- if (columns_.is_empty ())
+ if (columns_.empty ())
{
me->suicide ();
return;
}
staff_space_ = Staff_symbol_referencer::staff_space (me);
- Real lt = me->layout ()->get_dimension (ly_symbol2scm ("linethickness"));
+ Real lt = me->layout ()->get_dimension (ly_symbol2scm ("line-thickness"));
thickness_ = robust_scm2double (me->get_property ("thickness"), 1.0) * lt;
dir_ = get_grob_direction (me);
= get_y_attachment_range ();
configurations_ = enumerate_attachments (end_ys);
- for (int i = 0; i < columns_.size (); i++)
- encompass_infos_.push (get_encompass_info (columns_[i]));
+ for (vsize i = 0; i < columns_.size (); i++)
+ encompass_infos_.push_back (get_encompass_info (columns_[i]));
extra_encompass_infos_ = get_extra_encompass_infos ();
valid_ = true;
else
#endif
{
- for (int i = 0; i < configurations_.size (); i++)
+ for (vsize i = 0; i < configurations_.size (); i++)
configurations_[i]->score (*this);
- for (int i = 0; i < configurations_.size (); i++)
+ for (vsize i = 0; i < configurations_.size (); i++)
{
if (configurations_[i]->score_ < opt)
{
int opt_idx = -1;
Real mindist = 1e6;
- for (int i = 0; i < configurations_.size (); i++)
+ for (vsize i = 0; i < configurations_.size (); i++)
{
Real d = fabs (configurations_[i]->attachment_[LEFT][Y_AXIS] - ins[LEFT])
+ fabs (configurations_[i]->attachment_[RIGHT][Y_AXIS] - ins[RIGHT]);
&& !Stem::is_invisible (stem)
&& extremes_[d].stem_dir_ == dir_
&& Stem::get_beaming (stem, -d)
+ && Stem::get_beam (stem)
&& (!spanner_less (slur_, Stem::get_beam (stem))
|| has_same_beam_))
y = extremes_[d].stem_extent_[Y_AXIS][dir_];
x = extremes_[d].bound_->extent (common_[X_AXIS], X_AXIS)[d];
else
x = slur_->get_broken_left_end_align ();
- Grob *col = (d == LEFT) ? columns_[0] : columns_.top ();
+ Grob *col = (d == LEFT) ? columns_[0] : columns_.back ();
if (extremes_[-d].bound_ != col)
{
return y;
}
-Array<Offset>
+std::vector<Offset>
Slur_score_state::generate_avoid_offsets () const
{
- Array<Offset> avoid;
- Link_array<Grob> encompasses = columns_;
+ std::vector<Offset> avoid;
+ Link_array__Grob_ encompasses = columns_;
- for (int i = 0; i < encompasses.size (); i++)
+ for (vsize i = 0; i < encompasses.size (); i++)
{
if (extremes_[LEFT].note_column_ == encompasses[i]
|| extremes_[RIGHT].note_column_ == encompasses[i])
Encompass_info inf (get_encompass_info (encompasses[i]));
Real y = dir_ * (max (dir_ * inf.head_, dir_ * inf.stem_));
- avoid.push (Offset (inf.x_, y + dir_ * parameters_.free_head_distance_));
+ avoid.push_back (Offset (inf.x_, y + dir_ * parameters_.free_head_distance_));
}
extract_grob_set (slur_, "encompass-objects", extra_encompasses);
- for (int i = 0; i < extra_encompasses.size (); i++)
+ for (vsize i = 0; i < extra_encompasses.size (); i++)
{
if (Slur::has_interface (extra_encompasses[i]))
{
small_slur->relative_coordinate (common_[Y_AXIS], Y_AXIS));
z[Y_AXIS] += dir_ * parameters_.free_slur_distance_;
- avoid.push (z);
+ avoid.push_back (z);
}
else if (extra_encompasses[i]->get_property ("avoid-slur") == ly_symbol2scm ("inside"))
{
if (!xe.is_empty ()
&& !ye.is_empty ())
- avoid.push (Offset (xe.center(), ye[dir_]));
+ avoid.push_back (Offset (xe.center(), ye[dir_]));
}
}
return avoid;
Real r_0 = robust_scm2double (slur_->get_property ("ratio"), 0.33);
Real h_inf = staff_space_ * scm_to_double (slur_->get_property ("height-limit"));
- Array<Offset> avoid = generate_avoid_offsets ();
- for (int i = 0; i < configurations_.size (); i++)
+ std::vector<Offset> avoid = generate_avoid_offsets ();
+ for (vsize i = 0; i < configurations_.size (); i++)
configurations_[i]->generate_curve (*this, r_0, h_inf, avoid);
}
-Link_array<Slur_configuration>
+Link_array__Slur_configuration_
Slur_score_state::enumerate_attachments (Drul_array<Real> end_ys) const
{
- Link_array<Slur_configuration> scores;
+ Link_array__Slur_configuration_ scores;
Drul_array<Offset> os;
os[LEFT] = base_attachments_[LEFT];
s.attachment_ = os;
s.index_ = scores.size ();
- scores.push (new Slur_configuration (s));
+ scores.push_back (new Slur_configuration (s));
os[RIGHT][Y_AXIS] += dir_ * staff_space_ / 2;
}
return scores;
}
-Array<Extra_collision_info>
+std::vector<Extra_collision_info>
Slur_score_state::get_extra_encompass_infos () const
{
extract_grob_set (slur_, "encompass-objects", encompasses);
- Array<Extra_collision_info> collision_infos;
- for (int i = encompasses.size (); i--;)
+ std::vector<Extra_collision_info> collision_infos;
+ for (vsize i = encompasses.size (); i--;)
{
if (Slur::has_interface (encompasses[i]))
{
xext,
yext,
parameters_.extra_object_collision_penalty_);
- collision_infos.push (info);
+ collision_infos.push_back (info);
}
}
else
ye.widen (thickness_ * 0.5);
xe.widen (thickness_ * 1.0);
Extra_collision_info info (g, xp, xe, ye, penalty);
- collision_infos.push (info);
+ collision_infos.push_back (info);
}
}