Expand description
Raw FFI bindings for the Celemony ARA2 SDK.
Generated by bindgen from ARAInterface.h v2.3.0.
This crate is not intended to be used directly. See the ara2-bridge
crate for safe Rust wrappers around these types.
§Regenerating
The bindings are generated at build time in build.rs. If you update
ARAInterface.h, the bindings regenerate automatically. No manual
steps required.
§Coverage
210 types exported, including:
- 11 interface structs (function pointer vtables)
- Property structs for audio sources, musical contexts, region sequences
- Opaque reference types for plugin and host objects
- Constants and enums for API generations, content types, and flags
Structs§
- ARAArchive
Reader Host RefMarkup Type - ARAArchive
Writer Host RefMarkup Type - ARAArchiving
Controller Host RefMarkup Type - ARAArchiving
Controller Interface - ! Host interface: archive controller. ! As with all host interfaces, the function pointers in this struct must remain valid until ! all document controllers on the plug-in side that use it have been destroyed.
- ARAAudio
Access Controller Host RefMarkup Type - ARAAudio
Access Controller Interface - ! Host interface: audio access controller. ! As with all host interfaces, the function pointers in this struct must remain valid until ! all document controllers on the plug-in side that use it have been destroyed.
- ARAAudio
Modification Host RefMarkup Type - ARAAudio
Modification Properties - ! Audio modification properties. ! Note that like all properties, a pointer to this struct is only valid for the duration of the ! call receiving the pointer - the data must be evaluated/copied inside the call, and the pointer ! must not be stored anywhere.
- ARAAudio
Modification RefMarkup Type - ARAAudio
Reader Host RefMarkup Type - ARAAudio
Source Host RefMarkup Type - ARAAudio
Source Properties - ! Audio source properties. ! Note that like all properties, a pointer to this struct is only valid for the duration of the ! call receiving the pointer - the data must be evaluated/copied inside the call, and the pointer ! must not be stored anywhere.
- ARAAudio
Source RefMarkup Type - ARAColor
- ! R/G/B color, values range from 0.0f to 1.0f. ! Does not include transparency because it must not depend on the background its drawn upon ! in order to be equally represented in both the host and plug-in UI - any transparency on ! either side must be converted depending on internal drawing before/after the ARA calls.
- ARAContent
Access Controller Host RefMarkup Type - ARAContent
Access Controller Interface - ! Host interface: content access controller. ! As with all host interfaces, the function pointers in this struct must remain valid until ! all document controllers on the plug-in side that use it have been destroyed.
- ARAContent
BarSignature - ! Content reader event class: bar signatures provided by kARAContentTypeBarSignatures. ! The event position relates to ARAContentTempoEntry, a valid tempo map must be provided ! by any provider of ARAContentBarSignature. ! Each bar signature is valid until the following one, and the first bar signature is assumed to ! also be valid any time before it is actually defined. ! The location of the first bar signature is also considered to be the location of bar 1. ! Event sort order is by position. ! As with all content readers, a pointer to this struct retrieved via getContentReaderDataForEvent() ! is still owned by the callee and must remain valid until either getContentReaderDataForEvent() ! is called again or the reader is destroyed via destroyContentReader().
- ARAContent
Chord - ! Content reader event class: chords provided by kARAContentTypeSheetChords. ! The event position relates to ARAContentTempoEntry, a valid tempo map must be provided ! by any provider of ARAContentBarSignature. ! Each chord is valid until the following one, and the first chord is assumed to also be valid ! any time before it is actually defined (i.e. its position is effectively ignored). ! The “undefined chord” markup (all intervals unused) can be used to express a range where no ! chord is applicable. Such gaps may appear between “regular” chords, or they can be used ! to limit the otherwise infinite duration of the first and last “regular” chord if desired. ! Event sort order is by position. ! As with all content readers, a pointer to this struct retrieved via getContentReaderDataForEvent() ! is still owned by the callee and must remain valid until either getContentReaderDataForEvent() ! is called again or the reader is destroyed via destroyContentReader().
- ARAContent
KeySignature - ! Content reader event class: key signature provided by kARAContentTypeKeySignatures. ! Defines the usage of each pitch class in the octave-cyclic 12-tone pitch system. ! This content type describes the key signatures as would be annotated in a score, not the local ! scales (which may be using some out-of-key notes via additional per-note accidentals). ! The event position relates to ARAContentTempoEntry, a valid tempo map must be provided ! by any provider of ARAContentBarSignature. ! Each key signature is valid until the following one, the first key signature is assumed to also ! be valid any time before it is actually defined. ! Event sort order is by position. ! As with all content readers, a pointer to this struct retrieved via getContentReaderDataForEvent() ! is still owned by the callee and must remain valid until either getContentReaderDataForEvent() ! is called again or the reader is destroyed via destroyContentReader().
- ARAContent
Note - ! Content reader event class: notes provided by kARAContentTypeNotes. ! Event sort order is by startPosition. ! As with all content readers, a pointer to this struct retrieved via getContentReaderDataForEvent() ! is still owned by the callee and must remain valid until either getContentReaderDataForEvent() ! is called again or the reader is destroyed via destroyContentReader().
- ARAContent
Reader Host RefMarkup Type - ARAContent
Reader RefMarkup Type - ARAContent
Tempo Entry - ! Content reader event class: tempo map provided by kARAContentTypeTempoEntries. ! Event sort order is by timePosition. ! As with all content readers, a pointer to this struct retrieved via getContentReaderDataForEvent() ! is still owned by the callee and must remain valid until either getContentReaderDataForEvent() ! is called again or the reader is destroyed via destroyContentReader().
- ARAContent
Time Range - ! Content reader optional creation parameter: a range in time to filter content events. ! As an optimization hint, a content reader can be asked to restrict its data to only those events ! that intersect with the given time range. Reader implementations should strive to respect this ! request, but focus on overall performance - the events actually returned may exceed the specified ! range by any amount, and calling code must evaluate the returned event positions/event durations. ! \br ! Note that when calls accept a pointer to a content time range, that pointer is only valid for ! the duration of the call - the data must be evaluated/copied inside the call, and the pointer ! must not be stored anywhere. ! Further, in most of these calls the pointer to a content range may be NULL, indicating that the ! entire content range of the object should be read.
- ARAContent
Tuning - ! Content reader event class: periodic 12-tone tuning table provided by kARAContentTypeStaticTuning. ! Defines the tuning of each pitch class in the octave-cyclic 12-tone pitch system. ! Allows to import (12-tone) Scala files. ! Stretched tunings are not supported by ARA at this point, but may be added in a future release ! as an additional tuning stretch curve applied on top of this average tuning. ! ARA defines a single overall tuning (i.e. there’s always only one event for this reader). ! As with all content readers, a pointer to this struct retrieved via getContentReaderDataForEvent() ! is still owned by the callee and must remain valid until either getContentReaderDataForEvent() ! is called again or the reader is destroyed via destroyContentReader().
- ARADocument
Controller Host Instance - ! The document controller host instance struct and all interfaces and refs therein must remain valid ! until all plug-in document controllers created with this struct have been destroyed by the host.
- ARADocument
Controller Instance - ! The document controller instance struct and all interfaces and refs therein must remain valid ! until the document controller is destroyed by the host.
- ARADocument
Controller Interface - ! Plug-in interface: document controller. ! The function pointers in this struct must remain valid until the document controller is ! destroyed by the host.
- ARADocument
Controller RefMarkup Type - ARADocument
Properties - ! Document properties. ! Note that like all properties, a pointer to this struct is only valid for the duration of the ! call receiving the pointer - the data must be evaluated/copied inside the call, and the pointer ! must not be stored anywhere.
- ARAEditor
Renderer Interface - ! Plug-in interface: editor renderer. ! The function pointers in this struct must remain valid until the companion API plug-in instance ! (and accordingly its plug-in extension) is destroyed by the host.
- ARAEditor
Renderer RefMarkup Type - ARAEditor
View Interface - ! Plug-in interface: view controller. ! The function pointers in this struct must remain valid until the document controller is ! destroyed by the host.
- ARAEditor
View RefMarkup Type - ARAFactory
- ! @defgroup Plug_In_Interfaces Plug-In Interfaces ! @{ ***************************************************************************************************/
- ARAInterface
Configuration - ! API configuration. ! This configuration struct allows for setting the desired API version, the debug callback etc. ! Note that a pointer to this struct is only valid for the duration of the call to ! initializeARAWithConfiguration() - the data must be fully evaluated/copied inside the call.
- ARAModel
Update Controller Host RefMarkup Type - ARAModel
Update Controller Interface - ! Host interface: model update controller. ! As with all host interfaces, the function pointers in this struct must remain valid until ! all document controllers on the plug-in side that use it have been destroyed.
- ARAMusical
Context Host RefMarkup Type - ARAMusical
Context Properties - ! Musical context properties. ! Note that like all properties, a pointer to this struct is only valid for the duration of the ! call receiving the pointer - the data must be evaluated/copied inside the call, and the pointer ! must not be stored anywhere.
- ARAMusical
Context RefMarkup Type - ARAPlayback
Controller Host RefMarkup Type - ARAPlayback
Controller Interface - ! Host interface: playback controller. ! As with all host interfaces, the function pointers in this struct must remain valid until ! all document controllers on the plug-in side that use it have been destroyed.
- ARAPlayback
Region Host RefMarkup Type - ARAPlayback
Region Properties - ! Playback region properties. ! Note that like all properties, a pointer to this struct is only valid for the duration of the ! call receiving the pointer - the data must be evaluated/copied inside the call, and the pointer ! must not be stored anywhere.
- ARAPlayback
Region RefMarkup Type - ARAPlayback
Renderer Interface - ! Plug-in interface: playback renderer. ! The function pointers in this struct must remain valid until the companion API plug-in instance ! (and accordingly its plug-in extension) is destroyed by the host.
- ARAPlayback
Renderer RefMarkup Type - ARAPlug
InExtension Instance - ! The plug-in extension instance struct and all interfaces and refs therein must remain valid ! until the companion plug-in is destroyed by the host. ! Note that the companion plug-in destruction may happen before or after destroying the document ! controller it has been bound to, plug-ins must handle both possible destruction orders. ! Plug-ins must provide all interfaces that have been requested by the host through the role ! assignment, and suppress interfaces explicitly excluded by the roles - e.g. if the host did ! not assign kARAEditorRendererRole even it was known, editorRendererInterface will be NULL.
- ARAPlug
InExtension Interface - ARAPlug
InExtension RefMarkup Type - ARAProcessing
Algorithm Properties - ! Processing algorithm description returned by ARADocumentControllerInterface::getProcessingAlgorithmProperties() ! Provides a unique identifier and a user-readable name of the algorithm, as displayed in the plug-in. ! The pointers contained in this struct must remain valid until the document controller that has ! provided the struct is destroyed.
- ARARegion
Sequence Host RefMarkup Type - ARARegion
Sequence Properties - ! Region sequence properties. ! Note that like all properties, a pointer to this struct is only valid for the duration of the ! call receiving the pointer - the data must be evaluated/copied inside the call, and the pointer ! must not be stored anywhere.
- ARARegion
Sequence RefMarkup Type - ARARestore
Objects Filter - ! Optional filter when restoring objects. ! \br ! Allows the host to specify a subset of the persistent objects in the archive to restore in ! ARADocumentControllerInterface::restoreObjectsFromArchive(). ! \br ! The given IDs refer to objects in the archive, but can optionally be mapped to those used in the ! current document. This may be necessary to resolve potential conflicts between persistent IDs ! from different documents when importing parts of one document into another (since persistent IDs ! are only required to be unique within a document, not across documents). ! \br ! The C++ ARA Library offers plug-in developers the ARA::PlugIn::RestoreObjectsFilter ! utility class to ease the implementation of partial persistency.
- ARAStore
Objects Filter - ! Optional filter when storing objects. ! \br ! Allows the host to specify a subset of the objects in the model graph to be stored in ! ARADocumentControllerInterface::storeObjectsToArchive(). ! \br ! The C++ ARA Library offers plug-in developers the ARA::PlugIn::StoreObjectsFilter ! utility class to ease the implementation of partial persistency.
- ARAView
Selection - ! Host generated ARA view selection.
Enums§
- _bindgen_
ty_ 1 - ! To avoid defining yet another abstraction of spacial layout information for the individual ! channels of an audio signal, ARA directly uses the respective companion API’s model of ! spacial arrangement. Since different companion APIs are available, this enum specifies which ! abstraction is used.
- _bindgen_
ty_ 2 - / //! @defgroup API_generations API Generations //! While purely additive features can be handled through ARA’s versioned structs, //! ARA API generations allow for non-backwards-compatible, fundamental API changes. //! For hosts that rely on a certain minimum ARA feature set provided by the plug-ins, it also //! offers a convenient way to filter incompatible plug-ins. //! Plug-ins on the other hand can use the API generation chosen by the host to optimize their //! feature set for the given environment, such as disabling potentially costly fallback code //! required for older hosts when running in a modern host. //! @{
- _bindgen_
ty_ 3 - ! Hint about the nature of the programming error.
- _bindgen_
ty_ 4 - _bindgen_
ty_ 5 - _bindgen_
ty_ 6 - _bindgen_
ty_ 7 - _bindgen_
ty_ 8 - _bindgen_
ty_ 9 - ! Playback region transformations. ! Plug-ins may or may not support all transformations that can be configured in a playback region. ! They express these capabilities at factory level, and the host must respect this. ! Also used in ARAFactory::supportedPlaybackTransformationFlags.
- _bindgen_
ty_ 10 - _bindgen_
ty_ 11 - ! Flags indicating the scope of a content update. ! If notifying the API partner about a content update, the caller can make guarantees about which ! abstractions of the signal are unaffected by the given change. ! The enum flags describing these abstractions are or’d together into a single ARAInt32 value. ! \br ! The C++ ARA Library encapsulates content updates in the ARA::ContentUpdateScopes class.
- _bindgen_
ty_ 12 - ! Types of data that can be shared between host and plug-in.
- _bindgen_
ty_ 13 - ! Content grade: degree of reliability of the provided content information. ! The most prominent use of the content grade is to solve conflicts between data provided by the ! host and data found via analysis on the plug-in side. Another example is that when being notified ! about content changes in the plug-in, a host may choose to trigger certain automatic updates only ! if the grade of the content is above a certain reliability threshold.
- _bindgen_
ty_ 14 - _bindgen_
ty_ 15 - _bindgen_
ty_ 16 - _bindgen_
ty_ 17 - ! Audio source analysis progress indication.
- _bindgen_
ty_ 18 - _bindgen_
ty_ 19 - _bindgen_
ty_ 20 - _bindgen_
ty_ 21 - _bindgen_
ty_ 22 - _bindgen_
ty_ 23 - _bindgen_
ty_ 24 - _bindgen_
ty_ 25 - _bindgen_
ty_ 26 - _bindgen_
ty_ 27 - _bindgen_
ty_ 28 - ! Plug-in instance role flags.
- _bindgen_
ty_ 29 - _bindgen_
ty_ 30 - _bindgen_
ty_ 31 - _bindgen_
ty_ 32 - _bindgen_
ty_ 33 - _bindgen_
ty_ 34
Constants§
- kARAAPI
Generation_ 1_ 0_ Draft - kARAAPI
Generation_ 1_ 0_ Final - kARAAPI
Generation_ 2_ 0_ Draft - kARAAPI
Generation_ 2_ 0_ Final - kARAAPI
Generation_ 2_ 3_ Final - kARAAPI
Generation_ 2_ X_ Draft - kARA
Analysis Progress Completed - kARA
Analysis Progress Started - kARA
Analysis Progress Updated - kARA
Archiving Controller Interface MinSize - kARA
Assert Invalid Argument - kARA
Assert Invalid State - kARA
Assert Invalid Thread - kARA
Assert Unspecified - kARA
Audio Access Controller Interface MinSize - kARA
Audio Modification Properties MinSize - kARA
Audio Source Properties MinSize - kARA
Channel ArrangementAAX Stem Format - kARA
Channel ArrangementCLAP Ambisonic Info - kARA
Channel ArrangementCLAP Channel Map - kARA
Channel Arrangement Core Audio Channel Layout - kARA
Channel Arrangement Undefined - kARA
Channel ArrangementVS T3Speaker Arrangement - kARA
Content Access Controller Interface MinSize - kARA
Content Grade Adjusted - kARA
Content Grade Approved - kARA
Content Grade Detected - kARA
Content Grade Initial - kARA
Content Type BarSignatures - kARA
Content Type KeySignatures - kARA
Content Type Notes - kARA
Content Type Sheet Chords - kARA
Content Type Static Tuning - kARA
Content Type Tempo Entries - kARA
Content Update Everything Changed - kARA
Content Update Harmonic Scope Remains Unchanged - kARA
Content Update Note Scope Remains Unchanged - kARA
Content Update Signal Scope Remains Unchanged - kARA
Content Update Timing Scope Remains Unchanged - kARA
Content Update Tuning Scope Remains Unchanged - kARA
Default Concert Pitch Frequency - kARA
Document Controller Host Instance MinSize - kARA
Document Controller Instance MinSize - kARA
Document Controller Interface MinSize - kARA
Document Properties MinSize - kARA
Editor Renderer Interface MinSize - kARA
Editor Renderer Role - kARA
Editor View Interface MinSize - kARA
Editor View Role - kARA
Factory MinSize - kARA
Interface Configuration MinSize - kARA
Invalid Frequency - kARA
Invalid Pitch Number - kARA
Model Update Controller Interface MinSize - kARA
Musical Context Properties MinSize - kARA
Playback Controller Interface MinSize - kARA
Playback Region Properties MinSize - kARA
Playback Renderer Interface MinSize - kARA
Playback Renderer Role - kARA
Playback Transformation Content Based Fade AtHead - kARA
Playback Transformation Content Based Fade AtTail - kARA
Playback Transformation Content Based Fades - kARA
Playback Transformation NoChanges - kARA
Playback Transformation Timestretch - kARA
Playback Transformation Timestretch Reflecting Tempo - kARA
Plug InExtension Instance MinSize - kARA
Plug InExtension Interface MinSize - kARA
Processing Algorithm Properties MinSize - kARA
Region Sequence Properties MinSize - kARA
Restore Objects Filter MinSize - kARA
Store Objects Filter MinSize - kARA
View Selection MinSize
Functions§
- build_
araarchivingcontroller_ vtable - build_
araaudioaccesscontroller_ vtable - build_
aracontentaccesscontroller_ vtable - build_
aramodelupdatecontroller_ vtable - build_
araplaybackcontroller_ vtable
Type Aliases§
- ARAAPI
Generation - / //! @defgroup API_generations API Generations //! While purely additive features can be handled through ARA’s versioned structs, //! ARA API generations allow for non-backwards-compatible, fundamental API changes. //! For hosts that rely on a certain minimum ARA feature set provided by the plug-ins, it also //! offers a convenient way to filter incompatible plug-ins. //! Plug-ins on the other hand can use the API generation chosen by the host to optimize their //! feature set for the given environment, such as disabling potentially costly fallback code //! required for older hosts when running in a modern host. //! @{
- ARAAnalysis
Progress State - ! Audio source analysis progress indication.
- ARAArchive
Reader Host Ref - ! Reference to the host side representation of an archive reader (opaque to the plug-in).
- ARAArchive
Writer Host Ref - ! Reference to the host side representation of an archive writer (opaque to the plug-in).
- ARAArchiving
Controller Host Ref - ! Reference to the host side representation of an archiving controller (opaque to the plug-in).
- ARAAssert
Category - ! Hint about the nature of the programming error.
- ARAAssert
Function - ! Global assert function pointer. ! The assert categories passed to the global assert function are useful both for guiding developers ! when debugging and for automatic assert evaluation when building unit tests. \br ! The diagnosis text is intended solely to aid the developer debugging an issue “from the ! other side”; they must not be presented to the user (or even parsed for flow control). ! If applicable (i.e. if the category is kARAAssertInvalidArgument), the diagnosis should contain ! a hint about what problematicArgument actually points to - for example if a struct is too small, ! you’d pass the pointer to the struct along with a diagnosis message a la: ! “someExampleInterfacePointer->structSize < kExampleStructMinSize”. ! Creating such appropriate texts automatically can be easily accomplished by custom assert macros. \br ! Finally, problematicArgument should point to the argument that contains the invalid data, so that ! the developer on that end can quickly identify the problem. If you can’t provide a meaningful ! address for it, e.g. because the category is kARAAssertInvalidThread, pass NULL here.
- ARAAudio
Access Controller Host Ref - ! Reference to the host side representation of an audio access controller (opaque to the plug-in).
- ARAAudio
Modification Host Ref - ! Reference to the host side representation of an audio modification (opaque to the plug-in).
- ARAAudio
Modification Ref - ! Reference to the plug-in side representation of an audio modification (opaque to the host).
- ARAAudio
Reader Host Ref - ! Reference to the host side representation of an audio reader (opaque to the plug-in).
- ARAAudio
Source Host Ref - ! Reference to the host side representation of an audio source (opaque to the plug-in).
- ARAAudio
Source Ref - ! Reference to the plug-in side representation of an audio source (opaque to the host).
- ARABool
- ! Platform independent 32-bit boolean value.
- ARAByte
- ! Byte: 8 bits wide unsigned integer.
- ARAChannel
Arrangement Data Type - ! To avoid defining yet another abstraction of spacial layout information for the individual ! channels of an audio signal, ARA directly uses the respective companion API’s model of ! spacial arrangement. Since different companion APIs are available, this enum specifies which ! abstraction is used.
- ARAChannel
Count - ! Count of discrete channels of an audio signal. ! The spacial positioning of the channels may be provided via ARAChannelArrangementDataType.
- ARAChord
Interval Usage - ! The ARAChordIntervalUsage defines whether a particular interval is used ! (kARAChordIntervalUsed) or not (kARAChordIntervalUnused), or if used may instead further ! specify the function of the interval in the chord by specifying its diatonic degree: ! 1 = unison, 3 = third, up to 13 = thirteenth ! Note that the bass note of a chord is treated separately, see below.
- ARACircle
OfFifths Index - ! The root of a key signature or chord as an index (or angle) in the circle of fifths from ‘C’. ! Enharmonic equivalents such as Db and C# are distinguished: ! \verbatim ! … ! -5: Db ! … ! -1: F ! 0: C ! 1: G ! 2: D ! … ! 7: C# ! … ! 11: E# ! … ! \endverbatim
- ARAContent
Access Controller Host Ref - ! Reference to the host side representation of a content access controller (opaque to the plug-in).
- ARAContent
Grade - ! Content grade: degree of reliability of the provided content information. ! The most prominent use of the content grade is to solve conflicts between data provided by the ! host and data found via analysis on the plug-in side. Another example is that when being notified ! about content changes in the plug-in, a host may choose to trigger certain automatic updates only ! if the grade of the content is above a certain reliability threshold.
- ARAContent
Reader Host Ref - ! Reference to the host side representation of a content reader (opaque to the plug-in).
- ARAContent
Reader Ref - ! Reference to the plug-in side representation of a content reader (opaque to the host).
- ARAContent
Type - ! Types of data that can be shared between host and plug-in.
- ARAContent
Update Flags - ! Flags indicating the scope of a content update. ! If notifying the API partner about a content update, the caller can make guarantees about which ! abstractions of the signal are unaffected by the given change. ! The enum flags describing these abstractions are or’d together into a single ARAInt32 value. ! \br ! The C++ ARA Library encapsulates content updates in the ARA::ContentUpdateScopes class.
- ARADocument
Controller Ref - ! Reference to the plug-in side representation of a document controller (opaque to the host).
- ARAEditor
Renderer Ref - ! Reference to the plug-in side representation of a editor renderer (opaque to the host).
- ARAEditor
View Ref - ! Reference to the plug-in side representation of a editor view (opaque to the host).
- ARAInt32
- ! 32 bits wide signed integer.
- ARAInt64
- ! 64 bits wide signed integer.
- ARAKey
Signature Interval Usage - ! The ARAKeySignatureIntervalUsage defines whether a particular interval is used ! (kARAKeySignatureIntervalUsed) or not (kARAKeySignatureIntervalUnused). ! Future extensions of the API could further specify the usage of a given interval, similar to the ! chord intervals below. However since there are currently no clear-cut use cases for such a ! distinction, this is not yet specified.
- ARAModel
Update Controller Host Ref - ! Reference to the host side representation of a model update controller (opaque to the plug-in).
- ARAMusical
Context Host Ref - ! Reference to the host side representation of a musical context (opaque to the plug-in).
- ARAMusical
Context Ref - ! Reference to the plug-in side representation of a musical context (opaque to the host).
- ARAPersistentID
- ! Persistent object reference representation. ! Persistent IDs are used to encode object references between plug-in and host when dealing ! with persistency. Contrary to the user-readable ARAUtf8String, ARAPersistentIDs are seven-bit ! US-ASCII-encoded strings, such as “com.manufacturerDomain.someIdentifier”, and can thus be ! directly compared using strcmp() and its siblings. They can be copied using strcpy() and must ! always be compared by value, not by address.
- ARAPitch
Number - ! Quantized pitch, corresponds to the MIDI note number in the range 0…127, but may exceed this range.
- ARAPlayback
Controller Host Ref - ! Reference to the host side representation of a playback controller (opaque to the plug-in).
- ARAPlayback
Region Host Ref - ! Reference to the host side representation of a playback region (opaque to the plug-in).
- ARAPlayback
Region Ref - ! Reference to the plug-in side representation of a playback region (opaque to the host).
- ARAPlayback
Renderer Ref - ! Reference to the plug-in side representation of a playback renderer (opaque to the host).
- ARAPlayback
Transformation Flags - ! Playback region transformations. ! Plug-ins may or may not support all transformations that can be configured in a playback region. ! They express these capabilities at factory level, and the host must respect this. ! Also used in ARAFactory::supportedPlaybackTransformationFlags.
- ARAPlug
InExtension Ref - ! @defgroup Plug-In_Extension_Interface Deprecated: Plug-In Extension Interface. ! This interface was used before ARA 2.0 defined dedicated plug-in roles. ! It is only to be implemented when ARA 1 backwards compatibility is desired. ! An ARA 1 call to set/removePlaybackRegion() in this interface is equivalent ! to calling both set/removePlaybackRegion() in ARAPlaybackRendererInterface ! and add/removePlaybackRegion() in ARAEditorRendererInterface. ! To some extend ARA 1 also uses this to for tasks now associated with ! ARAEditorViewInterface: opening the UI of an ARA 1 plug-in instance is ! interpreted as selection of the playback region set via this interface. ! @{
- ARAPlug
InInstance Role Flags - ! Plug-in instance role flags.
- ARAQuarter
Duration - ! A duration in musical time measured in quarter notes - the start of the duration is part of the interval, the end is not.
- ARAQuarter
Position - ! A position in musical time measured in quarter notes.
- ARARegion
Sequence Host Ref - ! Reference to the host side representation of a region sequence (opaque to the plug-in).
- ARARegion
Sequence Ref - ! Reference to the plug-in side representation of a region sequence (opaque to the host).
- ARASample
Count - ! Integer sample count, always related to a particular sample rate defined by the context this is used in.
- ARASample
Position - ! Integer sample index, always related to a particular sample rate defined by the context it is used in.
- ARASample
Rate - ! Specified in Hz.
- ARASize
- ! Pointer-wide size value for ARA structs.
- ARATime
Duration - ! A duration of time in seconds - the start of the duration is part of the interval, the end is not.
- ARATime
Position - ! A point in time in seconds.
- ARAUtf8
Char - ! A single character.
- ARAUtf8
String - ! A string, 0-terminated.