X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=_manual%2F24_lua-scripting%2F02_class_reference.html;h=d5f530c5cc1d3a0c9beaff5f803196402431aa78;hb=7460a6641c2c3b4a51e3578492b3d73d6345305c;hp=f62a390ea1b8db833f6175523fb197d8cf824948;hpb=86de0e478d70dc4074c803dadc7419843f5448e4;p=ardour-manual diff --git a/_manual/24_lua-scripting/02_class_reference.html b/_manual/24_lua-scripting/02_class_reference.html index f62a390..d5f530c 100644 --- a/_manual/24_lua-scripting/02_class_reference.html +++ b/_manual/24_lua-scripting/02_class_reference.html @@ -5,9 +5,10 @@ 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.

+
@@ -36,6 +37,12 @@ Operations are performed on objects. One gets a reference to an object and then e.g obj = 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.

@@ -119,9 +126,46 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C

Class Documentation

+

 ARDOUR:Amp

+

C‡: 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
GainControlgain_control ()
boolisnil ()
boolsameinstance (Amp)
+

Inherited from ARDOUR:Processor

+ + + + + + + + + + + + + + + +
Methods
voidactivate ()
boolactive ()
voiddeactivate ()
std::stringdisplay_name ()
Cast
Ampto_amp ()
Automatableto_automatable ()
PluginInsertto_insert ()
IOProcessorto_ioprocessor ()
MonitorProcessorto_monitorprocessor ()
PeakMeterto_peakmeter ()
SideChainto_sidechain ()
UnknownProcessorto_unknownprocessor ()
+

Inherited from ARDOUR:SessionObject

+ + + + + + +
Methods
std::stringname ()
Cast
Statefulto_stateful ()
StatefulDestructibleto_statefuldestructible ()

 ARDOUR:AudioBackend

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.

@@ -146,6 +190,7 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C + @@ -178,12 +223,17 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C
Methods
unsigned intbuffer_size ()
unsigned intoutput_channels ()
std::stringoutput_device_name ()
unsigned intperiod_size ()
boolsameinstance (AudioBackend)
floatsample_rate ()
intset_buffer_size (unsigned int)

Set the buffer size to be used.

The device is assumed to use a double buffering scheme, so that one buffer's worth of data can be processed by hardware while software works on the other buffer. All known suitable audio APIs support this model (though ALSA allows for alternate numbers of buffers, and CoreAudio doesn't directly expose the concept).

+ + + + - +
Methods
voidapply_gain (float, long)
boolcheck_silence (unsigned int, unsigned int&)

check buffer for silence

nframes
number of frames to check
n
first non zero sample (if any)

Returns true if all samples are zero

FloatArraydata (long)
voidread_from (FloatArray, long, long, long)
boolsameinstance (AudioBuffer)
voidsilence (long, long)

Clear (eg zero, or empty) buffer

silence buffer

len
number of samples to clear
offset
start offset

 ARDOUR:AudioEngine

C‡: ARDOUR::AudioEngine

+

is-a: ARDOUR:PortManager

@@ -199,61 +249,273 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C
Methods
intstart (bool)
intstop (bool)
+

Inherited from ARDOUR:PortManager

+ + + + + + + + + + + + + + + + + + + +
Methods
intconnect (std::string, std::string)
boolconnected (std::string)
intdisconnect (std::string, std::string)
intdisconnect_port (Port)
LuaTable(int, ...)get_backend_ports (std::string, DataType, PortFlags, StringVector&)
LuaTable(int, ...)get_connections (std::string, StringVector&)
voidget_physical_inputs (DataType, StringVector&)
voidget_physical_outputs (DataType, StringVector&)
Portget_port_by_name (std::string)
name
Full or short name of port

Returns Corresponding Port or 0.

LuaTable(int, ...)get_ports (DataType, PortList&)
std::stringget_pretty_name_by_name (std::string)
ChanCountn_physical_inputs ()
ChanCountn_physical_outputs ()
boolphysically_connected (std::string)
PortEngineport_engine ()
boolport_is_physical (std::string)
+

 ARDOUR:AudioPlaylist

+

C‡: boost::shared_ptr< ARDOUR::AudioPlaylist >, boost::weak_ptr< ARDOUR::AudioPlaylist >

+

is-a: ARDOUR:Playlist

+
+

A named object associated with a Session. Objects derived from this class are expected to be destroyed before the session calls drop_references().

+ + + + + +
Methods
boolisnil ()
longread (FloatArray, FloatArray, FloatArray, long, long, unsigned int)
boolsameinstance (AudioPlaylist)
+

Inherited from ARDOUR:Playlist

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods
voidadd_region (Region, long, float, bool, int)
Regioncombine (RegionList)
unsigned intcount_regions_at (long)
Playlistcut (AudioRangeList&, bool)
DataTypedata_type ()
voidduplicate (Region, long, long, float)
gap
from the beginning of the region to the next beginning
voidduplicate_range (AudioRange&, float)
voidduplicate_until (Region, long, long, long)
gap
from the beginning of the region to the next beginning
end
the first frame that does _not_ contain a duplicated frame
Regionfind_next_region (long, RegionPoint, int)
longfind_next_region_boundary (long, int)
voidlower_region (Region)
voidlower_region_to_bottom (Region)
unsigned intn_regions ()
voidraise_region (Region)
voidraise_region_to_top (Region)
Regionregion_by_id (ID)
RegionListPtrregion_list ()
RegionListPtrregions_at (long)
RegionListPtrregions_touched (long, long)
start
Range start.
end
Range end.

Returns regions which have some part within this range.

RegionListPtrregions_with_end_within (Range)
RegionListPtrregions_with_start_within (Range)
voidremove_region (Region)
voidsplit (long)
voidsplit_region (Region, long, int)
Regiontop_region_at (long)
Regiontop_unmuted_region_at (long)
voiduncombine (Region)
Cast
AudioPlaylistto_audioplaylist ()
+

Inherited from ARDOUR:SessionObject

+ + + + + + +
Methods
std::stringname ()
Cast
Statefulto_stateful ()
StatefulDestructibleto_statefuldestructible ()
+

 ARDOUR:AudioPort

+

C‡: boost::shared_ptr< ARDOUR::AudioPort >, boost::weak_ptr< ARDOUR::AudioPort >

+

is-a: ARDOUR:Port

+
+ + + + +
Methods
boolisnil ()
boolsameinstance (AudioPort)
+

Inherited from ARDOUR:Port

+ + + + + + + + + + + + + + + + + + + + + + +
Methods
intconnect (Port)
intconnect_by_name (std::string)
boolconnected ()

Returns true if this port is connected to anything

boolconnected_to (Port)
boolconnected_to_name (std::string)
intdisconnect (Port)
intdisconnect_all ()
intdisconnect_by_name (std::string)
std::stringname ()

Returns Port short name

std::stringpretty_name (bool)

Returns Port human readable name

boolreceives_input ()

Returns true if this Port receives input, otherwise false

boolsends_output ()

Returns true if this Port sends output, otherwise false

Cast
AudioPortto_audioport ()
MidiPortto_midiport ()
+

 ARDOUR:AudioRange

+

C‡: ARDOUR::AudioRange

+
+ + + + + + + + + + +
Constructor
ARDOUR.AudioRange (long, long, unsigned int)
Methods
boolequal (AudioRange)
longlength ()
Data Members
longend
unsigned intid
longstart
+

 ARDOUR:AudioRangeList

+

C‡: std::list<ARDOUR::AudioRange >

+
+ + + + + + + + + +
Constructor
ARDOUR.AudioRangeList ()
Methods
boolempty ()
LuaIteriter ()
voidreverse ()
unsigned longsize ()
LuaTabletable ()

 ARDOUR:AudioSource

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
boolisnil ()
unsigned intn_channels ()
longreadable_length ()
boolsameinstance (AudioSource)

 ARDOUR:AudioTrack

C‡: boost::shared_ptr< ARDOUR::AudioTrack >, boost::weak_ptr< ARDOUR::AudioTrack >

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
boolisnil ()
boolsameinstance (AudioTrack)

Inherited from ARDOUR:Track

+ + + + + + - - + - - + + +
Methods
Regionbounce (InterThreadInfo&)

bounce track from session start to session end to new region

itt
asynchronous progress report and cancel

Returns a new audio region (or nil in case of error)

Regionbounce_range (long, long, InterThreadInfo&, Processor, bool)

Bounce the given range to a new audio region.

start
start time (in samples)
end
end time (in samples)
itt
asynchronous progress report and cancel
endpoint
the processor to tap the signal off (or nil for the top)
include_endpoint
include the given processor in the bounced audio.

Returns a new audio region (or nil in case of error)

boolbounceable (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.

endpoint
the processor to tap the signal off (or nil for the top)
include_endpoint
include the given processor in the bounced audio.

Returns true if the track can be bounced, or false otherwise.

boolcan_record ()
boolrecord_enabled ()
boolrecord_safe ()
Playlistplaylist ()
boolset_name (std::string)
voidset_record_enabled (bool, GroupControlDisposition)
voidset_record_safe (bool, GroupControlDisposition)
Cast
AudioTrackto_audio_track ()
MidiTrackto_midi_track ()

Inherited from ARDOUR:Route

+ + + - + + + + + + + + + + + + + + + + + +
Methods
boolactive ()
intadd_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.

index
Index to add the processor at, or -1 to add at the end of the list.

Returns 0 on success, non-0 on failure.

booladd_sidechain (Processor)
Ampamp ()
std::stringcomment ()
boolcustomize_plugin_insert (Processor, unsigned int, ChanCount)
boolcustomize_plugin_insert (Processor, unsigned int, ChanCount, ChanCount)

enable custom plugin-insert configuration

proc
Processor to customize
count
number of plugin instances to use (if zero, reset to default)
outs
output port customization
sinks
input pins for variable-I/O plugins

Returns true if successful

Deliverymain_outs ()

the signal processorat at end of the processing chain which produces output

boolmuted ()
ChanCountn_inputs ()
ChanCountn_outputs ()
Processornth_plugin (unsigned int)
Processornth_processor (unsigned int)
Processornth_send (unsigned int)
PeakMeterpeak_meter ()

************************************************************* Pure interface begins here*************************************************************

intremove_processor (Processor, ProcessorStreams, bool)

remove plugin/processor

proc
processor to remove
err
error report (index where removal vailed, channel-count why it failed) may be nil
need_process_lock
if locking is required (set to true, unless called from RT context with lock)

Returns 0 on success

boolremove_sidechain (Processor)
intreplace_processor (Processor, Processor, ProcessorStreams)

replace plugin/processor with another

old
processor to remove
sub
processor to substitute the old one with
err
error report (index where removal vailed, channel-count why it failed) may be nil

Returns 0 on success

boolreset_plugin_insert (Processor)

reset plugin-insert configuration to default, disable customizations.

This is equivalent to calling

 customize_plugin_insert (proc, 0, unused)
proc
Processor to reset

Returns true if successful

voidset_active (bool, void*)
voidset_comment (std::string, void*)
voidset_meter_point (MeterPoint, bool)
boolset_strict_io (bool)
boolsoloed ()
boolstrict_io ()
Amptrim ()
Cast
Trackto_track ()
-

Inherited from ARDOUR:SessionObject

+

Inherited from ARDOUR:Stripable

- + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods
std::stringname ()
AutomationControlcomp_enable_control ()
AutomationControlcomp_makeup_control ()
AutomationControlcomp_mode_control ()
std::stringcomp_mode_name (unsigned int)
AutomationControlcomp_redux_control ()
AutomationControlcomp_speed_control ()
std::stringcomp_speed_name (unsigned int)
AutomationControlcomp_threshold_control ()
unsigned inteq_band_cnt ()
std::stringeq_band_name (unsigned int)
AutomationControleq_enable_control ()
AutomationControleq_freq_control (unsigned int)
AutomationControleq_gain_control (unsigned int)
AutomationControleq_hpf_control ()
AutomationControleq_q_control (unsigned int)
AutomationControleq_shape_control (unsigned int)
GainControlgain_control ()
boolis_auditioner ()
boolis_hidden ()
boolis_master ()
boolis_monitor ()
boolis_selected ()
AutomationControlmaster_send_enable_control ()
MonitorProcessormonitor_control ()
MuteControlmute_control ()
AutomationControlpan_azimuth_control ()
AutomationControlpan_elevation_control ()
AutomationControlpan_frontback_control ()
AutomationControlpan_lfe_control ()
AutomationControlpan_width_control ()
PhaseControlphase_control ()
PresentationInfopresentation_info_ptr ()
AutomationControlrec_enable_control ()
AutomationControlrec_safe_control ()
AutomationControlsend_enable_control (unsigned int)
AutomationControlsend_level_control (unsigned int)
std::stringsend_name (unsigned int)
voidset_presentation_order (unsigned int, bool)
SoloControlsolo_control ()
SoloIsolateControlsolo_isolate_control ()
SoloSafeControlsolo_safe_control ()
GainControltrim_control ()
Cast
Routeto_route ()
-

Inherited from PBD:StatefulPtr

+

Inherited from ARDOUR:SessionObject

- + + + +
Methods
OwnedPropertyListproperties ()
std::stringname ()
Cast
Statefulto_stateful ()
StatefulDestructibleto_statefuldestructible ()

 ARDOUR:AudioTrackList

C‡: std::list<boost::shared_ptr<ARDOUR::AudioTrack> >

@@ -279,28 +541,63 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C Methods AutomationControlautomation_control (Parameter, bool) boolisnil () + boolsameinstance (Automatable)

 ARDOUR:AutomationControl

C‡: 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
AutomationListalist ()
AutoStateautomation_state ()
AutoStyleautomation_style ()
doubleget_value ()

Get the current effective `user' value based on automation state

boolisnil ()
boolsameinstance (AutomationControl)
voidset_automation_state (AutoState)
voidset_automation_style (AutoStyle)
voidset_value (double, GroupControlDisposition)

Get and Set `internal' value

All derived classes must implement this.

Basic derived classes will ignore

group_override,
but more sophisticated children, notably those that proxy the value setting logic via an object that is aware of group relationships between this control and others, will find it useful.
voidstart_touch (double)
voidstop_touch (bool, double)
boolwritable ()
Cast
Controlto_ctrl ()
-

Inherited from Evoral:Control

+

Inherited from PBD:Controllable

- + +
Methods
ControlListlist ()
std::stringname ()
+

Inherited from PBD:StatefulPtr

+ + + + + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
OwnedPropertyListproperties ()
+

 ARDOUR:AutomationList

+

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
XMLNodeget_state ()
boolisnil ()
Commandmemento_command (XMLNode, XMLNode)
boolsameinstance (AutomationList)
booltouch_enabled ()
booltouching ()
boolwriting ()
Cast
ControlListlist ()
Statefulto_stateful ()
StatefulDestructibleto_statefuldestructible ()

 ARDOUR:BackendVector

C‡: std::vector<ARDOUR::AudioBackendInfo const* >

@@ -324,6 +621,8 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C Methods ChanCountcount () AudioBufferget_audio (unsigned long) + MidiBufferget_midi (unsigned long) + boolsameinstance (BufferSet)

 ARDOUR:ChanCount

C‡: ARDOUR::ChanCount

@@ -350,15 +649,19 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C

 ARDOUR:ChanMapping

C‡: ARDOUR::ChanMapping

-

A mapping from one set of channels to another (e.g. how to 'connect' two BufferSets).

for plugins the form is "pin" -> "buffer"

+

A mapping from one set of channels to another. The general form is 1 source (from), many sinks (to). numeric IDs are used to identify sources and sinks.

for plugins this is used to map "plugin-pin" to "audio-buffer"

- - + + + + + + - +
Constructor
ARDOUR.ChanMapping ()
Methods
unsigned intget (DataType, unsigned int)

get buffer mapping for given data type and pin

from
pin
type
data type

Returns mapped buffer number (or ChanMapping::Invalid)

ChanCountcount ()
unsigned intget (DataType, unsigned int)

get buffer mapping for given data type and pin

from
numeric source id
type
data type

Returns mapped buffer number (or ChanMapping::Invalid)

boolis_monotonic ()

Test if this mapping is monotonic (useful to see if inplace processing is feasible)

Returns true if the map is a strict monotonic set

unsigned intn_total ()
voidset (DataType, unsigned int, unsigned int)

set buffer mapping for given data type

from
pin
to
buffer
type
data type

set buffer mapping for given data type

from
numeric source id
to
buffer
type
data type

 ARDOUR.DSP

@@ -381,22 +684,27 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C voidmix_buffers_with_gain (FloatArray, FloatArray, unsigned int, float) voidmmult (FloatArray, FloatArray, unsigned int)

matrix multiply multiply every sample of `data' with the corresponding sample at `mult'.

data
multiplicand
mult
multiplicand
n_samples
number of samples in data and mmult
- LuaTable(...)peaks (FloatArray, float&, float&, unsigned int) -

calculate peaks

data
data to analyze
min
result, minimum value found in range
max
result, max value found in range
n_samples
number of samples to analyze
+ LuaTable(...)peaks (FloatArray, float&, float&, unsigned int) + voidprocess_map (BufferSet, ChanMapping, ChanMapping, unsigned int, long, DataType)

 ARDOUR:DSP:Biquad

-

C‡: ARDOUR::DSP::BiQuad

+

C‡: ARDOUR::DSP::Biquad

Biquad Filter

+ - - - + + + + + + + - +
Constructor
ARDOUR.DSP.Biquad (double)

Instantiate Biquad Filter

samplerate
Samplerate
Methods
voidcompute (Type, double, double, double)

setup filter, compute coefficients

t
filter type (LowPass, HighPass, etc)
freq
filter frequency
Q
filter quality
gain
filter gain
voidreset ()
voidcompute (Type, double, double, double)

setup filter, compute coefficients

type
filter type (LowPass, HighPass, etc)
freq
filter frequency
Q
filter quality
gain
filter gain
voidconfigure (double, double, double, double, double)

setup filter, set coefficients directly

floatdB_at_freq (float)

filter transfer function (filter response for spectrum visualization)

freq
frequency

Returns gain at given frequency in dB (clamped to -120..+120)

voidreset ()

reset filter state

voidrun (FloatArray, unsigned int)
voidrun (FloatArray, unsigned int)

process audio data

data
pointer to audio-data
n_samples
number of samples to process

 ARDOUR:DSP:DspShm

@@ -404,6 +712,8 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C

C/C++ Shared Memory

A convenience class representing a C array of float[] or int32_t[] data values. This is useful for lua scripts to perform DSP operations directly using C/C++ with CPU Hardware acceleration.

Access to this memory area is always 4 byte aligned. The data is interpreted either as float or as int.

This memory area can also be shared between different instances or the same lua plugin (DSP, GUI).

Since memory allocation is not realtime safe it should be allocated during dsp_init() or dsp_configure(). The memory is free()ed automatically when the lua instance is destroyed.

+ + @@ -418,6 +728,20 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C
Constructor
ARDOUR.DSP.DspShm (unsigned long)
Methods
voidallocate (unsigned long)

[re] allocate memory in host's memory space

s
size, total number of float or integer elements to store.
IntArrayto_int (unsigned long)

access memory as integer array

off
offset in shared memory region

Returns int_32_t[]

+

 ARDOUR:DSP:FFTSpectrum

+

C‡: ARDOUR::DSP::FFTSpectrum

+
+ + + + + + + + + + +
Constructor
ARDOUR.DSP.FFTSpectrum (unsigned int, double)
Methods
voidexecute ()

process current data in buffer

floatfreq_at_bin (unsigned int)
floatpower_at_bin (unsigned int, float)

query

b
the frequency bin 0 .. window_size / 2
norm
gain factor (set equal to for 1/f normalization)

Returns signal power at given bin (in dBFS)

voidset_data_hann (FloatArray, unsigned int, unsigned int)

 ARDOUR:DSP:LowPass

C‡: ARDOUR::DSP::LowPass

@@ -443,7 +767,59 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C + + + + + + + + + +
Constructor
ARDOUR.DataType (std::string)
Methods
DataTypeaudio ()

convenience constructor for DataType::AUDIO with managed lifetime

Returns DataType::AUDIO

DataTypemidi ()

convenience constructor for DataType::MIDI with managed lifetime

Returns DataType::MIDI

DataTypenull ()

convenience constructor for DataType::NIL with managed lifetime

Returns DataType::NIL

char*to_string ()

Inverse of the from-string constructor

+

 ARDOUR:Delivery

+

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
boolisnil ()
boolsameinstance (Delivery)
+

Inherited from ARDOUR:IOProcessor

+ + + + + + +
Methods
IOinput ()
ChanCountnatural_input_streams ()
ChanCountnatural_output_streams ()
IOoutput ()
+

Inherited from ARDOUR:Processor

+ + + + + + + + + + + + + + + +
Methods
voidactivate ()
boolactive ()
voiddeactivate ()
std::stringdisplay_name ()
Cast
Ampto_amp ()
Automatableto_automatable ()
PluginInsertto_insert ()
IOProcessorto_ioprocessor ()
MonitorProcessorto_monitorprocessor ()
PeakMeterto_peakmeter ()
SideChainto_sidechain ()
UnknownProcessorto_unknownprocessor ()
+

Inherited from ARDOUR:SessionObject

+ + + + + + +
Methods
std::stringname ()
Cast
Statefulto_stateful ()
StatefulDestructibleto_statefuldestructible ()

 ARDOUR:DeviceStatus

C‡: ARDOUR::AudioBackend::DeviceStatus

@@ -468,42 +844,282 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C unsigned longsize () LuaTabletable () +

 ARDOUR:FluidSynth

+

C‡: ARDOUR::FluidSynth

+
+ + + + + + + + + + + + +
Constructor
ARDOUR.FluidSynth (float, int)

instantiate a Synth

samplerate
samplerate
Methods
boolload_sf2 (std::string)
boolmidi_event (unsigned char*, unsigned long)
voidpanic ()
unsigned intprogram_count ()
std::stringprogram_name (unsigned int)
boolselect_program (unsigned int, unsigned char)
boolsynth (FloatArray, FloatArray, unsigned int)
+

 ARDOUR:GainControl

+

C‡: boost::shared_ptr< ARDOUR::GainControl >, boost::weak_ptr< ARDOUR::GainControl >

+

is-a: ARDOUR:SlavableAutomationControl,

+
+

A PBD::Controllable with associated automation data (AutomationList)

+ + + + +
Methods
boolisnil ()
boolsameinstance (GainControl)
+

Inherited from ARDOUR:SlavableAutomationControl,

+ + + + + + + + + +
Methods
voidadd_master (AutomationControl)
voidclear_masters ()
intget_boolean_masters ()
doubleget_masters_value ()
voidremove_master (AutomationControl)
boolslaved ()
boolslaved_to (AutomationControl)
+

Inherited from ARDOUR:AutomationControl

+ + + + + + + + + + + + + + + + +
Methods
AutomationListalist ()
AutoStateautomation_state ()
AutoStyleautomation_style ()
doubleget_value ()

Get the current effective `user' value based on automation state

voidset_automation_state (AutoState)
voidset_automation_style (AutoStyle)
voidset_value (double, GroupControlDisposition)

Get and Set `internal' value

All derived classes must implement this.

Basic derived classes will ignore

group_override,
but more sophisticated children, notably those that proxy the value setting logic via an object that is aware of group relationships between this control and others, will find it useful.
voidstart_touch (double)
voidstop_touch (bool, double)
boolwritable ()
Cast
Controlto_ctrl ()
+

Inherited from PBD:Controllable

+ + + +
Methods
std::stringname ()
+

Inherited from PBD:StatefulPtr

+ + + + + + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
OwnedPropertyListproperties ()
+

 ARDOUR:IO

+

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
boolactive ()
intadd_port (std::string, void*, DataType)

Add a port.

destination
Name of port to connect new port to.
src
Source for emitted ConfigurationChanged signal.
type
Data type of port. Default value (NIL) will use this IO's default type.
AudioPortaudio (unsigned int)
intconnect (Port, std::string, void*)
intdisconnect (Port, std::string, void*)
boolhas_port (Port)
boolisnil ()
MidiPortmidi (unsigned int)
ChanCountn_ports ()
Portnth (unsigned int)
boolphysically_connected ()
Portport_by_name (unsigned int)
intremove_port (Port, void*)
boolsameinstance (IO)
+

Inherited from ARDOUR:SessionObject

+ + + + + + +
Methods
std::stringname ()
Cast
Statefulto_stateful ()
StatefulDestructibleto_statefuldestructible ()
+

 ARDOUR:IOProcessor

+

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
IOinput ()
boolisnil ()
ChanCountnatural_input_streams ()
ChanCountnatural_output_streams ()
IOoutput ()
boolsameinstance (IOProcessor)
+

Inherited from ARDOUR:Processor

+ + + + + + + + + + + + + + + +
Methods
voidactivate ()
boolactive ()
voiddeactivate ()
std::stringdisplay_name ()
Cast
Ampto_amp ()
Automatableto_automatable ()
PluginInsertto_insert ()
IOProcessorto_ioprocessor ()
MonitorProcessorto_monitorprocessor ()
PeakMeterto_peakmeter ()
SideChainto_sidechain ()
UnknownProcessorto_unknownprocessor ()
+

Inherited from ARDOUR:SessionObject

+ + + + + + +
Methods
std::stringname ()
Cast
Statefulto_stateful ()
StatefulDestructibleto_statefuldestructible ()
+

 ARDOUR:InterThreadInfo

+

C‡: ARDOUR::InterThreadInfo

+
+ + + + + + +
Constructor
ARDOUR.InterThreadInfo ()
Data Members
booldone
floatprogress

 ARDOUR:Location

C‡: ARDOUR::Location

is-a: PBD:StatefulDestructible

-

Base class for objects with saveable and undoable state

+

Location on Timeline - abstract representation for Markers, Loop/Punch Ranges, CD-Markers etc.

+ + + + + + + + + + + + + +
Methods
longend ()
Flagsflags ()
boolis_auto_loop ()
boolis_auto_punch ()
boolis_cd_marker ()
boolis_hidden ()
boolis_mark ()
boolis_range_marker ()
boolis_session_range ()
longlength ()
voidlock ()
boollocked ()
boolmatches (Flags)
intmove_to (long)
std::stringname ()
intset_end (long, bool, bool)

Set end position.

force
true to force setting, even if the given new end is before the current start.
allow_bbt_recompute
True to recompute BBT end time from the new given end time.
s
New end.
intset_length (long, long, bool)
intset_start (long, bool, bool)

Set start position.

s
New start.
force
true to force setting, even if the given new start is after the current end.
allow_bbt_recompute
True to recompute BBT start time from the new given start time.
longstart ()
voidunlock ()
+

Inherited from PBD:Stateful

+ + + + + + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
OwnedPropertyListproperties ()
+

 ARDOUR:LocationList

+

C‡: std::list<ARDOUR::Location* >

+
+ + + + + + + + + +
Constructor
ARDOUR.LocationList ()
Methods
boolempty ()
LuaIteriter ()
voidreverse ()
unsigned longsize ()
LuaTabletable ()
+

 ARDOUR:Locations

+

C‡: ARDOUR::Locations

+

is-a: PBD:StatefulDestructible

+
+

A collection of session locations including unique dedicated locations (loop, punch, etc)

+ + + + + + + + + + + + +
Methods
Locationauto_loop_location ()
Locationauto_punch_location ()
LuaTable(...)find_all_between (long, long, LocationList&, Flags)
longfirst_mark_after (long, bool)
Locationfirst_mark_at (long, long)
longfirst_mark_before (long, bool)
LocationListlist ()
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.

frame
Frame to look for.
before
Filled in with the position of the last `mark' before `frame' (or max_framepos if none exists)
after
Filled in with the position of the next `mark' after `frame' (or max_framepos if none exists)
voidremove (Location)
Locationsession_range_location ()

Inherited from PBD:Stateful

+ + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
OwnedPropertyListproperties ()

 ARDOUR.LuaAPI

+ + + + + + + + + + + +
Methods
LuaTablebuild_filename ()
LuaTable(float, ...)get_plugin_insert_param (PluginInsert, unsigned int, bool&)

get a plugin control parameter value

which
control port to query (starting at 0, including ports of type input and output)
ok
boolean variable contains true or false after call returned. to be checked by caller before using value.
proc
Plugin-Insert

Returns value

LuaTable(float, ...)get_processor_param (Processor, unsigned int, bool&)

get a plugin control parameter value

proc
Plugin-Processor
which
control port to set (starting at 0, including ports of type input and output))
ok
boolean variable contains true or false after call returned. to be checked by caller before using value.

Returns value

LuaTablehsla_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)

Processornew_luaproc (Session, std::string)

create a new Lua Processor (Plugin)

s
Session Handle
p
Identifier or Name of the Processor

Returns Processor object (may be nil)

Processornew_plugin (Session, std::string, PluginType, std::string)

create a new Plugin Instance

s
Session Handle
id
Plugin Name, ID or URI
type
Plugin Type

Returns Processor or nil

PluginInfonew_plugin_info (std::string, PluginType)

search a Plugin

id
Plugin Name, ID or URI
type
Plugin Type

Returns PluginInfo or nil if not found

Processornil_proc ()
LuaTableplugin_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

boolset_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.

which
control-input to set (starting at 0)
proc
Plugin-Insert
value
value to set

Returns true on success, false on error or out-of-bounds value

boolset_processor_param (Processor, unsigned int, float)

set a plugin control-input parameter value

proc
Plugin-Processor
which
control-input to set (starting at 0)
value
value to set

Returns true on success, false on error or out-of-bounds value

voidusleep (unsigned long)
+

 ARDOUR:LuaAPI:Vamp

+

C‡: ARDOUR::LuaAPI::Vamp

+
+ + + + + + + + + +
Constructor
ARDOUR.LuaAPI.Vamp (std::string, float)
Methods
intanalyze (Readable, unsigned int, --MISSING (luabridge::LuaRef)--)
boolinitialize ()

initialize the plugin for use with analyze().

This is equivalent to plugin():initialise (1, 8192, 8192) and prepares a plugin for analyze.

Manual initialization is only required to set plugin-parameters which depend on prior initialization of the plugin.

 vamp:reset ()
+ vamp:initialize ()
+ vamp:plugin():setParameter (0, 1.5)
+ vamp:analyze (r, 0)
Pluginplugin ()
voidreset ()

call plugin():reset() and clear intialization flag

 ARDOUR:LuaOSC:Address

C‡: ARDOUR::LuaOSC::Address

@@ -517,6 +1133,14 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C ...send (--lua--)

Transmit an OSC message

Path (string) and type (string) must always be given. The number of following args must match the type. Supported types are:

'i': integer (lua number)

'f': float (lua number)

'd': double (lua number)

'h': 64bit integer (lua number)

's': string (lua string)

'c': character (lua string)

'T': boolean (lua bool) -- this is not implicily True, a lua true/false must be given

'F': boolean (lua bool) -- this is not implicily False, a lua true/false must be given

lua:
lua arguments: path, types, ...

Returns boolean true if successful, false on error.

+

 ARDOUR:LuaTableRef

+

C‡: ARDOUR::LuaTableRef

+
+ + + + +
Methods
...get (--lua--)
...set (--lua--)

 ARDOUR:Meter

C‡: ARDOUR::Meter

@@ -530,61 +1154,205 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C doubleframes_per_grid (Tempo, long) doublenote_divisor () +

 ARDOUR:MeterSection

+

C‡: ARDOUR::MeterSection

+

is-a: ARDOUR:MetricSection

+
+

A section of timeline with a certain Meter.

+ + + + + + +
Methods
voidset_beat (double)
voidset_pulse (double)
Cast
Meterto_meter ()
+

Inherited from ARDOUR:MetricSection

+ + + +
Methods
doublepulse ()
+

 ARDOUR:MetricSection

+

C‡: ARDOUR::MetricSection

+
+

A section of timeline with a certain Tempo or Meter.

+ + + + +
Methods
doublepulse ()
voidset_pulse (double)

 ARDOUR:MidiBuffer

C‡: ARDOUR::MidiBuffer

Buffer containing 8-bit unsigned char (MIDI) data.

+ + + + + + + +
Methods
voidcopy (MidiBuffer)
boolempty ()
boolpush_back (long, unsigned long, unsigned char*)
boolpush_event (MidiEvent)
voidresize (unsigned long)

Reallocate the buffer used internally to handle at least size_t units of data.

The buffer is not silent after this operation. the capacity argument passed to the constructor must have been non-zero.

boolsameinstance (MidiBuffer)
voidsilence (long, long)

Clear (eg zero, or empty) buffer

unsigned longsize ()
...table (--lua--)
+

 ARDOUR:MidiPort

+

C‡: boost::shared_ptr< ARDOUR::MidiPort >, boost::weak_ptr< ARDOUR::MidiPort >

+

is-a: ARDOUR:Port

+
+ + + + + + + +
Methods
MidiBufferget_midi_buffer (unsigned int)
boolinput_active ()
boolisnil ()
boolsameinstance (MidiPort)
voidset_input_active (bool)
+

Inherited from ARDOUR:Port

+ + + + + + + + + + + + + + + + + + + + + + +
Methods
intconnect (Port)
intconnect_by_name (std::string)
boolconnected ()

Returns true if this port is connected to anything

boolconnected_to (Port)
boolconnected_to_name (std::string)
intdisconnect (Port)
intdisconnect_all ()
intdisconnect_by_name (std::string)
std::stringname ()

Returns Port short name

std::stringpretty_name (bool)

Returns Port human readable name

boolreceives_input ()

Returns true if this Port receives input, otherwise false

boolsends_output ()

Returns true if this Port sends output, otherwise false

Cast
AudioPortto_audioport ()
MidiPortto_midiport ()

 ARDOUR:MidiTrack

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
boolisnil ()
boolsameinstance (MidiTrack)

Inherited from ARDOUR:Track

+ + + + + + - - + - - + + +
Methods
Regionbounce (InterThreadInfo&)

bounce track from session start to session end to new region

itt
asynchronous progress report and cancel

Returns a new audio region (or nil in case of error)

Regionbounce_range (long, long, InterThreadInfo&, Processor, bool)

Bounce the given range to a new audio region.

start
start time (in samples)
end
end time (in samples)
itt
asynchronous progress report and cancel
endpoint
the processor to tap the signal off (or nil for the top)
include_endpoint
include the given processor in the bounced audio.

Returns a new audio region (or nil in case of error)

boolbounceable (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.

endpoint
the processor to tap the signal off (or nil for the top)
include_endpoint
include the given processor in the bounced audio.

Returns true if the track can be bounced, or false otherwise.

boolcan_record ()
boolrecord_enabled ()
boolrecord_safe ()
Playlistplaylist ()
boolset_name (std::string)
voidset_record_enabled (bool, GroupControlDisposition)
voidset_record_safe (bool, GroupControlDisposition)
Cast
AudioTrackto_audio_track ()
MidiTrackto_midi_track ()

Inherited from ARDOUR:Route

+ + + - + + + + + + + + + + + + + + + + + +
Methods
boolactive ()
intadd_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.

index
Index to add the processor at, or -1 to add at the end of the list.

Returns 0 on success, non-0 on failure.

booladd_sidechain (Processor)
Ampamp ()
std::stringcomment ()
boolcustomize_plugin_insert (Processor, unsigned int, ChanCount)
boolcustomize_plugin_insert (Processor, unsigned int, ChanCount, ChanCount)

enable custom plugin-insert configuration

proc
Processor to customize
count
number of plugin instances to use (if zero, reset to default)
outs
output port customization
sinks
input pins for variable-I/O plugins

Returns true if successful

Deliverymain_outs ()

the signal processorat at end of the processing chain which produces output

boolmuted ()
ChanCountn_inputs ()
ChanCountn_outputs ()
Processornth_plugin (unsigned int)
Processornth_processor (unsigned int)
Processornth_send (unsigned int)
PeakMeterpeak_meter ()

************************************************************* Pure interface begins here*************************************************************

intremove_processor (Processor, ProcessorStreams, bool)

remove plugin/processor

proc
processor to remove
err
error report (index where removal vailed, channel-count why it failed) may be nil
need_process_lock
if locking is required (set to true, unless called from RT context with lock)

Returns 0 on success

boolremove_sidechain (Processor)
intreplace_processor (Processor, Processor, ProcessorStreams)

replace plugin/processor with another

old
processor to remove
sub
processor to substitute the old one with
err
error report (index where removal vailed, channel-count why it failed) may be nil

Returns 0 on success

boolreset_plugin_insert (Processor)

reset plugin-insert configuration to default, disable customizations.

This is equivalent to calling

 customize_plugin_insert (proc, 0, unused)
proc
Processor to reset

Returns true if successful

voidset_active (bool, void*)
voidset_comment (std::string, void*)
voidset_meter_point (MeterPoint, bool)
boolset_strict_io (bool)
boolsoloed ()
boolstrict_io ()
Amptrim ()
Cast
Trackto_track ()
-

Inherited from ARDOUR:SessionObject

+

Inherited from ARDOUR:Stripable

- + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods
std::stringname ()
AutomationControlcomp_enable_control ()
AutomationControlcomp_makeup_control ()
AutomationControlcomp_mode_control ()
std::stringcomp_mode_name (unsigned int)
AutomationControlcomp_redux_control ()
AutomationControlcomp_speed_control ()
std::stringcomp_speed_name (unsigned int)
AutomationControlcomp_threshold_control ()
unsigned inteq_band_cnt ()
std::stringeq_band_name (unsigned int)
AutomationControleq_enable_control ()
AutomationControleq_freq_control (unsigned int)
AutomationControleq_gain_control (unsigned int)
AutomationControleq_hpf_control ()
AutomationControleq_q_control (unsigned int)
AutomationControleq_shape_control (unsigned int)
GainControlgain_control ()
boolis_auditioner ()
boolis_hidden ()
boolis_master ()
boolis_monitor ()
boolis_selected ()
AutomationControlmaster_send_enable_control ()
MonitorProcessormonitor_control ()
MuteControlmute_control ()
AutomationControlpan_azimuth_control ()
AutomationControlpan_elevation_control ()
AutomationControlpan_frontback_control ()
AutomationControlpan_lfe_control ()
AutomationControlpan_width_control ()
PhaseControlphase_control ()
PresentationInfopresentation_info_ptr ()
AutomationControlrec_enable_control ()
AutomationControlrec_safe_control ()
AutomationControlsend_enable_control (unsigned int)
AutomationControlsend_level_control (unsigned int)
std::stringsend_name (unsigned int)
voidset_presentation_order (unsigned int, bool)
SoloControlsolo_control ()
SoloIsolateControlsolo_isolate_control ()
SoloSafeControlsolo_safe_control ()
GainControltrim_control ()
Cast
Routeto_route ()
-

Inherited from PBD:StatefulPtr

+

Inherited from ARDOUR:SessionObject

- + + + +
Methods
OwnedPropertyListproperties ()
std::stringname ()
Cast
Statefulto_stateful ()
StatefulDestructibleto_statefuldestructible ()

 ARDOUR:MidiTrackList

C‡: std::list<boost::shared_ptr<ARDOUR::MidiTrack> >

@@ -602,46 +1370,298 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C LuaTabletable () voidunique () -

 ARDOUR:OwnedPropertyList

-

C‡: PBD::OwnedPropertyList

-

is-a: ARDOUR:PropertyList

-
-

A variant of PropertyList that does not delete its property list in its destructor. Objects with their own Properties store them in an OwnedPropertyList to avoid having them deleted at the wrong time.

-

This class object is only used indirectly as return-value and function-parameter. It provides no methods by itself.

-

 ARDOUR:ParameterDescriptor

-

C‡: ARDOUR::ParameterDescriptor

-

is-a: Evoral:ParameterDescriptor

+

 ARDOUR:MonitorProcessor

+

C‡: boost::shared_ptr< ARDOUR::MonitorProcessor >, boost::weak_ptr< ARDOUR::MonitorProcessor >

+

is-a: ARDOUR:Processor

-

Descriptor of a parameter or control.

Essentially a union of LADSPA, VST and LV2 info.

+

A mixer strip element - plugin, send, meter, etc

- - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Constructor
ARDOUR.ParameterDescriptor ()
Data Members
std::stringlabel
boollogarithmic
Methods
Controllablechannel_cut_control (unsigned int)
Controllablechannel_dim_control (unsigned int)
Controllablechannel_polarity_control (unsigned int)
Controllablechannel_solo_control (unsigned int)
boolcut (unsigned int)
boolcut_all ()
Controllablecut_control ()
booldim_all ()
Controllabledim_control ()
floatdim_level ()
Controllabledim_level_control ()
booldimmed (unsigned int)
boolinverted (unsigned int)
boolisnil ()
boolmonitor_active ()
boolmono ()
Controllablemono_control ()
boolsameinstance (MonitorProcessor)
voidset_cut (unsigned int, bool)
voidset_cut_all (bool)
voidset_dim (unsigned int, bool)
voidset_dim_all (bool)
voidset_mono (bool)
voidset_polarity (unsigned int, bool)
voidset_solo (unsigned int, bool)
Controllablesolo_boost_control ()
floatsolo_boost_level ()
boolsoloed (unsigned int)
-

Inherited from Evoral:ParameterDescriptor

+

Inherited from ARDOUR:Processor

- - - - - - + + + + + + + + + + + + + + +
Constructor
Evoral.ParameterDescriptor ()
Data Members
floatlower
floatnormal
booltoggled
Methods
voidactivate ()
boolactive ()
voiddeactivate ()
std::stringdisplay_name ()
Cast
Ampto_amp ()
Automatableto_automatable ()
PluginInsertto_insert ()
IOProcessorto_ioprocessor ()
MonitorProcessorto_monitorprocessor ()
PeakMeterto_peakmeter ()
SideChainto_sidechain ()
UnknownProcessorto_unknownprocessor ()
+

Inherited from ARDOUR:SessionObject

+ + + + + + +
Methods
std::stringname ()
Cast
Statefulto_stateful ()
StatefulDestructibleto_statefuldestructible ()
+

 ARDOUR:MuteControl

+

C‡: boost::shared_ptr< ARDOUR::MuteControl >, boost::weak_ptr< ARDOUR::MuteControl >

+

is-a: ARDOUR:SlavableAutomationControl,

+
+

A PBD::Controllable with associated automation data (AutomationList)

+ + + + + + +
Methods
boolisnil ()
boolmuted ()
boolmuted_by_self ()
boolsameinstance (MuteControl)
+

Inherited from ARDOUR:SlavableAutomationControl,

+ + + + + + + + + +
Methods
voidadd_master (AutomationControl)
voidclear_masters ()
intget_boolean_masters ()
doubleget_masters_value ()
voidremove_master (AutomationControl)
boolslaved ()
boolslaved_to (AutomationControl)
+

Inherited from ARDOUR:AutomationControl

+ + + + + + + + + + + + + + + + +
Methods
AutomationListalist ()
AutoStateautomation_state ()
AutoStyleautomation_style ()
doubleget_value ()

Get the current effective `user' value based on automation state

voidset_automation_state (AutoState)
voidset_automation_style (AutoStyle)
voidset_value (double, GroupControlDisposition)

Get and Set `internal' value

All derived classes must implement this.

Basic derived classes will ignore

group_override,
but more sophisticated children, notably those that proxy the value setting logic via an object that is aware of group relationships between this control and others, will find it useful.
voidstart_touch (double)
voidstop_touch (bool, double)
boolwritable ()
Cast
Controlto_ctrl ()
+

Inherited from PBD:Controllable

+ + + +
Methods
std::stringname ()
+

Inherited from PBD:StatefulPtr

+ + + + + + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
OwnedPropertyListproperties ()
+

 ARDOUR:OwnedPropertyList

+

C‡: PBD::OwnedPropertyList

+

is-a: ARDOUR:PropertyList

+
+

A variant of PropertyList that does not delete its property list in its destructor. Objects with their own Properties store them in an OwnedPropertyList to avoid having them deleted at the wrong time.

+

This class object is only used indirectly as return-value and function-parameter. It provides no methods by itself.

+

 ARDOUR:ParameterDescriptor

+

C‡: ARDOUR::ParameterDescriptor

+

is-a: Evoral:ParameterDescriptor

+
+

Descriptor of a parameter or control.

Essentially a union of LADSPA, VST and LV2 info.

+ + + + + + + + +
Constructor
ARDOUR.ParameterDescriptor ()
Methods
std::stringmidi_note_name (unsigned char)
Data Members
std::stringlabel
boollogarithmic
+

Inherited from Evoral:ParameterDescriptor

+ + + + + + +
Constructor
Evoral.ParameterDescriptor ()
Data Members
floatlower
floatnormal
booltoggled
floatupper
+

 ARDOUR:PeakMeter

+

C‡: boost::shared_ptr< ARDOUR::PeakMeter >, boost::weak_ptr< ARDOUR::PeakMeter >

+

is-a: ARDOUR:Processor

+
+

Meters peaks on the input and stores them for access.

+ + + + + + + +
Methods
boolisnil ()
floatmeter_level (unsigned int, MeterType)
voidreset_max ()
boolsameinstance (PeakMeter)
voidset_type (MeterType)
+

Inherited from ARDOUR:Processor

+ + + + + + + + + + + + + + + +
Methods
voidactivate ()
boolactive ()
voiddeactivate ()
std::stringdisplay_name ()
Cast
Ampto_amp ()
Automatableto_automatable ()
PluginInsertto_insert ()
IOProcessorto_ioprocessor ()
MonitorProcessorto_monitorprocessor ()
PeakMeterto_peakmeter ()
SideChainto_sidechain ()
UnknownProcessorto_unknownprocessor ()
+

Inherited from ARDOUR:SessionObject

+ + + + + + +
Methods
std::stringname ()
Cast
Statefulto_stateful ()
StatefulDestructibleto_statefuldestructible ()
+

 ARDOUR:PhaseControl

+

C‡: boost::shared_ptr< ARDOUR::PhaseControl >, boost::weak_ptr< ARDOUR::PhaseControl >

+

is-a: ARDOUR:AutomationControl

+
+

A PBD::Controllable with associated automation data (AutomationList)

+ + + + + + + +
Methods
boolinverted (unsigned int)
boolisnil ()
boolsameinstance (PhaseControl)
voidset_phase_invert (unsigned int, bool)
c
Audio channel index.
yn
true to invert phase, otherwise false.
+

Inherited from ARDOUR:AutomationControl

+ + + + + + + + + + + + + + + + +
Methods
AutomationListalist ()
AutoStateautomation_state ()
AutoStyleautomation_style ()
doubleget_value ()

Get the current effective `user' value based on automation state

voidset_automation_state (AutoState)
voidset_automation_style (AutoStyle)
voidset_value (double, GroupControlDisposition)

Get and Set `internal' value

All derived classes must implement this.

Basic derived classes will ignore

group_override,
but more sophisticated children, notably those that proxy the value setting logic via an object that is aware of group relationships between this control and others, will find it useful.
voidstart_touch (double)
voidstop_touch (bool, double)
boolwritable ()
Cast
Controlto_ctrl ()
+

Inherited from PBD:Controllable

+ + + +
Methods
std::stringname ()
+

Inherited from PBD:StatefulPtr

+ + + + + + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
OwnedPropertyListproperties ()
+

 ARDOUR:Playlist

+

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
voidadd_region (Region, long, float, bool, int)
Regioncombine (RegionList)
unsigned intcount_regions_at (long)
Playlistcut (AudioRangeList&, bool)
DataTypedata_type ()
voidduplicate (Region, long, long, float)
gap
from the beginning of the region to the next beginning
voidduplicate_range (AudioRange&, float)
voidduplicate_until (Region, long, long, long)
gap
from the beginning of the region to the next beginning
end
the first frame that does _not_ contain a duplicated frame
Regionfind_next_region (long, RegionPoint, int)
longfind_next_region_boundary (long, int)
boolisnil ()
voidlower_region (Region)
voidlower_region_to_bottom (Region)
unsigned intn_regions ()
voidraise_region (Region)
voidraise_region_to_top (Region)
Regionregion_by_id (ID)
RegionListPtrregion_list ()
RegionListPtrregions_at (long)
RegionListPtrregions_touched (long, long)
start
Range start.
end
Range end.

Returns regions which have some part within this range.

RegionListPtrregions_with_end_within (Range)
RegionListPtrregions_with_start_within (Range)
voidremove_region (Region)
boolsameinstance (Playlist)
voidsplit (long)
voidsplit_region (Region, long, int)
Regiontop_region_at (long)
Regiontop_unmuted_region_at (long)
voiduncombine (Region)
Cast
AudioPlaylistto_audioplaylist ()
+

Inherited from ARDOUR:SessionObject

+ + + + + + +
Methods
std::stringname ()
Cast
Statefulto_stateful ()
StatefulDestructibleto_statefuldestructible ()

 ARDOUR:Plugin

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.

+ + @@ -649,36 +1669,56 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C +
Methods
std::stringget_docs ()
PluginInfoget_info ()
LuaTable(int, ...)get_parameter_descriptor (unsigned int, ParameterDescriptor&)
std::stringget_parameter_docs (unsigned int)
boolisnil ()
char*label ()
boolload_preset (PresetRecord)

Set parameters using a preset

char*maker ()
char*name ()
LuaTable(unsigned int, ...)nth_parameter (unsigned int, bool&)
boolparameter_is_input (unsigned int)
PresetRecordpreset_by_label (std::string)
PresetRecordpreset_by_uri (std::string)
boolsameinstance (Plugin)

Inherited from PBD:StatefulPtr

+ + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
OwnedPropertyListproperties ()

 ARDOUR:PluginControl

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
boolisnil ()
boolsameinstance (PluginControl)

Inherited from ARDOUR:AutomationControl

+ + + + + +
Methods
AutomationListalist ()
AutoStateautomation_state ()
AutoStyleautomation_style ()
doubleget_value ()

Get the current effective `user' value based on automation state

voidset_automation_state (AutoState)
voidset_automation_style (AutoStyle)
voidset_value (double, GroupControlDisposition)

Get and Set `internal' value

All derived classes must implement this.

Basic derived classes will ignore

group_override,
but more sophisticated children, notably those that proxy the value setting logic via an object that is aware of group relationships between this control and others, will find it useful.
voidstart_touch (double)
voidstop_touch (bool, double)
boolwritable ()
Cast
Controlto_ctrl ()
-

Inherited from Evoral:Control

+

Inherited from PBD:Controllable

- + +
Methods
ControlListlist ()
std::stringname ()
+

Inherited from PBD:StatefulPtr

+ + + + + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
OwnedPropertyListproperties ()

 ARDOUR:PluginInfo

C‡: boost::shared_ptr< ARDOUR::PluginInfo >, boost::weak_ptr< ARDOUR::PluginInfo >

@@ -687,81 +1727,241 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C Constructor ℂARDOUR.PluginInfo () Methods + PresetVectorget_presets (bool) + boolis_instrument () boolisnil () + boolsameinstance (PluginInfo) + Data Members + std::stringcategory + std::stringcreator + ARDOUR:ChanCountn_inputs + ARDOUR:ChanCountn_outputs + std::stringname + std::stringpath + ARDOUR.PluginTypetype + std::stringunique_id

 ARDOUR:PluginInsert

C‡: boost::shared_ptr< ARDOUR::PluginInsert >, boost::weak_ptr< ARDOUR::PluginInsert >

is-a: ARDOUR:Processor

+

Plugin inserts: send data through a plugin

- + - +
Methods
voidactivate ()
voiddeactivate ()
ChanMappinginput_map (unsigned int)
boolisnil ()
boolno_inplace ()
ChanMappingoutput_map (unsigned int)
Pluginplugin (unsigned int)
boolsameinstance (PluginInsert)
voidset_input_map (unsigned int, ChanMapping)
voidset_no_inplace (bool)
voidset_output_map (unsigned int, ChanMapping)
IOsidechain_input ()
boolstrict_io_configured ()

Inherited from ARDOUR:Processor

- - + + + + + + + +
Methods
boolactive ()
AutomationControlautomation_control (Parameter, bool)
Controlcontrol (Parameter, bool)
std::stringdisplay_name ()
Cast
Ampto_amp ()
Automatableto_automatable ()
PluginInsertto_insert ()
IOProcessorto_ioprocessor ()
MonitorProcessorto_monitorprocessor ()
PeakMeterto_peakmeter ()
SideChainto_sidechain ()
UnknownProcessorto_unknownprocessor ()

Inherited from ARDOUR:SessionObject

+ + +
Methods
std::stringname ()
Cast
Statefulto_stateful ()
StatefulDestructibleto_statefuldestructible ()
-

Inherited from PBD:StatefulPtr

+

 ARDOUR:Port

+

C‡: boost::shared_ptr< ARDOUR::Port >, boost::weak_ptr< ARDOUR::Port >

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
Methods
intconnect (Port)
intconnect_by_name (std::string)
boolconnected ()

Returns true if this port is connected to anything

boolconnected_to (Port)
boolconnected_to_name (std::string)
intdisconnect (Port)
intdisconnect_all ()
intdisconnect_by_name (std::string)
boolisnil ()
std::stringname ()

Returns Port short name

std::stringpretty_name (bool)

Returns Port human readable name

boolreceives_input ()

Returns true if this Port receives input, otherwise false

boolsameinstance (Port)
boolsends_output ()

Returns true if this Port sends output, otherwise false

Cast
AudioPortto_audioport ()
MidiPortto_midiport ()
+

 ARDOUR:PortEngine

+

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.

+

 ARDOUR:PortList

+

C‡: std::list<boost::shared_ptr<ARDOUR::Port> >

+
+ + + + + + + + + +
Constructor
ARDOUR.PortList ()
Methods
boolempty ()
LuaIteriter ()
voidreverse ()
unsigned longsize ()
LuaTabletable ()
+

 ARDOUR:PortManager

+

C‡: ARDOUR::PortManager

+
+ + + + + + + + + + + + + + + + + + + +
Methods
intconnect (std::string, std::string)
boolconnected (std::string)
intdisconnect (std::string, std::string)
intdisconnect_port (Port)
LuaTable(int, ...)get_backend_ports (std::string, DataType, PortFlags, StringVector&)
LuaTable(int, ...)get_connections (std::string, StringVector&)
voidget_physical_inputs (DataType, StringVector&)
voidget_physical_outputs (DataType, StringVector&)
Portget_port_by_name (std::string)
name
Full or short name of port

Returns Corresponding Port or 0.

LuaTable(int, ...)get_ports (DataType, PortList&)
std::stringget_pretty_name_by_name (std::string)
ChanCountn_physical_inputs ()
ChanCountn_physical_outputs ()
boolphysically_connected (std::string)
PortEngineport_engine ()
boolport_is_physical (std::string)
+

 ARDOUR:PortSet

+

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
voidadd (Port)
voidclear ()

Remove all ports from the PortSet. Ports are not deregistered with the engine, it's the caller's responsibility to not leak here!

boolcontains (Port)
boolempty ()
boolisnil ()
unsigned longnum_ports (DataType)
Portport (DataType, unsigned long)

nth port of type t, or nth port if t = NIL

t
data type
index
port index
boolremove (Port)
boolsameinstance (PortSet)
+

 ARDOUR:PresentationInfo

+

C‡: ARDOUR::PresentationInfo

+

is-a: PBD:Stateful

+
+

Base class for objects with saveable and undoable state

+ + + + + +
Methods
unsigned intcolor ()
unsigned intorder ()
voidset_color (unsigned int)
+

Inherited from PBD:Stateful

+ + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
OwnedPropertyListproperties ()

 ARDOUR:PresetRecord

C‡: ARDOUR::Plugin::PresetRecord

+ +
Constructor
ARDOUR.PresetRecord ()
Data Members
std::stringlabel
std::stringuri
booluser
boolvalid
+

 ARDOUR:PresetVector

+

C‡: std::vector<ARDOUR::Plugin::PresetRecord >

+
+ + + + + + + + + + + +
Constructor
ARDOUR.PresetVector ()
Methods
LuaTableadd (LuaTable {PresetRecord})
PresetRecordat (unsigned long)
boolempty ()
LuaIteriter ()
voidpush_back (PresetRecord)
unsigned longsize ()
LuaTabletable ()

 ARDOUR:Processor

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
voidactivate ()
boolactive ()
AutomationControlautomation_control (Parameter, bool)
Controlcontrol (Parameter, bool)
voiddeactivate ()
std::stringdisplay_name ()
boolisnil ()
boolisnil ()
boolsameinstance (Processor)
Cast
Ampto_amp ()
Automatableto_automatable ()
PluginInsertto_insert ()
IOProcessorto_ioprocessor ()
MonitorProcessorto_monitorprocessor ()
PeakMeterto_peakmeter ()
SideChainto_sidechain ()
UnknownProcessorto_unknownprocessor ()

Inherited from ARDOUR:SessionObject

+ + +
Methods
std::stringname ()
Cast
Statefulto_stateful ()
StatefulDestructibleto_statefuldestructible ()
-

Inherited from PBD:StatefulPtr

+

 ARDOUR:ProcessorVector

+

C‡: std::vector<boost::shared_ptr<ARDOUR::Processor> >

+
+ + - -
Constructor
ARDOUR.ProcessorVector ()
Methods
OwnedPropertyListproperties ()
+ LuaTableadd (LuaTable {Processor}) + Processorat (unsigned long) + boolempty () + LuaIteriter () + voidpush_back (Processor) + unsigned longsize () + LuaTabletable () +

 ARDOUR:Properties:BoolProperty

C‡: PBD::PropertyDescriptor<bool>

@@ -789,10 +1989,22 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C

A list of properties, mapped using their ID

This class object is only used indirectly as return-value and function-parameter. It provides no methods by itself.

+

 ARDOUR:Readable

+

C‡: boost::shared_ptr< ARDOUR::Readable >, boost::weak_ptr< ARDOUR::Readable >

+
+ + + + + + + +
Methods
boolisnil ()
unsigned intn_channels ()
longread (FloatArray, long, long, int)
longreadable_length ()
boolsameinstance (Readable)

 ARDOUR:Region

C‡: 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().

@@ -801,8 +2013,8 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C - - + + @@ -814,7 +2026,7 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C - + @@ -824,16 +2036,19 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C + - + + - + + @@ -841,22 +2056,22 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C - - - - + + + + + +
Methods
boolat_natural_position ()
boolcaptured ()
voidclear_sync_position ()
boolcovers (long)
voidcut_end (long)
voidcut_front (long)
voidcut_end (long, int)
voidcut_front (long, int)
DataTypedata_type ()
boolexternal ()
boolhidden ()
boollocked ()
voidlower ()
voidlower_to_bottom ()
voidmove_start (long)
voidmove_start (long, int)
voidmove_to_natural_position ()
boolmuted ()
voidnudge_position (long)
boolposition_locked ()
voidraise ()
voidraise_to_top ()
boolsameinstance (Region)
voidset_hidden (bool)
voidset_initial_position (long)
voidset_length (long)

A gui may need to create a region, then place it in an initial position determined by the user. When this takes place within one gui operation, we have to reset _last_position to prevent an implied move.

voidset_length (long, int)
voidset_locked (bool)
voidset_muted (bool)
voidset_opaque (bool)
voidset_position (long)
voidset_position (long, int)
voidset_position_locked (bool)
voidset_start (long)
voidset_sync_position (long)

Set the region's sync point.

absolute_pos
Session time.
voidset_video_locked (bool)
floatshift ()
longstart ()
boolsync_marked ()
LuaTable(long, ...)sync_offset (int&)
longsync_position ()
voidtrim_end (long)
voidtrim_front (long)
voidtrim_to (long, long)
boolvalid_transients ()

Returns Sync position in session time

voidtrim_end (long, int)
voidtrim_front (long, int)
voidtrim_to (long, long, int)
boolvideo_locked ()
boolwhole_file ()
Cast
Readableto_readable ()

Inherited from ARDOUR:SessionObject

-
Methods
std::stringname ()
-

Inherited from PBD:StatefulPtr

- - - + + +
Methods
OwnedPropertyListproperties ()
Cast
Statefulto_stateful ()
StatefulDestructibleto_statefuldestructible ()

 ARDOUR:RegionFactory

C‡: ARDOUR::RegionFactory

@@ -865,38 +2080,135 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C Methods Regionregion_by_id (ID) +

 ARDOUR:RegionList

+

C‡: std::list<boost::shared_ptr<ARDOUR::Region> >

+
+ + + + + + + + + +
Constructor
ARDOUR.RegionList ()
Methods
boolempty ()
LuaIteriter ()
voidreverse ()
unsigned longsize ()
LuaTabletable ()
+

 ARDOUR:RegionListPtr

+

C‡: boost::shared_ptr<std::list<boost::shared_ptr<ARDOUR::Region> > >

+
+ + + + + + + + + + + + +
Constructor
ARDOUR.RegionListPtr ()
Methods
LuaTableadd (LuaTable {Region})
boolempty ()
LuaIteriter ()
voidpush_back (Region)
voidreverse ()
unsigned longsize ()
LuaTabletable ()
voidunique ()

 ARDOUR:Route

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
boolactive ()
intadd_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.

index
Index to add the processor at, or -1 to add at the end of the list.

Returns 0 on success, non-0 on failure.

booladd_sidechain (Processor)
Ampamp ()
std::stringcomment ()
boolcustomize_plugin_insert (Processor, unsigned int, ChanCount)
boolcustomize_plugin_insert (Processor, unsigned int, ChanCount, ChanCount)

enable custom plugin-insert configuration

proc
Processor to customize
count
number of plugin instances to use (if zero, reset to default)
outs
output port customization
sinks
input pins for variable-I/O plugins

Returns true if successful

boolisnil ()
Deliverymain_outs ()

the signal processorat at end of the processing chain which produces output

boolmuted ()
ChanCountn_inputs ()
ChanCountn_outputs ()
Processornth_plugin (unsigned int)
Processornth_processor (unsigned int)
Processornth_send (unsigned int)
PeakMeterpeak_meter ()

************************************************************* Pure interface begins here*************************************************************

intremove_processor (Processor, ProcessorStreams, bool)

remove plugin/processor

proc
processor to remove
err
error report (index where removal vailed, channel-count why it failed) may be nil
need_process_lock
if locking is required (set to true, unless called from RT context with lock)

Returns 0 on success

boolremove_sidechain (Processor)
intreplace_processor (Processor, Processor, ProcessorStreams)

replace plugin/processor with another

old
processor to remove
sub
processor to substitute the old one with
err
error report (index where removal vailed, channel-count why it failed) may be nil

Returns 0 on success

boolreset_plugin_insert (Processor)

reset plugin-insert configuration to default, disable customizations.

This is equivalent to calling

 customize_plugin_insert (proc, 0, unused)
proc
Processor to reset

Returns true if successful

boolsameinstance (Route)
voidset_active (bool, void*)
voidset_comment (std::string, void*)
voidset_meter_point (MeterPoint, bool)
boolset_name (std::string)
boolset_strict_io (bool)
boolsoloed ()
boolstrict_io ()
Amptrim ()
Cast
Trackto_track ()
-

Inherited from ARDOUR:SessionObject

+

Inherited from ARDOUR:Stripable

- + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods
std::stringname ()
AutomationControlcomp_enable_control ()
AutomationControlcomp_makeup_control ()
AutomationControlcomp_mode_control ()
std::stringcomp_mode_name (unsigned int)
AutomationControlcomp_redux_control ()
AutomationControlcomp_speed_control ()
std::stringcomp_speed_name (unsigned int)
AutomationControlcomp_threshold_control ()
unsigned inteq_band_cnt ()
std::stringeq_band_name (unsigned int)
AutomationControleq_enable_control ()
AutomationControleq_freq_control (unsigned int)
AutomationControleq_gain_control (unsigned int)
AutomationControleq_hpf_control ()
AutomationControleq_q_control (unsigned int)
AutomationControleq_shape_control (unsigned int)
GainControlgain_control ()
boolis_auditioner ()
boolis_hidden ()
boolis_master ()
boolis_monitor ()
boolis_selected ()
AutomationControlmaster_send_enable_control ()
MonitorProcessormonitor_control ()
MuteControlmute_control ()
AutomationControlpan_azimuth_control ()
AutomationControlpan_elevation_control ()
AutomationControlpan_frontback_control ()
AutomationControlpan_lfe_control ()
AutomationControlpan_width_control ()
PhaseControlphase_control ()
PresentationInfopresentation_info_ptr ()
AutomationControlrec_enable_control ()
AutomationControlrec_safe_control ()
AutomationControlsend_enable_control (unsigned int)
AutomationControlsend_level_control (unsigned int)
std::stringsend_name (unsigned int)
voidset_presentation_order (unsigned int, bool)
SoloControlsolo_control ()
SoloIsolateControlsolo_isolate_control ()
SoloSafeControlsolo_safe_control ()
GainControltrim_control ()
Cast
Routeto_route ()
-

Inherited from PBD:StatefulPtr

+

Inherited from ARDOUR:SessionObject

- + + + +
Methods
OwnedPropertyListproperties ()
std::stringname ()
Cast
Statefulto_stateful ()
StatefulDestructibleto_statefuldestructible ()

 ARDOUR:Route:ProcessorStreams

C‡: ARDOUR::Route::ProcessorStreams

@@ -906,6 +2218,11 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C Constructor ℂARDOUR.Route.ProcessorStreams () +

 ARDOUR:RouteGroup

+

C‡: 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.

 ARDOUR:RouteList

C‡: std::list<boost::shared_ptr<ARDOUR::Route> >

@@ -938,37 +2255,63 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C

 ARDOUR:Session

C‡: ARDOUR::Session

-

Base class for objects with saveable and undoable state

+

Ardour Session

+ + + + + + + + + + + + + + + + - + + + + + - + + + + + + - - - + + + + @@ -977,33 +2320,514 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C - + + + + + +
Methods
voidabort_reversible_command ()

abort an open undo command This must only be called after begin_reversible_command ()

boolactively_recording ()
voidadd_command (Command)
StatefulDiffCommandadd_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.

sfd
the object to diff

Returns the allocated StatefulDiffCommand (already added via add_command)

voidbegin_reversible_command (std::string)

begin collecting undo information

This call must always be followed by either begin_reversible_command() or commit_reversible_command()

cmd_name
human readable name for the undo operation
SessionConfigurationcfg ()
voidcommit_reversible_command (Command)

finalize an undo command and commit pending transactions

This must only be called after begin_reversible_command ()

cmd
(additional) command to add
Controllablecontrollable_by_id (ID)
longcurrent_end_frame ()
longcurrent_start_frame ()
voiddisable_record (bool, bool)
AudioEngineengine ()
longframe_rate ()

"actual" sample rate of session, set by current audioengine rate, pullup/down etc.

doubleframes_per_timecode_frame ()
unsigned intget_block_size ()
boolget_play_loop ()
Routeget_remote_nth_route (unsigned int)
Stripableget_remote_nth_stripable (unsigned int, Flag)
RouteListPtrget_routes ()
BufferSetget_scratch_buffers (ChanCount, bool)
BufferSetget_silent_buffers (ChanCount)
RouteListPtrget_tracks ()
voidgoto_end ()
voidgoto_start ()
voidgoto_start (bool)
longlast_transport_start ()
Locationslocations ()
Routemaster_out ()
voidmaybe_enable_record ()
Routemonitor_out ()
std::stringname ()
RouteListnew_route_from_template (unsigned int, std::string, std::string, PlaylistDisposition)
RouteListnew_audio_route (int, int, RouteGroup, unsigned int, std::string, Flag, unsigned int)
AudioTrackListnew_audio_track (int, int, RouteGroup, unsigned int, std::string, unsigned int, TrackMode)
RouteListnew_midi_route (RouteGroup, unsigned int, std::string, PluginInfo, PresetRecord, Flag, unsigned int)
MidiTrackListnew_midi_track (ChanCount, ChanCount, PluginInfo, PresetRecord, RouteGroup, unsigned int, std::string, unsigned int, TrackMode)
RouteListnew_route_from_template (unsigned int, unsigned int, std::string, std::string, PlaylistDisposition)
longnominal_frame_rate ()

"native" sample rate of session, regardless of current audioengine rate, pullup/down etc

std::stringpath ()
Processorprocessor_by_id (ID)
RecordStaterecord_status ()
voidrequest_locate (long, bool)
voidrequest_play_loop (bool, bool)
voidrequest_stop (bool, bool)
voidrequest_transport_speed (double, bool)
Routeroute_by_id (ID)
Routeroute_by_name (std::string)
Routeroute_by_remote_id (unsigned int)
Routeroute_by_id (ID)
Routeroute_by_name (std::string)
Routeroute_by_selected_count (unsigned int)
intsave_state (std::string, bool, bool, bool)

save session

snapshot_name
name of the session (use an empty string for the current name)
pending
save a 'recovery', not full state (default: false)
switch_to_snapshot
switch to given snapshot after saving (default: false)
template_only
save a session template (default: false)

Returns zero on success

voidscripts_changed ()
voidset_dirty ()
std::stringsnap_name ()
booltimecode_drop_frames ()
longtimecode_frames_per_hour ()
doubletimecode_frames_per_second ()
Tracktrack_by_diskstream_id (ID)
Tracktrack_by_diskstream_id (ID)
longtransport_frame ()
booltransport_rolling ()
doubletransport_speed ()
StringListunknown_processors ()
longworst_input_latency ()
longworst_output_latency ()
longworst_playback_latency ()
longworst_track_latency ()
+

 ARDOUR:SessionConfiguration

+

C‡: ARDOUR::SessionConfiguration

+

is-a: PBD:Configuration

+
+

Base class for objects with saveable and undoable state

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods
std::stringget_audio_search_path ()
boolget_auto_input ()
boolget_auto_play ()
boolget_auto_return ()
unsigned intget_destructive_xfade_msecs ()
boolget_external_sync ()
boolget_glue_new_markers_to_bars_and_beats ()
boolget_glue_new_regions_to_bars_and_beats ()
InsertMergePolicyget_insert_merge_policy ()
boolget_jack_time_master ()
unsigned intget_meterbridge_label_height ()
boolget_midi_copy_is_fork ()
std::stringget_midi_search_path ()
SampleFormatget_native_file_data_format ()
HeaderFormatget_native_file_header_format ()
boolget_punch_in ()
boolget_punch_out ()
std::stringget_raid_path ()
boolget_realtime_export ()
boolget_show_busses_on_meterbridge ()
boolget_show_group_tabs ()
boolget_show_master_on_meterbridge ()
boolget_show_midi_on_meterbridge ()
boolget_show_monitor_on_meterbridge ()
boolget_show_mute_on_meterbridge ()
boolget_show_name_on_meterbridge ()
boolget_show_rec_on_meterbridge ()
boolget_show_region_fades ()
boolget_show_solo_on_meterbridge ()
boolget_show_summary ()
std::stringget_slave_timecode_offset ()
unsigned intget_subframes_per_frame ()
std::stringget_take_name ()
TimecodeFormatget_timecode_format ()
std::stringget_timecode_generator_offset ()
longget_timecode_offset ()
boolget_timecode_offset_negative ()
boolget_track_name_number ()
boolget_track_name_take ()
boolget_use_monitor_fades ()
boolget_use_region_fades ()
boolget_use_transport_fades ()
boolget_use_video_file_fps ()
boolget_use_video_sync ()
floatget_video_pullup ()
boolget_videotimeline_pullup ()
doubleget_wave_amplitude_zoom ()
unsigned shortget_wave_zoom_factor ()
boolset_audio_search_path (std::string)
boolset_auto_input (bool)
boolset_auto_play (bool)
boolset_auto_return (bool)
boolset_destructive_xfade_msecs (unsigned int)
boolset_external_sync (bool)
boolset_glue_new_markers_to_bars_and_beats (bool)
boolset_glue_new_regions_to_bars_and_beats (bool)
boolset_insert_merge_policy (InsertMergePolicy)
boolset_jack_time_master (bool)
boolset_meterbridge_label_height (unsigned int)
boolset_midi_copy_is_fork (bool)
boolset_midi_search_path (std::string)
boolset_native_file_data_format (SampleFormat)
boolset_native_file_header_format (HeaderFormat)
boolset_punch_in (bool)
boolset_punch_out (bool)
boolset_raid_path (std::string)
boolset_realtime_export (bool)
boolset_show_busses_on_meterbridge (bool)
boolset_show_group_tabs (bool)
boolset_show_master_on_meterbridge (bool)
boolset_show_midi_on_meterbridge (bool)
boolset_show_monitor_on_meterbridge (bool)
boolset_show_mute_on_meterbridge (bool)
boolset_show_name_on_meterbridge (bool)
boolset_show_rec_on_meterbridge (bool)
boolset_show_region_fades (bool)
boolset_show_solo_on_meterbridge (bool)
boolset_show_summary (bool)
boolset_slave_timecode_offset (std::string)
boolset_subframes_per_frame (unsigned int)
boolset_take_name (std::string)
boolset_timecode_format (TimecodeFormat)
boolset_timecode_generator_offset (std::string)
boolset_timecode_offset (long)
boolset_timecode_offset_negative (bool)
boolset_track_name_number (bool)
boolset_track_name_take (bool)
boolset_use_monitor_fades (bool)
boolset_use_region_fades (bool)
boolset_use_transport_fades (bool)
boolset_use_video_file_fps (bool)
boolset_use_video_sync (bool)
boolset_video_pullup (float)
boolset_videotimeline_pullup (bool)
boolset_wave_amplitude_zoom (double)
boolset_wave_zoom_factor (unsigned short)
Properties
std::stringaudio_search_path
boolauto_input
boolauto_play
boolauto_return
unsigned intdestructive_xfade_msecs
boolexternal_sync
boolglue_new_markers_to_bars_and_beats
boolglue_new_regions_to_bars_and_beats
ARDOUR.InsertMergePolicyinsert_merge_policy
booljack_time_master
unsigned intmeterbridge_label_height
boolmidi_copy_is_fork
std::stringmidi_search_path
ARDOUR.SampleFormatnative_file_data_format
ARDOUR.HeaderFormatnative_file_header_format
boolpunch_in
boolpunch_out
std::stringraid_path
boolrealtime_export
boolshow_busses_on_meterbridge
boolshow_group_tabs
boolshow_master_on_meterbridge
boolshow_midi_on_meterbridge
boolshow_monitor_on_meterbridge
boolshow_mute_on_meterbridge
boolshow_name_on_meterbridge
boolshow_rec_on_meterbridge
boolshow_region_fades
boolshow_solo_on_meterbridge
boolshow_summary
std::stringslave_timecode_offset
unsigned intsubframes_per_frame
std::stringtake_name
Timecode.TimecodeFormattimecode_format
std::stringtimecode_generator_offset
longtimecode_offset
booltimecode_offset_negative
booltrack_name_number
booltrack_name_take
booluse_monitor_fades
booluse_region_fades
booluse_transport_fades
booluse_video_file_fps
booluse_video_sync
floatvideo_pullup
boolvideotimeline_pullup
doublewave_amplitude_zoom
unsigned shortwave_zoom_factor
+

Inherited from PBD:Stateful

+ + + + + + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
OwnedPropertyListproperties ()

 ARDOUR:SessionObject

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
boolisnil ()
std::stringname ()
boolsameinstance (SessionObject)
Cast
Statefulto_stateful ()
StatefulDestructibleto_statefuldestructible ()
+

 ARDOUR:SideChain

+

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
boolisnil ()
boolsameinstance (SideChain)
+

Inherited from ARDOUR:IOProcessor

+ + + + + + +
Methods
IOinput ()
ChanCountnatural_input_streams ()
ChanCountnatural_output_streams ()
IOoutput ()
+

Inherited from ARDOUR:Processor

+ + + + + + + + + + + + + + + +
Methods
voidactivate ()
boolactive ()
voiddeactivate ()
std::stringdisplay_name ()
Cast
Ampto_amp ()
Automatableto_automatable ()
PluginInsertto_insert ()
IOProcessorto_ioprocessor ()
MonitorProcessorto_monitorprocessor ()
PeakMeterto_peakmeter ()
SideChainto_sidechain ()
UnknownProcessorto_unknownprocessor ()
+

Inherited from ARDOUR:SessionObject

+ + + + + + +
Methods
std::stringname ()
Cast
Statefulto_stateful ()
StatefulDestructibleto_statefuldestructible ()
+

 ARDOUR:SlavableAutomationControl,

+

C‡: boost::shared_ptr< ARDOUR::SlavableAutomationControl >, boost::weak_ptr< ARDOUR::SlavableAutomationControl >

+

is-a: ARDOUR:AutomationControl

+
+

A PBD::Controllable with associated automation data (AutomationList)

+ + + + + + + + + + +
Methods
voidadd_master (AutomationControl)
voidclear_masters ()
intget_boolean_masters ()
doubleget_masters_value ()
boolisnil ()
voidremove_master (AutomationControl)
boolsameinstance (SlavableAutomationControl,)
boolslaved ()
boolslaved_to (AutomationControl)
+

Inherited from ARDOUR:AutomationControl

+ + + + + + + + + + + + + + + + +
Methods
AutomationListalist ()
AutoStateautomation_state ()
AutoStyleautomation_style ()
doubleget_value ()

Get the current effective `user' value based on automation state

voidset_automation_state (AutoState)
voidset_automation_style (AutoStyle)
voidset_value (double, GroupControlDisposition)

Get and Set `internal' value

All derived classes must implement this.

Basic derived classes will ignore

group_override,
but more sophisticated children, notably those that proxy the value setting logic via an object that is aware of group relationships between this control and others, will find it useful.
voidstart_touch (double)
voidstop_touch (bool, double)
boolwritable ()
Cast
Controlto_ctrl ()
+

Inherited from PBD:Controllable

+ + + +
Methods
std::stringname ()

Inherited from PBD:StatefulPtr

+ + + + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
OwnedPropertyListproperties ()
+

 ARDOUR:SoloControl

+

C‡: boost::shared_ptr< ARDOUR::SoloControl >, boost::weak_ptr< ARDOUR::SoloControl >

+

is-a: ARDOUR:SlavableAutomationControl,

+
+

A PBD::Controllable with associated automation data (AutomationList)

+ + + + + + + +
Methods
boolcan_solo ()
boolisnil ()
boolsameinstance (SoloControl)
boolself_soloed ()
boolsoloed ()
+

Inherited from ARDOUR:SlavableAutomationControl,

+ + + + + + + + + +
Methods
voidadd_master (AutomationControl)
voidclear_masters ()
intget_boolean_masters ()
doubleget_masters_value ()
voidremove_master (AutomationControl)
boolslaved ()
boolslaved_to (AutomationControl)
+

Inherited from ARDOUR:AutomationControl

+ + + + + + + + + + + + + + + + +
Methods
AutomationListalist ()
AutoStateautomation_state ()
AutoStyleautomation_style ()
doubleget_value ()

Get the current effective `user' value based on automation state

voidset_automation_state (AutoState)
voidset_automation_style (AutoStyle)
voidset_value (double, GroupControlDisposition)

Get and Set `internal' value

All derived classes must implement this.

Basic derived classes will ignore

group_override,
but more sophisticated children, notably those that proxy the value setting logic via an object that is aware of group relationships between this control and others, will find it useful.
voidstart_touch (double)
voidstop_touch (bool, double)
boolwritable ()
Cast
Controlto_ctrl ()
+

Inherited from PBD:Controllable

+ + + +
Methods
std::stringname ()
+

Inherited from PBD:StatefulPtr

+ + + + + + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
OwnedPropertyListproperties ()
+

 ARDOUR:SoloIsolateControl

+

C‡: boost::shared_ptr< ARDOUR::SoloIsolateControl >, boost::weak_ptr< ARDOUR::SoloIsolateControl >

+

is-a: ARDOUR:SlavableAutomationControl,

+
+

A PBD::Controllable with associated automation data (AutomationList)

+ + + + + + +
Methods
boolisnil ()
boolsameinstance (SoloIsolateControl)
boolself_solo_isolated ()
boolsolo_isolated ()
+

Inherited from ARDOUR:SlavableAutomationControl,

+ + + + + + + + + +
Methods
voidadd_master (AutomationControl)
voidclear_masters ()
intget_boolean_masters ()
doubleget_masters_value ()
voidremove_master (AutomationControl)
boolslaved ()
boolslaved_to (AutomationControl)
+

Inherited from ARDOUR:AutomationControl

+ + + + + + + + + + + + + + + + +
Methods
AutomationListalist ()
AutoStateautomation_state ()
AutoStyleautomation_style ()
doubleget_value ()

Get the current effective `user' value based on automation state

voidset_automation_state (AutoState)
voidset_automation_style (AutoStyle)
voidset_value (double, GroupControlDisposition)

Get and Set `internal' value

All derived classes must implement this.

Basic derived classes will ignore

group_override,
but more sophisticated children, notably those that proxy the value setting logic via an object that is aware of group relationships between this control and others, will find it useful.
voidstart_touch (double)
voidstop_touch (bool, double)
boolwritable ()
Cast
Controlto_ctrl ()
+

Inherited from PBD:Controllable

+ + + +
Methods
std::stringname ()
+

Inherited from PBD:StatefulPtr

+ + + + + + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
OwnedPropertyListproperties ()
+

 ARDOUR:SoloSafeControl

+

C‡: boost::shared_ptr< ARDOUR::SoloSafeControl >, boost::weak_ptr< ARDOUR::SoloSafeControl >

+

is-a: ARDOUR:SlavableAutomationControl,

+
+

A PBD::Controllable with associated automation data (AutomationList)

+ + + + + +
Methods
boolisnil ()
boolsameinstance (SoloSafeControl)
boolsolo_safe ()
+

Inherited from ARDOUR:SlavableAutomationControl,

+ + + + + + + + + +
Methods
voidadd_master (AutomationControl)
voidclear_masters ()
intget_boolean_masters ()
doubleget_masters_value ()
voidremove_master (AutomationControl)
boolslaved ()
boolslaved_to (AutomationControl)
+

Inherited from ARDOUR:AutomationControl

+ + + + + + + + + + + + + + + + +
Methods
AutomationListalist ()
AutoStateautomation_state ()
AutoStyleautomation_style ()
doubleget_value ()

Get the current effective `user' value based on automation state

voidset_automation_state (AutoState)
voidset_automation_style (AutoStyle)
voidset_value (double, GroupControlDisposition)

Get and Set `internal' value

All derived classes must implement this.

Basic derived classes will ignore

group_override,
but more sophisticated children, notably those that proxy the value setting logic via an object that is aware of group relationships between this control and others, will find it useful.
voidstart_touch (double)
voidstop_touch (bool, double)
boolwritable ()
Cast
Controlto_ctrl ()
+

Inherited from PBD:Controllable

+ + + +
Methods
std::stringname ()
+

Inherited from PBD:StatefulPtr

+ + + + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
OwnedPropertyListproperties ()

 ARDOUR:Source

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
boolisnil ()
boolsameinstance (Source)
+

 ARDOUR:Stripable

+

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
AutomationControlcomp_enable_control ()
AutomationControlcomp_makeup_control ()
AutomationControlcomp_mode_control ()
std::stringcomp_mode_name (unsigned int)
AutomationControlcomp_redux_control ()
AutomationControlcomp_speed_control ()
std::stringcomp_speed_name (unsigned int)
AutomationControlcomp_threshold_control ()
unsigned inteq_band_cnt ()
std::stringeq_band_name (unsigned int)
AutomationControleq_enable_control ()
AutomationControleq_freq_control (unsigned int)
AutomationControleq_gain_control (unsigned int)
AutomationControleq_hpf_control ()
AutomationControleq_q_control (unsigned int)
AutomationControleq_shape_control (unsigned int)
GainControlgain_control ()
boolis_auditioner ()
boolis_hidden ()
boolis_master ()
boolis_monitor ()
boolis_selected ()
boolisnil ()
AutomationControlmaster_send_enable_control ()
MonitorProcessormonitor_control ()
MuteControlmute_control ()
AutomationControlpan_azimuth_control ()
AutomationControlpan_elevation_control ()
AutomationControlpan_frontback_control ()
AutomationControlpan_lfe_control ()
AutomationControlpan_width_control ()
PhaseControlphase_control ()
PresentationInfopresentation_info_ptr ()
AutomationControlrec_enable_control ()
AutomationControlrec_safe_control ()
boolsameinstance (Stripable)
AutomationControlsend_enable_control (unsigned int)
AutomationControlsend_level_control (unsigned int)
std::stringsend_name (unsigned int)
voidset_presentation_order (unsigned int, bool)
SoloControlsolo_control ()
SoloIsolateControlsolo_isolate_control ()
SoloSafeControlsolo_safe_control ()
GainControltrim_control ()
Cast
Routeto_route ()
+

Inherited from ARDOUR:SessionObject

+ + + + + + +
Methods
std::stringname ()
Cast
Statefulto_stateful ()
StatefulDestructibleto_statefuldestructible ()

 ARDOUR:Tempo

C‡: ARDOUR::Tempo

@@ -1021,53 +2845,180 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C

 ARDOUR:TempoMap

C‡: ARDOUR::TempoMap

-

Base class for objects with saveable and undoable state

+

Tempo Map - mapping of timecode to musical time. convert audio-samples, sample-rate to Bar/Beat/Tick, Meter/Tempo

+ + + + + + + +
Methods
MeterSectionadd_meter (Meter, double, BBT_TIME, long, PositionLockStyle)
TempoSectionadd_tempo (Tempo, double, long, Type, PositionLockStyle)
MeterSectionmeter_section_at_beat (double)
MeterSectionmeter_section_at_frame (long)
TempoSectiontempo_section_at_frame (long)
+

 ARDOUR:TempoSection

+

C‡: ARDOUR::TempoSection

+

is-a: ARDOUR:MetricSection

+
+

A section of timeline with a certain Tempo.

- - +
Methods
voidadd_meter (Meter, BBT_TIME)
voidadd_tempo (Tempo, BBT_TIME)
doublec_func ()
+

Inherited from ARDOUR:MetricSection

+ + + + +
Methods
doublepulse ()
voidset_pulse (double)

 ARDOUR:Track

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
Regionbounce (InterThreadInfo&)

bounce track from session start to session end to new region

itt
asynchronous progress report and cancel

Returns a new audio region (or nil in case of error)

Regionbounce_range (long, long, InterThreadInfo&, Processor, bool)

Bounce the given range to a new audio region.

start
start time (in samples)
end
end time (in samples)
itt
asynchronous progress report and cancel
endpoint
the processor to tap the signal off (or nil for the top)
include_endpoint
include the given processor in the bounced audio.

Returns a new audio region (or nil in case of error)

boolbounceable (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.

endpoint
the processor to tap the signal off (or nil for the top)
include_endpoint
include the given processor in the bounced audio.

Returns true if the track can be bounced, or false otherwise.

boolcan_record ()
boolisnil ()
boolrecord_enabled ()
boolrecord_safe ()
Playlistplaylist ()
boolsameinstance (Track)
boolset_name (std::string)
voidset_record_enabled (bool, GroupControlDisposition)
voidset_record_safe (bool, GroupControlDisposition)
Cast
AudioTrackto_audio_track ()
MidiTrackto_midi_track ()

Inherited from ARDOUR:Route

+ + + - + + + + + + + + + + + + + + + + + + +
Methods
boolactive ()
intadd_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.

index
Index to add the processor at, or -1 to add at the end of the list.

Returns 0 on success, non-0 on failure.

booladd_sidechain (Processor)
Ampamp ()
std::stringcomment ()
boolcustomize_plugin_insert (Processor, unsigned int, ChanCount)
boolcustomize_plugin_insert (Processor, unsigned int, ChanCount, ChanCount)

enable custom plugin-insert configuration

proc
Processor to customize
count
number of plugin instances to use (if zero, reset to default)
outs
output port customization
sinks
input pins for variable-I/O plugins

Returns true if successful

Deliverymain_outs ()

the signal processorat at end of the processing chain which produces output

boolmuted ()
ChanCountn_inputs ()
ChanCountn_outputs ()
Processornth_plugin (unsigned int)
Processornth_processor (unsigned int)
Processornth_send (unsigned int)
PeakMeterpeak_meter ()

************************************************************* Pure interface begins here*************************************************************

intremove_processor (Processor, ProcessorStreams, bool)

remove plugin/processor

proc
processor to remove
err
error report (index where removal vailed, channel-count why it failed) may be nil
need_process_lock
if locking is required (set to true, unless called from RT context with lock)

Returns 0 on success

boolremove_sidechain (Processor)
intreplace_processor (Processor, Processor, ProcessorStreams)

replace plugin/processor with another

old
processor to remove
sub
processor to substitute the old one with
err
error report (index where removal vailed, channel-count why it failed) may be nil

Returns 0 on success

boolreset_plugin_insert (Processor)

reset plugin-insert configuration to default, disable customizations.

This is equivalent to calling

 customize_plugin_insert (proc, 0, unused)
proc
Processor to reset

Returns true if successful

voidset_active (bool, void*)
voidset_comment (std::string, void*)
voidset_meter_point (MeterPoint, bool)
boolset_strict_io (bool)
boolsoloed ()
boolstrict_io ()
Amptrim ()
Cast
Trackto_track ()
+

Inherited from ARDOUR:Stripable

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods
AutomationControlcomp_enable_control ()
AutomationControlcomp_makeup_control ()
AutomationControlcomp_mode_control ()
std::stringcomp_mode_name (unsigned int)
AutomationControlcomp_redux_control ()
AutomationControlcomp_speed_control ()
std::stringcomp_speed_name (unsigned int)
AutomationControlcomp_threshold_control ()
unsigned inteq_band_cnt ()
std::stringeq_band_name (unsigned int)
AutomationControleq_enable_control ()
AutomationControleq_freq_control (unsigned int)
AutomationControleq_gain_control (unsigned int)
AutomationControleq_hpf_control ()
AutomationControleq_q_control (unsigned int)
AutomationControleq_shape_control (unsigned int)
GainControlgain_control ()
boolis_auditioner ()
boolis_hidden ()
boolis_master ()
boolis_monitor ()
boolis_selected ()
AutomationControlmaster_send_enable_control ()
MonitorProcessormonitor_control ()
MuteControlmute_control ()
AutomationControlpan_azimuth_control ()
AutomationControlpan_elevation_control ()
AutomationControlpan_frontback_control ()
AutomationControlpan_lfe_control ()
AutomationControlpan_width_control ()
PhaseControlphase_control ()
PresentationInfopresentation_info_ptr ()
AutomationControlrec_enable_control ()
AutomationControlrec_safe_control ()
AutomationControlsend_enable_control (unsigned int)
AutomationControlsend_level_control (unsigned int)
std::stringsend_name (unsigned int)
voidset_presentation_order (unsigned int, bool)
SoloControlsolo_control ()
SoloIsolateControlsolo_isolate_control ()
SoloSafeControlsolo_safe_control ()
GainControltrim_control ()
Cast
Routeto_route ()

Inherited from ARDOUR:SessionObject

- + + + + +
Methods
std::stringname ()
std::stringname ()
Cast
Statefulto_stateful ()
StatefulDestructibleto_statefuldestructible ()
+

 ARDOUR:UnknownProcessor

+

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
boolisnil ()
boolsameinstance (UnknownProcessor)
+

Inherited from ARDOUR:Processor

+ + + + + + + + + + + + + + +
Methods
voidactivate ()
boolactive ()
voiddeactivate ()
std::stringdisplay_name ()
Cast
Ampto_amp ()
Automatableto_automatable ()
PluginInsertto_insert ()
IOProcessorto_ioprocessor ()
MonitorProcessorto_monitorprocessor ()
PeakMeterto_peakmeter ()
SideChainto_sidechain ()
UnknownProcessorto_unknownprocessor ()
-

Inherited from PBD:StatefulPtr

+

Inherited from ARDOUR:SessionObject

- + + + +
Methods
OwnedPropertyListproperties ()
std::stringname ()
Cast
Statefulto_stateful ()
StatefulDestructibleto_statefuldestructible ()

 ARDOUR:WeakAudioSourceList

C‡: std::list<boost::weak_ptr<ARDOUR::AudioSource> >

@@ -1082,20 +3033,6 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C unsigned longsize () LuaTabletable () -

 ARDOUR:WeakPortSet

-

C‡: std::set<boost::weak_ptr<ARDOUR::AudioPort> > >

-
- - - - - - - - - - -
Constructor
ARDOUR.WeakPortSet ()
Methods
LuaTableadd (LuaTable {ARDOUR::AudioPort})
voidclear ()
boolempty ()
LuaIteriter ()
unsigned longsize ()
LuaTabletable ()

 ARDOUR:WeakRouteList

C‡: std::list<boost::weak_ptr<ARDOUR::Route> >

@@ -1122,14 +3059,43 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C unsigned longsize () LuaTabletable () -

 ArdourUI:ArdourMarker

+

 ArdourUI

+
+ + + + +
Methods
std::stringhttp_get (std::string)
ProcessorVectorprocessor_selection (--MISSING (lua_State*)--)
+

 ArdourUI:ArdourMarker

C‡: ArdourMarker

-

Base class for objects with auto-disconnection. trackable must be inherited when objects shall automatically invalidate slots referring to them on destruction. A slot built from a member function of a trackable derived type installs a callback that is invoked when the trackable object is destroyed or overwritten.

add_destroy_notify_callback() and remove_destroy_notify_callback() can be used to manually install and remove callbacks when notification of the object dying is needed.

notify_callbacks() invokes and removes all previously installed callbacks and can therefore be used to disconnect from all signals.

Note that there is no virtual destructor. Don't use trackable* as pointer type for managing your data or the destructors of your derived types won't be called when deleting your objects.

 signal
-

This class object is only used indirectly as return-value and function-parameter. It provides no methods by itself.

+

Location Marker

Editor ruler representation of a location marker or range on the timeline.

+ + + + + +
Methods
std::stringname ()
longposition ()
Typetype ()
+

 ArdourUI:ArdourMarkerList

+

C‡: std::list<ArdourMarker* >

+
+ + + + + + + + + + + + +
Constructor
ArdourUI.ArdourMarkerList ()
Methods
LuaTableadd (LuaTable {ArdourMarker* })
boolempty ()
LuaIteriter ()
voidpush_back (ArdourMarker)
voidreverse ()
unsigned longsize ()
LuaTabletable ()
voidunique ()

 ArdourUI:Editor

C‡: PublicEditor

+

This class contains just the public interface of the Editor class, in order to decouple it from the private implementation, so that callers of PublicEditor need not be recompiled if private methods or member variables change.

@@ -1157,11 +3123,14 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C + + + @@ -1194,8 +3163,10 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C + + @@ -1218,6 +3189,25 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C
Methods
voidaccess_action (std::string, std::string)
boolfollow_playhead ()

Returns true if the editor is following the playhead

longget_current_zoom ()
Selectionget_cut_buffer ()
unsigned intget_grid_beat_divisions (long)
LuaTable(Beats, ...)get_grid_type_as_beats (bool&, long)
LuaTable(long, ...)get_nudge_distance (long, long&)
longget_paste_offset (long, unsigned int, long)
LuaTable(...)get_pointer_position (double&, double&)
Selectionget_selection ()
LuaTable(bool, ...)get_selection_extents (long&, long&)
boolget_smart_mode ()
intget_videotl_bar_height ()
doubleget_y_origin ()
voidseparate_region_from_selection ()
voidset_follow_playhead (bool, bool)

Set whether the editor should follow the playhead.

yn
true to follow playhead, otherwise false.
catch_up
true to reset the editor view to show the playhead (if yn == true), otherwise false.
voidset_loop_range (long, long, std::string)
voidset_mouse_mode (MouseMode, bool)

Set the mouse mode (gain, object, range, timefx etc.)

m
Mouse mode (defined in editing_syms.h)
force
Perform the effects of the change even if no change is required (ie even if the current mouse mode is equal to
voidset_punch_range (long, long, std::string)
voidset_show_measures (bool)
voidset_snap_mode (SnapMode)

Set the snap mode.

m
Snap mode (defined in editing_syms.h)

Undo some transactions.

n
Number of transactions to undo.
doublevisible_canvas_height ()
+

 ArdourUI:MarkerSelection

+

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.

+

Inherited from ArdourUI:ArdourMarkerList

+ + + + + + + + + + + + +
Constructor
ArdourUI.ArdourMarkerList ()
Methods
LuaTableadd (LuaTable {ArdourMarker* })
boolempty ()
LuaIteriter ()
voidpush_back (ArdourMarker)
voidreverse ()
unsigned longsize ()
LuaTabletable ()
voidunique ()

 ArdourUI:RegionSelection

C‡: RegionSelection

@@ -1225,10 +3215,78 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C + +
Methods
voidclear_all ()

Empty this RegionSelection.

longend_frame ()
unsigned longn_midi_regions ()
RegionListregionlist ()
longstart ()
+

 ArdourUI:Selection

+

C‡: Selection

+
+

The Selection class holds lists of selected items (tracks, regions, etc. etc.).

+ + + + + + + + + + + + +
Methods
voidclear ()

Clear everything from the Selection

voidclear_all ()
boolempty (bool)

check if all selections are empty

internal_selection
also check object internals (e.g midi notes, automation points), when false only check objects.

Returns true if nothing is selected.

Data Members
ArdourUI:MarkerSelectionmarkers
ArdourUI:RegionSelectionregions
ArdourUI:TimeSelectiontime
ArdourUI:TrackSelectiontracks
+

 ArdourUI:TimeSelection

+

C‡: TimeSelection

+

is-a: ARDOUR:AudioRangeList

+
+ + + + + +
Methods
longend_frame ()
longlength ()
longstart ()
+

Inherited from ARDOUR:AudioRangeList

+ + + + + + + + + +
Constructor
ARDOUR.AudioRangeList ()
Methods
boolempty ()
LuaIteriter ()
voidreverse ()
unsigned longsize ()
LuaTabletable ()
+

 ArdourUI:TrackSelection

+

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.

+

Inherited from ArdourUI:TrackViewList

+ + + +
Methods
RouteListroutelist ()
+

 ArdourUI:TrackViewList

+

C‡: TrackViewList

+
+ + + +
Methods
RouteListroutelist ()
+

 C:ByteArray

+

C‡: unsigned char*

+
+ + + + + + + +
Methods
LuaMetaTablearray ()
LuaTableget_table ()
unsigned char*offset (unsigned int)
boolsameinstance (unsigned char*)
voidset_table (LuaTable {unsigned char})

 C:DoubleVector

C‡: std::vector<double >

@@ -1251,8 +3309,25 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C Methods LuaMetaTablearray () LuaTableget_table () + FloatArrayoffset (unsigned int) + boolsameinstance (FloatArray) voidset_table (LuaTable {float}) +

 C:FloatVector

+

C‡: std::vector<float >

+
+ + + + + + + + + + + +
Constructor
C.FloatVector ()
Methods
LuaTableadd (LuaTable {float})
floatat (unsigned long)
boolempty ()
LuaIteriter ()
voidpush_back (float)
unsigned longsize ()
LuaTabletable ()

 C:IntArray

C‡: int*

@@ -1260,6 +3335,8 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C Methods LuaMetaTablearray () LuaTableget_table () + IntArrayoffset (unsigned int) + boolsameinstance (IntArray) voidset_table (LuaTable {int})

 C:StringList

@@ -1353,7 +3430,7 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C

Makes a copy of the current state of the Context and saves it on an internal stack of saved states. When restore() is called, it will be restored to the saved state. Multiple calls to save() and restore() can be nested; each call to restore() restores the state from the matching paired save().

It isn't necessary to clear all saved states before a cairo_t is freed. Any saved states will be freed when the Context is destroyed.

restore()

voidscale (double, double)

Modifies the current transformation matrix (CTM) by scaling the X and Y user-space axes by sx and sy respectively. The scaling of the axes takes place after any existing transformation of user space.

sx
scale factor for the X dimension
sy
scale factor for the Y dimension
- voidset_dash (DoubleVector&, double) + voidset_dash (DoubleVector, double) voidset_font_size (double)

Sets the current font matrix to a scale by a factor of size, replacing any font matrix previously set with set_font_size() or set_font_matrix(). This results in a font size of size user space units. (More precisely, this matrix will result in the font's em-square being a by size square in user space.)

If text is drawn without a call to set_font_size(), (nor set_font_matrix() nor set_scaled_font()), the default font size is 10.0.

size
the new font size, in user space units)
voidset_line_cap (LineCap) @@ -1379,6 +3456,55 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C voidunset_dash ()

This function disables a dash pattern that was set with set_dash()

+

 Cairo:ImageSurface

+

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
Contextcontext ()

Returns a context object to perform operations on the surface

intget_height ()

Gets the height of the ImageSurface in pixels

intget_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.

intget_width ()

Gets the width of the ImageSurface in pixels

voidset_as_source (Context, int, int)
+

 Cairo:PangoLayout

+

C‡: LuaCairo::PangoLayout

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
Constructor
Cairo.PangoLayout (Context, std::string)
Methods
EllipsizeModeget_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::stringget_text ()

Gets the text in the layout. The returned text should not be freed or modified.

Returns The text in the layout.

WrapModeget_wrap ()

Gets the wrap mode for the layout.

Use is_wrapped() to query whether any paragraphs were actually wrapped.

Returns Active wrap mode.

boolis_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.

boolis_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.

voidset_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.

ellipsize
The new ellipsization mode for layout.
voidset_markup (std::string)

Sets the layout text and attribute list from marked-up text (see markup format). Replaces the current text and attribute list.

markup
Some marked-up text.
voidset_text (std::string)

Set the text of the layout.

text
The text for the layout.
voidset_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.

width
The desired width in Pango units, or -1 to indicate that no wrapping or ellipsization should be performed.
voidset_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.

wrap
The wrap mode.
voidshow_in_cairo_context (Context)

 Evoral:Beats

C‡: Evoral::Beats

@@ -1390,18 +3516,40 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C

 Evoral:Control

C‡: 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
boolisnil ()
ControlListlist ()
boolsameinstance (Control)

 Evoral:ControlList

C‡: boost::shared_ptr< Evoral::ControlList >, boost::weak_ptr< Evoral::ControlList >

+

A list (sequence) of time-stamped values for a control

+ + + + + + + + + + + + + + + + + + +
Methods
voidadd (double, double, bool, bool)

add automation events

when
absolute time in samples
value
parameter value
with_guards
if true, add guard-points
with_initial
if true, add an initial point if the list is empty
voidclear (double, double)

remove all automation events between the given time range

start
start of range (inclusive) in audio samples
end
end of range (inclusive) in audio samples
doubleeval (double)

query value at given time (takes a read-lock, not safe while writing automation)

where
absolute time in samples

Returns parameter value

boolin_write_pass ()
InterpolationStyleinterpolation ()

query interpolation style of the automation data

Returns Interpolation Style

boolisnil ()
LuaTable(double, ...)rt_safe_eval (double, bool&)

realtime safe version of eval, may fail if read-lock cannot be taken

where
absolute time in samples
ok
boolean reference if returned value is valid

Returns parameter value

boolsameinstance (ControlList)
voidset_interpolation (InterpolationStyle)

set the interpolation style of the automation data

is
interpolation style
voidthin (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.

thinning_factor
area-size (default: 20)
voidtruncate_end (double)

truncate the event list after the given time

last_coordinate
last event to include
voidtruncate_start (double)

truncate the event list to the given time

overall_length
overall length

 Evoral:ControlSet

C‡: boost::shared_ptr< Evoral::ControlSet >, boost::weak_ptr< Evoral::ControlSet >

@@ -1409,6 +3557,7 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C +
Methods
boolisnil ()
boolsameinstance (ControlSet)

 Evoral:Event

C‡: Evoral::Event<long>

@@ -1419,6 +3568,7 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C voidclear () voidset_buffer (unsigned int, unsigned char*, bool) unsigned intsize () + longtime ()

 Evoral:MidiEvent

C‡: Evoral::MIDIEvent<long>

@@ -1427,8 +3577,8 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C - - + +
Methods
unsigned charchannel ()
unsigned charset_channel ()
unsigned charset_type ()
voidset_channel (unsigned char)
voidset_type (unsigned char)
unsigned chartype ()

Inherited from Evoral:Event

@@ -1438,6 +3588,7 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C voidclear () voidset_buffer (unsigned int, unsigned char*, bool) unsigned intsize () + longtime ()

 Evoral:Parameter

C‡: Evoral::Parameter

@@ -1464,6 +3615,16 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C booltoggled floatupper +

 Evoral:Range

+

C‡: Evoral::Range<long>

+
+ + + + + + +
Constructor
Evoral.Range (long, long)
Data Members
longfrom
longto

 LuaSignal:Set

C‡: std::bitset<47ul>

@@ -1481,68 +3642,224 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C LuaTabletable () booltest (unsigned long) +

 PBD

+
+ + + + +
Methods
boolopen_uri (std::string)
boolopen_uri (std::string)
+

 PBD:Command

+

C‡: Command

+

is-a: PBD:StatefulDestructible

+
+

Base class for Undo/Redo commands and changesets

+ + + + +
Methods
std::stringname ()
voidset_name (std::string)
+

Inherited from PBD:Stateful

+ + + + + + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
OwnedPropertyListproperties ()
+

 PBD:Configuration

+

C‡: PBD::Configuration

+

is-a: PBD:Stateful

+
+

Base class for objects with saveable and undoable state

+

This class object is only used indirectly as return-value and function-parameter. It provides no methods by itself.

+

Inherited from PBD:Stateful

+ + + + + + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
OwnedPropertyListproperties ()

 PBD:Controllable

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
doubleget_value ()
boolisnil ()
std::stringname ()
boolsameinstance (Controllable)

Inherited from PBD:StatefulPtr

+ + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
OwnedPropertyListproperties ()

 PBD:ID

C‡: PBD::ID

+

a unique ID to identify objects numerically

Constructor
PBD.ID (std::string)
Methods
std::stringto_s ()
+

 PBD:IdVector

+

C‡: std::vector<PBD::ID >

+
+ + + + + + + + + + + +
Constructor
PBD.IdVector ()
Methods
LuaTableadd (LuaTable {ID})
IDat (unsigned long)
boolempty ()
LuaIteriter ()
voidpush_back (ID)
unsigned longsize ()
LuaTabletable ()
+

 PBD:RingBuffer8

+

C‡: PBD::RingBufferNPT<unsigned char>

+
+ + + + + + + + + + + + +
Constructor
PBD.RingBuffer8 (unsigned long)
Methods
voidincrement_read_ptr (unsigned long)
voidincrement_write_ptr (unsigned long)
unsigned longread (unsigned char*, unsigned long)
unsigned longread_space ()
voidreset ()
unsigned longwrite (unsigned char*, unsigned long)
unsigned longwrite_one (unsigned char)
unsigned longwrite_space ()
+

 PBD:RingBufferF

+

C‡: PBD::RingBufferNPT<float>

+
+ + + + + + + + + + + + +
Constructor
PBD.RingBufferF (unsigned long)
Methods
voidincrement_read_ptr (unsigned long)
voidincrement_write_ptr (unsigned long)
unsigned longread (FloatArray, unsigned long)
unsigned longread_space ()
voidreset ()
unsigned longwrite (FloatArray, unsigned long)
unsigned longwrite_one (float)
unsigned longwrite_space ()
+

 PBD:RingBufferI

+

C‡: PBD::RingBufferNPT<int>

+
+ + + + + + + + + + + + +
Constructor
PBD.RingBufferI (unsigned long)
Methods
voidincrement_read_ptr (unsigned long)
voidincrement_write_ptr (unsigned long)
unsigned longread (IntArray, unsigned long)
unsigned longread_space ()
voidreset ()
unsigned longwrite (IntArray, unsigned long)
unsigned longwrite_one (int)
unsigned longwrite_space ()

 PBD:Stateful

C‡: PBD::Stateful

Base class for objects with saveable and undoable state

+ + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
OwnedPropertyListproperties ()

 PBD:StatefulDestructible

C‡: PBD::StatefulDestructible

is-a: PBD:Stateful

-

Base class for objects with saveable and undoable state

+

Base class for objects with saveable and undoable state with destruction notification

This class object is only used indirectly as return-value and function-parameter. It provides no methods by itself.

Inherited from PBD:Stateful

+ + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
OwnedPropertyListproperties ()

 PBD:StatefulDestructiblePtr

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
boolisnil ()
boolsameinstance (StatefulDestructible)

Inherited from PBD:StatefulPtr

+ + + + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
OwnedPropertyListproperties ()
+

 PBD:StatefulDiffCommand

+

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
boolempty ()
voidundo ()
+

Inherited from PBD:Command

+ + + + +
Methods
std::stringname ()
voidset_name (std::string)
+

Inherited from PBD:Stateful

+ + + + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
OwnedPropertyListproperties ()

 PBD:StatefulPtr

C‡: boost::shared_ptr< PBD::Stateful >, boost::weak_ptr< PBD::Stateful >

+

Base class for objects with saveable and undoable state

+ + + + +
Methods
voidclear_changes ()

Forget about any changes to this object's properties

IDid ()
boolisnil ()
OwnedPropertyListproperties ()
boolsameinstance (Stateful)
+

 PBD:XMLNode

+

C‡: XMLNode

+
+ + +
Methods
std::stringname ()

 Timecode:BBT_TIME

C‡: Timecode::BBT_Time

@@ -1552,6 +3869,170 @@ Pointer Classes cannot be created in lua scripts. It always requires a call to C Constructor ℂTimecode.BBT_TIME (unsigned int, unsigned int, unsigned int) +

 Vamp:Plugin

+

C‡: _VampPlugin::Vamp::Plugin

+

is-a: Vamp:PluginBase

+
+ + + + +
Methods
FeatureSetgetRemainingFeatures ()
FeatureSetprocess (--MISSING (float**)--, RealTime)
+

Inherited from Vamp:PluginBase

+ + + + + + + + + + + + + + + +
Methods
std::stringgetCopyright ()
std::stringgetCurrentProgram ()
std::stringgetDescription ()
std::stringgetIdentifier ()
std::stringgetMaker ()
std::stringgetName ()
floatgetParameter (std::string)
ParameterListgetParameterDescriptors ()
intgetPluginVersion ()
StringVectorgetPrograms ()
std::stringgetType ()
voidselectProgram (std::string)
voidsetParameter (std::string, float)
+

 Vamp:Plugin:Feature

+

C‡: _VampPlugin::Vamp::Plugin::Feature

+
+ + + + + + + + +
Data Members
Vamp:RealTimeduration
boolhasDuration
boolhasTimestamp
std::stringlabel
Vamp:RealTimetimestamp
C:FloatVectorvalues
+

 Vamp:Plugin:FeatureList

+

C‡: std::vector<_VampPlugin::Vamp::Plugin::Feature >

+
+ + + + + + + + + + + +
Constructor
Vamp.Plugin.FeatureList ()
Methods
LuaTableadd (LuaTable {Feature})
Featureat (unsigned long)
boolempty ()
LuaIteriter ()
voidpush_back (Feature)
unsigned longsize ()
LuaTabletable ()
+

 Vamp:Plugin:FeatureSet

+

C‡: std::map<int, std::vector<_VampPlugin::Vamp::Plugin::Feature > > > >

+
+ + + + + + + + + + + +
Constructor
Vamp.Plugin.FeatureSet ()
Methods
LuaTableadd (LuaTable {Feature})
voidclear ()
unsigned longcount (int)
boolempty ()
LuaIteriter ()
unsigned longsize ()
LuaTabletable ()
+

 Vamp:Plugin:OutputDescriptor

+

C‡: _VampPlugin::Vamp::Plugin::OutputDescriptor

+
+ + + + + + + + + + + + + + + + +
Data Members
unsigned longbinCount
C:StringVectorbinNames
std::stringdescription
boolhasDuration
boolhasFixedBinCount
boolhasKnownExtents
std::stringidentifier
boolisQuantized
floatmaxValue
floatminValue
floatquantizeStep
floatsampleRate
_VampPlugin.Vamp.Plugin.OutputDescriptor.SampleTypesampleType
std::stringunit
+

 Vamp:Plugin:OutputList

+

C‡: std::vector<_VampPlugin::Vamp::Plugin::OutputDescriptor >

+
+ + + + + + + + + + + +
Constructor
Vamp.Plugin.OutputList ()
Methods
LuaTableadd (LuaTable {OutputDescriptor})
OutputDescriptorat (unsigned long)
boolempty ()
LuaIteriter ()
voidpush_back (OutputDescriptor)
unsigned longsize ()
LuaTabletable ()
+

 Vamp:PluginBase

+

C‡: _VampPlugin::Vamp::PluginBase

+
+ + + + + + + + + + + + + + + +
Methods
std::stringgetCopyright ()
std::stringgetCurrentProgram ()
std::stringgetDescription ()
std::stringgetIdentifier ()
std::stringgetMaker ()
std::stringgetName ()
floatgetParameter (std::string)
ParameterListgetParameterDescriptors ()
intgetPluginVersion ()
StringVectorgetPrograms ()
std::stringgetType ()
voidselectProgram (std::string)
voidsetParameter (std::string, float)
+

 Vamp:PluginBase:ParameterDescriptor

+

C‡: _VampPlugin::Vamp::PluginBase::ParameterDescriptor

+
+ + + + + + + + + + + + +
Data Members
floatdefaultValue
std::stringdescription
std::stringidentifier
boolisQuantized
floatmaxValue
floatminValue
std::stringname
floatquantizeStep
std::stringunit
C:StringVectorvalueNames
+

 Vamp:PluginBase:ParameterList

+

C‡: std::vector<_VampPlugin::Vamp::PluginBase::ParameterDescriptor >

+
+ + + + + + + + + + + +
Constructor
Vamp.PluginBase.ParameterList ()
Methods
LuaTableadd (LuaTable {ParameterDescriptor})
ParameterDescriptorat (unsigned long)
boolempty ()
LuaIteriter ()
voidpush_back (ParameterDescriptor)
unsigned longsize ()
LuaTabletable ()
+

 Vamp:RealTime

+

C‡: _VampPlugin::Vamp::RealTime

+
+ + + + + + + +
Constructor
Vamp.RealTime (int, int)
Methods
intmsec ()
std::stringtoString ()
intusec ()

Enum/Constants

 PBD.Controllable.GroupControlDisposition

+

 Timecode.TimecodeFormat

+ +

 Evoral.ControlList.InterpolationStyle

+ +

 _VampPlugin.Vamp.Plugin.OutputDescriptor.SampleType

+

 ARDOUR.ChanMapping

+

 ARDOUR.PresentationInfo.Flag

+

 ARDOUR.AutoStyle

 ARDOUR.AutomationType

 ARDOUR.SrcQuality

+

 ARDOUR.MeterType

+ +

 ARDOUR.MeterPoint

+ +

 ARDOUR.PortFlags

+

 ARDOUR.PlaylistDisposition

+

 ARDOUR.RegionPoint

+ +

 ARDOUR.PositionLockStyle

+ +

 ARDOUR.TempoSection.Type

+ +

 ARDOUR.TrackMode

+ +

 ARDOUR.SampleFormat

+ +

 ARDOUR.HeaderFormat

+ +

 ARDOUR.InsertMergePolicy

+

 ARDOUR.Session.RecordState

+

 ARDOUR.Location.Flags

+

 Cairo.LineCap

+

 Cairo.Format

+ +

 Pango.EllipsizeMode

+ +

 Pango.WrapMode

+

 LuaSignal.LuaSignal

+

 ArdourMarker.Type

+

 Editing.SnapType

-

 ARDOUR.DSP.BiQuad.Type

+

 ARDOUR.DSP.Biquad.Type

Class Index

+
-
Ardour 4.7-489-g840c059  -  Sun, 27 Mar 2016 22:39:31 +0200
+
Ardour 5.4-3-g2607e15  -  Mon, 03 Oct 2016 04:29:09 +0200