add ripple option API for TempoMap::cut()

This commit is contained in:
Paul Davis 2023-05-04 18:49:06 -06:00
parent 7f977bf3e4
commit fafc891ca6
2 changed files with 10 additions and 6 deletions

View File

@ -852,20 +852,20 @@ TempoMap::copy_points (TempoMap const & other)
}
TempoMapCutBuffer*
TempoMap::cut (timepos_t const & start, timepos_t const & end)
TempoMap::cut (timepos_t const & start, timepos_t const & end, bool ripple)
{
return cut_copy (start, end, false);
return cut_copy (start, end, false, ripple);
}
TempoMapCutBuffer*
TempoMap::copy ( timepos_t const & start, timepos_t const & end)
{
return cut_copy (start, end, true);
return cut_copy (start, end, true, false);
}
TempoMapCutBuffer*
TempoMap::cut_copy (timepos_t const & start, timepos_t const & end, bool copy)
TempoMap::cut_copy (timepos_t const & start, timepos_t const & end, bool copy, bool ripple)
{
TempoMetric sm (metric_at (start));
TempoMetric em (metric_at (end));
@ -918,6 +918,10 @@ TempoMap::cut_copy (timepos_t const & start, timepos_t const & end, bool copy)
reset_starting_at (start_sclock);
}
if (!copy && ripple) {
}
return cb;
}

View File

@ -818,7 +818,7 @@ class /*LIBTEMPORAL_API*/ TempoMap : public PBD::StatefulDestructible
LIBTEMPORAL_API TempoMetric metric_at (Beats const &, bool can_match = true) const;
LIBTEMPORAL_API TempoMetric metric_at (BBT_Argument const &, bool can_match = true) const;
LIBTEMPORAL_API TempoMapCutBuffer* cut (timepos_t const & start, timepos_t const & end);
LIBTEMPORAL_API TempoMapCutBuffer* cut (timepos_t const & start, timepos_t const & end, bool ripple);
LIBTEMPORAL_API TempoMapCutBuffer* copy (timepos_t const & start, timepos_t const & end);
LIBTEMPORAL_API void paste (TempoMapCutBuffer const &, timepos_t const & position, bool ripple);
@ -1137,7 +1137,7 @@ class /*LIBTEMPORAL_API*/ TempoMap : public PBD::StatefulDestructible
void reset_section (Points::iterator& begin, Points::iterator& end, superclock_t, TempoMetric& metric);
TempoMapCutBuffer* cut_copy (timepos_t const & start, timepos_t const & end, bool copy);
TempoMapCutBuffer* cut_copy (timepos_t const & start, timepos_t const & end, bool copy, bool ripple);
/* These are not really const, but the lookup tables are marked mutable
* to allow time domain conversions to store their results while being