Interface Technology Basics: IPluginFactory2 Class Reference
Author: Steinberg

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

- Main Page
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
Public Member Functions | Static Public Attributes | List of all members
IPluginFactory2 Class Referenceabstract
Basic Interfaces

Version 2 of class factory supporting PClassInfo2: IPluginFactory2. More...

`#include <ipluginbase.h>`

Inheritance diagram for IPluginFactory2:

## Public Member Functions
virtual tresult | getClassInfo2 (int32 index, PClassInfo2 *info)=0
| Returns the class info (version 2) for a given index.
Public Member Functions inherited from IPluginFactory
virtual tresult | getFactoryInfo (PFactoryInfo *info)=0
| Fill a PFactoryInfo structure with information about the plug-in vendor.
virtual int32 | countClasses ()=0
| Returns the number of exported classes by this factory.
virtual tresult | getClassInfo (int32 index, PClassInfo *info)=0
| Fill a PClassInfo structure with information about the class at the specified index.
virtual tresult | createInstance (FIDString cid, FIDString _iid, void **obj)=0
| Create a new class instance.
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 IPluginFactory
static const FUID | iid
Static Public Attributes inherited from FUnknown
static const FUID | iid

## Detailed Description

Version 2 of class factory supporting PClassInfo2: IPluginFactory2.

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

virtual tresult getClassInfo2 | ( | int32 | index,
|  | PClassInfo2 * | info
| ) |  |
| pure virtual

Returns the class info (version 2) for a given index.

## Member Data Documentation

const FUID iid
| static

Empty

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