9 typedef struct clap_host
{
10 clap_version_t clap_version
; // initialized to CLAP_VERSION
12 void *host_data
; // reserved pointer for the host
14 // name and version are mandatory.
15 const char *name
; // eg: "Bitwig Studio"
16 const char *vendor
; // eg: "Bitwig GmbH"
17 const char *url
; // eg: "https://bitwig.com"
18 const char *version
; // eg: "4.3"
20 // Query an extension.
22 const void *(CLAP_ABI
*get_extension
)(const struct clap_host
*host
, const char *extension_id
);
24 // Request the host to deactivate and then reactivate the plugin.
25 // The operation may be delayed by the host.
27 void (CLAP_ABI
*request_restart
)(const struct clap_host
*host
);
29 // Request the host to activate and start processing the plugin.
30 // This is useful if you have external IO and need to wake up the plugin from "sleep".
32 void (CLAP_ABI
*request_process
)(const struct clap_host
*host
);
34 // Request the host to schedule a call to plugin->on_main_thread(plugin) on the main thread.
36 void (CLAP_ABI
*request_callback
)(const struct clap_host
*host
);