diff options
author | Robin Gareus <robin@gareus.org> | 2016-10-15 21:16:57 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2016-10-15 21:27:29 +0200 |
commit | 07ee9b6164b88a237cc8a51ef49544695eed48a0 (patch) | |
tree | 7f2506c609a601afeccf7e9dc79cbe8a40cfca28 /libs/ardour/luabindings.cc | |
parent | a32aea420165c3c9af9aaf4b4ed9a8b7c1b07e51 (diff) |
Source and AudioSource Lua bindings
Diffstat (limited to 'libs/ardour/luabindings.cc')
-rw-r--r-- | libs/ardour/luabindings.cc | 37 |
1 files changed, 36 insertions, 1 deletions
diff --git a/libs/ardour/luabindings.cc b/libs/ardour/luabindings.cc index 308f6a4fce..034c6ee73b 100644 --- a/libs/ardour/luabindings.cc +++ b/libs/ardour/luabindings.cc @@ -175,6 +175,7 @@ CLASSKEYS(ARDOUR::PortManager); CLASSKEYS(ARDOUR::PresentationInfo); CLASSKEYS(ARDOUR::Session); CLASSKEYS(ARDOUR::SessionConfiguration); +CLASSKEYS(ARDOUR::Source); CLASSKEYS(PBD::ID); CLASSKEYS(PBD::Configuration); @@ -192,6 +193,7 @@ CLASSKEYS(std::vector<double>); 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<ArdourMarker*>); CLASSKEYS(std::list<ARDOUR::AudioRange>); @@ -1004,6 +1006,9 @@ LuaBindings::common (lua_State* L) .addFunction ("nudge_position", &Region::nudge_position) .addFunction ("move_to_natural_position", &Region::move_to_natural_position) .addFunction ("move_start", &Region::move_start) + .addFunction ("master_sources", &Region::master_sources) + .addFunction ("master_source_names", &Region::master_source_names) + .addFunction ("n_channels", &Region::n_channels) .addFunction ("trim_front", &Region::trim_front) .addFunction ("trim_end", &Region::trim_end) .addFunction ("trim_to", &Region::trim_to) @@ -1022,6 +1027,7 @@ LuaBindings::common (lua_State* L) .addFunction ("set_locked", &Region::set_locked) .addFunction ("set_video_locked", &Region::set_video_locked) .addFunction ("set_position_locked", &Region::set_position_locked) + .addFunction ("source", &Region::source) .endClass () .deriveWSPtrClass <MidiRegion, Region> ("MidiRegion") @@ -1032,7 +1038,21 @@ LuaBindings::common (lua_State* L) .addFunction ("length_beats", &MidiRegion::length_beats) .endClass () - .beginWSPtrClass <Source> ("Source") + .deriveWSPtrClass <Source, SessionObject> ("Source") + .addCast<AudioSource> ("to_audiosource") + .addCast<MidiSource> ("to_midisource") + .addFunction ("timestamp", &Source::timestamp) + .addFunction ("empty", &Source::empty) + .addFunction ("length", &Source::length) + .addFunction ("natural_position", &Source::natural_position) + .addFunction ("destructive", &Source::destructive) + .addFunction ("writable", &Source::writable) + .addFunction ("has_been_analysed", &Source::has_been_analysed) + .addFunction ("can_be_analysed", &Source::can_be_analysed) + .addFunction ("timeline_position", &Source::timeline_position) + .addFunction ("use_count", &Source::use_count) + .addFunction ("used", &Source::used) + .addFunction ("ancestor_name", &Source::ancestor_name) .endClass () .deriveWSPtrClass <MidiSource, Source> ("MidiSource") @@ -1041,6 +1061,17 @@ LuaBindings::common (lua_State* L) .addFunction ("model", &MidiSource::model) .endClass () + .deriveWSPtrClass <AudioSource, Source> ("AudioSource") + .addCast<Readable> ("to_readable") + .addFunction ("readable_length", &AudioSource::readable_length) + .addFunction ("n_channels", &AudioSource::n_channels) + .addFunction ("empty", &Source::empty) + .addFunction ("length", &Source::length) + .addFunction ("read", &AudioSource::read) + .addFunction ("sample_rate", &AudioSource::sample_rate) + .addFunction ("captured_for", &AudioSource::captured_for) + .endClass () + .deriveWSPtrClass <Automatable, Evoral::ControlSet> ("Automatable") .addFunction ("automation_control", (boost::shared_ptr<AutomationControl>(Automatable::*)(const Evoral::Parameter&, bool))&Automatable::automation_control) .endClass () @@ -1275,6 +1306,10 @@ LuaBindings::common (lua_State* L) .beginConstStdList <boost::weak_ptr<Route> > ("WeakRouteList") .endClass () + // typedef std::vector<boost::shared_ptr<Source> > Region::SourceList + .beginStdVector <boost::shared_ptr<Source> > ("SourceList") + .endClass () + // std::list< boost::weak_ptr <AudioSource> > .beginConstStdList <boost::weak_ptr<AudioSource> > ("WeakAudioSourceList") .endClass () |