summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/control_protocol_manager.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2017-05-12 14:51:31 +0100
committerPaul Davis <paul@linuxaudiosystems.com>2017-05-12 14:51:39 +0100
commiteb3f50e15c9f9ed1880c59fecd6f8b3edcc05820 (patch)
tree5acd3346a7a7d63f0f8d1375f60979ecb4579a1f /libs/ardour/ardour/control_protocol_manager.h
parentefc2660fec0d01c4c47d3fffcc5443025b33afc0 (diff)
change the way ControlProtocols (control surfaces) are notified and handle Stripable selection changes
The Editor continues to notify them, but via a direct call to ControlProtocolManager, not a signal. The CP Manager calls the ControlProtocol static method to set up static data structures holding selection info for all surfaces and then notifies each surface/protocol that selection has changed.
Diffstat (limited to 'libs/ardour/ardour/control_protocol_manager.h')
-rw-r--r--libs/ardour/ardour/control_protocol_manager.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/libs/ardour/ardour/control_protocol_manager.h b/libs/ardour/ardour/control_protocol_manager.h
index 2dddc30aca..c8370e03a6 100644
--- a/libs/ardour/ardour/control_protocol_manager.h
+++ b/libs/ardour/ardour/control_protocol_manager.h
@@ -27,6 +27,9 @@
#include <glibmm/threads.h>
#include "pbd/stateful.h"
+
+#include "control_protocol/types.h"
+
#include "ardour/session_handle.h"
namespace ARDOUR {
@@ -80,6 +83,8 @@ class LIBARDOUR_API ControlProtocolManager : public PBD::Stateful, public ARDOUR
PBD::Signal1<void,ControlProtocolInfo*> ProtocolStatusChange;
+ void stripable_selection_changed (ARDOUR::StripableNotificationListPtr);
+
private:
ControlProtocolManager ();
static ControlProtocolManager* _instance;