From 78986385e17b82a6704c8792fb21a42cd86add9a Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Mon, 9 Aug 2010 22:23:23 +0000 Subject: Fix save/load of MIDI automation state. Fixes #3354. git-svn-id: svn://localhost/ardour2/branches/3.0@7578 d708f5d6-7413-0410-9779-e7cbd77b26cf --- libs/ardour/ardour/midi_source.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'libs/ardour/ardour/midi_source.h') diff --git a/libs/ardour/ardour/midi_source.h b/libs/ardour/ardour/midi_source.h index 8d20f9c7b6..5afcc20255 100644 --- a/libs/ardour/ardour/midi_source.h +++ b/libs/ardour/ardour/midi_source.h @@ -122,10 +122,17 @@ class MidiSource : virtual public Source void copy_interpolation_from (boost::shared_ptr); void copy_interpolation_from (MidiSource *); + AutoState automation_state_of (Evoral::Parameter) const; + void set_automation_state_of (Evoral::Parameter, AutoState); + void copy_automation_state_from (boost::shared_ptr); + void copy_automation_state_from (MidiSource *); + /** Emitted when a different MidiModel is set */ PBD::Signal0 ModelChanged; /** Emitted when a parameter's interpolation style is changed */ PBD::Signal2 InterpolationChanged; + /** Emitted when a parameter's automation state is changed */ + PBD::Signal2 AutomationStateChanged; protected: virtual void flush_midi() = 0; @@ -159,6 +166,12 @@ class MidiSource : virtual public Source */ typedef std::map InterpolationStyleMap; InterpolationStyleMap _interpolation_style; + + /** Map of automation states to use for Parameters; if they are not in this map, + * the correct automation state is Off. + */ + typedef std::map AutomationStateMap; + AutomationStateMap _automation_state; }; } -- cgit v1.2.3