From 2b51e388fa15759778b7eaf8e132eb0fbe81b9c9 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Tue, 30 Sep 2014 15:40:12 -0400 Subject: [PATCH] add new signal to MIDISceneChanger object indicating inbound MIDI activity --- libs/ardour/ardour/midi_scene_changer.h | 4 ++++ libs/ardour/midi_scene_changer.cc | 3 +++ 2 files changed, 7 insertions(+) diff --git a/libs/ardour/ardour/midi_scene_changer.h b/libs/ardour/ardour/midi_scene_changer.h index c75e216ad3..e369048ea5 100644 --- a/libs/ardour/ardour/midi_scene_changer.h +++ b/libs/ardour/ardour/midi_scene_changer.h @@ -43,6 +43,10 @@ class MIDISceneChanger : public SceneChanger void set_recording (bool); void locate (framepos_t); + /** Signal emitted whenever any relevant MIDI activity is detected. + */ + PBD::Signal0 MIDIActivity; + private: typedef std::multimap > Scenes; diff --git a/libs/ardour/midi_scene_changer.cc b/libs/ardour/midi_scene_changer.cc index e43f7de342..ba89e86096 100644 --- a/libs/ardour/midi_scene_changer.cc +++ b/libs/ardour/midi_scene_changer.cc @@ -254,6 +254,7 @@ MIDISceneChanger::bank_change_input (MIDI::Parser& parser, unsigned short, int) } last_bank_message_time = parser.get_timestamp (); + MIDIActivity (); /* EMIT SIGNAL */ } void @@ -304,6 +305,8 @@ MIDISceneChanger::program_change_input (MIDI::Parser& parser, MIDI::byte program if (new_mark) { locations->add (loc); } + + MIDIActivity (); /* EMIT SIGNAL */ } void