Expand description
Types to expose and customize a CLAP file’s entry.
On Windows and Linux (and other non-macOS UNIXes), CLAP plugins are distributed as prebuilt
dynamically-loaded libraries (usually .dll or .so files) with a .clap extension.
They expose a single EntryDescriptor, which, once initialized, acts as the entry
point for the host to read into the library file.
On macOS, CLAP plugins are distributed as a standard bundle, which contains the aforementioned dynamically-loaded libraries as its executable file.
A CLAP’s Entry is the only exposed symbol in the library. Once
initialized, its role is to expose a number of factories, which are
singletons implementing various functionalities. The most relevant is the PluginFactory,
which allows to list and instantiate plugins. See the factory module
documentation to learn more about factories.
An entry type can then be exposed to the host reading the library file by using the
clack_export_entry macro.
See the Entry trait documentation for information and examples on how to implement your own
entry type, or see the provided SinglePluginEntry convenience type if you only need to
expose a single plugin type to the host.
Modules§
- prelude
- A prelude that’s helpful for implementing custom
EntryandPluginFactorytypes.
Structs§
- Entry
Factories - A lightweight collection of all the factories a given plugin entry supports.
- Entry
Load Error - An error indicating an entry has failed loading.
- Single
Plugin Entry - An
Entrythat only exposes a single plugin type to the host.
Traits§
- Default
Plugin Factory - An optional trait used by
SinglePluginEntrythat provides simplified, methods for generic plugin factories. - Entry
- A CLAP file’s entry point.
Type Aliases§
- Entry
Descriptor - A C-FFI compatible descriptor of a CLAP file’s entry point.