X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;ds=sidebyside;f=_manual%2F24_lua-scripting%2F02_class_reference.html;h=8940880ea4d4498b40a5f431c2b9f834cd6a9c66;hb=e9607bc8c4713fa3e50f036684683105c3811668;hp=67803b560a2b5a96ebcb51bbda8d2a2b42a9cde5;hpb=bf1456c4ad9f8a782611a22225dda130a8a45e5e;p=ardour-manual diff --git a/_manual/24_lua-scripting/02_class_reference.html b/_manual/24_lua-scripting/02_class_reference.html index 67803b5..8940880 100644 --- a/_manual/24_lua-scripting/02_class_reference.html +++ b/_manual/24_lua-scripting/02_class_reference.html @@ -5,7 +5,7 @@ title: Class Reference ---
-This documention is far from complete may be inaccurate and subject to change. +This documentation is far from complete may be inaccurate and subject to change.
@@ -37,6 +37,12 @@ Operations are performed on objects. One gets a reference to an object and then e.gobj = Session:route_by_name("Audio") obj:set_name("Guitar")
.
+Lua automatically follows C++ class inheritance. e.g one can directly call all SessionObject and Route methods on Track object. However lua does not automatically promote objects. A Route object which just happens to be a Track needs to be explicily cast to a Track. Methods for casts are provided with each class. Note that the cast may fail and return a nil reference. +
++Likewise multiple inheritance is a non-trivial issue in lua. To avoid performance penalties involved with lookups, explicit casts are required in this case. One example is ARDOUR:SessionObject which is-a StatefulDestructible which inhertis from both Stateful and Destructible. +
+Object lifetimes are managed by the Session. Most Objects cannot be directly created, but one asks the Session to create or destroy them. This is mainly due to realtime constrains: you cannot simply remove a track that is currently processing audio. There are various factory methods for object creation or removal.
@@ -120,9 +126,43 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to CC‡: boost::shared_ptr< ARDOUR::Amp >, boost::weak_ptr< ARDOUR::Amp >
+is-a: ARDOUR:Processor
+ +Applies a declick operation to all audio inputs, passing the same number of audio outputs, and passing through any other types unchanged.
Methods | ||
---|---|---|
GainControl | gain_control () | |
bool | isnil () |
Methods | ||
---|---|---|
void | activate () | |
bool | active () | |
void | deactivate () | |
std::string | display_name () | |
Cast | ||
Amp | to_amp () | |
Automatable | to_automatable () | |
PluginInsert | to_insert () | |
IOProcessor | to_ioprocessor () | |
SideChain | to_sidechain () | |
UnknownProcessor | to_unknownprocessor () |
Methods | ||
---|---|---|
std::string | name () | |
Cast | ||
Stateful | to_stateful () | |
StatefulDestructible | to_statefuldestructible () |
C‡: boost::shared_ptr< ARDOUR::AudioBackend >, boost::weak_ptr< ARDOUR::AudioBackend >
+AudioBackend is an high-level abstraction for interacting with the operating system's audio and midi I/O.
Methods | ||
---|---|---|
unsigned int | buffer_size () | |
check buffer for silence
Returns true if all samples are zero | ||
FloatArray | data (long) | |
void | read_from (FloatArray, long, long, long) | |
bool | sameinstance (AudioBuffer) | |
void | silence (long, long) | |
silence buffer
|
C‡: ARDOUR::AudioEngine
+is-a: ARDOUR:PortManager
Methods | ||
---|---|---|
int | start (bool) | |
int | stop (bool) |
Methods | ||
---|---|---|
int | connect (std::string, std::string) | |
bool | connected (std::string) | |
int | disconnect (std::string, std::string) | |
int | disconnect_port (Port) | |
LuaTable(int, ...) | get_backend_ports (std::string, DataType, PortFlags, StringVector&) | |
LuaTable(int, ...) | get_connections (std::string, StringVector&) | |
void | get_physical_inputs (DataType, StringVector&) | |
void | get_physical_outputs (DataType, StringVector&) | |
Port | get_port_by_name (std::string) | |
Returns Corresponding Port or 0. | ||
LuaTable(int, ...) | get_ports (DataType, PortList&) | |
std::string | get_pretty_name_by_name (std::string) | |
ChanCount | n_physical_inputs () | |
ChanCount | n_physical_outputs () | |
bool | physically_connected (std::string) | |
PortEngine | port_engine () | |
bool | port_is_physical (std::string) |
C‡: boost::shared_ptr< ARDOUR::AudioPort >, boost::weak_ptr< ARDOUR::AudioPort >
+is-a: ARDOUR:Port
+ +Methods | ||
---|---|---|
bool | isnil () |
Methods | ||
---|---|---|
int | connect (Port) | |
int | connect_by_name (std::string) | |
bool | connected () | |
Returns true if this port is connected to anything | ||
bool | connected_to (Port) | |
bool | connected_to_name (std::string) | |
int | disconnect (Port) | |
int | disconnect_all () | |
int | disconnect_by_name (std::string) | |
std::string | name () | |
Returns Port short name | ||
std::string | pretty_name (bool) | |
Returns Port human readable name | ||
bool | receives_input () | |
Returns true if this Port receives input, otherwise false | ||
bool | sends_output () | |
Returns true if this Port sends output, otherwise false | ||
Cast | ||
AudioPort | to_audioport () | |
MidiPort | to_midiport () |
C‡: ARDOUR::AudioRange
+ +Constructor | ||
---|---|---|
ℂ | ARDOUR.AudioRange (long, long, unsigned int) | |
Methods | ||
bool | equal (AudioRange) | |
long | length () | |
Data Members | ||
long | end | |
unsigned int | id | |
long | start |
C‡: std::list<ARDOUR::AudioRange >
+ +Constructor | ||
---|---|---|
ℂ | ARDOUR.AudioRangeList () | |
Methods | ||
bool | empty () | |
LuaIter | iter () | |
void | reverse () | |
unsigned long | size () | |
LuaTable | table () |
C‡: boost::shared_ptr< ARDOUR::AudioSource >, boost::weak_ptr< ARDOUR::AudioSource >
is-a: ARDOUR:Source
+A named object associated with a Session. Objects derived from this class are expected to be destroyed before the session calls drop_references().
Methods | ||
---|---|---|
bool | isnil () |
Methods | ||
---|---|---|
bool | isnil () |
Methods | ||
---|---|---|
Region | bounce (InterThreadInfo&) | |
bounce track from session start to session end to new region
Returns a new audio region (or nil in case of error) | ||
Region | bounce_range (long, long, InterThreadInfo&, Processor, bool) | |
Bounce the given range to a new audio region.
Returns a new audio region (or nil in case of error) | ||
bool | bounceable (Processor, bool) | |
Test if the track can be bounced with the given settings. If sends/inserts/returns are present in the signal path or the given track has no audio outputs bouncing is not possible.
Returns true if the track can be bounced, or false otherwise. | ||
bool | can_record () | |
bool | record_enabled () | |
bool | record_safe () | |
Playlist | playlist () | |
bool | set_name (std::string) | |
void | set_record_enabled (bool, GroupControlDisposition) | |
void | set_record_safe (bool, GroupControlDisposition) | |
Cast | ||
AudioTrack | to_audio_track () | |
MidiTrack | to_midi_track () |
Methods | ||
---|---|---|
bool | active () | |
int | add_processor_by_index (Processor, int, ProcessorStreams, bool) | |
Add a processor to a route such that it ends up with a given index into the visible processors.
Returns 0 on success, non-0 on failure. | ||
bool | add_sidechain (Processor) | |
Amp | amp () | |
std::string | comment () | |
bool | customize_plugin_insert (Processor, unsigned int, ChanCount) | |
bool | customize_plugin_insert (Processor, unsigned int, ChanCount, ChanCount) | |
enable custom plugin-insert configuration
Returns true if successful | ||
Delivery | main_outs () | |
the signal processorat at end of the processing chain which produces output | ||
bool | muted () | |
ChanCount | n_inputs () | |
ChanCount | n_outputs () | |
Processor | nth_plugin (unsigned int) | |
Processor | nth_processor (unsigned int) | |
Processor | nth_send (unsigned int) | |
int | remove_processor (Processor, ProcessorStreams, bool) | |
remove plugin/processor
Returns 0 on success | ||
bool | remove_sidechain (Processor) | |
int | replace_processor (Processor, Processor, ProcessorStreams) | |
replace plugin/processor with another
Returns 0 on success | ||
bool | reset_plugin_insert (Processor) | |
reset plugin-insert configuration to default, disable customizations. This is equivalent to calling customize_plugin_insert (proc, 0, unused)
Returns true if successful | ||
void | set_active (bool, void*) | |
void | set_comment (std::string, void*) | |
bool | set_strict_io (bool) | |
bool | soloed () | |
bool | strict_io () | |
Amp | trim () | |
Cast | ||
Track | to_track () |
Methods | ||
---|---|---|
GainControl | gain_control () | |
bool | is_auditioner () | |
bool | is_hidden () | |
bool | is_master () | |
bool | is_monitor () | |
bool | is_selected () | |
MuteControl | mute_control () | |
PhaseControl | phase_control () | |
AutomationControl | rec_enable_control () | |
AutomationControl | rec_safe_control () | |
SoloControl | solo_control () | |
SoloIsolateControl | solo_isolate_control () | |
SoloSafeControl | solo_safe_control () | |
GainControl | trim_control () | |
Cast | ||
Route | to_route () |
Methods | ||
---|---|---|
std::string | name () |
Methods | ||
---|---|---|
OwnedPropertyList | properties () | |
Cast | ||
Stateful | to_stateful () | |
StatefulDestructible | to_statefuldestructible () |
C‡: std::list<boost::shared_ptr<ARDOUR::AudioTrack> >
@@ -288,26 +451,57 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to CC‡: boost::shared_ptr< ARDOUR::AutomationControl >, boost::weak_ptr< ARDOUR::AutomationControl >
-is-a: Evoral:Control
+is-a: PBD:Controllable
+A PBD::Controllable with associated automation data (AutomationList)
Methods | ||
---|---|---|
AutomationList | alist () | |
AutoState | automation_state () | |
AutoStyle | automation_style () | |
double | get_value () | |
Get the current effective `user' value based on automation state | ||
bool | isnil () | |
void | set_automation_state (AutoState) | |
void | set_automation_style (AutoStyle) | |
void | set_value (double, GroupControlDisposition) | |
Get and Set `internal' value All derived classes must implement this. Basic derived classes will ignore
| ||
void | start_touch (double) | |
void | stop_touch (bool, double) | |
bool | writable () | |
Cast | ||
Control | to_ctrl () |
Methods | ||
---|---|---|
ControlList | list () | |
std::string | name () |
Methods | ||
---|---|---|
void | clear_changes () | |
Forget about any changes to this object's properties | ||
ID | id () | |
OwnedPropertyList | properties () |
C‡: boost::shared_ptr< ARDOUR::AutomationList >, boost::weak_ptr< ARDOUR::AutomationList >
+ +AutomationList is a stateful wrapper around Evoral::ControlList. It includes session-specifics (such as automation state), control logic (e.g. touch, signals) and acts as proxy to the underlying ControlList which holds the actual data.
Methods | ||
---|---|---|
XMLNode | get_state () | |
bool | isnil () | |
Command | memento_command (XMLNode, XMLNode) | |
bool | touch_enabled () | |
bool | touching () | |
bool | writing () | |
Cast | ||
ControlList | list () | |
Stateful | to_stateful () | |
StatefulDestructible | to_statefuldestructible () |
C‡: std::vector<ARDOUR::AudioBackendInfo const* >
@@ -331,6 +525,7 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to CC‡: ARDOUR::ChanCount
@@ -392,18 +587,23 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to Ccalculate peaks
C‡: ARDOUR::DSP::BiQuad
+C‡: ARDOUR::DSP::Biquad
Biquad Filter
Constructor | ||
---|---|---|
ℂ | ARDOUR.DSP.Biquad (double) | |
Methods | ||
void | compute (Type, double, double, double) | |
setup filter, compute coefficients
| ||
void | reset () | |
Instantiate Biquad Filter
| ||
Methods | ||
void | compute (Type, double, double, double) | |
setup filter, compute coefficients
| ||
void | configure (double, double, double, double, double) | |
setup filter, set coefficients directly | ||
float | dB_at_freq (float) | |
filter transfer function (filter response for spectrum visualization)
Returns gain at given frequency in dB (clamped to -120..+120) | ||
void | reset () | |
reset filter state | ||
void | run (FloatArray, unsigned int) | |
void | run (FloatArray, unsigned int) | |
process audio data
|
access memory as integer array
Returns int_32_t[]
C‡: ARDOUR::DSP::FFTSpectrum
+ +Constructor | ||
---|---|---|
ℂ | ARDOUR.DSP.FFTSpectrum (unsigned int, double) | |
Methods | ||
void | execute () | |
process current data in buffer | ||
float | freq_at_bin (unsigned int) | |
float | power_at_bin (unsigned int, float) | |
query
Returns signal power at given bin (in dBFS) | ||
void | set_data_hann (FloatArray, unsigned int, unsigned int) |
C‡: ARDOUR::DSP::LowPass
@@ -452,12 +666,54 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to Cconvenience contructor for DataType::AUDIO
Returns DataType::AUDIO
convenience constructor for DataType::AUDIO with managed lifetime
Returns DataType::AUDIO
convenience contructor for DataType::MIDI
Returns DataType::MIDI
convenience constructor for DataType::MIDI with managed lifetime
Returns DataType::MIDI
convenience contructor for DataType::NIL
Returns DataType::NIL
convenience constructor for DataType::NIL with managed lifetime
Returns DataType::NIL
Inverse of the from-string constructor
C‡: boost::shared_ptr< ARDOUR::Delivery >, boost::weak_ptr< ARDOUR::Delivery >
+is-a: ARDOUR:IOProcessor
+ +A mixer strip element (Processor) with 1 or 2 IO elements.
Methods | ||
---|---|---|
bool | isnil () |
Methods | ||
---|---|---|
IO | input () | |
ChanCount | natural_input_streams () | |
ChanCount | natural_output_streams () | |
IO | output () |
Methods | ||
---|---|---|
void | activate () | |
bool | active () | |
void | deactivate () | |
std::string | display_name () | |
Cast | ||
Amp | to_amp () | |
Automatable | to_automatable () | |
PluginInsert | to_insert () | |
IOProcessor | to_ioprocessor () | |
SideChain | to_sidechain () | |
UnknownProcessor | to_unknownprocessor () |
Methods | ||
---|---|---|
std::string | name () | |
Cast | ||
Stateful | to_stateful () | |
StatefulDestructible | to_statefuldestructible () |
C‡: ARDOUR::AudioBackend::DeviceStatus
@@ -482,35 +738,92 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to CC‡: boost::shared_ptr< ARDOUR::GainControl >, boost::weak_ptr< ARDOUR::GainControl >
+is-a: ARDOUR:SlavableAutomationControl,
+ +A PBD::Controllable with associated automation data (AutomationList)
Methods | ||
---|---|---|
bool | isnil () |
Methods | ||
---|---|---|
void | add_master (AutomationControl) | |
void | clear_masters () | |
int | get_boolean_masters () | |
double | get_masters_value () | |
void | remove_master (AutomationControl) | |
bool | slaved () | |
bool | slaved_to (AutomationControl) |
Methods | ||
---|---|---|
AutomationList | alist () | |
AutoState | automation_state () | |
AutoStyle | automation_style () | |
double | get_value () | |
Get the current effective `user' value based on automation state | ||
void | set_automation_state (AutoState) | |
void | set_automation_style (AutoStyle) | |
void | set_value (double, GroupControlDisposition) | |
Get and Set `internal' value All derived classes must implement this. Basic derived classes will ignore
| ||
void | start_touch (double) | |
void | stop_touch (bool, double) | |
bool | writable () | |
Cast | ||
Control | to_ctrl () |
Methods | ||
---|---|---|
std::string | name () |
Methods | ||
---|---|---|
void | clear_changes () | |
Forget about any changes to this object's properties | ||
ID | id () | |
OwnedPropertyList | properties () |
C‡: boost::shared_ptr< ARDOUR::IO >, boost::weak_ptr< ARDOUR::IO >
is-a: ARDOUR:SessionObject
+A collection of ports (all input or all output) with connections.
An IO can contain ports of varying types, making routes/inserts/etc with varied combinations of types (eg MIDI and audio) possible.
Methods | ||
---|---|---|
bool | active () | |
int | add_port (std::string, void*, DataType) | |
Add a port.
| ||
int | connect (--MISSING (boost::shared_ptr<ARDOUR::Port>)--, std::string, void*) | |
int | disconnect (--MISSING (boost::shared_ptr<ARDOUR::Port>)--, std::string, void*) | |
AudioPort | audio (unsigned int) | |
int | connect (Port, std::string, void*) | |
int | disconnect (Port, std::string, void*) | |
bool | has_port (Port) | |
bool | isnil () | |
MidiPort | midi (unsigned int) | |
ChanCount | n_ports () | |
Port | nth (unsigned int) | |
bool | physically_connected () | |
int | remove_port (--MISSING (boost::shared_ptr<ARDOUR::Port>)--, void*) | |
Port | port_by_name (unsigned int) | |
int | remove_port (Port, void*) |
Methods | ||
---|---|---|
std::string | name () |
Methods | ||
---|---|---|
OwnedPropertyList | properties () | |
Cast | ||
Stateful | to_stateful () | |
StatefulDestructible | to_statefuldestructible () |
C‡: boost::shared_ptr< ARDOUR::IOProcessor >, boost::weak_ptr< ARDOUR::IOProcessor >
is-a: ARDOUR:Processor
+A mixer strip element (Processor) with 1 or 2 IO elements.
Methods | ||
---|---|---|
IO | input () | |
Methods | ||
void | activate () | |
bool | active () | |
AutomationControl | automation_control (Parameter, bool) | |
Control | control (Parameter, bool) | |
void | deactivate () | |
std::string | display_name () | |
Cast | ||
Amp | to_amp () | |
Automatable | to_automatable () | |
PluginInsert | to_insert () | |
IOProcessor | to_ioprocessor () | |
SideChain | to_sidechain () | |
UnknownProcessor | to_unknownprocessor () |
Methods | ||
---|---|---|
std::string | name () | |
Cast | ||
Stateful | to_stateful () | |
StatefulDestructible | to_statefuldestructible () |
C‡: ARDOUR::InterThreadInfo
+Methods | ||
---|---|---|
OwnedPropertyList | properties () |
C‡: ARDOUR::Location
is-a: PBD:StatefulDestructible
@@ -564,22 +887,77 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to CMethods | ||
---|---|---|
void | clear_changes () | |
Forget about any changes to this object's properties | ||
ID | id () | |
OwnedPropertyList | properties () |
C‡: std::list<ARDOUR::Location* >
+ +Constructor | ||
---|---|---|
ℂ | ARDOUR.LocationList () | |
Methods | ||
bool | empty () | |
LuaIter | iter () | |
void | reverse () | |
unsigned long | size () | |
LuaTable | table () |
C‡: ARDOUR::Locations
+is-a: PBD:StatefulDestructible
+ +A collection of session locations including unique dedicated locations (loop, punch, etc)
Methods | ||
---|---|---|
Location | auto_loop_location () | |
Location | auto_punch_location () | |
LuaTable(...) | find_all_between (long, long, LocationList&, Flags) | |
long | first_mark_after (long, bool) | |
Location | first_mark_at (long, long) | |
long | first_mark_before (long, bool) | |
LuaTable(...) | marks_either_side (long, long&, long&) | |
Look for the `marks' (either locations which are marks, or start/end points of range markers) either side of a frame. Note that if frame is exactly on a `mark', that mark will not be considered for returning as before/after.
| ||
Location | session_range_location () |
Methods | ||
---|---|---|
void | clear_changes () | |
Forget about any changes to this object's properties | ||
ID | id () | |
OwnedPropertyList | properties () |
Methods | ||
---|---|---|
LuaTable | hsla_to_rgba () | |
A convenience function for colorspace HSL to RGB conversion. All ranges are 0..1 Example: local r, g, b, a = ARDOUR.LuaAPI.hsla_to_rgba (hue, saturation, luminosity, alpha) Returns 4 parameters: red, green, blue, alpha (in range 0..1) | ||
Processor | new_luaproc (Session, std::string) | |
create a new Lua Processor (Plugin)
Returns Processor object (may be nil) | ||
Processor | new_plugin (Session, std::string, PluginType, std::string) | |
create a new Plugin Instance
Returns Processor or nil | ||
PluginInfo | new_plugin_info (std::string, PluginType) | |
search a Plugin
Returns PluginInfo or nil if not found | ||
Processor | nil_proc () | |
LuaTable | plugin_automation () | |
A convenience function to get a Automation Lists and ParamaterDescriptor for a given plugin control. This is equivalent to the following lua code function (processor, param_id) + local plugininsert = processor:to_insert () + local plugin = plugininsert:plugin(0) + local _, t = plugin:get_parameter_descriptor(param_id, ARDOUR.ParameterDescriptor ()) + local ctrl = Evoral.Parameter (ARDOUR.AutomationType.PluginAutomation, 0, param_id) + local ac = pi:automation_control (ctrl, false) + local acl = ac:alist() + return ac:alist(), ac:to_ctrl():list(), t[2] + end Example usage: get the third input parameter of first plugin on the given route (Ardour starts counting at zero). local al, cl, pd = ARDOUR.LuaAPI.plugin_automation (route:nth_plugin (0), 3) Returns 3 parameters: AutomationList, ControlList, ParamaterDescriptor | ||
bool | set_plugin_insert_param (PluginInsert, unsigned int, float) | |
set a plugin control-input parameter value This is a wrapper around set_processor_param which looks up the Processor by plugin-insert.
Returns true on success, false on error or out-of-bounds value | ||
bool | set_processor_param (Processor, unsigned int, float) | |
set a plugin control-input parameter value
Returns true on success, false on error or out-of-bounds value | ||
void | usleep (unsigned long) |
C‡: ARDOUR::LuaOSC::Address
@@ -606,20 +984,85 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to CC‡: ARDOUR::MeterSection
+is-a: ARDOUR:MetricSection
+ +A section of timeline with a certain Meter.
Methods | ||
---|---|---|
void | set_beat (double) | |
void | set_pulse (double) | |
Cast | ||
Meter | to_meter () |
Methods | ||
---|---|---|
double | pulse () |
C‡: ARDOUR::MetricSection
+ +A section of timeline with a certain Tempo or Meter.
Methods | ||
---|---|---|
double | pulse () | |
void | set_pulse (double) |
C‡: ARDOUR::MidiBuffer
Buffer containing 8-bit unsigned char (MIDI) data.
Methods | ||
---|---|---|
bool | empty () | |
bool | push_back (long, unsigned long, unsigned char*) | |
bool | push_event (MidiEvent) | |
bool | sameinstance (MidiBuffer) | |
void | silence (long, long) | |
Clear (eg zero, or empty) buffer | ||
... | table (--lua--) |
C‡: boost::shared_ptr< ARDOUR::MidiPort >, boost::weak_ptr< ARDOUR::MidiPort >
+is-a: ARDOUR:Port
+ +Methods | ||
---|---|---|
MidiBuffer | get_midi_buffer (unsigned int) | |
bool | input_active () | |
bool | isnil () | |
void | set_input_active (bool) |
Methods | ||
---|---|---|
int | connect (Port) | |
int | connect_by_name (std::string) | |
bool | connected () | |
Returns true if this port is connected to anything | ||
bool | connected_to (Port) | |
bool | connected_to_name (std::string) | |
int | disconnect (Port) | |
int | disconnect_all () | |
int | disconnect_by_name (std::string) | |
std::string | name () | |
Returns Port short name | ||
std::string | pretty_name (bool) | |
Returns Port human readable name | ||
bool | receives_input () | |
Returns true if this Port receives input, otherwise false | ||
bool | sends_output () | |
Returns true if this Port sends output, otherwise false | ||
Cast | ||
AudioPort | to_audioport () | |
MidiPort | to_midiport () |
C‡: boost::shared_ptr< ARDOUR::MidiTrack >, boost::weak_ptr< ARDOUR::MidiTrack >
is-a: ARDOUR:Track
+A track is an route (bus) with a recordable diskstream and related objects relevant to tracking, playback and editing.
Specifically a track has regions and playlist objects.
Methods | ||
---|---|---|
bool | isnil () |
Methods | ||
---|---|---|
Region | bounce (InterThreadInfo&) | |
bounce track from session start to session end to new region
Returns a new audio region (or nil in case of error) | ||
Region | bounce_range (long, long, InterThreadInfo&, Processor, bool) | |
Bounce the given range to a new audio region.
Returns a new audio region (or nil in case of error) | ||
bool | bounceable (Processor, bool) | |
Test if the track can be bounced with the given settings. If sends/inserts/returns are present in the signal path or the given track has no audio outputs bouncing is not possible.
Returns true if the track can be bounced, or false otherwise. | ||
bool | can_record () | |
bool | record_enabled () | |
bool | record_safe () | |
Playlist | playlist () | |
bool | set_name (std::string) | |
void | set_record_enabled (bool, GroupControlDisposition) | |
void | set_record_safe (bool, GroupControlDisposition) | |
Cast | ||
AudioTrack | to_audio_track () | |
MidiTrack | to_midi_track () |
Methods | ||
---|---|---|
bool | active () | |
int | add_processor_by_index (Processor, int, ProcessorStreams, bool) | |
Add a processor to a route such that it ends up with a given index into the visible processors.
Returns 0 on success, non-0 on failure. | ||
bool | add_sidechain (Processor) | |
Amp | amp () | |
std::string | comment () | |
bool | customize_plugin_insert (Processor, unsigned int, ChanCount) | |
bool | customize_plugin_insert (Processor, unsigned int, ChanCount, ChanCount) | |
enable custom plugin-insert configuration
Returns true if successful | ||
Delivery | main_outs () | |
the signal processorat at end of the processing chain which produces output | ||
bool | muted () | |
ChanCount | n_inputs () | |
ChanCount | n_outputs () | |
Processor | nth_plugin (unsigned int) | |
Processor | nth_processor (unsigned int) | |
Processor | nth_send (unsigned int) | |
int | remove_processor (Processor, ProcessorStreams, bool) | |
remove plugin/processor
Returns 0 on success | ||
bool | remove_sidechain (Processor) | |
int | replace_processor (Processor, Processor, ProcessorStreams) | |
replace plugin/processor with another
Returns 0 on success | ||
bool | reset_plugin_insert (Processor) | |
reset plugin-insert configuration to default, disable customizations. This is equivalent to calling customize_plugin_insert (proc, 0, unused)
Returns true if successful | ||
void | set_active (bool, void*) | |
void | set_comment (std::string, void*) | |
bool | set_strict_io (bool) | |
bool | soloed () | |
bool | strict_io () | |
Amp | trim () | |
Cast | ||
Track | to_track () |
Methods | ||
---|---|---|
GainControl | gain_control () | |
bool | is_auditioner () | |
bool | is_hidden () | |
bool | is_master () | |
bool | is_monitor () | |
bool | is_selected () | |
MuteControl | mute_control () | |
PhaseControl | phase_control () | |
AutomationControl | rec_enable_control () | |
AutomationControl | rec_safe_control () | |
SoloControl | solo_control () | |
SoloIsolateControl | solo_isolate_control () | |
SoloSafeControl | solo_safe_control () | |
GainControl | trim_control () | |
Cast | ||
Route | to_route () |
Methods | ||
---|---|---|
std::string | name () |
Methods | ||
---|---|---|
OwnedPropertyList | properties () | |
Cast | ||
Stateful | to_stateful () | |
StatefulDestructible | to_statefuldestructible () |
C‡: std::list<boost::shared_ptr<ARDOUR::MidiTrack> >
@@ -680,6 +1162,59 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to CC‡: boost::shared_ptr< ARDOUR::MuteControl >, boost::weak_ptr< ARDOUR::MuteControl >
+is-a: ARDOUR:SlavableAutomationControl,
+ +A PBD::Controllable with associated automation data (AutomationList)
Methods | ||
---|---|---|
bool | isnil () | |
bool | muted () | |
bool | muted_by_self () |
Methods | ||
---|---|---|
void | add_master (AutomationControl) | |
void | clear_masters () | |
int | get_boolean_masters () | |
double | get_masters_value () | |
void | remove_master (AutomationControl) | |
bool | slaved () | |
bool | slaved_to (AutomationControl) |
Methods | ||
---|---|---|
AutomationList | alist () | |
AutoState | automation_state () | |
AutoStyle | automation_style () | |
double | get_value () | |
Get the current effective `user' value based on automation state | ||
void | set_automation_state (AutoState) | |
void | set_automation_style (AutoStyle) | |
void | set_value (double, GroupControlDisposition) | |
Get and Set `internal' value All derived classes must implement this. Basic derived classes will ignore
| ||
void | start_touch (double) | |
void | stop_touch (bool, double) | |
bool | writable () | |
Cast | ||
Control | to_ctrl () |
Methods | ||
---|---|---|
std::string | name () |
Methods | ||
---|---|---|
void | clear_changes () | |
Forget about any changes to this object's properties | ||
ID | id () | |
OwnedPropertyList | properties () |
C‡: PBD::OwnedPropertyList
is-a: ARDOUR:PropertyList
@@ -708,10 +1243,102 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to CC‡: boost::shared_ptr< ARDOUR::PhaseControl >, boost::weak_ptr< ARDOUR::PhaseControl >
+is-a: ARDOUR:AutomationControl
+ +A PBD::Controllable with associated automation data (AutomationList)
Methods | ||
---|---|---|
bool | inverted (unsigned int) | |
bool | isnil () | |
void | set_phase_invert (unsigned int, bool) | |
|
Methods | ||
---|---|---|
AutomationList | alist () | |
AutoState | automation_state () | |
AutoStyle | automation_style () | |
double | get_value () | |
Get the current effective `user' value based on automation state | ||
void | set_automation_state (AutoState) | |
void | set_automation_style (AutoStyle) | |
void | set_value (double, GroupControlDisposition) | |
Get and Set `internal' value All derived classes must implement this. Basic derived classes will ignore
| ||
void | start_touch (double) | |
void | stop_touch (bool, double) | |
bool | writable () | |
Cast | ||
Control | to_ctrl () |
Methods | ||
---|---|---|
std::string | name () |
Methods | ||
---|---|---|
void | clear_changes () | |
Forget about any changes to this object's properties | ||
ID | id () | |
OwnedPropertyList | properties () |
C‡: boost::shared_ptr< ARDOUR::Playlist >, boost::weak_ptr< ARDOUR::Playlist >
+is-a: ARDOUR:SessionObject
+ +A named object associated with a Session. Objects derived from this class are expected to be destroyed before the session calls drop_references().
Methods | ||
---|---|---|
void | add_region (Region, long, float, bool) | |
Note: this calls set_layer (..., DBL_MAX) so it will reset the layering index of region | ||
Region | combine (RegionList) | |
unsigned int | count_regions_at (long) | |
Playlist | cut (AudioRangeList&, bool) | |
DataType | data_type () | |
void | duplicate (Region, long, long, float) | |
| ||
void | duplicate_range (AudioRange&, float) | |
void | duplicate_until (Region, long, long, long) | |
| ||
Region | find_next_region (long, RegionPoint, int) | |
long | find_next_region_boundary (long, int) | |
bool | isnil () | |
void | lower_region (Region) | |
void | lower_region_to_bottom (Region) | |
unsigned int | n_regions () | |
void | raise_region (Region) | |
void | raise_region_to_top (Region) | |
Region | region_by_id (ID) | |
RegionListPtr | region_list () | |
RegionListPtr | regions_at (long) | |
RegionListPtr | regions_touched (long, long) | |
Returns regions which have some part within this range. | ||
RegionListPtr | regions_with_end_within (Range) | |
RegionListPtr | regions_with_start_within (Range) | |
void | remove_region (Region) | |
void | split (long) | |
void | split_region (Region, long) | |
Region | top_region_at (long) | |
Region | top_unmuted_region_at (long) | |
void | uncombine (Region) |
Methods | ||
---|---|---|
std::string | name () | |
Cast | ||
Stateful | to_stateful () | |
StatefulDestructible | to_statefuldestructible () |
C‡: boost::shared_ptr< ARDOUR::Plugin >, boost::weak_ptr< ARDOUR::Plugin >
is-a: PBD:StatefulDestructiblePtr
+A plugin is an external module (usually 3rd party provided) loaded into Ardour for the purpose of digital signal processing.
This class provides an abstraction for methords provided by all supported plugin standards such as presets, name, parameters etc.
Plugins are not used directly in Ardour but always wrapped by a PluginInsert.
Methods | ||
---|---|---|
std::string | get_docs () |
Methods | ||
---|---|---|
void | clear_changes () | |
Forget about any changes to this object's properties | ||
ID | id () | |
OwnedPropertyList | properties () |
C‡: boost::shared_ptr< ARDOUR::PluginInsert::PluginControl >, boost::weak_ptr< ARDOUR::PluginInsert::PluginControl >
is-a: ARDOUR:AutomationControl
+A control that manipulates a plugin parameter (control port).
Methods | ||
---|---|---|
bool | isnil () |
Methods | ||
---|---|---|
AutomationList | alist () | |
AutoState | automation_state () | |
AutoStyle | automation_style () | |
double | get_value () | |
Get the current effective `user' value based on automation state | ||
void | set_automation_state (AutoState) | |
void | set_automation_style (AutoStyle) | |
void | set_value (double, GroupControlDisposition) | |
Get and Set `internal' value All derived classes must implement this. Basic derived classes will ignore
| ||
void | start_touch (double) | |
void | stop_touch (bool, double) | |
bool | writable () | |
Cast | ||
Control | to_ctrl () |
Methods | ||
---|---|---|
ControlList | list () | |
std::string | name () |
Methods | ||
---|---|---|
void | clear_changes () | |
Forget about any changes to this object's properties | ||
ID | id () | |
OwnedPropertyList | properties () |
C‡: boost::shared_ptr< ARDOUR::PluginInfo >, boost::weak_ptr< ARDOUR::PluginInfo >
@@ -773,6 +1417,7 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to CC‡: boost::shared_ptr< ARDOUR::PluginInsert >, boost::weak_ptr< ARDOUR::PluginInsert >
is-a: ARDOUR:Processor
+Plugin inserts: send data through a plugin
Methods | ||
---|---|---|
void | activate () | |
Plugin | plugin (unsigned int) | |
void | set_input_map (unsigned int, ChanMapping) | |
void | set_output_map (unsigned int, ChanMapping) | |
IO | sidechain_input () | |
bool | strict_io_configured () |
Methods | ||
---|---|---|
bool | active () | |
AutomationControl | automation_control (Parameter, bool) | |
Control | control (Parameter, bool) | |
std::string | display_name () | |
Cast | ||
Amp | to_amp () | |
Automatable | to_automatable () | |
PluginInsert | to_insert () | |
IOProcessor | to_ioprocessor () | |
SideChain | to_sidechain () | |
UnknownProcessor | to_unknownprocessor () |
Methods | ||
---|---|---|
std::string | name () | |
Cast | ||
Stateful | to_stateful () | |
StatefulDestructible | to_statefuldestructible () |
C‡: boost::shared_ptr< ARDOUR::Port >, boost::weak_ptr< ARDOUR::Port >
+Methods | ||
---|---|---|
OwnedPropertyList | properties () |
Returns true if this port is connected to anything
Returns Port short name
Returns Port human readable name
Returns true if this Port receives input, otherwise false
Returns true if this Port sends output, otherwise false
C‡: ARDOUR::PortEngine
+ +PortEngine is an abstract base class that defines the functionality required by Ardour.
A Port is basically an endpoint for a datastream (which can either be continuous, like audio, or event-based, like MIDI). Ports have buffers associated with them into which data can be written (if they are output ports) and from which data can be read (if they input ports). Ports can be connected together so that data written to an output port can be read from an input port. These connections can be 1:1, 1:N OR N:1.
Ports may be associated with software only, or with hardware. Hardware related ports are often referred to as physical, and correspond to some relevant physical entity on a hardware device, such as an audio jack or a MIDI connector. Physical ports may be potentially asked to monitor their inputs, though some implementations may not support this.
Most physical ports will also be considered "terminal", which means that data delivered there or read from there will go to or comes from a system outside of the PortEngine implementation's control (e.g. the analog domain for audio, or external MIDI devices for MIDI). Non-physical ports can also be considered "terminal". For example, the output port of a software synthesizer is a terminal port, because the data contained in its buffer does not and cannot be considered to come from any other port - it is synthesized by its owner.
Ports also have latency associated with them. Each port has a playback latency and a capture latency:
capture latency: how long since the data read from the buffer of a port arrived at at a terminal port. The data will have come from the "outside world" if the terminal port is also physical, or will have been synthesized by the entity that owns the terminal port.
playback latency: how long until the data written to the buffer of port will reach a terminal port.
For more detailed questions about the PortEngine API, consult the JACK API documentation, on which this entire object is based.
This class object is only used indirectly as return-value and function-parameter. It provides no methods by itself.
+C‡: std::list<boost::shared_ptr<ARDOUR::Port> >
+ +Constructor | ||
---|---|---|
ℂ | ARDOUR.PortList () | |
Methods | ||
bool | empty () | |
LuaIter | iter () | |
void | reverse () | |
unsigned long | size () | |
LuaTable | table () |
C‡: ARDOUR::PortManager
+ +Methods | ||
---|---|---|
int | connect (std::string, std::string) | |
bool | connected (std::string) | |
int | disconnect (std::string, std::string) | |
int | disconnect_port (Port) | |
LuaTable(int, ...) | get_backend_ports (std::string, DataType, PortFlags, StringVector&) | |
LuaTable(int, ...) | get_connections (std::string, StringVector&) | |
void | get_physical_inputs (DataType, StringVector&) | |
void | get_physical_outputs (DataType, StringVector&) | |
Port | get_port_by_name (std::string) | |
Returns Corresponding Port or 0. | ||
LuaTable(int, ...) | get_ports (DataType, PortList&) | |
std::string | get_pretty_name_by_name (std::string) | |
ChanCount | n_physical_inputs () | |
ChanCount | n_physical_outputs () | |
bool | physically_connected (std::string) | |
PortEngine | port_engine () | |
bool | port_is_physical (std::string) |
C‡: boost::shared_ptr< ARDOUR::PortSet >, boost::weak_ptr< ARDOUR::PortSet >
+ +An ordered list of Ports, possibly of various types.
This allows access to all the ports as a list, ignoring type, or accessing the nth port of a given type. Note that port(n) and nth_audio_port(n) may NOT return the same port.
Each port is held twice; once in a per-type vector of vectors (_ports) and once in a vector of all port (_all_ports). This is to speed up the fairly common case of iterating over all ports.
Methods | ||
---|---|---|
void | add (Port) | |
void | clear () | |
Remove all ports from the PortSet. Ports are not deregistered with the engine, it's the caller's responsibility to not leak here! | ||
bool | contains (Port) | |
bool | empty () | |
bool | isnil () | |
unsigned long | num_ports (DataType) | |
Port | port (DataType, unsigned long) | |
nth port of type t, or nth port if t = NIL
| ||
bool | remove (Port) |
C‡: ARDOUR::Plugin::PresetRecord
Constructor | ||
---|---|---|
ℂ | ARDOUR.PresetRecord () | |
Data Members | ||
std::string | label | |
std::string | uri |
C‡: boost::shared_ptr< ARDOUR::Processor >, boost::weak_ptr< ARDOUR::Processor >
-is-a: ARDOUR:Automatable, ARDOUR:SessionObject
+is-a: ARDOUR:SessionObject
+A mixer strip element - plugin, send, meter, etc
Methods | ||
---|---|---|
void | activate () | |
bool | active () | |
AutomationControl | automation_control (Parameter, bool) | |
Control | control (Parameter, bool) | |
void | deactivate () | |
std::string | display_name () | |
bool | isnil () | |
bool | isnil () | |
Cast | ||
Amp | to_amp () | |
Automatable | to_automatable () | |
PluginInsert | to_insert () | |
IOProcessor | to_ioprocessor () | |
SideChain | to_sidechain () | |
UnknownProcessor | to_unknownprocessor () |
Methods | ||
---|---|---|
std::string | name () |
Methods | ||
---|---|---|
OwnedPropertyList | properties () | |
Cast | ||
Stateful | to_stateful () | |
StatefulDestructible | to_statefuldestructible () |
C‡: PBD::PropertyDescriptor<bool>
@@ -875,6 +1608,7 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to CC‡: boost::shared_ptr< ARDOUR::Region >, boost::weak_ptr< ARDOUR::Region >
is-a: ARDOUR:SessionObject
+A named object associated with a Session. Objects derived from this class are expected to be destroyed before the session calls drop_references().
Methods | ||
---|---|---|
bool | at_natural_position () | |
| ||
void | trim_front (long) | |
void | trim_to (long, long) | |
bool | valid_transients () | |
bool | video_locked () | |
bool | whole_file () |
Methods | ||
---|---|---|
std::string | name () |
Methods | ||
---|---|---|
OwnedPropertyList | properties () | |
Cast | ||
Stateful | to_stateful () | |
StatefulDestructible | to_statefuldestructible () |
C‡: ARDOUR::RegionFactory
@@ -951,40 +1682,103 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to CC‡: std::list<boost::shared_ptr<ARDOUR::Region> >
+ +Constructor | ||
---|---|---|
ℂ | ARDOUR.RegionList () | |
Methods | ||
bool | empty () | |
LuaIter | iter () | |
void | reverse () | |
unsigned long | size () | |
LuaTable | table () |
C‡: boost::shared_ptr<std::list<boost::shared_ptr<ARDOUR::Region> > >
+ +Constructor | ||
---|---|---|
ℂ | ARDOUR.RegionListPtr () | |
Methods | ||
LuaTable | add (LuaTable {Region}) | |
bool | empty () | |
LuaIter | iter () | |
void | push_back (Region) | |
void | reverse () | |
unsigned long | size () | |
LuaTable | table () | |
void | unique () |
C‡: boost::shared_ptr< ARDOUR::Route >, boost::weak_ptr< ARDOUR::Route >
-is-a: ARDOUR:SessionObject
+is-a: ARDOUR:Stripable
+A named object associated with a Session. Objects derived from this class are expected to be destroyed before the session calls drop_references().
Methods | ||
---|---|---|
bool | active () | |
int | add_processor_by_index (Processor, int, ProcessorStreams, bool) | |
Add a processor to a route such that it ends up with a given index into the visible processors.
Returns 0 on success, non-0 on failure. | ||
bool | add_sidechain (Processor) | |
Amp | amp () | |
std::string | comment () | |
bool | customize_plugin_insert (Processor, unsigned int, ChanCount) | |
bool | customize_plugin_insert (Processor, unsigned int, ChanCount, ChanCount) | |
enable custom plugin-insert configuration
Returns true if successful | ||
bool | isnil () | |
Delivery | main_outs () | |
the signal processorat at end of the processing chain which produces output | ||
bool | muted () | |
ChanCount | n_inputs () | |
ChanCount | n_outputs () | |
Processor | nth_plugin (unsigned int) | |
Processor | nth_processor (unsigned int) | |
Processor | nth_send (unsigned int) | |
int | remove_processor (Processor, ProcessorStreams, bool) | |
remove plugin/processor
Returns 0 on success | ||
bool | remove_sidechain (Processor) | |
int | replace_processor (Processor, Processor, ProcessorStreams) | |
replace plugin/processor with another
Returns 0 on success | ||
bool | reset_plugin_insert (Processor) | |
reset plugin-insert configuration to default, disable customizations. This is equivalent to calling customize_plugin_insert (proc, 0, unused)
Returns true if successful | ||
void | set_active (bool, void*) | |
void | set_comment (std::string, void*) | |
bool | set_name (std::string) | |
bool | set_strict_io (bool) | |
bool | soloed () | |
bool | strict_io () |
Methods | ||
---|---|---|
GainControl | gain_control () | |
bool | is_auditioner () | |
bool | is_hidden () | |
bool | is_master () | |
bool | is_monitor () | |
bool | is_selected () | |
MuteControl | mute_control () | |
PhaseControl | phase_control () | |
AutomationControl | rec_enable_control () | |
AutomationControl | rec_safe_control () | |
SoloControl | solo_control () | |
SoloIsolateControl | solo_isolate_control () | |
SoloSafeControl | solo_safe_control () | |
GainControl | trim_control () | |
Cast | ||
Route | to_route () |
Methods | ||
---|---|---|
std::string | name () |
Methods | ||
---|---|---|
OwnedPropertyList | properties () | |
Cast | ||
Stateful | to_stateful () | |
StatefulDestructible | to_statefuldestructible () |
C‡: ARDOUR::Route::ProcessorStreams
@@ -994,6 +1788,11 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to CC‡: ARDOUR::RouteGroup
+ +A group identifier for routes.
RouteGroups permit to define properties which are shared among all Routes that use the given identifier.
A route can at most be in one group.
This class object is only used indirectly as return-value and function-parameter. It provides no methods by itself.
C‡: std::list<boost::shared_ptr<ARDOUR::Route> >
@@ -1029,13 +1828,26 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to CArdour Session
Methods | ||
---|---|---|
void | abort_reversible_command () | |
abort an open undo command This must only be called after begin_reversible_command () | ||
bool | actively_recording () | |
void | add_command (Command) | |
StatefulDiffCommand | add_stateful_diff_command (StatefulDestructiblePtr) | |
create an StatefulDiffCommand from the given object and add it to the stack. This function must only be called after begin_reversible_command. Failing to do so may lead to a crash.
Returns the allocated StatefulDiffCommand (already added via add_command) | ||
void | begin_reversible_command (std::string) | |
begin collecting undo information This call must always be followed by either begin_reversible_command() or commit_reversible_command()
| ||
void | commit_reversible_command (Command) | |
finalize an undo command and commit pending transactions This must only be called after begin_reversible_command ()
| ||
Controllable | controllable_by_id (ID) | |
long | current_end_frame () | |
long | current_start_frame () | |
AudioEngine | engine () | |
long | frame_rate () | |
"actual" sample rate of session, set by current audioengine rate, pullup/down etc. | ||
double | frames_per_timecode_frame () | |
unsigned int | get_block_size () | |
Route | get_remote_nth_route (unsigned int) | |
Stripable | get_remote_nth_stripable (unsigned int, Flag) | |
RouteListPtr | get_routes () | |
BufferSet | get_scratch_buffers (ChanCount, bool) | |
BufferSet | get_silent_buffers (ChanCount) | |
void | goto_end () | |
void | goto_start () | |
long | last_transport_start () | |
Locations | locations () | |
Route | master_out () | |
Route | monitor_out () | |
std::string | name () | |
RouteList | new_audio_route (int, int, RouteGroup, unsigned int, std::string, Flag, unsigned int) | |
AudioTrackList | new_audio_track (int, int, RouteGroup, unsigned int, std::string, unsigned int, TrackMode) | |
RouteList | new_midi_route (RouteGroup, unsigned int, std::string, PluginInfo, PresetRecord, Flag, unsigned int) | |
MidiTrackList | new_midi_track (ChanCount, ChanCount, PluginInfo, PresetRecord, RouteGroup, unsigned int, std::string, unsigned int, TrackMode) | |
RouteList | new_route_from_template (unsigned int, std::string, std::string, PlaylistDisposition) | |
create a new track or bus from a template (XML path)
Returns list of newly created routes | ||
long | nominal_frame_rate () | |
"native" sample rate of session, regardless of current audioengine rate, pullup/down etc | ||
std::string | path () | |
void | request_locate (long, bool) | |
void | request_stop (bool, bool) | |
void | request_transport_speed (double, bool) | |
Route | route_by_id (ID) | |
Route | route_by_name (std::string) | |
Route | route_by_remote_id (unsigned int) | |
Route | route_by_id (ID) | |
Route | route_by_name (std::string) | |
Route | route_by_selected_count (unsigned int) | |
int | save_state (std::string, bool, bool, bool) | |
| ||
save session
Returns zero on success | ||
void | scripts_changed () | |
void | set_dirty () | |
std::string | snap_name () | |
bool | timecode_drop_frames () | |
long | timecode_frames_per_hour () | |
double | timecode_frames_per_second () | |
Track | track_by_diskstream_id (ID) | |
Track | track_by_diskstream_id (ID) | |
long | transport_frame () | |
bool | transport_rolling () | |
double | transport_speed () | |
StringList | unknown_processors () | |
long | worst_input_latency () | |
long | worst_output_latency () | |
long | worst_playback_latency () | |
long | worst_track_latency () |
C‡: boost::shared_ptr< ARDOUR::SessionObject >, boost::weak_ptr< ARDOUR::SessionObject >
-is-a: PBD:StatefulDestructiblePtr
+A named object associated with a Session. Objects derived from this class are expected to be destroyed before the session calls drop_references().
Methods | ||
---|---|---|
bool | isnil () | |
std::string | name () | |
Cast | ||
Stateful | to_stateful () | |
StatefulDestructible | to_statefuldestructible () |
Methods | ||
---|---|---|
OwnedPropertyList | properties () |
C‡: boost::shared_ptr< ARDOUR::SideChain >, boost::weak_ptr< ARDOUR::SideChain >
is-a: ARDOUR:IOProcessor
+A mixer strip element (Processor) with 1 or 2 IO elements.
Methods | ||
---|---|---|
bool | isnil () | |
Methods | ||
void | activate () | |
bool | active () | |
AutomationControl | automation_control (Parameter, bool) | |
Control | control (Parameter, bool) | |
void | deactivate () | |
std::string | display_name () | |
Cast | ||
Amp | to_amp () | |
Automatable | to_automatable () | |
PluginInsert | to_insert () | |
IOProcessor | to_ioprocessor () | |
SideChain | to_sidechain () | |
UnknownProcessor | to_unknownprocessor () |
Methods | ||
---|---|---|
std::string | name () | |
Cast | ||
Stateful | to_stateful () | |
StatefulDestructible | to_statefuldestructible () |
C‡: boost::shared_ptr< ARDOUR::SlavableAutomationControl >, boost::weak_ptr< ARDOUR::SlavableAutomationControl >
+is-a: ARDOUR:AutomationControl
+ +A PBD::Controllable with associated automation data (AutomationList)
Methods | ||
---|---|---|
void | add_master (AutomationControl) | |
void | clear_masters () | |
int | get_boolean_masters () | |
double | get_masters_value () | |
bool | isnil () | |
void | remove_master (AutomationControl) | |
bool | slaved () | |
bool | slaved_to (AutomationControl) |
Methods | ||
---|---|---|
AutomationList | alist () | |
AutoState | automation_state () | |
AutoStyle | automation_style () | |
double | get_value () | |
Get the current effective `user' value based on automation state | ||
void | set_automation_state (AutoState) | |
void | set_automation_style (AutoStyle) | |
void | set_value (double, GroupControlDisposition) | |
Get and Set `internal' value All derived classes must implement this. Basic derived classes will ignore
| ||
void | start_touch (double) | |
void | stop_touch (bool, double) | |
bool | writable () | |
Cast | ||
Control | to_ctrl () |
Methods | ||
---|---|---|
std::string | name () |
Methods | ||
---|---|---|
void | clear_changes () | |
Forget about any changes to this object's properties | ||
ID | id () | |
OwnedPropertyList | properties () |
C‡: boost::shared_ptr< ARDOUR::SoloControl >, boost::weak_ptr< ARDOUR::SoloControl >
+is-a: ARDOUR:SlavableAutomationControl,
+ +A PBD::Controllable with associated automation data (AutomationList)
Methods | ||
---|---|---|
bool | can_solo () | |
bool | isnil () | |
bool | self_soloed () | |
bool | soloed () |
Methods | ||
---|---|---|
void | add_master (AutomationControl) | |
void | clear_masters () | |
int | get_boolean_masters () | |
double | get_masters_value () | |
void | remove_master (AutomationControl) | |
bool | slaved () | |
bool | slaved_to (AutomationControl) |
Methods | ||
---|---|---|
AutomationList | alist () | |
AutoState | automation_state () | |
AutoStyle | automation_style () | |
double | get_value () | |
Get the current effective `user' value based on automation state | ||
void | set_automation_state (AutoState) | |
void | set_automation_style (AutoStyle) | |
void | set_value (double, GroupControlDisposition) | |
Get and Set `internal' value All derived classes must implement this. Basic derived classes will ignore
| ||
void | start_touch (double) | |
void | stop_touch (bool, double) | |
bool | writable () | |
Cast | ||
Control | to_ctrl () |
Methods | ||
---|---|---|
std::string | name () |
Methods | ||
---|---|---|
void | clear_changes () | |
Forget about any changes to this object's properties | ||
ID | id () | |
OwnedPropertyList | properties () |
C‡: boost::shared_ptr< ARDOUR::SoloIsolateControl >, boost::weak_ptr< ARDOUR::SoloIsolateControl >
+is-a: ARDOUR:SlavableAutomationControl,
+ +A PBD::Controllable with associated automation data (AutomationList)
Methods | ||
---|---|---|
bool | isnil () | |
bool | self_solo_isolated () | |
bool | solo_isolated () |
Methods | ||
---|---|---|
void | add_master (AutomationControl) | |
void | clear_masters () | |
int | get_boolean_masters () | |
double | get_masters_value () | |
void | remove_master (AutomationControl) | |
bool | slaved () | |
bool | slaved_to (AutomationControl) |
Methods | ||
---|---|---|
AutomationList | alist () | |
AutoState | automation_state () | |
AutoStyle | automation_style () | |
double | get_value () | |
Get the current effective `user' value based on automation state | ||
void | set_automation_state (AutoState) | |
void | set_automation_style (AutoStyle) | |
void | set_value (double, GroupControlDisposition) | |
Get and Set `internal' value All derived classes must implement this. Basic derived classes will ignore
| ||
void | start_touch (double) | |
void | stop_touch (bool, double) | |
bool | writable () | |
Cast | ||
Control | to_ctrl () |
Methods | ||
---|---|---|
std::string | name () |
Methods | ||
---|---|---|
void | clear_changes () | |
Forget about any changes to this object's properties | ||
ID | id () | |
OwnedPropertyList | properties () |
C‡: boost::shared_ptr< ARDOUR::SoloSafeControl >, boost::weak_ptr< ARDOUR::SoloSafeControl >
+is-a: ARDOUR:SlavableAutomationControl,
+ +A PBD::Controllable with associated automation data (AutomationList)
Methods | ||
---|---|---|
bool | isnil () | |
bool | solo_safe () |
Methods | ||
---|---|---|
void | add_master (AutomationControl) | |
void | clear_masters () | |
int | get_boolean_masters () | |
double | get_masters_value () | |
void | remove_master (AutomationControl) | |
bool | slaved () | |
bool | slaved_to (AutomationControl) |
Methods | ||
---|---|---|
AutomationList | alist () | |
AutoState | automation_state () | |
AutoStyle | automation_style () | |
double | get_value () | |
Get the current effective `user' value based on automation state | ||
void | set_automation_state (AutoState) | |
void | set_automation_style (AutoStyle) | |
void | set_value (double, GroupControlDisposition) | |
Get and Set `internal' value All derived classes must implement this. Basic derived classes will ignore
| ||
void | start_touch (double) | |
void | stop_touch (bool, double) | |
bool | writable () | |
Cast | ||
Control | to_ctrl () |
Methods | ||
---|---|---|
std::string | name () |
Methods | ||
---|---|---|
void | clear_changes () | |
Forget about any changes to this object's properties | ||
ID | id () | |
OwnedPropertyList | properties () |
C‡: boost::shared_ptr< ARDOUR::Source >, boost::weak_ptr< ARDOUR::Source >
+A named object associated with a Session. Objects derived from this class are expected to be destroyed before the session calls drop_references().
Methods | ||
---|---|---|
bool | isnil () |
C‡: boost::shared_ptr< ARDOUR::Stripable >, boost::weak_ptr< ARDOUR::Stripable >
+is-a: ARDOUR:SessionObject
+ +A named object associated with a Session. Objects derived from this class are expected to be destroyed before the session calls drop_references().
Methods | ||
---|---|---|
GainControl | gain_control () | |
bool | is_auditioner () | |
bool | is_hidden () | |
bool | is_master () | |
bool | is_monitor () | |
bool | is_selected () | |
bool | isnil () | |
MuteControl | mute_control () | |
PhaseControl | phase_control () | |
AutomationControl | rec_enable_control () | |
AutomationControl | rec_safe_control () | |
SoloControl | solo_control () | |
SoloIsolateControl | solo_isolate_control () | |
SoloSafeControl | solo_safe_control () | |
GainControl | trim_control () | |
Cast | ||
Route | to_route () |
Methods | ||
---|---|---|
std::string | name () | |
Cast | ||
Stateful | to_stateful () | |
StatefulDestructible | to_statefuldestructible () |
C‡: ARDOUR::Tempo
@@ -1152,52 +2215,142 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to CTempo Map - mapping of timecode to musical time. convert audio-samples, sample-rate to Bar/Beat/Tick, Meter/Tempo
Methods | ||
---|---|---|
void | add_meter (Meter, BBT_TIME) | |
void | add_tempo (Tempo, BBT_TIME) | |
MeterSection | add_meter (Meter, double, BBT_TIME, long, PositionLockStyle) | |
TempoSection | add_tempo (Tempo, double, long, Type, PositionLockStyle) | |
MeterSection | meter_section_at_beat (double) | |
MeterSection | meter_section_at_frame (long) | |
TempoSection | tempo_section_at_frame (long) |
C‡: ARDOUR::TempoSection
+is-a: ARDOUR:MetricSection
+ +A section of timeline with a certain Tempo.
Methods | ||
---|---|---|
double | c_func () |
Methods | ||
---|---|---|
double | pulse () | |
void | set_pulse (double) |
C‡: boost::shared_ptr< ARDOUR::Track >, boost::weak_ptr< ARDOUR::Track >
is-a: ARDOUR:Route
+A track is an route (bus) with a recordable diskstream and related objects relevant to tracking, playback and editing.
Specifically a track has regions and playlist objects.
Methods | ||
---|---|---|
Region | bounce (InterThreadInfo&) | |
bounce track from session start to session end to new region
Returns a new audio region (or nil in case of error) | ||
Region | bounce_range (long, long, InterThreadInfo&, Processor, bool) | |
Bounce the given range to a new audio region.
Returns a new audio region (or nil in case of error) | ||
bool | bounceable (Processor, bool) | |
Test if the track can be bounced with the given settings. If sends/inserts/returns are present in the signal path or the given track has no audio outputs bouncing is not possible.
Returns true if the track can be bounced, or false otherwise. | ||
bool | can_record () | |
bool | isnil () | |
bool | record_enabled () | |
bool | record_safe () | |
Playlist | playlist () | |
bool | set_name (std::string) | |
void | set_record_enabled (bool, GroupControlDisposition) | |
void | set_record_safe (bool, GroupControlDisposition) | |
Cast | ||
AudioTrack | to_audio_track () | |
MidiTrack | to_midi_track () |
Methods | ||
---|---|---|
bool | active () | |
int | add_processor_by_index (Processor, int, ProcessorStreams, bool) | |
Add a processor to a route such that it ends up with a given index into the visible processors.
Returns 0 on success, non-0 on failure. | ||
bool | add_sidechain (Processor) | |
Amp | amp () | |
std::string | comment () | |
bool | customize_plugin_insert (Processor, unsigned int, ChanCount) | |
bool | customize_plugin_insert (Processor, unsigned int, ChanCount, ChanCount) | |
enable custom plugin-insert configuration
Returns true if successful | ||
Delivery | main_outs () | |
the signal processorat at end of the processing chain which produces output | ||
bool | muted () | |
ChanCount | n_inputs () | |
ChanCount | n_outputs () | |
Processor | nth_plugin (unsigned int) | |
Processor | nth_processor (unsigned int) | |
Processor | nth_send (unsigned int) | |
int | remove_processor (Processor, ProcessorStreams, bool) | |
remove plugin/processor
Returns 0 on success | ||
bool | remove_sidechain (Processor) | |
int | replace_processor (Processor, Processor, ProcessorStreams) | |
replace plugin/processor with another
Returns 0 on success | ||
bool | reset_plugin_insert (Processor) | |
reset plugin-insert configuration to default, disable customizations. This is equivalent to calling customize_plugin_insert (proc, 0, unused)
Returns true if successful | ||
void | set_active (bool, void*) | |
void | set_comment (std::string, void*) | |
bool | set_strict_io (bool) | |
bool | soloed () | |
bool | strict_io () | |
Amp | trim () | |
Cast | ||
Track | to_track () |
Methods | ||
---|---|---|
GainControl | gain_control () | |
bool | is_auditioner () | |
bool | is_hidden () | |
bool | is_master () | |
bool | is_monitor () | |
bool | is_selected () | |
MuteControl | mute_control () | |
PhaseControl | phase_control () | |
AutomationControl | rec_enable_control () | |
AutomationControl | rec_safe_control () | |
SoloControl | solo_control () | |
SoloIsolateControl | solo_isolate_control () | |
SoloSafeControl | solo_safe_control () | |
GainControl | trim_control () | |
Cast | ||
Route | to_route () |
Methods | ||
---|---|---|
std::string | name () | |
Cast | ||
Stateful | to_stateful () | |
StatefulDestructible | to_statefuldestructible () |
C‡: boost::shared_ptr< ARDOUR::UnknownProcessor >, boost::weak_ptr< ARDOUR::UnknownProcessor >
+is-a: ARDOUR:Processor
+ +A stub Processor that can be used in place of a `real' one that cannot be created for some reason; usually because it requires a plugin which is not present. UnknownProcessors are special-cased in a few places, notably in route configuration and signal processing, so that on encountering them configuration or processing stops.
When a Processor is missing from a Route, the following processors cannot be configured, as the missing Processor's output port configuration is unknown.
The main utility of the UnknownProcessor is that it allows state to be preserved, so that, for example, loading and re-saving a session on a machine without a particular plugin will not corrupt the session.
Methods | ||
---|---|---|
OwnedPropertyList | properties () | |
bool | isnil () |
Methods | ||
---|---|---|
void | activate () | |
bool | active () | |
void | deactivate () | |
std::string | display_name () | |
Cast | ||
Amp | to_amp () | |
Automatable | to_automatable () | |
PluginInsert | to_insert () | |
IOProcessor | to_ioprocessor () | |
SideChain | to_sidechain () | |
UnknownProcessor | to_unknownprocessor () |
Methods | ||
---|---|---|
std::string | name () | |
Cast | ||
Stateful | to_stateful () | |
StatefulDestructible | to_statefuldestructible () |
C‡: std::list<boost::weak_ptr<ARDOUR::AudioSource> >
@@ -1212,20 +2365,6 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to CC‡: std::set<boost::weak_ptr<ARDOUR::AudioPort> > >
- -Constructor | ||
---|---|---|
ℂ | ARDOUR.WeakPortSet () | |
Methods | ||
LuaTable | add (LuaTable {ARDOUR::AudioPort}) | |
void | clear () | |
bool | empty () | |
LuaIter | iter () | |
unsigned long | size () | |
LuaTable | table () |
C‡: std::list<boost::weak_ptr<ARDOUR::Route> >
@@ -1252,11 +2391,32 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to CC‡: ArdourMarker
Location Marker
Editor ruler representation of a location marker or range on the timeline.
This class object is only used indirectly as return-value and function-parameter. It provides no methods by itself.
+Methods | ||
---|---|---|
std::string | name () | |
long | position () | |
Type | type () |
C‡: std::list<ArdourMarker* >
+ +Constructor | ||
---|---|---|
ℂ | ArdourUI.ArdourMarkerList () | |
Methods | ||
LuaTable | add (LuaTable {ArdourMarker* }) | |
bool | empty () | |
LuaIter | iter () | |
void | push_back (ArdourMarker) | |
void | reverse () | |
unsigned long | size () | |
LuaTable | table () | |
void | unique () |
C‡: PublicEditor
@@ -1288,11 +2448,14 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to CReturns true if the editor is following the playhead
Set whether the editor should follow the playhead.
Set the mouse mode (gain, object, range, timefx etc.)
Set the snap mode.
Undo some transactions.
C‡: MarkerSelection
+is-a: ArdourUI:ArdourMarkerList
+ +This class object is only used indirectly as return-value and function-parameter. It provides no methods by itself.
+Constructor | ||
---|---|---|
ℂ | ArdourUI.ArdourMarkerList () | |
Methods | ||
LuaTable | add (LuaTable {ArdourMarker* }) | |
bool | empty () | |
LuaIter | iter () | |
void | push_back (ArdourMarker) | |
void | reverse () | |
unsigned long | size () | |
LuaTable | table () | |
void | unique () |
C‡: RegionSelection
@@ -1359,8 +2543,64 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to CEmpty this RegionSelection.
C‡: Selection
+ +The Selection class holds lists of selected items (tracks, regions, etc. etc.).
Methods | ||
---|---|---|
void | clear () | |
Clear everything from the Selection | ||
void | clear_all () | |
bool | empty (bool) | |
check if all selections are empty
Returns true if nothing is selected. | ||
Data Members | ||
ArdourUI:MarkerSelection | markers | |
ArdourUI:RegionSelection | regions | |
ArdourUI:TimeSelection | time | |
ArdourUI:TrackSelection | tracks |
C‡: TimeSelection
+is-a: ARDOUR:AudioRangeList
+ +Methods | ||
---|---|---|
long | end_frame () | |
long | length () | |
long | start () |
Constructor | ||
---|---|---|
ℂ | ARDOUR.AudioRangeList () | |
Methods | ||
bool | empty () | |
LuaIter | iter () | |
void | reverse () | |
unsigned long | size () | |
LuaTable | table () |
C‡: TrackSelection
+is-a: ArdourUI:TrackViewList
+ +This class object is only used indirectly as return-value and function-parameter. It provides no methods by itself.
+Methods | ||
---|---|---|
RouteList | routelist () |
C‡: TrackViewList
+ +Methods | ||
---|---|---|
RouteList | routelist () |
C‡: std::vector<double >
@@ -1383,6 +2623,8 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to CThis function disables a dash pattern that was set with set_dash()
C‡: LuaCairo::ImageSurface
+ +wrap RefPtr< Cairo::ImageSurface >
Image surfaces provide the ability to render to memory buffers either allocated by cairo or by the calling code. The supported image formats are those defined in Cairo::Format.
Constructor | ||
---|---|---|
ℂ | Cairo.ImageSurface (Format, int, int) | |
Methods | ||
Context | context () | |
Returns a context object to perform operations on the surface | ||
unsigned char* | get_data () | |
Get a pointer to the data of the image surface, for direct inspection or modification. Return value: a pointer to the image data of this surface or NULL if is not an image surface. | ||
int | get_height () | |
Gets the height of the ImageSurface in pixels | ||
int | get_stride () | |
Returns the stride of the image surface in bytes (or 0 if surface is not an image surface). The stride is the distance in bytes from the beginning of one row of the image data to the beginning of the next row. | ||
int | get_width () | |
Gets the width of the ImageSurface in pixels | ||
void | set_as_source (Context, int, int) |
C‡: LuaCairo::PangoLayout
+ +Constructor | ||
---|---|---|
ℂ | Cairo.PangoLayout (Context, std::string) | |
Methods | ||
int | get_character_count () | |
Returns the number of Unicode characters in the the text of layout. Returns The number of Unicode characters in the text of layout. | ||
EllipsizeMode | get_ellipsize () | |
Gets the type of ellipsization being performed for layout. See set_ellipsize() Use is_ellipsized() to query whether any paragraphs were actually ellipsized. Returns The current ellipsization mode for layout. | ||
... | get_pixel_size (--lua--) | |
Determines the logical width and height of a Pango::Layout in device units. | ||
std::string | get_text () | |
Gets the text in the layout. The returned text should not be freed or modified. Returns The text in the layout. | ||
WrapMode | get_wrap () | |
Gets the wrap mode for the layout. Use is_wrapped() to query whether any paragraphs were actually wrapped. Returns Active wrap mode. | ||
bool | is_ellipsized () | |
Queries whether the layout had to ellipsize any paragraphs. This returns true if the ellipsization mode for layout is not Pango::ELLIPSIZE_NONE, a positive width is set on layout, and there are paragraphs exceeding that width that have to be ellipsized. Returns true if any paragraphs had to be ellipsized, false otherwise. | ||
bool | is_wrapped () | |
Queries whether the layout had to wrap any paragraphs. This returns true if a positive width is set on layout, ellipsization mode of layout is set to Pango::ELLIPSIZE_NONE, and there are paragraphs exceeding the layout width that have to be wrapped. Returns true if any paragraphs had to be wrapped, false otherwise. | ||
void | set_ellipsize (EllipsizeMode) | |
Sets the type of ellipsization being performed for layout. Depending on the ellipsization mode ellipsize text is removed from the start, middle, or end of text so they fit within the width and height of layout set with set_width() and set_height(). If the layout contains characters such as newlines that force it to be layed out in multiple paragraphs, then whether each paragraph is ellipsized separately or the entire layout is ellipsized as a whole depends on the set height of the layout. See set_height() for details.
| ||
void | set_markup (std::string) | |
Sets the layout text and attribute list from marked-up text (see markup format). Replaces the current text and attribute list.
| ||
void | set_text (std::string) | |
Set the text of the layout.
| ||
void | set_width (int) | |
Sets the width to which the lines of the Pango::Layout should wrap or ellipsized. The default value is -1: no width set.
| ||
void | set_wrap (WrapMode) | |
Sets the wrap mode; the wrap mode only has effect if a width is set on the layout with set_width(). To turn off wrapping, set the width to -1.
| ||
void | show_in_cairo_context (Context) |
C‡: Evoral::Beats
@@ -1522,6 +2819,7 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to CC‡: boost::shared_ptr< Evoral::Control >, boost::weak_ptr< Evoral::Control >
+Base class representing some kind of (automatable) control; a fader's gain, for example, or a compressor plugin's threshold.
The class knows the Evoral::Parameter that it is controlling, and has a list of values for automation.
Methods | ||
---|---|---|
bool | isnil () |
Methods | ||
---|---|---|
void | add (double, double, bool, bool) | |
add automation events
| ||
void | clear (double, double) | |
remove all automation events between the given time range
| ||
double | eval (double) | |
query value at given time (takes a read-lock, not safe while writing automation)
Returns parameter value | ||
bool | in_write_pass () | |
InterpolationStyle | interpolation () | |
query interpolation style of the automation data Returns Interpolation Style | ||
bool | isnil () | |
LuaTable(double, ...) | rt_safe_eval (double, bool&) | |
realtime safe version of eval, may fail if read-lock cannot be taken
Returns parameter value | ||
void | set_interpolation (InterpolationStyle) | |
set the interpolation style of the automation data
| ||
void | thin (double) | |
Thin the number of events in this list. The thinning factor corresponds to the area of a triangle computed between three points in the list (time-difference * value-difference). If the area is large, it indicates significant non-linearity between the points. Time is measured in samples, value is usually normalized to 0..1. During automation recording we thin the recorded points using this value. If a point is sufficiently co-linear with its neighbours (as defined by the area of the triangle formed by three of them), we will not include it in the list. The larger the value, the more points are excluded, so this effectively measures the amount of thinning to be done.
| ||
void | truncate_end (double) | |
truncate the event list after the given time
| ||
void | truncate_start (double) | |
truncate the event list to the given time
|
C‡: boost::shared_ptr< Evoral::ControlSet >, boost::weak_ptr< Evoral::ControlSet >
@@ -1559,8 +2876,8 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to CMethods | ||
---|---|---|
unsigned char | channel () | |
unsigned char | set_channel () | |
unsigned char | set_type () | |
void | set_channel (unsigned char) | |
void | set_type (unsigned char) | |
unsigned char | type () |
C‡: Evoral::Range<long>
+ +Constructor | ||
---|---|---|
ℂ | Evoral.Range (long, long) | |
Data Members | ||
long | from | |
long | to |
C‡: std::bitset<47ul>
+C‡: std::bitset<46ul>
Constructor | ||
---|---|---|
ℂ | LuaSignal.Set () | |
Methods | ||
LuaTable | add (LuaTable {47ul}) | |
bool | any () | |
unsigned long | count () | |
bool | none () | |
Set | reset () | |
Set | set (unsigned long, bool) | |
unsigned long | size () | |
LuaTable | add (LuaTable {46ul}) | |
bool | any () | |
unsigned long | count () | |
bool | none () | |
Set | reset () | |
Set | set (unsigned long, bool) | |
unsigned long | size () | |
LuaTable | table () | |
bool | test (unsigned long) | |
bool | test (unsigned long) |
C‡: Command
+is-a: PBD:StatefulDestructible
+ +Base class for Undo/Redo commands and changesets
Methods | ||
---|---|---|
std::string | name () | |
void | set_name (std::string) |
Methods | ||
---|---|---|
void | clear_changes () | |
Forget about any changes to this object's properties | ||
ID | id () | |
OwnedPropertyList | properties () |
C‡: boost::shared_ptr< PBD::Controllable >, boost::weak_ptr< PBD::Controllable >
is-a: PBD:StatefulDestructiblePtr
+This is a pure virtual class to represent a scalar control.
Note that it contains no storage/state for the controllable thing that it represents. Derived classes must provide set_value()/get_value() methods, which will involve (somehow) an actual location to store the value.
In essence, this is an interface, not a class.
Without overriding upper() and lower(), a derived class will function as a control whose value can range between 0 and 1.0.
Methods | ||
---|---|---|
double | get_value () | |
bool | isnil () | |
std::string | name () |
Methods | ||
---|---|---|
void | clear_changes () | |
Forget about any changes to this object's properties | ||
ID | id () | |
OwnedPropertyList | properties () |
C‡: PBD::ID
+a unique ID to identify objects numerically
Constructor | ||
---|---|---|
ℂ | PBD.ID (std::string) | |
Methods | ||
std::string | to_s () |
C‡: std::vector<PBD::ID >
+ +Constructor | ||
---|---|---|
ℂ | PBD.IdVector () | |
Methods | ||
LuaTable | add (LuaTable {ID}) | |
ID | at (unsigned long) | |
bool | empty () | |
LuaIter | iter () | |
void | push_back (ID) | |
unsigned long | size () | |
LuaTable | table () |
C‡: PBD::Stateful
Base class for objects with saveable and undoable state
Methods | ||
---|---|---|
void | clear_changes () | |
Forget about any changes to this object's properties | ||
ID | id () | |
OwnedPropertyList | properties () |
Methods | ||
---|---|---|
void | clear_changes () | |
Forget about any changes to this object's properties | ||
ID | id () | |
OwnedPropertyList | properties () |
C‡: boost::shared_ptr< PBD::StatefulDestructible >, boost::weak_ptr< PBD::StatefulDestructible >
is-a: PBD:StatefulPtr
+Base class for objects with saveable and undoable state with destruction notification
Methods | ||
---|---|---|
bool | isnil () |
Methods | ||
---|---|---|
void | clear_changes () | |
Forget about any changes to this object's properties | ||
ID | id () | |
OwnedPropertyList | properties () |
C‡: PBD::StatefulDiffCommand
+is-a: PBD:Command
+ +A Command which stores its action as the differences between the before and after state of a Stateful object.
Methods | ||
---|---|---|
bool | empty () | |
void | undo () |
Methods | ||
---|---|---|
std::string | name () | |
void | set_name (std::string) |
Methods | ||
---|---|---|
void | clear_changes () | |
Forget about any changes to this object's properties | ||
ID | id () | |
OwnedPropertyList | properties () |
C‡: boost::shared_ptr< PBD::Stateful >, boost::weak_ptr< PBD::Stateful >
+Base class for objects with saveable and undoable state
Methods | ||
---|---|---|
void | clear_changes () | |
Forget about any changes to this object's properties | ||
ID | id () | |
bool | isnil () | |
OwnedPropertyList | properties () |
C‡: XMLNode
+ +Methods | ||
---|---|---|
std::string | name () |
C‡: Timecode::BBT_Time
@@ -1691,6 +3102,12 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C