VST 3 SDK  VST 3.6.7
SDK for developing VST Plug-in
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Macros Groups Pages
Public Member Functions | Data Fields
SingleComponentEffect Class Reference

Default implementation for a non-distributable Plug-in that combines processor and edit controller in one component. More...

#include <vstsinglecomponenteffect.h>

+ Inheritance diagram for SingleComponentEffect:

Public Member Functions

 SingleComponentEffect ()
 
virtual ~SingleComponentEffect ()
 
tresult initialize (FUnknown *context) SMTG_OVERRIDE
 
tresult terminate () SMTG_OVERRIDE
 
virtual tresult getControllerClassId (TUID classId) SMTG_OVERRIDE
 
virtual tresult setIoMode (IoMode mode) SMTG_OVERRIDE
 
virtual int32 getBusCount (MediaType type, BusDirection dir) SMTG_OVERRIDE
 
virtual tresult getBusInfo (MediaType type, BusDirection dir, int32 index, BusInfo &bus) SMTG_OVERRIDE
 
virtual tresult getRoutingInfo (RoutingInfo &inInfo, RoutingInfo &outInfo) SMTG_OVERRIDE
 
virtual tresult activateBus (MediaType type, BusDirection dir, int32 index, TBool state) SMTG_OVERRIDE
 
virtual tresult setActive (TBool state) SMTG_OVERRIDE
 
virtual tresult setState (IBStream *state) SMTG_OVERRIDE
 
virtual tresult getState (IBStream *state) SMTG_OVERRIDE
 
AudioBusaddAudioInput (const TChar *name, SpeakerArrangement arr, BusType busType=kMain, int32 flags=BusInfo::kDefaultActive)
 
AudioBusaddAudioOutput (const TChar *name, SpeakerArrangement arr, BusType busType=kMain, int32 flags=BusInfo::kDefaultActive)
 
EventBusaddEventInput (const TChar *name, int32 channels=16, BusType busType=kMain, int32 flags=BusInfo::kDefaultActive)
 
EventBusaddEventOutput (const TChar *name, int32 channels=16, BusType busType=kMain, int32 flags=BusInfo::kDefaultActive)
 
tresult removeAudioBusses ()
 
tresult removeEventBusses ()
 
tresult removeAllBusses ()
 
virtual tresult setBusArrangements (SpeakerArrangement *inputs, int32 numIns, SpeakerArrangement *outputs, int32 numOuts) SMTG_OVERRIDE
 
virtual tresult getBusArrangement (BusDirection dir, int32 index, SpeakerArrangement &arr) SMTG_OVERRIDE
 
virtual tresult canProcessSampleSize (int32 symbolicSampleSize) SMTG_OVERRIDE
 
virtual uint32 getLatencySamples () SMTG_OVERRIDE
 
virtual tresult setupProcessing (ProcessSetup &setup) SMTG_OVERRIDE
 
virtual tresult setProcessing (TBool state) SMTG_OVERRIDE
 
virtual tresult process (ProcessData &data) SMTG_OVERRIDE
 
virtual uint32 getTailSamples () SMTG_OVERRIDE
 
 OBJ_METHODS (SingleComponentEffect, EditController) tresult queryInterface(const TUID iid
 
- Public Member Functions inherited from EditController
 EditController ()
 
virtual tresult setComponentState (IBStream *state) SMTG_OVERRIDE
 
virtual int32 getParameterCount () SMTG_OVERRIDE
 
virtual tresult getParameterInfo (int32 paramIndex, ParameterInfo &info) SMTG_OVERRIDE
 
virtual tresult getParamStringByValue (ParamID tag, ParamValue valueNormalized, String128 string) SMTG_OVERRIDE
 
virtual tresult getParamValueByString (ParamID tag, TChar *string, ParamValue &valueNormalized) SMTG_OVERRIDE
 
virtual ParamValue normalizedParamToPlain (ParamID tag, ParamValue valueNormalized) SMTG_OVERRIDE
 
virtual ParamValue plainParamToNormalized (ParamID tag, ParamValue plainValue) SMTG_OVERRIDE
 
virtual ParamValue getParamNormalized (ParamID tag) SMTG_OVERRIDE
 
virtual tresult setParamNormalized (ParamID tag, ParamValue value) SMTG_OVERRIDE
 
virtual tresult setComponentHandler (IComponentHandler *handler) SMTG_OVERRIDE
 
virtual IPlugViewcreateView (FIDString) SMTG_OVERRIDE
 
virtual tresult setKnobMode (KnobMode mode) SMTG_OVERRIDE
 
virtual tresult openHelp (TBool) SMTG_OVERRIDE
 
virtual tresult openAboutBox (TBool) SMTG_OVERRIDE
 
virtual tresult beginEdit (ParamID tag)
 to be called before a serie of performEdit More...
 
virtual tresult performEdit (ParamID tag, ParamValue valueNormalized)
 will inform the host about the value change More...
 
virtual tresult endEdit (ParamID tag)
 to be called after a serie of performEdit More...
 
virtual tresult startGroupEdit ()
 calls IComponentHandler2::startGroupEdit() if host supports it More...
 
virtual tresult finishGroupEdit ()
 calls IComponentHandler2::finishGroupEdit() if host supports it More...
 
virtual void editorDestroyed (EditorView *)
 called from EditorView if it was destroyed More...
 
virtual void editorAttached (EditorView *)
 called from EditorView if it was attached to a parent More...
 
virtual void editorRemoved (EditorView *)
 called from EditorView if it was removed from a parent More...
 
virtual ParametergetParameterObject (ParamID tag)
 Gets for a given tag the parameter object. More...
 
virtual tresult getParameterInfoByTag (ParamID tag, ParameterInfo &info)
 Gets for a given tag the parameter information. More...
 
virtual tresult setDirty (TBool state)
 Calls IComponentHandler2::setDirty (state) if host supports it. More...
 
virtual tresult requestOpenEditor (FIDString name=ViewType::kEditor)
 Calls IComponentHandler2::requestOpenEditor (name) if host supports it. More...
 
IComponentHandlergetComponentHandler () const
 
- Public Member Functions inherited from ComponentBase
 ComponentBase ()
 
virtual ~ComponentBase ()
 
FUnknowngetHostContext ()
 Returns the hostContext (set by the host during initialize call). More...
 
IConnectionPointgetPeer ()
 Returns the peer for the messaging communication (you can only use IConnectionPoint::notify for communicate between peers, do not try to cast peerConnection. More...
 
IMessageallocateMessage ()
 Allocates a message instance (don't forget to release it). More...
 
tresult sendMessage (IMessage *message)
 Sends the given message to the peer. More...
 
tresult sendTextMessage (const char8 *text)
 Sends a simple text message to the peer (max 255 characters). More...
 
virtual tresult receiveText (const char8 *text)
 Receives a simple text message from the peer (max 255 characters). More...
 
tresult connect (IConnectionPoint *other) SMTG_OVERRIDE
 
tresult disconnect (IConnectionPoint *other) SMTG_OVERRIDE
 
tresult notify (IMessage *message) SMTG_OVERRIDE
 
- Public Member Functions inherited from FUnknown
virtual tresult queryInterface (const TUID _iid, void **obj)=0
 
virtual uint32 addRef ()=0
 
virtual uint32 release ()=0
 

Data Fields

void **obj SMTG_OVERRIDE
 
REFCOUNT_METHODS(EditController)
protected ProcessSetup 
processSetup
 
BusList audioInputs
 
BusList audioOutputs
 
BusList eventInputs
 
BusList eventOutputs
 
- Data Fields inherited from EditController
OBJ_METHODS(EditController,
ComponentBase)
DEFINE_INTERFACES
DEF_INTERFACE(IEditController)
DEF_INTERFACE(IEditController2)
END_DEFINE_INTERFACES(ComponentBase)
REFCOUNT_METHODS(ComponentBase)
protected IComponentHandler2
componentHandler2
 
ParameterContainer parameters
 
- Data Fields inherited from ComponentBase
OBJ_METHODS(ComponentBase,
FObject) DEFINE_INTERFACES
DEF_INTERFACE(IPluginBase)
DEF_INTERFACE(IConnectionPoint)
END_DEFINE_INTERFACES(FObject)
REFCOUNT_METHODS(FObject)
protected IConnectionPoint
peerConnection
 

Additional Inherited Members

- Static Public Member Functions inherited from EditController
static KnobMode getHostKnobMode ()
 return host knob mode More...
 
- Static Public Attributes inherited from EditController
static KnobMode hostKnobMode = kCircularMode
 
- 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 IEditController
static const FUID iid
 
- Static Public Attributes inherited from IEditController2
static const FUID iid
 
- Static Public Attributes inherited from IComponent
static const FUID iid
 
- Static Public Attributes inherited from IAudioProcessor
static const FUID iid
 

Detailed Description

Default implementation for a non-distributable Plug-in that combines processor and edit controller in one component.

This can be used as base class for a VST 3 effect implementation in case that the standard way of defining two separate components would cause too many implementation difficulties:

Constructor & Destructor Documentation

~SingleComponentEffect ( )
virtual

Member Function Documentation

tresult initialize ( FUnknown context)
virtual

Reimplemented from EditController.

tresult terminate ( )
virtual

Reimplemented from EditController.

virtual tresult getControllerClassId ( TUID  classId)
inlinevirtual

Implements IComponent.

virtual tresult setIoMode ( IoMode  mode)
inlinevirtual

Implements IComponent.

int32 getBusCount ( MediaType  type,
BusDirection  dir 
)
virtual

Implements IComponent.

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

Implements IComponent.

virtual tresult getRoutingInfo ( RoutingInfo inInfo,
RoutingInfo outInfo 
)
inlinevirtual

Implements IComponent.

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

Implements IComponent.

virtual tresult setActive ( TBool  state)
inlinevirtual

Implements IComponent.

virtual tresult setState ( IBStream state)
inlinevirtual

Implements IComponent.

virtual tresult getState ( IBStream state)
inlinevirtual

Implements IComponent.

AudioBus * addAudioInput ( const TChar name,
SpeakerArrangement  arr,
BusType  busType = kMain,
int32  flags = BusInfo::kDefaultActive 
)
AudioBus * addAudioOutput ( const TChar name,
SpeakerArrangement  arr,
BusType  busType = kMain,
int32  flags = BusInfo::kDefaultActive 
)
EventBus * addEventInput ( const TChar name,
int32  channels = 16,
BusType  busType = kMain,
int32  flags = BusInfo::kDefaultActive 
)
EventBus * addEventOutput ( const TChar name,
int32  channels = 16,
BusType  busType = kMain,
int32  flags = BusInfo::kDefaultActive 
)
tresult removeAudioBusses ( )
tresult removeEventBusses ( )
tresult removeAllBusses ( )
tresult setBusArrangements ( SpeakerArrangement inputs,
int32  numIns,
SpeakerArrangement outputs,
int32  numOuts 
)
virtual

Implements IAudioProcessor.

tresult getBusArrangement ( BusDirection  dir,
int32  index,
SpeakerArrangement arr 
)
virtual

Implements IAudioProcessor.

tresult canProcessSampleSize ( int32  symbolicSampleSize)
virtual

Implements IAudioProcessor.

virtual uint32 getLatencySamples ( )
inlinevirtual

Implements IAudioProcessor.

tresult setupProcessing ( ProcessSetup setup)
virtual

Implements IAudioProcessor.

virtual tresult setProcessing ( TBool  state)
inlinevirtual

Implements IAudioProcessor.

virtual tresult process ( ProcessData data)
inlinevirtual

Implements IAudioProcessor.

virtual uint32 getTailSamples ( )
inlinevirtual

Implements IAudioProcessor.

OBJ_METHODS ( SingleComponentEffect  ,
EditController   
) const

Field Documentation

void** obj SMTG_OVERRIDE
REFCOUNT_METHODS (EditController) protected ProcessSetup processSetup
BusList audioInputs
BusList audioOutputs
BusList eventInputs
BusList eventOutputs
Empty

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