Add Lua-bindings for inter-processor communication
This commit is contained in:
parent
b9791aa63c
commit
0517e186c7
@ -125,6 +125,9 @@ public:
|
|||||||
bool has_inline_display () { return _lua_has_inline_display; }
|
bool has_inline_display () { return _lua_has_inline_display; }
|
||||||
void setup_lua_inline_gui (LuaState *lua_gui);
|
void setup_lua_inline_gui (LuaState *lua_gui);
|
||||||
|
|
||||||
|
DSP::DspShm* instance_shm () { return &lshm; }
|
||||||
|
LuaTableRef* instance_ref () { return &lref; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void find_presets ();
|
void find_presets ();
|
||||||
|
|
||||||
@ -146,12 +149,12 @@ private:
|
|||||||
bool _lua_has_inline_display;
|
bool _lua_has_inline_display;
|
||||||
|
|
||||||
void queue_draw () { QueueDraw(); /* EMIT SIGNAL */ }
|
void queue_draw () { QueueDraw(); /* EMIT SIGNAL */ }
|
||||||
DSP::DspShm* instance_shm () { return &lshm; }
|
|
||||||
DSP::DspShm lshm;
|
DSP::DspShm lshm;
|
||||||
|
|
||||||
LuaTableRef* instance_ref () { return &lref; }
|
|
||||||
LuaTableRef lref;
|
LuaTableRef lref;
|
||||||
|
|
||||||
|
boost::weak_ptr<Route> route () const;
|
||||||
|
|
||||||
void init ();
|
void init ();
|
||||||
bool load_script ();
|
bool load_script ();
|
||||||
void lua_print (std::string s);
|
void lua_print (std::string s);
|
||||||
|
@ -1095,8 +1095,8 @@ LuaBindings::common (lua_State* L)
|
|||||||
#if 0 // those objects are not yet bound
|
#if 0 // those objects are not yet bound
|
||||||
.addCast<CapturingProcessor> ("to_capturingprocessor")
|
.addCast<CapturingProcessor> ("to_capturingprocessor")
|
||||||
.addCast<DelayLine> ("to_delayline")
|
.addCast<DelayLine> ("to_delayline")
|
||||||
.addCast<PeakMeter> ("to_meter")
|
|
||||||
#endif
|
#endif
|
||||||
|
.addCast<PeakMeter> ("to_meter")
|
||||||
.addFunction ("display_name", &Processor::display_name)
|
.addFunction ("display_name", &Processor::display_name)
|
||||||
.addFunction ("active", &Processor::active)
|
.addFunction ("active", &Processor::active)
|
||||||
.addFunction ("activate", &Processor::activate)
|
.addFunction ("activate", &Processor::activate)
|
||||||
@ -1117,6 +1117,8 @@ LuaBindings::common (lua_State* L)
|
|||||||
.endClass ()
|
.endClass ()
|
||||||
|
|
||||||
.deriveWSPtrClass <Plugin, PBD::StatefulDestructible> ("Plugin")
|
.deriveWSPtrClass <Plugin, PBD::StatefulDestructible> ("Plugin")
|
||||||
|
.addCast<LuaProc> ("to_luaproc")
|
||||||
|
.addFunction ("unique_id", &Plugin::unique_id)
|
||||||
.addFunction ("label", &Plugin::label)
|
.addFunction ("label", &Plugin::label)
|
||||||
.addFunction ("name", &Plugin::name)
|
.addFunction ("name", &Plugin::name)
|
||||||
.addFunction ("maker", &Plugin::maker)
|
.addFunction ("maker", &Plugin::maker)
|
||||||
@ -1132,6 +1134,11 @@ LuaBindings::common (lua_State* L)
|
|||||||
.addRefFunction ("get_parameter_descriptor", &Plugin::get_parameter_descriptor)
|
.addRefFunction ("get_parameter_descriptor", &Plugin::get_parameter_descriptor)
|
||||||
.endClass ()
|
.endClass ()
|
||||||
|
|
||||||
|
.deriveWSPtrClass <LuaProc, Plugin> ("LuaProc")
|
||||||
|
.addFunction ("shmem", &LuaProc::instance_shm)
|
||||||
|
.addFunction ("table", &LuaProc::instance_ref)
|
||||||
|
.endClass ()
|
||||||
|
|
||||||
.deriveWSPtrClass <PluginInsert, Processor> ("PluginInsert")
|
.deriveWSPtrClass <PluginInsert, Processor> ("PluginInsert")
|
||||||
.addFunction ("plugin", &PluginInsert::plugin)
|
.addFunction ("plugin", &PluginInsert::plugin)
|
||||||
.addFunction ("activate", &PluginInsert::activate)
|
.addFunction ("activate", &PluginInsert::activate)
|
||||||
|
@ -144,10 +144,13 @@ LuaProc::init ()
|
|||||||
|
|
||||||
luabridge::getGlobalNamespace (L)
|
luabridge::getGlobalNamespace (L)
|
||||||
.beginNamespace ("Ardour")
|
.beginNamespace ("Ardour")
|
||||||
.beginClass <LuaProc> ("LuaProc")
|
.deriveClass <LuaProc, PBD::StatefulDestructible> ("LuaProc")
|
||||||
.addFunction ("queue_draw", &LuaProc::queue_draw)
|
.addFunction ("queue_draw", &LuaProc::queue_draw)
|
||||||
.addFunction ("shmem", &LuaProc::instance_shm)
|
.addFunction ("shmem", &LuaProc::instance_shm)
|
||||||
.addFunction ("table", &LuaProc::instance_ref)
|
.addFunction ("table", &LuaProc::instance_ref)
|
||||||
|
.addFunction ("route", &LuaProc::route)
|
||||||
|
.addFunction ("unique_id", &LuaProc::unique_id)
|
||||||
|
.addFunction ("name", &LuaProc::name)
|
||||||
.endClass ()
|
.endClass ()
|
||||||
.endNamespace ();
|
.endNamespace ();
|
||||||
|
|
||||||
@ -167,6 +170,12 @@ LuaProc::init ()
|
|||||||
lua.do_command ("function ardour () end");
|
lua.do_command ("function ardour () end");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
boost::weak_ptr<Route>
|
||||||
|
LuaProc::route () const
|
||||||
|
{
|
||||||
|
return static_cast<Route*>(_owner)->weakroute ();
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
LuaProc::lua_print (std::string s) {
|
LuaProc::lua_print (std::string s) {
|
||||||
std::cout <<"LuaProc: " << s << "\n";
|
std::cout <<"LuaProc: " << s << "\n";
|
||||||
|
Loading…
Reference in New Issue
Block a user