From 48f91c6ef4c4b649f15c9c860243a2847be5b9ff Mon Sep 17 00:00:00 2001 From: Len Ovens Date: Sun, 18 Oct 2015 19:55:56 -0700 Subject: [PATCH] Add Audio Tracks and Busses too. --- .../mackie/mackie_control_protocol.cc | 21 +++++++++++++++++++ .../surfaces/mackie/mackie_control_protocol.h | 2 ++ 2 files changed, 23 insertions(+) diff --git a/libs/surfaces/mackie/mackie_control_protocol.cc b/libs/surfaces/mackie/mackie_control_protocol.cc index ed05dc3e60..581d68b89e 100644 --- a/libs/surfaces/mackie/mackie_control_protocol.cc +++ b/libs/surfaces/mackie/mackie_control_protocol.cc @@ -40,6 +40,7 @@ #include "pbd/memento_command.h" #include "pbd/convert.h" +#include "ardour/audio_track.h" #include "ardour/automation_control.h" #include "ardour/async_midi_port.h" #include "ardour/dB.h" @@ -287,8 +288,16 @@ MackieControlProtocol::get_sorted_routes() remote_ids.insert (route->remote_control_id()); break; case AudioTracks: + if (is_audio_track(*it)) { + sorted.push_back (*it); + remote_ids.insert (route->remote_control_id()); + } break; case Busses: + if (!is_track(*it)) { + sorted.push_back (*it); + remote_ids.insert (route->remote_control_id()); + } break; case MidiTracks: if (is_midi_track(*it)) { @@ -1993,6 +2002,18 @@ MackieControlProtocol::connection_handler (boost::weak_ptr wp1, st } } +bool +MackieControlProtocol::is_track (boost::shared_ptr r) const +{ + return boost::dynamic_pointer_cast(r) != 0; +} + +bool +MackieControlProtocol::is_audio_track (boost::shared_ptr r) const +{ + return boost::dynamic_pointer_cast(r) != 0; +} + bool MackieControlProtocol::is_midi_track (boost::shared_ptr r) const { diff --git a/libs/surfaces/mackie/mackie_control_protocol.h b/libs/surfaces/mackie/mackie_control_protocol.h index e45d038d91..abdd96bf90 100644 --- a/libs/surfaces/mackie/mackie_control_protocol.h +++ b/libs/surfaces/mackie/mackie_control_protocol.h @@ -146,6 +146,8 @@ class MackieControlProtocol bool zoom_mode () const { return modifier_state() & MODIFIER_ZOOM; } bool metering_active () const { return _metering_active; } + bool is_track (boost::shared_ptr) const; + bool is_audio_track (boost::shared_ptr) const; bool is_midi_track (boost::shared_ptr) const; void set_view_mode (ViewMode);