IComponent

Component Base Interface \ingroup vstIPlug vst300 - [plug imp] - [released: 3.0.0] - mandatory

This is the basic interface for a VST component and must always be supported. It contains the common parts of any kind of processing class. The parts that are specific to a media type are defined in a separate interface. An implementation component must provide both the specific interface and IComponent.

Members

Functions

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

Called upon (de-)activating a bus in the host application. The Plug-in should only processed an activated bus, the host could provide less see \ref AudioBusBuffers in the process call (see \ref IAudioProcessor::process) if last buses are not activated

getBusCount
int32 getBusCount(MediaType type, BusDirection dir)

Called after the Plug-in is initialized. See \ref MediaTypes, BusDirections

getBusInfo
tresult getBusInfo(MediaType type, BusDirection dir, int32 index, BusInfo bus)

Called after the Plug-in is initialized. See \ref MediaTypes, BusDirections

getControllerClassId
tresult getControllerClassId(TUID* classId)

Called before initializing the component to get information about the controller class.

getRoutingInfo
tresult getRoutingInfo(RoutingInfo inInfo, RoutingInfo outInfo)

Retrieves routing information (to be implemented when more than one regular input or output bus exists). The inInfo always refers to an input bus while the returned outInfo must refer to an output bus!

getState
tresult getState(IBStream state)

Retrieves complete state of component.

setActive
tresult setActive(TBool state)

Activates / deactivates the component.

setIoMode
tresult setIoMode(IoMode mode)

Called before 'initialize' to set the component usage (optional). See \ref IoModes

setState
tresult setState(IBStream state)

Sets complete state of component.

Static variables

iid
TUID iid;
Undocumented in source.

Inherited Members

From IPluginBase

initialize
tresult initialize(FUnknown context)

The host passes a number of interfaces as context to initialize the Plug-in class. @note Extensive memory allocations etc. should be performed in this method rather than in the class' constructor! If the method does NOT return kResultOk, the object is released immediately. In this case terminate is not called!

terminate
tresult terminate()

This function is called before the Plug-in is unloaded and can be used for cleanups. You have to release all references to any host application interfaces.

iid
TUID iid;
Undocumented in source.

Meta