From 09d877004d122e17ac3c285a1ccefa48cb8c96cf Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Fri, 27 Nov 2020 14:42:08 -0700 Subject: [PATCH] add a MementoCommand binder for TempoMap --- libs/temporal/temporal/tempo.h | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/libs/temporal/temporal/tempo.h b/libs/temporal/temporal/tempo.h index 4b4d881fef..f1185666c4 100644 --- a/libs/temporal/temporal/tempo.h +++ b/libs/temporal/temporal/tempo.h @@ -31,6 +31,7 @@ #include "pbd/enum_convert.h" #include "pbd/integer_division.h" +#include "pbd/memento_command.h" #include "pbd/rcu.h" #include "pbd/signals.h" #include "pbd/statefuldestructible.h" @@ -766,6 +767,14 @@ class LIBTEMPORAL_API TempoMap : public PBD::StatefulDestructible XMLNode& get_state(); + class MementoBinder : public MementoCommandBinder { + MementoBinder () {} + void set_state (XMLNode const & node, int version) const { TempoMap::use()->set_state (node, version); } + XMLNode& get_state () const { TempoMap::use()->get_state(); } + std::string type_name() const { return "Temporal::TempoMap"; } + void add_state (XMLNode*) {} + }; + typedef boost::intrusive::member_hook, &TempoPoint::_tempo_hook> TempoHookOption; typedef boost::intrusive::member_hook, &MeterPoint::_meter_hook> MeterHookOption; typedef boost::intrusive::member_hook, &MusicTimePoint::_bartime_hook> BarTimeHookOption;