Interface Technology Basics  VST 3.7
SDK for developing VST plug-in
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
IPluginCompatibility Class Referenceabstract

optional interface to query the compatibility of the plug-ins classes More...

#include <iplugincompatibility.h>

+ Inheritance diagram for IPluginCompatibility:

Public Member Functions

virtual tresult getCompatibilityJSON (IBStream *stream)=0
 get the compatibility stream
 
- Public Member Functions inherited from FUnknown
virtual tresult queryInterface (const TUID _iid, void **obj)=0
 Query for a pointer to the specified interface.
 
virtual uint32 addRef ()=0
 Adds a reference and returns the new reference count.
 
virtual uint32 release ()=0
 Releases a reference and returns the new reference count.
 

Static Public Attributes

static const FUID iid
 
- Static Public Attributes inherited from FUnknown
static const FUID iid
 

Detailed Description

optional interface to query the compatibility of the plug-ins classes

  • [plug imp]

A plug-in can add a class with this interface to its class factory if it cannot provide a moduleinfo.json file in its plug-in package/bundle where the compatibility is normally part of.

If the module contains a moduleinfo.json the host will ignore this class.

The class must write into the stream an UTF-8 encoded json description of the compatibility of the other classes in the factory.

It is expected that the JSON5 written starts with an array:

[
{
"New": "B9F9ADE1CD9C4B6DA57E61E3123535FD",
"Old": [
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", // just an example
"BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB", // another example
],
},
]

Member Function Documentation

virtual tresult getCompatibilityJSON ( IBStream stream)
pure virtual

get the compatibility stream

Parameters
streamthe stream the plug-in must write the UTF8 encoded JSON5 compatibility string.
Returns
kResultTrue on success

Member Data Documentation

const FUID iid
static
Empty

Copyright ©2024 Steinberg Media Technologies GmbH. All Rights Reserved. This documentation is under this license.