Implement CLAP plugin initialization

This commit is contained in:
Robbert van der Helm
2022-09-10 16:20:19 +02:00
parent bc2bad3e94
commit 6865cbd937
10 changed files with 133 additions and 19 deletions
+13 -6
View File
@@ -83,16 +83,23 @@ class clap_plugin_proxy {
size_t instance_id_;
clap::plugin::Descriptor descriptor_;
/**
* The `clap_host_t*` passed when creating the instance. Any callbacks made
* by the proxied plugin instance must go through ere.
*/
const clap_host_t* host_;
/**
* The vtable for `clap_plugin`, requires that this object is never moved or
* copied. We'll use the host data pointer instead of placing this vtable at
* the start of the struct and directly casting the `clap_plugin_t*`.
*/
const clap_plugin_t plugin_vtable_;
/**
* The extensions supported by the bridged plugin. Set after a successful
* `clap_plugin::init()` call. We'll allow the host to query these same
* extensions from our plugin proxy.
*/
clap::plugin::SupportedPluginExtensions supported_extensions_;
/**
* The `clap_host_t*` passed when creating the instance. Any callbacks made
* by the proxied plugin instance must go through ere.
*/
const clap_host_t* host_;
};