Interface Technology Basics VST 3.7
SDK for developing VST plug-in
IPluginFactory Class Referenceabstract

Class factory that any plug-in defines for creating class instances: IPluginFactory. More...

#include <ipluginbase.h>

+ Inheritance diagram for IPluginFactory:

Public Member Functions

virtual tresult getFactoryInfo (PFactoryInfo *info)=0
 Fill a PFactoryInfo structure with information about the plug-in vendor. More...
 
virtual int32 countClasses ()=0
 Returns the number of exported classes by this factory. More...
 
virtual tresult getClassInfo (int32 index, PClassInfo *info)=0
 Fill a PClassInfo structure with information about the class at the specified index. More...
 
virtual tresult createInstance (FIDString cid, FIDString _iid, void **obj)=0
 Create a new class instance. 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

Class factory that any plug-in defines for creating class instances: IPluginFactory.

  • [plug imp]

From the host's point of view a plug-in module is a factory which can create a certain kind of object(s). The interface IPluginFactory provides methods to get information about the classes exported by the plug-in and a mechanism to create instances of these classes (that usually define the IPluginBase interface).

An implementation is provided in public.sdk/source/common/pluginfactory.cpp

See also
GetPluginFactory

Member Function Documentation

◆ getFactoryInfo()

virtual tresult getFactoryInfo ( PFactoryInfo info)
pure virtual

Fill a PFactoryInfo structure with information about the plug-in vendor.

◆ countClasses()

virtual int32 countClasses ( )
pure virtual

Returns the number of exported classes by this factory.

If you are using the CPluginFactory implementation provided by the SDK, it returns the number of classes you registered with CPluginFactory::registerClass.

◆ getClassInfo()

virtual tresult getClassInfo ( int32  index,
PClassInfo info 
)
pure virtual

Fill a PClassInfo structure with information about the class at the specified index.

◆ createInstance()

virtual tresult createInstance ( FIDString  cid,
FIDString  _iid,
void **  obj 
)
pure virtual

Create a new class instance.

Member Data Documentation

◆ iid

const FUID iid
static
Empty

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