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

Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
HostCheckerProcessor Class Reference

`#include <hostcheckerprocessor.h>`

Inheritance diagram for HostCheckerProcessor:

## Public Member Functions
| HostCheckerProcessor ()
tresult | initialize (FUnknown *context) SMTG_OVERRIDE
tresult | terminate () SMTG_OVERRIDE
tresult | process (ProcessData &data) SMTG_OVERRIDE
tresult | setupProcessing (ProcessSetup &setup) SMTG_OVERRIDE
tresult | setActive (TBool state) SMTG_OVERRIDE
tresult | notify (IMessage *message) SMTG_OVERRIDE
uint32 | getLatencySamples () SMTG_OVERRIDE
uint32 | getTailSamples () SMTG_OVERRIDE
tresult | canProcessSampleSize (int32 symbolicSampleSize) SMTG_OVERRIDE
tresult | setProcessing (TBool state) SMTG_OVERRIDE
tresult | setState (IBStream *state) SMTG_OVERRIDE
tresult | getState (IBStream *state) SMTG_OVERRIDE
tresult | getRoutingInfo (RoutingInfo &inInfo, RoutingInfo &outInfo) SMTG_OVERRIDE
tresult | activateBus (MediaType type, BusDirection dir, int32 index, TBool state) SMTG_OVERRIDE
tresult | setBusArrangements (SpeakerArrangement *inputs, int32 numIns, SpeakerArrangement *outputs, int32 numOuts) SMTG_OVERRIDE
tresult | getBusArrangement (BusDirection dir, int32 busIndex, SpeakerArrangement &arr) SMTG_OVERRIDE
tresult | connect (IConnectionPoint *other) SMTG_OVERRIDE
tresult | disconnect (IConnectionPoint *other) SMTG_OVERRIDE
tresult | setAudioPresentationLatencySamples (BusDirection dir, int32 busIndex, uint32 latencyInSamples) SMTG_OVERRIDE
tresult | getPrefetchableSupport (PrefetchableSupport &prefetchable) SMTG_OVERRIDE
uint32 | getProcessContextRequirements () SMTG_OVERRIDE
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 | 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
BusList * | getBusList (MediaType type, BusDirection dir)
tresult | removeAllBusses ()
Public Member Functions inherited from ComponentBase
| ComponentBase ()
| ~ComponentBase () override
FUnknown * | getHostContext () const
IConnectionPoint * | getPeer () const
IMessage * | allocateMessage () 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
virtual tresult | setAudioPresentationLatencySamples (BusDirection dir, int32 busIndex, uint32 latencyInSamples)=0
virtual tresult | getPrefetchableSupport (PrefetchableSupport &prefetchable)=0

## Static Public Member Functions
static FUnknown * | createInstance (void *)

## Protected Member Functions
void | addLogEvent (Steinberg::int32 logId)
void | informLatencyChanged ()
void | sendLatencyChanged ()
void | addLogEventMessage (const LogEvent &logEvent)
void | sendLogEventMessage (const LogEvent &logEvent)
void | sendNowAllLogEvents ()
ProcessContext * | getCurrentExchangeData ()

## Protected Attributes
HostCheck | mHostCheck
BypassProcessor< Vst::Sample32 > | mBypassProcessorFloat
BypassProcessor< Vst::Sample64 > | mBypassProcessorDouble
DataExchangeBlock | mCurrentExchangeBlock {InvalidDataExchangeBlock}
float | mLastBlockMarkerValue {-0.5f}
int32 | mNumNoteOns {0}
uint32 | mLatency {0}
uint32 | mWantedLatency {0}
float | mGeneratePeaks {0.f}
float | mProcessingLoad {0.f}
State | mCurrentState {State::kUninitialized}
uint32 | mMinimumOfInputBufferCount {0}
uint32 | mMinimumOfOutputBufferCount {0}
TSamples | mLastContinuousProjectTimeSamples {kMinInt64}
TSamples | mLastProjectTimeSamples {kMinInt64}
int32 | mLastNumSamples {0}
uint32 | mLastState {0}
std::unique_ptr< ThreadChecker > | threadChecker {ThreadChecker::create ()}
Steinberg::Base::Thread::FLock | msgQueueLock
std::list< LogEvent * > | msgQueue
DataExchangeHandler * | dataExchangeHandler {nullptr}
int64 | mLastExchangeBlockSendSystemTime {0}
bool | mBypass {false}
bool | mSetActiveCalled {false}
bool | mCheckGetLatencyCall {true}
bool | mGetLatencyCalled {false}
bool | mGetLatencyCalledAfterSetActive {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< IConnectionPoint > | peerConnection
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
Static Public Attributes inherited from IAudioPresentationLatency
static const FUID | iid
Static Public Attributes inherited from IPrefetchableSupport
static const FUID | iid

## Constructor & Destructor Documentation

## ◆ HostCheckerProcessor()

HostCheckerProcessor | ( |  | ) |

## Member Function Documentation

## ◆ initialize()

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

Reimplemented from Component.

## ◆ terminate()

tresult terminate | ( |  | ) |
| virtual

Reimplemented from Component.

## ◆ process()

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

Reimplemented from AudioEffect.

## ◆ setupProcessing()

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

Reimplemented from AudioEffect.

## ◆ setActive()

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

Reimplemented from Component.

## ◆ notify()

tresult notify | ( | IMessage * | message | ) |
| virtual

Reimplemented from ComponentBase.

## ◆ getLatencySamples()

uint32 getLatencySamples | ( |  | ) |
| virtual

Reimplemented from AudioEffect.

## ◆ getTailSamples()

uint32 getTailSamples | ( |  | ) |
| virtual

Reimplemented from AudioEffect.

## ◆ canProcessSampleSize()

tresult canProcessSampleSize | ( | int32 | symbolicSampleSize | ) |
| virtual

Reimplemented from AudioEffect.

## ◆ setProcessing()

tresult setProcessing | ( | TBool | state | ) |
| virtual

Reimplemented from AudioEffect.

## ◆ setState()

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

Reimplemented from Component.

## ◆ getState()

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

Reimplemented from Component.

## ◆ getRoutingInfo()

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

Reimplemented from Component.

## ◆ activateBus()

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

Reimplemented from Component.

## ◆ setBusArrangements()

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

Reimplemented from AudioEffect.

## ◆ getBusArrangement()

tresult getBusArrangement | ( | BusDirection | dir,
|  | int32 | busIndex,
|  | SpeakerArrangement & | arr
| ) |  |
| virtual

Reimplemented from AudioEffect.

## ◆ createInstance()

static FUnknown * createInstance | ( | void * |  | ) |
| inline static

## ◆ connect()

tresult connect | ( | IConnectionPoint * | other | ) |
| virtual

Reimplemented from ComponentBase.

## ◆ disconnect()

tresult disconnect | ( | IConnectionPoint * | other | ) |
| virtual

Reimplemented from ComponentBase.

## ◆ setAudioPresentationLatencySamples()

tresult setAudioPresentationLatencySamples | ( | BusDirection | dir,
|  | int32 | busIndex,
|  | uint32 | latencyInSamples
| ) |  |
| virtual

Implements IAudioPresentationLatency.

## ◆ getPrefetchableSupport()

tresult getPrefetchableSupport | ( | PrefetchableSupport & | prefetchable | ) |
| virtual

Implements IPrefetchableSupport.

## ◆ getProcessContextRequirements()

uint32 getProcessContextRequirements | ( |  | ) |
| virtual

Reimplemented from AudioEffect.

## ◆ addLogEvent()

void addLogEvent | ( | Steinberg::int32 | logId | ) |
| protected

## ◆ informLatencyChanged()

void informLatencyChanged | ( |  | ) |
| protected

## ◆ sendLatencyChanged()

void sendLatencyChanged | ( |  | ) |
| protected

## ◆ addLogEventMessage()

void addLogEventMessage | ( | const LogEvent & | logEvent | ) |
| protected

## ◆ sendLogEventMessage()

void sendLogEventMessage | ( | const LogEvent & | logEvent | ) |
| protected

## ◆ sendNowAllLogEvents()

void sendNowAllLogEvents | ( |  | ) |
| protected

## ◆ getCurrentExchangeData()

ProcessContext * getCurrentExchangeData | ( |  | ) |
| protected

## Member Data Documentation

## ◆ mHostCheck

HostCheck mHostCheck
| protected

## ◆ mBypassProcessorFloat

BypassProcessor<Vst::Sample32> mBypassProcessorFloat
| protected

## ◆ mBypassProcessorDouble

BypassProcessor<Vst::Sample64> mBypassProcessorDouble
| protected

## ◆ mCurrentExchangeBlock

DataExchangeBlock mCurrentExchangeBlock {InvalidDataExchangeBlock}
| protected

## ◆ mLastBlockMarkerValue

float mLastBlockMarkerValue {-0.5f}
| protected

## ◆ mNumNoteOns

int32 mNumNoteOns {0}
| protected

## ◆ mLatency

uint32 mLatency {0}
| protected

## ◆ mWantedLatency

uint32 mWantedLatency {0}
| protected

## ◆ mGeneratePeaks

float mGeneratePeaks {0.f}
| protected

## ◆ mProcessingLoad

float mProcessingLoad {0.f}
| protected

## ◆ mCurrentState

State mCurrentState {State::kUninitialized}
| protected

## ◆ mMinimumOfInputBufferCount

uint32 mMinimumOfInputBufferCount {0}
| protected

## ◆ mMinimumOfOutputBufferCount

uint32 mMinimumOfOutputBufferCount {0}
| protected

## ◆ mLastContinuousProjectTimeSamples

TSamples mLastContinuousProjectTimeSamples {kMinInt64}
| protected

## ◆ mLastProjectTimeSamples

TSamples mLastProjectTimeSamples {kMinInt64}
| protected

## ◆ mLastNumSamples

int32 mLastNumSamples {0}
| protected

## ◆ mLastState

uint32 mLastState {0}
| protected

## ◆ threadChecker

std::unique_ptr<ThreadChecker> threadChecker {ThreadChecker::create ()}
| protected

## ◆ msgQueueLock

Steinberg::Base::Thread::FLock msgQueueLock
| protected

## ◆ msgQueue

std::list<LogEvent*> msgQueue
| protected

## ◆ dataExchangeHandler

DataExchangeHandler* dataExchangeHandler {nullptr}
| protected

## ◆ mLastExchangeBlockSendSystemTime

int64 mLastExchangeBlockSendSystemTime {0}
| protected

## ◆ mBypass

bool mBypass {false}
| protected

## ◆ mSetActiveCalled

bool mSetActiveCalled {false}
| protected

## ◆ mCheckGetLatencyCall

bool mCheckGetLatencyCall {true}
| protected

## ◆ mGetLatencyCalled

bool mGetLatencyCalled {false}
| protected

## ◆ mGetLatencyCalledAfterSetActive

bool mGetLatencyCalledAfterSetActive {false}
| protected

Empty

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