From ce3fb0507c0836da00c1f9d67e2d08b6d0dc6381 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Mon, 22 Mar 2021 11:27:47 -0600 Subject: [PATCH] change return type of Tempo::set_{ramped,clamped} and fix call sites --- gtk2_ardour/editor_markers.cc | 26 ++++++++++---------------- libs/temporal/tempo.cc | 21 ++++++++------------- libs/temporal/temporal/tempo.h | 8 ++++---- 3 files changed, 22 insertions(+), 33 deletions(-) diff --git a/gtk2_ardour/editor_markers.cc b/gtk2_ardour/editor_markers.cc index e17e93aa6a..a0f5024211 100644 --- a/gtk2_ardour/editor_markers.cc +++ b/gtk2_ardour/editor_markers.cc @@ -1530,16 +1530,13 @@ Editor::toggle_tempo_clamped () XMLNode &before = tmap->get_state(); Temporal::Tempo & tempo (tm->tempo()); - if (tempo.set_clamped (!tempo.clamped())) { + tempo.set_clamped (!tempo.clamped()); - XMLNode &after = tmap->get_state(); - _session->add_command (new MementoCommand (new Temporal::TempoMap::MementoBinder(), &before, &after)); - commit_reversible_command (); + XMLNode &after = tmap->get_state(); + _session->add_command (new MementoCommand (new Temporal::TempoMap::MementoBinder(), &before, &after)); + commit_reversible_command (); - TempoMap::update (tmap); - } else { - abort_reversible_command (); - } + TempoMap::update (tmap); } } @@ -1558,15 +1555,12 @@ Editor::ramp_to_next_tempo () XMLNode &before = tmap->get_state(); Temporal::TempoPoint & tempo (tm->tempo()); - if (tmap->set_ramped (tempo, !tempo.ramped())) { - XMLNode &after = tmap->get_state(); - _session->add_command (new MementoCommand (new Temporal::TempoMap::MementoBinder(), &before, &after)); - commit_reversible_command (); + tmap->set_ramped (tempo, !tempo.ramped()); + XMLNode &after = tmap->get_state(); + _session->add_command (new MementoCommand (new Temporal::TempoMap::MementoBinder(), &before, &after)); + commit_reversible_command (); - TempoMap::update (tmap); - } else { - abort_reversible_command (); - } + TempoMap::update (tmap); } } diff --git a/libs/temporal/tempo.cc b/libs/temporal/tempo.cc index 6b732dc4df..32f9913f47 100644 --- a/libs/temporal/tempo.cc +++ b/libs/temporal/tempo.cc @@ -113,18 +113,16 @@ Tempo::Tempo (XMLNode const & node) } } -bool +void Tempo::set_ramped (bool yn) { _type = (yn ? Ramped : Constant); - return true; } -bool -Tempo::set_clamped (bool) +void +Tempo::set_clamped (bool yn) { -#warning implement Tempo::set_clamped - return true; + _clamped = yn; } XMLNode& @@ -1115,7 +1113,7 @@ TempoMap::reset_starting_at (superclock_t sc) } if (advance_meter && (m != _meters.end())) { - ++m; + ++m; } if (advance_tempo && (t != _tempos.end())) { ++t; @@ -2892,15 +2890,12 @@ TempoMap::metric_at (BBT_Time const & bbt, bool can_match) const return TempoMetric (*const_cast(prev_t), *const_cast (prev_m)); } -bool +void TempoMap::set_ramped (TempoPoint & tp, bool yn) { Rampable & r (tp); - bool ret = r.set_ramped (yn); - if (ret) { - reset_starting_at (tp.sclock()); - } - return ret; + r.set_ramped (yn); + reset_starting_at (tp.sclock()); } #if 0 diff --git a/libs/temporal/temporal/tempo.h b/libs/temporal/temporal/tempo.h index 4f8cfe2572..4d251d9f6d 100644 --- a/libs/temporal/temporal/tempo.h +++ b/libs/temporal/temporal/tempo.h @@ -144,7 +144,7 @@ class LIBTEMPORAL_API Rampable { private: friend class TempoMap; - virtual bool set_ramped (bool yn) = 0; + virtual void set_ramped (bool yn) = 0; }; /** Tempo, the speed at which musical time progresses (BPM). @@ -246,7 +246,7 @@ class LIBTEMPORAL_API Tempo : public Rampable { void set_locked_to_meter (bool yn) { _locked_to_meter = yn; } bool clamped() const { return _clamped; } - bool set_clamped (bool yn); + void set_clamped (bool yn); Type type() const { return _type; } @@ -295,7 +295,7 @@ class LIBTEMPORAL_API Tempo : public Rampable { static inline superclock_t double_npm_to_scpn (double npm) { return (superclock_t) llround ((60./npm) * superclock_ticks_per_second); } private: - bool set_ramped (bool yn); + void set_ramped (bool yn); }; /** Meter, or time signature (subdivisions per bar, and which note type is a single subdivision). */ @@ -675,7 +675,7 @@ class LIBTEMPORAL_API TempoMap : public PBD::StatefulDestructible * the RCU manager. */ - bool set_ramped (TempoPoint&, bool); + void set_ramped (TempoPoint&, bool); void insert_time (timepos_t const & pos, timecnt_t const & duration); bool remove_time (timepos_t const & pos, timecnt_t const & duration);