clap

CLAP Audio Plugin API
Log | Files | Refs | README | LICENSE

commit 03420b805941ed7c00965f84ae9abf249b95bb18
parent b902efa94e7a069dc1576617ebd74d2310746bd4
Author: Alexandre BIQUE <bique.alexandre@gmail.com>
Date:   Tue,  4 Jan 2022 19:54:26 +0100

Improved documentation

Diffstat:
Minclude/clap/ext/gui.h | 10+++++++---
Minclude/clap/plugin-factory.h | 3+++
Minclude/clap/plugin.h | 2++
3 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/include/clap/ext/gui.h b/include/clap/ext/gui.h @@ -41,9 +41,13 @@ typedef struct clap_plugin_gui { // [main-thread] void (*destroy)(const clap_plugin_t *plugin); - // Set the absolute GUI scaling factor. - // [main-thread] - void (*set_scale)(const clap_plugin_t *plugin, double scale); + // Set the absolute GUI scaling factor, and override any OS info. + // If the plugin does not provide this function, then it should work out the scaling factor + // itself by querying the OS directly. + // + // Return false if the plugin can't apply the scaling; true on success. + // [main-thread,optional] + bool (*set_scale)(const clap_plugin_t *plugin, double scale); // Get the current size of the plugin UI, with the scaling applied. // clap_plugin_gui->create() must have been called prior to asking the size. diff --git a/include/clap/plugin-factory.h b/include/clap/plugin-factory.h @@ -13,6 +13,9 @@ extern "C" { // Every methods must be thread-safe. // It is very important to be able to scan the plugin as quickly as possible. +// +// If the content of the factory may change due to external events, like the user installed +// additional modules for this plugin, then use clap_plugin_invalidation_factory. struct clap_plugin_factory { /* Get the number of plugins available. * [thread-safe] */ diff --git a/include/clap/plugin.h b/include/clap/plugin.h @@ -35,6 +35,8 @@ typedef struct clap_plugin_descriptor { // - "delay", "reverb", "chorus", "flanger" // - "tool", "utility", "glitch" // + // - "win32-dpi-aware" informs the host that this plugin is dpi-aware on Windows + // // Some examples: // "equalizer;analyzer;stereo;mono" // "compressor;analog;character;mono"