Interface Technology Basics VST 3.7 SDK for developing VST plug-in

Public Member Functions | Static Public Attributes | List of all members
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 More...
Public Member Functions inherited from FUnknown
virtual tresult | queryInterface (const TUID _iid, void **obj)=0
| Query for a pointer to the specified interface. More...
virtual uint32 | addRef ()=0
| Adds a reference and returns the new reference count. More...
virtual uint32 | release ()=0
| Releases a reference and returns the new reference count. More...

## 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

## ◆ getCompatibilityJSON()

virtual tresult getCompatibilityJSON | ( | IBStream * | stream | ) |
| pure virtual

get the compatibility stream

Parameters

  stream | the stream the plug-in must write the UTF8 encoded JSON5 compatibility string.

Returns
  kResultTrue on success

## Member Data Documentation

## ◆ iid

const FUID iid
| static

Empty

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