VST 3 SDK  VST 3.7
SDK for developing VST plug-in
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Macros Groups Pages
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

Constructor & Destructor Documentation

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

Member Function Documentation

bool initialize ( )
IPtr<IComponent> getComponentPtr ( ) const
inline
IPtr<IEditController> getControllerPtr ( ) const
inline
const ClassInfo& getClassInfo ( ) const
inline
IComponent * getComponent ( )
IEditController * getController ( )
tresult releasePlugIn ( IComponent component,
IEditController controller 
)
tresult getSubCategories ( IStringResult result) const
inline
tresult getComponentUID ( FUID uid) const
IPluginFactory * getPluginFactory ( )
void setErrorStream ( std::ostream *  stream)
static
bool setupPlugin ( FUnknown hostContext)
protected
bool connectComponents ( )
protected
bool disconnectComponents ( )
protected
void terminatePlugin ( )
protected
void printError ( Proc  p) const
protected

Member Data Documentation

PluginFactory factory
protected
IPtr<IComponent> component
protected
IPtr<IEditController> controller
protected
ClassInfo classInfo
protected
IPtr<ConnectionProxy> componentCP
protected
IPtr<ConnectionProxy> controllerCP
protected
bool plugIsGlobal
protected
Empty

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