{
// std::list<std::string>
luabridge::getGlobalNamespace (L)
- .beginNamespace ("ARDOUR")
+ .beginNamespace ("C")
.beginStdList <std::string> ("StringList")
.endClass ()
- .endNamespace ();
// std::vector<std::string>
- luabridge::getGlobalNamespace (L)
- .beginNamespace ("ARDOUR")
.beginStdVector <std::string> ("StringVector")
.endClass ()
- .endNamespace ();
// register float array (float*)
- luabridge::getGlobalNamespace (L)
- .beginNamespace ("ARDOUR")
.registerArray <float> ("FloatArray")
- .endNamespace ();
// register float array (int32_t*)
- luabridge::getGlobalNamespace (L)
- .beginNamespace ("ARDOUR")
.registerArray <int32_t> ("IntArray")
- .endNamespace ();
// std::vector<std::string>
- luabridge::getGlobalNamespace (L)
- .beginNamespace ("ARDOUR")
.beginStdVector <double> ("DoubleVector")
.endClass ()
- .endNamespace ();
// TODO std::set
+ .endNamespace ();
}
void
.addFunction ("to_s", &PBD::ID::to_s) // TODO special case LUA __tostring ?
.endClass ()
- .beginWSPtrClass <PBD::Stateful> ("Stateful")
+ .beginClass <PBD::Stateful> ("Stateful")
.addFunction ("properties", &PBD::Stateful::properties)
.endClass ()
- .deriveWSPtrClass <PBD::StatefulDestructible, PBD::Stateful> ("StatefulDestructible")
+ .deriveClass <PBD::StatefulDestructible, PBD::Stateful> ("StatefulDestructible")
+ .endClass ()
+
+ .beginWSPtrClass <PBD::Stateful> ("StatefulPtr")
+ .addFunction ("properties", &PBD::Stateful::properties)
+ .endClass ()
+
+ .deriveWSPtrClass <PBD::StatefulDestructible, PBD::Stateful> ("StatefulDestructiblePtr")
.endClass ()
.deriveWSPtrClass <PBD::Controllable, PBD::StatefulDestructible> ("Controllable")
.addConst ("UseGroup", PBD::Controllable::GroupControlDisposition(PBD::Controllable::UseGroup))
.endNamespace ()
- .endNamespace ();
+ .endNamespace (); // PBD
luabridge::getGlobalNamespace (L)
- .beginNamespace ("ARDOUR") // XXX really libtimecode
+ .beginNamespace ("Timecode")
.beginClass <Timecode::BBT_Time> ("BBT_TIME")
.addConstructor <void (*) (uint32_t, uint32_t, uint32_t)> ()
.endClass ()
.endNamespace ();
luabridge::getGlobalNamespace (L)
+
+ .beginNamespace ("Evoral")
+ .beginClass <Evoral::Parameter> ("Parameter")
+ .addConstructor <void (*) (uint32_t, uint8_t, uint32_t)> ()
+ .addFunction ("type", &Evoral::Parameter::type)
+ .addFunction ("channel", &Evoral::Parameter::channel)
+ .addFunction ("id", &Evoral::Parameter::id)
+ .endClass ()
+
+ .beginWSPtrClass <Evoral::ControlList> ("ControlList")
+ .addFunction ("add", &Evoral::ControlList::add)
+ .endClass ()
+
+ .beginWSPtrClass <Evoral::ControlSet> ("ControlSet")
+ .endClass ()
+
+ .beginWSPtrClass <Evoral::Control> ("Control")
+ .addFunction ("list", (boost::shared_ptr<Evoral::ControlList>(Evoral::Control::*)())&Evoral::Control::list)
+ .endClass ()
+
+ .beginClass <Evoral::ParameterDescriptor> ("ParameterDescriptor")
+ .addVoidConstructor ()
+ .addData ("lower", &Evoral::ParameterDescriptor::lower)
+ .addData ("upper", &Evoral::ParameterDescriptor::upper)
+ .addData ("normal", &Evoral::ParameterDescriptor::normal)
+ .addData ("toggled", &Evoral::ParameterDescriptor::toggled)
+ .endClass ()
+
+ .endNamespace () // Evoral
+
.beginNamespace ("ARDOUR")
.beginWSPtrClass <PluginInfo> ("PluginInfo")
.addVoidConstructor ()
.endClass ()
.endNamespace ()
+ .beginClass <ChanMapping> ("ChanMapping")
+ .addVoidConstructor ()
+ .addFunction ("get", static_cast<uint32_t(ChanMapping::*)(DataType, uint32_t) const>(&ChanMapping::get))
+ .addFunction ("set", &ChanMapping::set)
+ .addConst ("Invalid", 4294967295) // UINT32_MAX
+ .endClass ()
+
.beginNamespace ("Properties")
// templated class definitions
.beginClass <PBD::PropertyDescriptor<bool> > ("BoolProperty").endClass ()
.deriveClass <PBD::OwnedPropertyList, PBD::PropertyList> ("OwnedPropertyList")
.endClass ()
+ .deriveClass <Location, PBD::StatefulDestructible> ("Location")
+ .addFunction ("locked", &Location::locked)
+ .addFunction ("lock", &Location::lock)
+ .addFunction ("start", &Location::start)
+ .addFunction ("end", &Location::end)
+ .addFunction ("length", &Location::length)
+ .addFunction ("set_start", &Location::set_start)
+ .addFunction ("set_end", &Location::set_end)
+ .addFunction ("set_length", &Location::set)
+ .addFunction ("move_to", &Location::move_to)
+ .endClass ()
+
.deriveWSPtrClass <SessionObject, PBD::StatefulDestructible> ("SessionObject")
.addFunction ("name", &SessionObject::name)
.endClass ()
.addFunction ("n_inputs", &Route::n_inputs)
.addFunction ("n_outputs", &Route::n_outputs)
.addFunction ("set_comment", &Route::set_comment)
+ .addFunction ("strict_io", &Route::strict_io)
+ .addFunction ("set_strict_io", &Route::set_strict_io)
+ .addFunction ("reset_plugin_insert", &Route::reset_plugin_insert)
+ .addFunction ("customize_plugin_insert", &Route::customize_plugin_insert)
.endClass ()
.deriveWSPtrClass <Track, Route> ("Track")
.addFunction ("data_type", &Region::data_type)
.addFunction ("stretch", &Region::stretch)
.addFunction ("shift", &Region::shift)
- .addFunction ("sync_offset", &Region::sync_offset)
+ .addRefFunction ("sync_offset", &Region::sync_offset)
.addFunction ("sync_position", &Region::sync_position)
.addFunction ("hidden", &Region::hidden)
.addFunction ("muted", &Region::muted)
.beginWSPtrClass <Source> ("Source")
.endClass ()
- .beginClass <Evoral::Parameter> ("EvoralParameter")
- .addConstructor <void (*) (uint32_t, uint8_t, uint32_t)> ()
- .addFunction ("type", &Evoral::Parameter::type)
- .addFunction ("channel", &Evoral::Parameter::channel)
- .addFunction ("id", &Evoral::Parameter::id)
- .endClass ()
-
.beginClass <Plugin::PresetRecord> ("PresetRecord")
.addData ("uri", &Plugin::PresetRecord::uri, false)
.addData ("label", &Plugin::PresetRecord::label, false)
.addData ("valid", &Plugin::PresetRecord::valid, false)
.endClass ()
- .beginWSPtrClass <Evoral::ControlList> ("EvoralControlList")
- .addFunction ("add", &Evoral::ControlList::add)
- .endClass ()
-
- .beginWSPtrClass <Evoral::ControlSet> ("EvoralControlSet")
- .endClass ()
-
.deriveWSPtrClass <Automatable, Evoral::ControlSet> ("Automatable")
.addFunction ("automation_control", (boost::shared_ptr<AutomationControl>(Automatable::*)(const Evoral::Parameter&, bool))&Automatable::automation_control)
.endClass ()
- .beginWSPtrClass <Evoral::Control> ("EvoralControl")
- .addFunction ("list", (boost::shared_ptr<Evoral::ControlList>(Evoral::Control::*)())&Evoral::Control::list)
- .endClass ()
-
- .beginClass <Evoral::ParameterDescriptor> ("EvoralParameterDescriptor")
- .addVoidConstructor ()
- .addData ("lower", &Evoral::ParameterDescriptor::lower)
- .addData ("upper", &Evoral::ParameterDescriptor::upper)
- .addData ("normal", &Evoral::ParameterDescriptor::normal)
- .addData ("toggled", &Evoral::ParameterDescriptor::toggled)
- .endClass ()
-
.deriveClass <ParameterDescriptor, Evoral::ParameterDescriptor> ("ParameterDescriptor")
.addVoidConstructor ()
.addData ("label", &ParameterDescriptor::label)
.addFunction ("automation_control", (boost::shared_ptr<AutomationControl>(Automatable::*)(const Evoral::Parameter&, bool))&Automatable::automation_control)
.endClass ()
- .deriveWSPtrClass <Plugin, PBD::StatefulDestructible> ("PluginInsert")
+ .deriveWSPtrClass <Plugin, PBD::StatefulDestructible> ("Plugin")
.addFunction ("label", &Plugin::label)
.addFunction ("name", &Plugin::name)
.addFunction ("maker", &Plugin::maker)
.addFunction ("parameter_count", &Plugin::parameter_count)
- .addFunction ("nth_parameter", &Plugin::nth_parameter)
+ .addRefFunction ("nth_parameter", &Plugin::nth_parameter)
.addFunction ("preset_by_label", &Plugin::preset_by_label)
.addFunction ("preset_by_uri", &Plugin::preset_by_uri)
.addFunction ("load_preset", &Plugin::load_preset)
.addFunction ("plugin", &PluginInsert::plugin)
.addFunction ("activate", &PluginInsert::activate)
.addFunction ("deactivate", &PluginInsert::deactivate)
+ .addFunction ("strict_io_configured", &PluginInsert::strict_io_configured)
+ .addFunction ("input_map", (ARDOUR::ChanMapping (PluginInsert::*)(uint32_t) const)&PluginInsert::input_map)
+ .addFunction ("output_map", (ARDOUR::ChanMapping (PluginInsert::*)(uint32_t) const)&PluginInsert::output_map)
+ .addFunction ("set_input_map", &PluginInsert::set_input_map)
+ .addFunction ("set_output_map", &PluginInsert::set_output_map)
+
.endClass ()
.deriveWSPtrClass <AutomationControl, Evoral::Control> ("AutomationControl")
.addFunction ("automation_state", &AutomationControl::automation_state)
- .addFunction ("automation_style", &AutomationControl::automation_style)
- .addFunction ("set_automation_state", &AutomationControl::set_automation_state)
.addFunction ("set_automation_style", &AutomationControl::set_automation_style)
.addFunction ("start_touch", &AutomationControl::start_touch)
.addFunction ("stop_touch", &AutomationControl::stop_touch)
.beginStdList <boost::shared_ptr<MidiTrack> > ("MidiTrackList")
.endClass ()
- // RouteList == boost::shared_ptr<std::list<boost::shared_ptr<Route> > >
+ // RouteList == std::list<boost::shared_ptr<Route> >
+ .beginConstStdList <boost::shared_ptr<Route> > ("RouteList")
+ .endClass ()
+
+ // boost::shared_ptr<RouteList>
.beginPtrStdList <boost::shared_ptr<Route> > ("RouteListPtr")
.endClass ()
.endClass ()
.beginClass <ChanCount> ("ChanCount")
+ .addConstructor <void (*) (DataType, uint32_t)> ()
+ .addFunction ("get", &ChanCount::get)
+ .addFunction ("set", &ChanCount::set)
.addFunction ("n_audio", &ChanCount::n_audio)
+ .addFunction ("n_midi", &ChanCount::n_midi)
+ .addFunction ("n_total", &ChanCount::n_total)
+ .addFunction ("reset", &ChanCount::reset)
.endClass()
.beginClass <DataType> ("DataType")
.addConst ("Lua", ARDOUR::PluginType(Lua))
.endNamespace ()
- .beginNamespace ("Autostyle")
- .addConst ("Absolute", ARDOUR::AutoState(Absolute))
- .addConst ("Trim", ARDOUR::AutoState(Trim))
+ .beginNamespace ("AutoStyle")
+ .addConst ("Absolute", ARDOUR::AutoStyle(Absolute))
+ .addConst ("Trim", ARDOUR::AutoStyle(Trim))
.endNamespace ()
.beginNamespace ("AutoState")
.endClass()
.beginStdVector <const AudioBackendInfo*> ("BackendVector").endClass ()
- .beginNamespace ("ARDOUR")
.beginClass <AudioBackend::DeviceStatus> ("DeviceStatus")
.addData ("name", &AudioBackend::DeviceStatus::name)
.addData ("available", &AudioBackend::DeviceStatus::available)
.endClass()
.beginStdVector <AudioBackend::DeviceStatus> ("DeviceStatusVector").endClass ()
- .endNamespace ()
.beginWSPtrClass <AudioBackend> ("AudioBackend")
.addFunction ("info", &AudioBackend::info)
.beginNamespace ("LuaAPI")
.addFunction ("new_luaproc", ARDOUR::LuaAPI::new_luaproc)
+ .addFunction ("new_plugin_info", ARDOUR::LuaAPI::new_plugin_info)
.addFunction ("new_plugin", ARDOUR::LuaAPI::new_plugin)
.addFunction ("set_processor_param", ARDOUR::LuaAPI::set_processor_param)
.addFunction ("set_plugin_insert_param", ARDOUR::LuaAPI::set_plugin_insert_param)
.addFunction ("get_audio", static_cast<AudioBuffer&(BufferSet::*)(size_t)>(&BufferSet::get_audio))
.addFunction ("count", static_cast<const ChanCount&(BufferSet::*)()const>(&BufferSet::count))
.endClass()
-
- .beginClass <ChanMapping> ("ChanMapping")
- .addFunction ("get", static_cast<uint32_t(ChanMapping::*)(DataType, uint32_t)>(&ChanMapping::get))
- .addFunction ("set", &ChanMapping::set)
- .addConst ("Invalid", 4294967295) // UINT32_MAX
- .endClass ()
.endNamespace ();
luabridge::getGlobalNamespace (L)
.addFunction ("buffer", (uint8_t*(Evoral::Event<framepos_t>::*)())&Evoral::Event<framepos_t>::buffer)
.endClass ()
+ .beginClass <Evoral::Beats> ("Beats")
+ .addFunction ("to_double", &Evoral::Beats::to_double)
+ .endClass ()
+
.deriveClass <Evoral::MIDIEvent<framepos_t>, Evoral::Event<framepos_t> > ("MidiEvent")
// add Ctor?
.addFunction ("type", &Evoral::MIDIEvent<framepos_t>::type)
.addFunction ("reset", &DSP::BiQuad::reset)
.endClass ()
+ /* DSP enums */
+ .beginNamespace ("BiQuadType")
+ .addConst ("LowPass", ARDOUR::DSP::BiQuad::LowPass)
+ .addConst ("HighPass", ARDOUR::DSP::BiQuad::HighPass)
+ .addConst ("BandPassSkirt", ARDOUR::DSP::BiQuad::BandPassSkirt)
+ .addConst ("BandPass0dB", ARDOUR::DSP::BiQuad::BandPass0dB)
+ .addConst ("Notch", ARDOUR::DSP::BiQuad::Notch)
+ .addConst ("AllPass", ARDOUR::DSP::BiQuad::AllPass)
+ .addConst ("Peaking", ARDOUR::DSP::BiQuad::Peaking)
+ .addConst ("LowShelf", ARDOUR::DSP::BiQuad::LowShelf)
+ .addConst ("HighShelf", ARDOUR::DSP::BiQuad::HighShelf)
+ .endNamespace ()
+
.beginClass <DSP::DspShm> ("DspShm")
.addFunction ("allocate", &DSP::DspShm::allocate)
.addFunction ("clear", &DSP::DspShm::clear)
LuaBindings::osc (lua_State* L)
{
luabridge::getGlobalNamespace (L)
- .beginNamespace ("OSC")
- .beginClass<LuaAPI::LuaOSCAddress> ("Address")
+ .beginNamespace ("ARDOUR")
+ .beginNamespace ("LuaOSC")
+ .beginClass<LuaOSC::Address> ("Address")
.addConstructor<void (*) (std::string)> ()
- .addCFunction ("send", &LuaAPI::LuaOSCAddress::send)
+ .addCFunction ("send", &LuaOSC::Address::send)
.endClass ()
+ .endNamespace ()
.endNamespace ();
}