summaryrefslogtreecommitdiff
path: root/libs/surfaces
diff options
context:
space:
mode:
authorLuciano Iam <lucianito@gmail.com>2020-04-21 16:20:16 +0200
committerLuciano Iam <lucianito@gmail.com>2020-04-21 16:20:24 +0200
commit80dc3a38e00d751ff7203d91b1276109545e63bf (patch)
treeee54f09c6b9f4d7d29af08ba4dfbf4b3f3880261 /libs/surfaces
parent68463cb591618a2d4c8087d21b64c9c3314ae985 (diff)
WebSockets: let clients know if a strip is a VCA
This allows to hide the panner for example
Diffstat (limited to 'libs/surfaces')
-rw-r--r--libs/surfaces/websockets/dispatcher.cc13
1 files changed, 11 insertions, 2 deletions
diff --git a/libs/surfaces/websockets/dispatcher.cc b/libs/surfaces/websockets/dispatcher.cc
index d2b99be1a0..11623d30bd 100644
--- a/libs/surfaces/websockets/dispatcher.cc
+++ b/libs/surfaces/websockets/dispatcher.cc
@@ -63,12 +63,21 @@ WebsocketsDispatcher::update_all_nodes (Client client)
for (uint32_t strip_n = 0; strip_n < strips ().strip_count (); ++strip_n) {
boost::shared_ptr<Stripable> strip = strips ().nth_strip (strip_n);
- update (client, Node::strip_description, strip_n, strip->name ());
+ bool is_vca = strip->presentation_info ().flags () & ARDOUR::PresentationInfo::VCA;
+
+ AddressVector strip_addr = AddressVector ();
+ strip_addr.push_back (strip_n);
+ ValueVector strip_desc = ValueVector ();
+ strip_desc.push_back (strip->name ());
+ strip_desc.push_back (is_vca);
+
+ update (client, Node::strip_description, strip_addr, strip_desc);
+
update (client, Node::strip_gain, strip_n, strips ().strip_gain (strip_n));
update (client, Node::strip_mute, strip_n, strips ().strip_mute (strip_n));
// Pan and plugins not available in VCAs
- if ((strip->presentation_info ().flags () & ARDOUR::PresentationInfo::VCA)) {
+ if (is_vca) {
continue;
}