summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/midi_scene_changer.h
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ardour/ardour/midi_scene_changer.h')
-rw-r--r--libs/ardour/ardour/midi_scene_changer.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/libs/ardour/ardour/midi_scene_changer.h b/libs/ardour/ardour/midi_scene_changer.h
index a87ea17da4..81a5eb07f0 100644
--- a/libs/ardour/ardour/midi_scene_changer.h
+++ b/libs/ardour/ardour/midi_scene_changer.h
@@ -43,6 +43,13 @@ class MIDISceneChanger : public SceneChanger
void set_recording (bool);
void locate (framepos_t);
+ /** Signal emitted whenever any relevant MIDI input is detected.
+ */
+ PBD::Signal0<void> MIDIInputActivity;
+ /** Signal emitted whenever any relevant MIDI output is sent.
+ */
+ PBD::Signal0<void> MIDIOutputActivity;
+
private:
typedef std::multimap<framepos_t,boost::shared_ptr<MIDISceneChange> > Scenes;
@@ -51,13 +58,13 @@ class MIDISceneChanger : public SceneChanger
Glib::Threads::RWLock scene_lock;
Scenes scenes;
bool _recording;
- framepos_t last_bank_message_time;
+ bool have_seen_bank_changes;
framepos_t last_program_message_time;
unsigned short current_bank;
int last_delivered_program;
int last_delivered_bank;
- void gather ();
+ void gather (const Locations::LocationList&);
bool recording () const;
void jump_to (int bank, int program);
void rt_deliver (MidiBuffer&, framepos_t, boost::shared_ptr<MIDISceneChange>);