VST 3 Examples VST 3.7
SDK for developing VST plug-in
Plug Class Reference

#include <plug.h>

+ Inheritance diagram for Plug:

Public Member Functions

 Plug ()
 
tresult initialize (FUnknown *context) SMTG_OVERRIDE
 Called at first after constructor. More...
 
tresult process (ProcessData &data) SMTG_OVERRIDE
 Here we go...the process call. More...
 
tresult setState (IBStream *state) SMTG_OVERRIDE
 For persistence. More...
 
tresult getState (IBStream *state) SMTG_OVERRIDE
 
- Public Member Functions inherited from AudioEffect
 AudioEffect ()
 
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)
 
AudioBusgetAudioInput (int32 index)
 
AudioBusgetAudioOutput (int32 index)
 
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)
 
EventBusgetEventInput (int32 index)
 
EventBusgetEventOutput (int32 index)
 
tresult setBusArrangements (SpeakerArrangement *inputs, int32 numIns, SpeakerArrangement *outputs, int32 numOuts) SMTG_OVERRIDE
 
tresult getBusArrangement (BusDirection dir, int32 busIndex, SpeakerArrangement &arr) SMTG_OVERRIDE
 
tresult canProcessSampleSize (int32 symbolicSampleSize) SMTG_OVERRIDE
 
uint32 getLatencySamples () SMTG_OVERRIDE
 
tresult setupProcessing (ProcessSetup &setup) SMTG_OVERRIDE
 
tresult setProcessing (TBool state) SMTG_OVERRIDE
 
tresult process (ProcessData &data) SMTG_OVERRIDE
 
uint32 getTailSamples () SMTG_OVERRIDE
 
uint32 getProcessContextRequirements () SMTG_OVERRIDE
 
- Public Member Functions inherited from Component
 Component ()
 
void setControllerClass (const FUID &cid)
 
void setControllerClass (const TUID &cid)
 
tresult removeAudioBusses ()
 
tresult removeEventBusses ()
 
tresult renameBus (MediaType type, BusDirection dir, int32 index, const String128 newName)
 
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
 
BusListgetBusList (MediaType type, BusDirection dir)
 
tresult removeAllBusses ()
 
- Public Member Functions inherited from ComponentBase
 ComponentBase ()
 
 ~ComponentBase () override
 
FUnknowngetHostContext () const
 
IConnectionPointgetPeer () const
 
IMessageallocateMessage () const
 
tresult sendMessage (IMessage *message) const
 
tresult sendTextMessage (const char8 *text) const
 
tresult sendMessageID (const char8 *messageID) const
 
virtual tresult receiveText (const char8 *text)
 
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
 
virtual tresult setBusArrangements (SpeakerArrangement *inputs, int32 numIns, SpeakerArrangement *outputs, int32 numOuts)=0
 
virtual tresult getBusArrangement (BusDirection dir, int32 index, SpeakerArrangement &arr)=0
 
virtual tresult canProcessSampleSize (int32 symbolicSampleSize)=0
 
virtual uint32 getLatencySamples ()=0
 
virtual tresult setupProcessing (ProcessSetup &setup)=0
 
virtual tresult setProcessing (TBool state)=0
 
virtual tresult process (ProcessData &data)=0
 
virtual uint32 getTailSamples ()=0
 
virtual uint32 getProcessContextRequirements ()=0
 

Static Public Member Functions

static FUnknowncreateInstance (void *)
 

Protected Attributes

double mLastController {0}
 
double mLastProgramChange {0}
 
double mLastAftertouch {0}
 
double mLastPolyPressure {0}
 
double mLastPitchBend {0}
 
uint8 mChannel {0}
 
uint8 mControllerNum {11}
 
uint8 mPolyPressureKey {36}
 
bool bBypass {false}
 

Additional Inherited Members

- Public Types inherited from IProcessContextRequirements
enum  Flags
 
- Public Attributes inherited from AudioEffect
OBJ_METHODS(AudioEffect, Component) DEFINE_INTERFACES DEF_INTERFACE(IAudioProcessor) DEF_INTERFACE(IProcessContextRequirements) END_DEFINE_INTERFACES(Component) REFCOUNT_METHODS(Component) protected ProcessContextRequirements processContextRequirements
 
- Public Attributes inherited from Component
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< IConnectionPointpeerConnection
 
- Public Attributes inherited from IProcessContextRequirements
 kNeedSystemTime
 
 kNeedContinousTimeSamples
 
 kNeedProjectTimeMusic
 
 kNeedBarPositionMusic
 
 kNeedCycleMusic
 
 kNeedSamplesToNextClock
 
 kNeedTempo
 
 kNeedTimeSignature
 
 kNeedChord
 
 kNeedFrameRate
 
 kNeedTransportState
 
- 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
 
- Static Public Attributes inherited from IAudioProcessor
static const FUID iid
 
- Static Public Attributes inherited from IProcessContextRequirements
static const FUID iid
 

Constructor & Destructor Documentation

◆ Plug()

Plug ( )

Member Function Documentation

◆ createInstance()

static FUnknown * createInstance ( void *  )
inlinestatic

◆ initialize()

tresult initialize ( FUnknown context)
virtual

Called at first after constructor.

Reimplemented from Component.

◆ process()

tresult process ( ProcessData data)
virtual

Here we go...the process call.

Reimplemented from AudioEffect.

◆ setState()

tresult setState ( IBStream state)
virtual

For persistence.

Reimplemented from Component.

◆ getState()

tresult getState ( IBStream state)
virtual

Reimplemented from Component.

Member Data Documentation

◆ mLastController

double mLastController {0}
protected

◆ mLastProgramChange

double mLastProgramChange {0}
protected

◆ mLastAftertouch

double mLastAftertouch {0}
protected

◆ mLastPolyPressure

double mLastPolyPressure {0}
protected

◆ mLastPitchBend

double mLastPitchBend {0}
protected

◆ mChannel

uint8 mChannel {0}
protected

◆ mControllerNum

uint8 mControllerNum {11}
protected

◆ mPolyPressureKey

uint8 mPolyPressureKey {36}
protected

◆ bBypass

bool bBypass {false}
protected
Empty

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