diff options
author | Robin Gareus <robin@gareus.org> | 2016-04-02 23:42:30 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2016-04-02 23:42:30 +0200 |
commit | 50bad9c153d5fc73ca65277ff70c38d07c012ef9 (patch) | |
tree | b9c117e751137b9535b6784b15c8c99813932536 | |
parent | b7f723619d3dfdac02d7c5a0d5de45a9c4341ed1 (diff) |
add some more Lua bindings: Sidechain + IOProcessor
-rw-r--r-- | libs/ardour/luabindings.cc | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/libs/ardour/luabindings.cc b/libs/ardour/luabindings.cc index 41a29807eb..fbbb73ba87 100644 --- a/libs/ardour/luabindings.cc +++ b/libs/ardour/luabindings.cc @@ -40,6 +40,7 @@ #include "ardour/region_factory.h" #include "ardour/session.h" #include "ardour/session_object.h" +#include "ardour/sidechain.h" #include "ardour/tempo.h" #include "LuaBridge/LuaBridge.h" @@ -231,6 +232,15 @@ LuaBindings::common (lua_State* L) .addFunction ("name", &SessionObject::name) .endClass () + .deriveWSPtrClass <IO, SessionObject> ("IO") + .addFunction ("active", &IO::active) + .addFunction ("add_port", &IO::add_port) + .addFunction ("remove_port", &IO::remove_port) + .addFunction ("connect", &IO::connect) + .addFunction ("disconnect", (int (IO::*)(boost::shared_ptr<Port>, std::string, void *))&IO::disconnect) + .addFunction ("physically_connected", &IO::physically_connected) + .endClass () + .deriveWSPtrClass <Route, SessionObject> ("Route") .addFunction ("set_name", &Route::set_name) .addFunction ("comment", &Route::comment) @@ -345,6 +355,8 @@ LuaBindings::common (lua_State* L) .deriveWSPtrClass <Processor, Automatable> ("Processor") .addCast<PluginInsert> ("to_insert") + .addCast<SideChain> ("to_sidechain") + .addCast<IOProcessor> ("to_ioprocessor") .addFunction ("display_name", &Processor::display_name) .addFunction ("active", &Processor::active) .addFunction ("activate", &Processor::activate) @@ -353,6 +365,16 @@ LuaBindings::common (lua_State* L) .addFunction ("automation_control", (boost::shared_ptr<AutomationControl>(Automatable::*)(const Evoral::Parameter&, bool))&Automatable::automation_control) .endClass () + .deriveWSPtrClass <IOProcessor, Processor> ("IOProcessor") + .addFunction ("natural_input_streams", &IOProcessor::natural_input_streams) + .addFunction ("natural_output_streams", &IOProcessor::natural_output_streams) + .addFunction ("input", (boost::shared_ptr<IO>(IOProcessor::*)())&IOProcessor::input) + .addFunction ("output", (boost::shared_ptr<IO>(IOProcessor::*)())&IOProcessor::output) + .endClass () + + .deriveWSPtrClass <SideChain, IOProcessor> ("SideChain") + .endClass () + .deriveWSPtrClass <Plugin, PBD::StatefulDestructible> ("Plugin") .addFunction ("label", &Plugin::label) .addFunction ("name", &Plugin::name) |