#include "evoral/Range.hpp"
#include "ardour/amp.h"
+#include "ardour/async_midi_port.h"
#include "ardour/audioengine.h"
#include "ardour/audioregion.h"
#include "ardour/audiosource.h"
#include "ardour/polarity_processor.h"
#include "ardour/port_manager.h"
#include "ardour/progress.h"
+#include "ardour/raw_midi_parser.h"
#include "ardour/runtime_functions.h"
#include "ardour/region.h"
#include "ardour/region_factory.h"
CLASSKEYS(std::vector<ARDOUR::Plugin::PresetRecord>);
CLASSKEYS(std::vector<boost::shared_ptr<ARDOUR::Processor> >);
CLASSKEYS(std::vector<boost::shared_ptr<ARDOUR::Source> >);
+CLASSKEYS(std::list<boost::shared_ptr<ARDOUR::PluginInfo> >); // PluginInfoList
CLASSKEYS(std::list<ArdourMarker*>);
CLASSKEYS(std::list<TimeAxisView*>);
.beginWSPtrClass <Evoral::ControlList> ("ControlList")
.addFunction ("add", &Evoral::ControlList::add)
+ .addFunction ("editor_add", &Evoral::ControlList::editor_add)
.addFunction ("thin", &Evoral::ControlList::thin)
.addFunction ("eval", &Evoral::ControlList::eval)
.addRefFunction ("rt_safe_eval", &Evoral::ControlList::rt_safe_eval)
.addFunction ("set_start", &Location::set_start)
.addFunction ("set_end", &Location::set_end)
.addFunction ("set_length", &Location::set)
+ .addFunction ("set_name", &Location::set_name)
.addFunction ("move_to", &Location::move_to)
.addFunction ("matches", &Location::matches)
.addFunction ("flags", &Location::flags)
.beginWSPtrClass <Port> ("Port")
.addCast<MidiPort> ("to_midiport")
+ .addCast<AsyncMIDIPort> ("to_asyncmidiport")
.addCast<AudioPort> ("to_audioport")
.addFunction ("name", &Port::name)
.addFunction ("pretty_name", &Port::pretty_name)
.endClass ()
.deriveWSPtrClass <MidiPort, Port> ("MidiPort")
+ .addCast<AsyncMIDIPort> ("to_asyncmidiport")
.addFunction ("input_active", &MidiPort::input_active)
.addFunction ("set_input_active", &MidiPort::set_input_active)
.addFunction ("get_midi_buffer", &MidiPort::get_midi_buffer) // DSP only
.endClass ()
+ .deriveWSPtrClass <AsyncMIDIPort, MidiPort> ("AsyncMIDIPort")
+ .addFunction ("write", &AsyncMIDIPort::write)
+ .endClass ()
+
.beginWSPtrClass <PortSet> ("PortSet")
.addFunction ("num_ports", (size_t (PortSet::*)(DataType)const)&PortSet::num_ports)
.addFunction ("add", &PortSet::add)
.endClass ()
.beginStdVector <Plugin::PresetRecord> ("PresetVector").endClass ()
+ .beginStdList <boost::shared_ptr<ARDOUR::PluginInfo> > ("PluginInfoList").endClass ()
.deriveClass <ParameterDescriptor, Evoral::ParameterDescriptor> ("ParameterDescriptor")
.addVoidConstructor ()
.addFunction ("natural_output_streams", &PluginInsert::natural_output_streams)
.addFunction ("natural_input_streams", &PluginInsert::natural_input_streams)
.addFunction ("reset_parameters_to_default", &PluginInsert::reset_parameters_to_default)
+ .addFunction ("has_sidechain", &PluginInsert::has_sidechain)
+ .addFunction ("is_instrument", &PluginInsert::is_instrument)
+ .addFunction ("type", &PluginInsert::type)
+ .addFunction ("signal_latency", &PluginInsert::signal_latency)
+ .addFunction ("get_count", &PluginInsert::get_count)
.endClass ()
.deriveWSPtrClass <ReadOnlyControl, PBD::StatefulDestructible> ("ReadOnlyControl")
.deriveWSPtrClass <PluginInsert::PluginControl, AutomationControl> ("PluginControl")
.endClass ()
+ .beginClass <RawMidiParser> ("RawMidiParser")
+ .addVoidConstructor ()
+ .addFunction ("reset", &RawMidiParser::reset)
+ .addFunction ("process_byte", &RawMidiParser::process_byte)
+ .addFunction ("buffer_size", &RawMidiParser::buffer_size)
+ .addFunction ("midi_buffer", &RawMidiParser::midi_buffer)
+ .endClass ()
+
.deriveWSPtrClass <AudioSource, Source> ("AudioSource")
.addFunction ("readable_length", &AudioSource::readable_length)
.addFunction ("n_channels", &AudioSource::n_channels)
.beginNamespace ("LuaAPI")
.addFunction ("nil_proc", ARDOUR::LuaAPI::nil_processor)
.addFunction ("new_luaproc", ARDOUR::LuaAPI::new_luaproc)
+ .addFunction ("list_plugins", ARDOUR::LuaAPI::list_plugins)
.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)