AddinManager

Which call publishes which extension point, since they are split between the engine and the registries here:

Extension pointPublished byAddins
/uapmd/engine/v1, /uapmd/audio-graph/provider/v1SequencerEngine.registerAddinExtensionPointsARA, graph providers
/uapmd/app/model/v1registerAppModelVirtual MIDI Devices
/uapmd/app/command/v1registerCommandRegistryapplication commands: Virtual MIDI Devices, Augene2 Integration
/uapmd/app/project-command/v1registerProjectCommandRegistryproject-wide commands: MIR analysis, Basic Pitch, DrumScript, pitch transcription
/uapmd/app/clip-command/v1registerClipCommandRegistrytheir clip-scoped counterparts
/uapmd/app/timeline/clip-editor/v1registerClipEditorRegistrytimeline clip editors
/uapmd/audio-import/stem-separator/v1registerStemSeparatorRegistryDemucs, BS-Roformer
/uapmd/app/panel/v1registerPanelRegistryAugene2 Integration

The Virtual MIDI Devices addin additionally has to be made known with registerVirtualMidiDevicesAddin before initialize.

Any other extension point still cannot be published from Kotlin: it would be a C++ interface pointer with no meaningful representation here.

Inheritors

AndroidAddinManager
JsAddinManager
JvmAddinManager
NativeAddinManager
WasmJsAddinManager

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
abstract val addins: List<AddinInfo>
Link copied to clipboard
abstract val directories: List<String>

Directories scanned for installed addin packages.

Link copied to clipboard
abstract val lastError: String

Functions

Link copied to clipboard
expect abstract fun close()
Link copied to clipboard
abstract fun initialize()
Link copied to clipboard
abstract fun registerAppModel(model: AppModel)
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Publish a host registry. Each must be registered before initialize, and must outlive shutdown: whatever an addin put in one would otherwise dangle.

Link copied to clipboard
abstract fun registerPanelRegistry(registry: PanelRegistry)
Link copied to clipboard

Project-wide commands are a CommandRegistry of their own.

Link copied to clipboard
Link copied to clipboard
abstract fun setEnabled(packageId: String, addinId: String, enabled: Boolean): Boolean
Link copied to clipboard
abstract fun shutdown()