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

Public Types | Public Member Functions | Public Attributes | List of all members
PFactoryInfo Struct Reference
Basic Interfaces

Basic Information about the class factory of the plug-in. More...

`#include <ipluginbase.h>`

## Public Types
enum | FactoryFlags { kNoFlags = 0 , kClassesDiscardable = 1 << 0 , kLicenseCheck = 1 << 1 , kComponentNonDiscardable = 1 << 3 , kUnicode = 1 << 4 }
enum | { kURLSize = 256 , kEmailSize = 128 , kNameSize = 64 }

## Public Member Functions
| PFactoryInfo (const char8 *_vendor, const char8 *_url, const char8 *_email, int32 _flags)
| PFactoryInfo ()

## Public Attributes
char8 | vendor [kNameSize]
| e.g. "Steinberg Media Technologies" More...
char8 | url [kURLSize]
| e.g. "http://www.steinberg.de" More...
char8 | email [kEmailSize]
| e.g. "info@steinberg.de" More...
int32 | flags
| (see FactoryFlags above) More...

## Detailed Description

Basic Information about the class factory of the plug-in.

## Member Enumeration Documentation

## ◆ FactoryFlags

enum FactoryFlags

Enumerator
kNoFlags | Nothing.
kClassesDiscardable | The number of exported classes can change each time the Module is loaded. If this flag is set, the host does not cache class information. This leads to a longer startup time because the host always has to load the Module to get the current class information.
kLicenseCheck | This flag is deprecated, do not use anymore, resp. it will get ignored from Cubase/Nuendo 12 and later.
kComponentNonDiscardable | Component will not be unloaded until process exit.
kUnicode | Components have entirely unicode encoded strings (True for VST 3 plug-ins so far).

## ◆ anonymous enum

anonymous enum

Enumerator
kURLSize |
kEmailSize |
kNameSize |

## Constructor & Destructor Documentation

## ◆ PFactoryInfo() [1/2]

PFactoryInfo | ( | const char8 * | _vendor,
|  | const char8 * | _url,
|  | const char8 * | _email,
|  | int32 | _flags
| ) |  |
| inline

## ◆ PFactoryInfo() [2/2]

PFactoryInfo | ( |  | ) |
| inline

## Member Data Documentation

## ◆ vendor

char8 vendor[kNameSize]

e.g. "Steinberg Media Technologies"

## ◆ url

char8 url[kURLSize]

e.g. "http://www.steinberg.de"

## ◆ email

char8 email[kEmailSize]

e.g. "info@steinberg.de"

## ◆ flags

int32 flags

(see FactoryFlags above)

Empty

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