summaryrefslogtreecommitdiff
path: root/libs/ardour/luaproc.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2016-07-07 16:44:41 +0200
committerRobin Gareus <robin@gareus.org>2016-07-07 16:44:41 +0200
commit266ecfbeec7088de6994a151630d788fe0613064 (patch)
tree4c6e2b7f3f7eb2f2da0660f0aa96fc8bf7a1783a /libs/ardour/luaproc.cc
parentd83be1baa3041975a1b0458a5b6b9a3b1178ab84 (diff)
implement designated enable/bypass port for lua-proc
Diffstat (limited to 'libs/ardour/luaproc.cc')
-rw-r--r--libs/ardour/luaproc.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/libs/ardour/luaproc.cc b/libs/ardour/luaproc.cc
index 26442aa32e..75d957779d 100644
--- a/libs/ardour/luaproc.cc
+++ b/libs/ardour/luaproc.cc
@@ -52,6 +52,7 @@ LuaProc::LuaProc (AudioEngine& engine,
, _script (script)
, _lua_does_channelmapping (false)
, _lua_has_inline_display (false)
+ , _designated_bypass_port (UINT32_MAX)
, _control_data (0)
, _shadow_data (0)
, _has_midi_input (false)
@@ -75,6 +76,7 @@ LuaProc::LuaProc (const LuaProc &other)
, _script (other.script ())
, _lua_does_channelmapping (false)
, _lua_has_inline_display (false)
+ , _designated_bypass_port (UINT32_MAX)
, _control_data (0)
, _shadow_data (0)
, _has_midi_input (false)
@@ -286,6 +288,10 @@ LuaProc::load_script ()
_param_desc[pn].sr_dependent = lr["ratemult"].isBoolean () && (lr["ratemult"]).cast<bool> ();
_param_desc[pn].enumeration = lr["enum"].isBoolean () && (lr["enum"]).cast<bool> ();
+ if (lr["bypass"].isBoolean () && (lr["bypass"]).cast<bool> ()) {
+ _designated_bypass_port = pn - 1; // lua table starts at 1.
+ }
+
if (lr["unit"].isString ()) {
std::string unit = lr["unit"].cast<std::string> ();
if (unit == "dB") { _param_desc[pn].unit = ParameterDescriptor::DB; }