VST 3 SDK VST 3.7
SDK for developing VST plug-in
PlugProvider Class Reference

Helper for creating and initializing component. More...

#include <plugprovider.h>

+ Inheritance diagram for PlugProvider:

Public Types

using ClassInfo = VST3::Hosting::ClassInfo
 
using PluginFactory = VST3::Hosting::PluginFactory
 

Public Member Functions

 PlugProvider (const PluginFactory &factory, ClassInfo info, bool plugIsGlobal=true)
 
 ~PlugProvider () override
 
bool initialize ()
 
IPtr< IComponentgetComponentPtr () const
 
IPtr< IEditControllergetControllerPtr () const
 
const ClassInfogetClassInfo () const
 
IComponentgetComponent () SMTG_OVERRIDE
 
IEditControllergetController () SMTG_OVERRIDE
 
tresult releasePlugIn (IComponent *component, IEditController *controller) SMTG_OVERRIDE
 
tresult getSubCategories (IStringResult &result) const SMTG_OVERRIDE
 
tresult getComponentUID (FUID &uid) const SMTG_OVERRIDE
 
IPluginFactorygetPluginFactory () SMTG_OVERRIDE
 

Static Public Member Functions

static void setErrorStream (std::ostream *stream)
 

Protected Member Functions

bool setupPlugin (FUnknown *hostContext)
 
bool connectComponents ()
 
bool disconnectComponents ()
 
void terminatePlugin ()
 
template<typename Proc >
void printError (Proc p) const
 

Protected Attributes

PluginFactory factory
 
IPtr< IComponentcomponent
 
IPtr< IEditControllercontroller
 
ClassInfo classInfo
 
IPtr< ConnectionProxycomponentCP
 
IPtr< ConnectionProxycontrollerCP
 
bool plugIsGlobal
 

Detailed Description

Helper for creating and initializing component.

Member Typedef Documentation

◆ ClassInfo

◆ PluginFactory

Constructor & Destructor Documentation

◆ PlugProvider()

PlugProvider ( const PluginFactory factory,
ClassInfo  info,
bool  plugIsGlobal = true 
)

◆ ~PlugProvider()

~PlugProvider ( )
override

Member Function Documentation

◆ initialize()

bool initialize ( )

◆ getComponentPtr()

IPtr< IComponent > getComponentPtr ( ) const
inline

◆ getControllerPtr()

IPtr< IEditController > getControllerPtr ( ) const
inline

◆ getClassInfo()

const ClassInfo & getClassInfo ( ) const
inline

◆ getComponent()

IComponent * getComponent ( )

◆ getController()

IEditController * getController ( )

◆ releasePlugIn()

tresult releasePlugIn ( IComponent component,
IEditController controller 
)

◆ getSubCategories()

tresult getSubCategories ( IStringResult result) const
inline

◆ getComponentUID()

tresult getComponentUID ( FUID uid) const

◆ getPluginFactory()

IPluginFactory * getPluginFactory ( )

◆ setErrorStream()

void setErrorStream ( std::ostream *  stream)
static

◆ setupPlugin()

bool setupPlugin ( FUnknown hostContext)
protected

◆ connectComponents()

bool connectComponents ( )
protected

◆ disconnectComponents()

bool disconnectComponents ( )
protected

◆ terminatePlugin()

void terminatePlugin ( )
protected

◆ printError()

void printError ( Proc  p) const
protected

Member Data Documentation

◆ factory

PluginFactory factory
protected

◆ component

IPtr<IComponent> component
protected

◆ controller

IPtr<IEditController> controller
protected

◆ classInfo

ClassInfo classInfo
protected

◆ componentCP

IPtr<ConnectionProxy> componentCP
protected

◆ controllerCP

IPtr<ConnectionProxy> controllerCP
protected

◆ plugIsGlobal

bool plugIsGlobal
protected
Empty

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