diff options
author | Robin Gareus <robin@gareus.org> | 2016-04-10 23:01:44 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2016-04-10 23:01:44 +0200 |
commit | c6d4fafcd95504da2b94f54f05561036e7806699 (patch) | |
tree | b27550d7f2b4af1ee2056f51a7ea6863606a7177 /libs | |
parent | c76ef648703128e0b1dbcbc0790daa25254a1ce4 (diff) |
update lua related doc, add missing bindings
Diffstat (limited to 'libs')
-rw-r--r-- | libs/ardour/ardour/lua_api.h | 13 | ||||
-rw-r--r-- | libs/ardour/luabindings.cc | 10 | ||||
-rw-r--r-- | libs/lua/LuaBridge/detail/Namespace.h | 1 |
3 files changed, 21 insertions, 3 deletions
diff --git a/libs/ardour/ardour/lua_api.h b/libs/ardour/ardour/lua_api.h index 840c90081b..92e63d7692 100644 --- a/libs/ardour/ardour/lua_api.h +++ b/libs/ardour/ardour/lua_api.h @@ -94,11 +94,11 @@ namespace ARDOUR { namespace LuaAPI { bool set_plugin_insert_param (boost::shared_ptr<ARDOUR::PluginInsert> pi, uint32_t which, float val); /** - * A convenience function to get a AutomationControList and ParamaterDescriptor + * A convenience function to get a Automation Lists and ParamaterDescriptor * for a given plugin control. * * This is equivalent to the following lua code - * <code> + * @code * function (processor, param_id) * local plugininsert = processor:to_insert () * local plugin = plugininsert:plugin(0) @@ -108,7 +108,14 @@ namespace ARDOUR { namespace LuaAPI { * local acl = ac:alist() * return ac:alist(), ac:to_ctrl():list(), t[2] * end - * </code> + * @endcode + * + * Example usage: get 3rd input parameter of first plugin on the given route + * (Ardour starts counting at zero). + * @code + * local al, cl, pd = ARDOUR.LuaAPI.plugin_automation (route:nth_plugin (0), 3) + * @endcode + * @returns 3 parameters: AutomationList, ControlList, ParamaterDescriptor */ int plugin_automation (lua_State *lua); } } /* namespace */ diff --git a/libs/ardour/luabindings.cc b/libs/ardour/luabindings.cc index 21a8fdeed4..227c6ced9c 100644 --- a/libs/ardour/luabindings.cc +++ b/libs/ardour/luabindings.cc @@ -29,6 +29,7 @@ #include "ardour/audiosource.h" #include "ardour/audio_backend.h" #include "ardour/audio_buffer.h" +#include "ardour/audio_port.h" #include "ardour/audio_track.h" #include "ardour/buffer_set.h" #include "ardour/chan_mapping.h" @@ -39,6 +40,7 @@ #include "ardour/luabindings.h" #include "ardour/meter.h" #include "ardour/midi_track.h" +#include "ardour/midi_port.h" #include "ardour/playlist.h" #include "ardour/plugin.h" #include "ardour/plugin_insert.h" @@ -338,6 +340,14 @@ LuaBindings::common (lua_State* L) .addFunction ("disconnect", (int (Port::*)(Port*))&Port::disconnect) .endClass () + .deriveWSPtrClass <AudioPort, Port> ("AudioPort") + .endClass () + + .deriveWSPtrClass <MidiPort, Port> ("MidiPort") + .addFunction ("input_active", &MidiPort::input_active) + .addFunction ("set_input_active", &MidiPort::set_input_active) + .endClass () + .beginWSPtrClass <PortSet> ("PortSet") .addFunction ("num_ports", (size_t (PortSet::*)(DataType)const)&PortSet::num_ports) .addFunction ("add", &PortSet::add) diff --git a/libs/lua/LuaBridge/detail/Namespace.h b/libs/lua/LuaBridge/detail/Namespace.h index 820b2b8441..722d02e4a7 100644 --- a/libs/lua/LuaBridge/detail/Namespace.h +++ b/libs/lua/LuaBridge/detail/Namespace.h @@ -1589,6 +1589,7 @@ public: */ Namespace& addCFunction (char const* name, int (*const fp)(lua_State*)) { + DATADOC ("Free C Function", name, fp) lua_pushcfunction (L, fp); rawsetfield (L, -2, name); |