diff options
author | David Robillard <d@drobilla.net> | 2006-09-03 05:11:57 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2006-09-03 05:11:57 +0000 |
commit | 056f394151a48e9d129691fd7451a3d0bcbde3ba (patch) | |
tree | c7c95bccfc503e704003e33b9385aa4657d2a57a /slv2/plugin.h | |
parent | 6c8dc477bda2d6e67893f4475e603a11cf507017 (diff) | |
download | lilv-056f394151a48e9d129691fd7451a3d0bcbde3ba.tar.gz lilv-056f394151a48e9d129691fd7451a3d0bcbde3ba.tar.bz2 lilv-056f394151a48e9d129691fd7451a3d0bcbde3ba.zip |
Saner (internal) query API, though still needs work.
Preliminary (untested) support for host features/extensions/whatever.
Documentation fixes and minor cleanups.
git-svn-id: http://svn.drobilla.net/lad/libslv2@113 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'slv2/plugin.h')
-rw-r--r-- | slv2/plugin.h | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/slv2/plugin.h b/slv2/plugin.h index 57fa266..95d933e 100644 --- a/slv2/plugin.h +++ b/slv2/plugin.h @@ -179,6 +179,50 @@ slv2_plugin_has_latency(const SLV2Plugin* p); uint32_t slv2_plugin_get_latency_port(const SLV2Plugin* p); +#if 0 +/** Return whether or not a plugin supports the given host feature / extension. + * + * This will return true for both supported and required host features. + */ +bool +slv2_plugin_supports_feature(const SLV2Plugin* p, const char* feature_uri); + + +/** Return whether or not a plugin requires the given host feature / extension. + * + * If a plugin requires a feature, that feature MUST be passed to the plugin's + * instantiate method or the plugin will fail to instantiate. + */ +bool +slv2_plugin_requires_features(const SLV2Plugin* p, const char* feature_uri); +#endif + +/** Get a plugin's supported host features / extensions. + * + * This returns a list of all supported features (both required and optional). + */ +SLV2Property +slv2_plugin_get_supported_features(const SLV2Plugin* p); + + +/** Get a plugin's requires host features / extensions. + * + * All feature URI's returned by this call MUST be passed to the plugin's + * instantiate method for the plugin to instantiate successfully. + */ +SLV2Property +slv2_plugin_get_required_features(const SLV2Plugin* p); + + +/** Get a plugin's optional host features / extensions. + * + * If the feature URI's returned by this method are passed to the plugin's + * instantiate method, those features will be used by the function, otherwise + * the plugin will act as it would if it did not support that feature at all. + */ +SLV2Property +slv2_plugin_get_optional_features(const SLV2Plugin* p); + /** @} */ |