From 7f9befae2ddfa4e815b6bd02c8425fc8df96a025 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Mon, 5 Dec 2016 21:53:41 +0100 Subject: Add Lua bindings to manage Groups --- libs/ardour/luabindings.cc | 45 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 44 insertions(+), 1 deletion(-) (limited to 'libs/ardour/luabindings.cc') diff --git a/libs/ardour/luabindings.cc b/libs/ardour/luabindings.cc index f7fdcf4085..42184e3473 100644 --- a/libs/ardour/luabindings.cc +++ b/libs/ardour/luabindings.cc @@ -825,7 +825,38 @@ LuaBindings::common (lua_State* L) .endClass () .beginClass ("RouteGroup") - // stub RouteGroup* is needed for new_audio_track() + .addFunction ("is_active", &RouteGroup::is_active) + .addFunction ("is_relative", &RouteGroup::is_relative) + .addFunction ("is_hidden", &RouteGroup::is_hidden) + .addFunction ("is_gain", &RouteGroup::is_gain) + .addFunction ("is_mute", &RouteGroup::is_mute) + .addFunction ("is_solo", &RouteGroup::is_solo) + .addFunction ("is_recenable", &RouteGroup::is_recenable) + .addFunction ("is_select", &RouteGroup::is_select) + .addFunction ("is_route_active", &RouteGroup::is_route_active) + .addFunction ("is_color", &RouteGroup::is_color) + .addFunction ("is_monitoring", &RouteGroup::is_monitoring) + .addFunction ("group_master_number", &RouteGroup::group_master_number) + .addFunction ("empty", &RouteGroup::empty) + .addFunction ("size", &RouteGroup::size) + .addFunction ("set_active", &RouteGroup::set_active) + .addFunction ("set_relative", &RouteGroup::set_relative) + .addFunction ("set_hidden", &RouteGroup::set_hidden) + .addFunction ("set_gain", &RouteGroup::set_gain) + .addFunction ("set_mute", &RouteGroup::set_mute) + .addFunction ("set_solo", &RouteGroup::set_solo) + .addFunction ("set_recenable", &RouteGroup::set_recenable) + .addFunction ("set_select", &RouteGroup::set_select) + .addFunction ("set_route_active", &RouteGroup::set_route_active) + .addFunction ("set_color", &RouteGroup::set_color) + .addFunction ("set_monitoring", &RouteGroup::set_monitoring) + .addFunction ("add", &RouteGroup::add) + .addFunction ("remove", &RouteGroup::remove) + .addFunction ("clear", &RouteGroup::clear) + .addFunction ("has_subgroup", &RouteGroup::has_subgroup) + .addFunction ("make_subgroup", &RouteGroup::make_subgroup) + .addFunction ("destroy_subgroup", &RouteGroup::destroy_subgroup) + .addFunction ("route_list", &RouteGroup::route_list) .endClass () .deriveClass ("PresentationInfo") @@ -1342,6 +1373,10 @@ LuaBindings::common (lua_State* L) .beginConstStdList > ("WeakRouteList") .endClass () + // RouteList == std::list > + .beginConstStdList ("RouteGroupList") + .endClass () + // typedef std::vector > Region::SourceList .beginStdVector > ("SourceList") .endClass () @@ -1523,6 +1558,11 @@ LuaBindings::common (lua_State* L) .addConst ("MeterCustom", ARDOUR::MeterPoint(MeterCustom)) .endNamespace () + .beginNamespace ("Placement") + .addConst ("PreFader", ARDOUR::Placement(PreFader)) + .addConst ("PostFader", ARDOUR::Placement(PostFader)) + .endNamespace () + .beginNamespace ("NoteMode") .addConst ("Sustained", ARDOUR::NoteMode(Sustained)) .addConst ("Percussive", ARDOUR::NoteMode(Percussive)) @@ -1758,6 +1798,9 @@ LuaBindings::common (lua_State* L) .addFunction ("worst_track_latency", &Session::worst_track_latency) .addFunction ("worst_playback_latency", &Session::worst_playback_latency) .addFunction ("cfg", &Session::cfg) + .addFunction ("route_groups", &Session::route_groups) + .addFunction ("new_route_group", &Session::new_route_group) + .addFunction ("remove_route_group", (void (Session::*)(RouteGroup*))&Session::remove_route_group) .endClass () .beginClass ("RegionFactory") -- cgit v1.2.3