VST 3 SDK VST 3.7 SDK for developing VST plug-in

Public Member Functions | Public Attributes | List of all members
Component Class Reference
VST Implementation Helper Classes

Default implementation for a VST 3 Component. More...

`#include <vstcomponent.h>`

Inheritance diagram for Component:

## Public Member Functions
| Component ()
| Constructor. More...
void | setControllerClass (const FUID &cid)
| Sets the controller Class ID associated to its component. More...
void | setControllerClass (const TUID &cid)
tresult | removeAudioBusses ()
| Removes all Audio Busses. More...
tresult | removeEventBusses ()
| Removes all Event Busses. More...
tresult | renameBus (MediaType type, BusDirection dir, int32 index, const String128 newName)
| Renames a specific bus. More...
tresult | getControllerClassId (TUID classID) SMTG_OVERRIDE
tresult | setIoMode (IoMode mode) SMTG_OVERRIDE
int32 | getBusCount (MediaType type, BusDirection dir) SMTG_OVERRIDE
tresult | getBusInfo (MediaType type, BusDirection dir, int32 index, BusInfo &info) SMTG_OVERRIDE
tresult | getRoutingInfo (RoutingInfo &inInfo, RoutingInfo &outInfo) SMTG_OVERRIDE
tresult | activateBus (MediaType type, BusDirection dir, int32 index, TBool state) SMTG_OVERRIDE
tresult | setActive (TBool state) SMTG_OVERRIDE
tresult | setState (IBStream *state) SMTG_OVERRIDE
tresult | getState (IBStream *state) SMTG_OVERRIDE
tresult | initialize (FUnknown *context) SMTG_OVERRIDE
tresult | terminate () SMTG_OVERRIDE
BusList * | getBusList (MediaType type, BusDirection dir)
tresult | removeAllBusses ()
Public Member Functions inherited from ComponentBase
| ComponentBase ()
| ~ComponentBase () override
FUnknown * | getHostContext () const
| Returns the hostContext (set by the host during initialize call). More...
IConnectionPoint * | getPeer () const
| Returns the peer for the messaging communication (you can only use IConnectionPoint::notify for communicate between peers, do not try to cast peerConnection. More...
IMessage * | allocateMessage () const
| Allocates a message instance (do not forget to release it). More...
tresult | sendMessage (IMessage *message) const
| Sends the given message to the peer. More...
tresult | sendTextMessage (const char8 *text) const
| Sends a simple text message to the peer (max 255 characters). More...
tresult | sendMessageID (const char8 *messageID) const
| Sends a message with a given ID without any other payload. More...
virtual tresult | receiveText (const char8 *text)
| Receives a simple text message from the peer (max 255 characters). More...
tresult | initialize (FUnknown *context) SMTG_OVERRIDE
tresult | terminate () SMTG_OVERRIDE
tresult | connect (IConnectionPoint *other) SMTG_OVERRIDE
tresult | disconnect (IConnectionPoint *other) SMTG_OVERRIDE
tresult | notify (IMessage *message) SMTG_OVERRIDE
virtual tresult | initialize (FUnknown *context)=0
virtual tresult | terminate ()=0
Public Member Functions inherited from FUnknown
virtual tresult | queryInterface (const TUID _iid, void **obj)=0
virtual uint32 | addRef ()=0
virtual uint32 | release ()=0
virtual tresult | connect (IConnectionPoint *other)=0
virtual tresult | disconnect (IConnectionPoint *other)=0
virtual tresult | notify (IMessage *message)=0
virtual tresult | getControllerClassId (TUID classId)=0
virtual tresult | setIoMode (IoMode mode)=0
virtual int32 | getBusCount (MediaType type, BusDirection dir)=0
virtual tresult | getBusInfo (MediaType type, BusDirection dir, int32 index, BusInfo &bus)=0
virtual tresult | getRoutingInfo (RoutingInfo &inInfo, RoutingInfo &outInfo)=0
virtual tresult | activateBus (MediaType type, BusDirection dir, int32 index, TBool state)=0
virtual tresult | setActive (TBool state)=0
virtual tresult | setState (IBStream *state)=0
virtual tresult | getState (IBStream *state)=0

## Public Attributes
OBJ_METHODS(Component, ComponentBase) DEFINE_INTERFACES DEF_INTERFACE(IComponent) END_DEFINE_INTERFACES(ComponentBase) REFCOUNT_METHODS(ComponentBase) protected BusList | audioInputs
BusList | audioOutputs
BusList | eventInputs
BusList | eventOutputs
Public Attributes inherited from ComponentBase
OBJ_METHODS(ComponentBase, FObject) DEFINE_INTERFACES DEF_INTERFACE(IPluginBase) DEF_INTERFACE(IConnectionPoint) END_DEFINE_INTERFACES(FObject) REFCOUNT_METHODS(FObject) protected IPtr< IConnectionPoint > | peerConnection

## Additional Inherited Members
Static Public Attributes inherited from IPluginBase
static const FUID | iid
Static Public Attributes inherited from FUnknown
static const FUID | iid
Static Public Attributes inherited from IConnectionPoint
static const FUID | iid
Static Public Attributes inherited from IComponent
static const FUID | iid

## Detailed Description

Default implementation for a VST 3 Component.

Can be used as base class for a VST 3 component implementation.

## Constructor & Destructor Documentation

## ◆ Component()

Component | ( |  | ) |

Constructor.

## Member Function Documentation

## ◆ setControllerClass() [1/2]

void setControllerClass | ( | const FUID & | cid | ) |
| inline

Sets the controller Class ID associated to its component.

## ◆ setControllerClass() [2/2]

void setControllerClass | ( | const TUID & | cid | ) |
| inline

## ◆ removeAudioBusses()

tresult removeAudioBusses | ( |  | ) |

Removes all Audio Busses.

## ◆ removeEventBusses()

tresult removeEventBusses | ( |  | ) |

Removes all Event Busses.

## ◆ renameBus()

tresult renameBus | ( | MediaType | type,
|  | BusDirection | dir,
|  | int32 | index,
|  | const String128 | newName
| ) |  |

Renames a specific bus.

Do not forget to inform the host about this (see IComponentHandler::restartComponent (kIoTitlesChanged)).

## ◆ getControllerClassId()

tresult getControllerClassId | ( | TUID | classID | ) |
| virtual

Implements IComponent.

## ◆ setIoMode()

tresult setIoMode | ( | IoMode | mode | ) |
| virtual

Implements IComponent.

## ◆ getBusCount()

int32 getBusCount | ( | MediaType | type,
|  | BusDirection | dir
| ) |  |
| virtual

Implements IComponent.

## ◆ getBusInfo()

tresult getBusInfo | ( | MediaType | type,
|  | BusDirection | dir,
|  | int32 | index,
|  | BusInfo & | info
| ) |  |
| virtual

Implements IComponent.

## ◆ getRoutingInfo()

tresult getRoutingInfo | ( | RoutingInfo & | inInfo,
|  | RoutingInfo & | outInfo
| ) |  |
| virtual

Implements IComponent.

## ◆ activateBus()

tresult activateBus | ( | MediaType | type,
|  | BusDirection | dir,
|  | int32 | index,
|  | TBool | state
| ) |  |
| virtual

Implements IComponent.

## ◆ setActive()

tresult setActive | ( | TBool | state | ) |
| virtual

Implements IComponent.

## ◆ setState()

tresult setState | ( | IBStream * | state | ) |
| virtual

Implements IComponent.

## ◆ getState()

tresult getState | ( | IBStream * | state | ) |
| virtual

Implements IComponent.

## ◆ initialize()

tresult initialize | ( | FUnknown * | context | ) |
| virtual

Implements IPluginBase.

## ◆ terminate()

tresult terminate | ( |  | ) |
| virtual

Implements IPluginBase.

## ◆ getBusList()

BusList * getBusList | ( | MediaType | type,
|  | BusDirection | dir
| ) |  |

## ◆ removeAllBusses()

tresult removeAllBusses | ( |  | ) |

## Member Data Documentation

## ◆ audioInputs

OBJ_METHODS (Component, ComponentBase) DEFINE_INTERFACES DEF_INTERFACE (IComponent) END_DEFINE_INTERFACES (ComponentBase) REFCOUNT_METHODS (ComponentBase) protected BusList audioInputs

## ◆ audioOutputs

BusList audioOutputs

## ◆ eventInputs

BusList eventInputs

## ◆ eventOutputs

BusList eventOutputs

Empty

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