Add Luabindings for MPControl (required for VBM)

This commit is contained in:
Robin Gareus 2022-10-07 18:52:00 +02:00
parent 8d045e15dc
commit b4d7ca06b8
No known key found for this signature in database
GPG key ID: A090BCE02CF57F04

View file

@ -70,6 +70,7 @@
#include "ardour/midi_source.h" #include "ardour/midi_source.h"
#include "ardour/mixer_scene.h" #include "ardour/mixer_scene.h"
#include "ardour/monitor_control.h" #include "ardour/monitor_control.h"
#include "ardour/monitor_processor.h"
#include "ardour/panner_shell.h" #include "ardour/panner_shell.h"
#include "ardour/phase_control.h" #include "ardour/phase_control.h"
#include "ardour/playlist.h" #include "ardour/playlist.h"
@ -506,6 +507,9 @@ LuaBindings::common (lua_State* L)
.endClass () .endClass ()
.deriveWSPtrClass <PBD::Controllable, PBD::StatefulDestructible> ("Controllable") .deriveWSPtrClass <PBD::Controllable, PBD::StatefulDestructible> ("Controllable")
.addCast<MPControl<gain_t>> ("to_mpgain")
.addCast<MPControl<bool>> ("to_mptoggle")
.addCast<AutomationControl> ("to_automationcontrol")
.addFunction ("name", &PBD::Controllable::name) .addFunction ("name", &PBD::Controllable::name)
.addFunction ("get_value", &PBD::Controllable::get_value) .addFunction ("get_value", &PBD::Controllable::get_value)
.addStaticFunction ("dump_registry", &PBD::Controllable::dump_registry) .addStaticFunction ("dump_registry", &PBD::Controllable::dump_registry)
@ -1923,6 +1927,24 @@ LuaBindings::common (lua_State* L)
.addRefFunction ("get_stats", &PluginInsert::get_stats) .addRefFunction ("get_stats", &PluginInsert::get_stats)
.endClass () .endClass ()
.deriveWSPtrClass <MPControl<gain_t>, PBD::Controllable> ("MPGainControl")
.addFunction ("set_value", &MPControl<gain_t>::set_value)
.addFunction ("get_value", &MPControl<gain_t>::get_value)
.addFunction ("get_user_string", &MPControl<gain_t>::get_user_string)
.addFunction ("lower", &MPControl<gain_t>::lower)
.addFunction ("upper", &MPControl<gain_t>::upper)
.addFunction ("normal", &MPControl<gain_t>::normal)
.endClass ()
.deriveWSPtrClass <MPControl<bool>, PBD::Controllable> ("MPToggleControl")
.addFunction ("set_value", &MPControl<bool>::set_value)
.addFunction ("get_value", &MPControl<bool>::get_value)
.addFunction ("get_user_string", &MPControl<bool>::get_user_string)
.addFunction ("lower", &MPControl<bool>::lower)
.addFunction ("upper", &MPControl<bool>::upper)
.addFunction ("normal", &MPControl<bool>::normal)
.endClass ()
.deriveWSPtrClass <ReadOnlyControl, PBD::StatefulDestructible> ("ReadOnlyControl") .deriveWSPtrClass <ReadOnlyControl, PBD::StatefulDestructible> ("ReadOnlyControl")
.addFunction ("get_parameter", &ReadOnlyControl::get_parameter) .addFunction ("get_parameter", &ReadOnlyControl::get_parameter)
.addFunction ("describe_parameter", &ReadOnlyControl::describe_parameter) .addFunction ("describe_parameter", &ReadOnlyControl::describe_parameter)