summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/midi_scene_changer.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2014-05-02 18:44:04 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2014-05-02 18:44:04 -0400
commit6ffd8a954363475fb4b0aa15320fbb10ed3acb71 (patch)
treeebcf031d4a4843e7389c3ca4ca862205b3ffd553 /libs/ardour/ardour/midi_scene_changer.h
parent27cff1dc01c11c6ffb8b602fb50ffafddb19fbf0 (diff)
a variety of changes to finalize (?) (MIDI) SceneChange functionality
Diffstat (limited to 'libs/ardour/ardour/midi_scene_changer.h')
-rw-r--r--libs/ardour/ardour/midi_scene_changer.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/libs/ardour/ardour/midi_scene_changer.h b/libs/ardour/ardour/midi_scene_changer.h
index 369e47d9ea..e2c62a2656 100644
--- a/libs/ardour/ardour/midi_scene_changer.h
+++ b/libs/ardour/ardour/midi_scene_changer.h
@@ -20,6 +20,8 @@
#ifndef __libardour_midi_scene_changer_h__
#define __libardour_midi_scene_changer_h__
+#include <glibmm/threads.h>
+
#include "ardour/scene_changer.h"
namespace ARDOUR
@@ -46,6 +48,7 @@ class MIDISceneChanger : public SceneChanger
MIDI::Port* input_port;
boost::shared_ptr<MidiPort> output_port;
+ Glib::Threads::RWLock scene_lock;
Scenes scenes;
bool _recording;
framepos_t last_bank_message_time;
@@ -57,7 +60,8 @@ class MIDISceneChanger : public SceneChanger
void gather ();
bool recording () const;
void jump_to (int bank, int program);
- void deliver (MidiBuffer&, framepos_t, boost::shared_ptr<MIDISceneChange>);
+ void rt_deliver (MidiBuffer&, framepos_t, boost::shared_ptr<MIDISceneChange>);
+ void non_rt_deliver (boost::shared_ptr<MIDISceneChange>);
void bank_change_input (MIDI::Parser&, unsigned short, int channel);
void program_change_input (MIDI::Parser&, MIDI::byte, int channel);