VST 3 Examples VST 3.6.11 SDK for developing VST Plug-in

- Main Page
- Related Pages
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Macros Groups Pages
Protected Member Functions | Protected Attributes | List of all members
BaseProcessor Class Referenceabstract

`#include <mdaBaseProcessor.h>`

Inheritance diagram for BaseProcessor:

## Protected Member Functions
| BaseProcessor ()
| ~BaseProcessor ()
virtual void | doProcessing (ProcessData &data)=0
virtual bool | bypassProcessing (ProcessData &data)
virtual void | processEvents (IEventList *)
virtual void | checkSilence (ProcessData &data)
virtual void | setBypass (bool state, int32 sampleOffset)
virtual bool | processParameterChanges (IParameterChanges *changes)
virtual void | setParameter (ParamID index, ParamValue newValue, int32 sampleOffset)
virtual void | allocParameters (int32 numParams)
virtual void | recalculate ()
virtual bool | hasProgram () const
virtual uint32 | getCurrentProgram () const
virtual void | setCurrentProgram (uint32 val)
virtual void | setCurrentProgramNormalized (ParamValue val)
bool | isBypassed () const
double | getSampleRate () const
tresult | process (ProcessData &data) SMTG_OVERRIDE
tresult | setupProcessing (ProcessSetup &setup) SMTG_OVERRIDE
tresult | setActive (TBool state) SMTG_OVERRIDE
tresult | setBusArrangements (SpeakerArrangement *inputs, int32 numIns, SpeakerArrangement *outputs, int32 numOuts) SMTG_OVERRIDE
tresult | setState (IBStream *state) SMTG_OVERRIDE
tresult | getState (IBStream *state) SMTG_OVERRIDE

## Protected Attributes
ParamValue * | params
uint32 | numParams
int32 | bypassRamp
float * | bypassBuffer0
float * | bypassBuffer1
bool | bypassState

## Additional Inherited Members
Public Member Functions inherited from AudioEffect
| AudioEffect ()
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)
AudioBus * | getAudioInput (int32 index)
AudioBus * | getAudioOutput (int32 index)
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)
EventBus * | getEventInput (int32 index)
EventBus * | getEventOutput (int32 index)
tresult | getBusArrangement (BusDirection dir, int32 busIndex, SpeakerArrangement &arr) SMTG_OVERRIDE
tresult | canProcessSampleSize (int32 symbolicSampleSize) SMTG_OVERRIDE
uint32 | getLatencySamples () SMTG_OVERRIDE
tresult | setProcessing (TBool state) SMTG_OVERRIDE
uint32 | getTailSamples () SMTG_OVERRIDE
| Component ()
void | setControllerClass (const FUID &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 | initialize (FUnknown *context) SMTG_OVERRIDE
tresult | terminate () SMTG_OVERRIDE
BusList * | getBusList (MediaType type, BusDirection dir)
tresult | removeAllBusses ()
| ComponentBase ()
virtual | ~ComponentBase ()
FUnknown * | getHostContext ()
IConnectionPoint * | getPeer ()
IMessage * | allocateMessage ()
tresult | sendMessage (IMessage *message)
tresult | sendTextMessage (const char8 *text)
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
Public Member Functions inherited from FUnknown
virtual tresult | queryInterface (const TUID _iid, void **obj)=0
virtual uint32 | addRef ()=0
virtual uint32 | release ()=0
Public Attributes inherited from AudioEffect
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
OBJ_METHODS(ComponentBase, FObject) DEFINE_INTERFACES DEF_INTERFACE(IPluginBase) DEF_INTERFACE(IConnectionPoint) END_DEFINE_INTERFACES(FObject) REFCOUNT_METHODS(FObject) protected IConnectionPoint * | peerConnection
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

## Constructor & Destructor Documentation

BaseProcessor | ( |  | ) |
| protected

~BaseProcessor | ( |  | ) |
| protected

## Member Function Documentation

virtual void doProcessing | ( | ProcessData & | data | ) |
| protected pure virtual

Implemented in DX10Processor, AmbienceProcessor, ComboProcessor, DeEsserProcessor, DegradeProcessor, DelayProcessor, DetuneProcessor, DitherProcessor, DubDelayProcessor, DynamicsProcessor, EPianoProcessor, ImageProcessor, JX10Processor, LeslieProcessor, LimiterProcessor, LoudnessProcessor, MultiBandProcessor, OverdriveProcessor, PianoProcessor, RePsychoProcessor, RezFilterProcessor, RingModProcessor, RoundPanProcessor, ShepardProcessor, SpecMeterProcessor, SplitterProcessor, StereoProcessor, SubSynthProcessor, TalkBoxProcessor, TestToneProcessor, ThruZeroProcessor, TrackerProcessor, BandistoProcessor, and BeatBoxProcessor.

bool bypassProcessing | ( | ProcessData & | data | ) |
| protected virtual

Reimplemented in SpecMeterProcessor.

virtual void processEvents | ( | IEventList * |  | ) |
| inline protected virtual

Reimplemented in EPianoProcessor, DX10Processor, PianoProcessor, and JX10Processor.

void checkSilence | ( | ProcessData & | data | ) |
| protected virtual

Reimplemented in DX10Processor, DynamicsProcessor, LimiterProcessor, and LoudnessProcessor.

void setBypass | ( | bool | state,
|  | int32 | sampleOffset
| ) |  |
| protected virtual

bool processParameterChanges | ( | IParameterChanges * | changes | ) |
| protected virtual

void setParameter | ( | ParamID | index,
|  | ParamValue | newValue,
|  | int32 | sampleOffset
| ) |  |
| protected virtual

Reimplemented in EPianoProcessor, DX10Processor, PianoProcessor, and JX10Processor.

void allocParameters | ( | int32 | numParams | ) |
| protected virtual

virtual void recalculate | ( |  | ) |
| inline protected virtual

Reimplemented in EPianoProcessor, DX10Processor, PianoProcessor, JX10Processor, DynamicsProcessor, LimiterProcessor, LoudnessProcessor, SpecMeterProcessor, TrackerProcessor, AmbienceProcessor, ComboProcessor, DeEsserProcessor, DegradeProcessor, DelayProcessor, DetuneProcessor, DitherProcessor, DubDelayProcessor, ImageProcessor, LeslieProcessor, MultiBandProcessor, OverdriveProcessor, RePsychoProcessor, RezFilterProcessor, RingModProcessor, RoundPanProcessor, ShepardProcessor, SplitterProcessor, StereoProcessor, SubSynthProcessor, TalkBoxProcessor, TestToneProcessor, ThruZeroProcessor, BandistoProcessor, and BeatBoxProcessor.

virtual bool hasProgram | ( |  | ) | const
| inline protected virtual

Reimplemented in DX10Processor, EPianoProcessor, JX10Processor, and PianoProcessor.

virtual uint32 getCurrentProgram | ( |  | ) | const
| inline protected virtual

Reimplemented in DX10Processor, EPianoProcessor, JX10Processor, and PianoProcessor.

virtual void setCurrentProgram | ( | uint32 | val | ) |
| inline protected virtual

Reimplemented in DX10Processor, EPianoProcessor, JX10Processor, and PianoProcessor.

virtual void setCurrentProgramNormalized | ( | ParamValue | val | ) |
| inline protected virtual

Reimplemented in DX10Processor, EPianoProcessor, JX10Processor, and PianoProcessor.

bool isBypassed | ( |  | ) | const
| inline protected

double getSampleRate | ( |  | ) | const
| inline protected

tresult process | ( | ProcessData & | data | ) |
| protected virtual

Reimplemented from AudioEffect.

tresult setupProcessing | ( | ProcessSetup & | setup | ) |
| protected virtual

Reimplemented from AudioEffect.

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

Reimplemented from AudioEffect.

Reimplemented in DX10Processor, ComboProcessor, DeEsserProcessor, DegradeProcessor, DelayProcessor, DetuneProcessor, DitherProcessor, DubDelayProcessor, DynamicsProcessor, EPianoProcessor, ImageProcessor, JX10Processor, LeslieProcessor, LimiterProcessor, LoudnessProcessor, MultiBandProcessor, OverdriveProcessor, PianoProcessor, RePsychoProcessor, RezFilterProcessor, RingModProcessor, RoundPanProcessor, ShepardProcessor, SpecMeterProcessor, SplitterProcessor, StereoProcessor, SubSynthProcessor, TalkBoxProcessor, TestToneProcessor, ThruZeroProcessor, TrackerProcessor, and BeatBoxProcessor.

tresult setBusArrangements | ( | SpeakerArrangement * | inputs,
|  | int32 | numIns,
|  | SpeakerArrangement * | outputs,
|  | int32 | numOuts
| ) |  |
| protected virtual

Reimplemented from AudioEffect.

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

Reimplemented from AudioEffect.

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

Reimplemented from AudioEffect.

## Member Data Documentation

ParamValue* params
| protected

uint32 numParams
| protected

int32 bypassRamp
| protected

float* bypassBuffer0
| protected

float* bypassBuffer1
| protected

bool bypassState
| protected

Empty

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