VST 3 SDK: IDataExchangeHandlerHost Struct Reference
Author: Steinberg

VST 3 SDK VST 3.8 SDK for developing VST plug-in

Loading...
Searching...
No Matches
Public Member Functions | List of all members
IDataExchangeHandlerHost Struct Referenceabstract

`#include <hostdataexchangehandler.h>`

## Public Member Functions
virtual | ~IDataExchangeHandlerHost () noexcept=default
virtual bool | isProcessorInactive (IAudioProcessor *processor)=0
| return if the audioprocessor is in an inactive state [main thread]
virtual IPtr< IDataExchangeReceiver > | findDataExchangeReceiver (IAudioProcessor *processor)=0
| return the data exchange receiver (most likely the edit controller) for the processor [main thread]
virtual bool | allowAllocateSize (uint32 blockSize, uint32 numBlocks, uint32 alignment)=0
| check if the requested queue size should be allowed [main thread]
virtual bool | isMainThread ()=0
| check if this call is made on the main thread [any thread]
virtual bool | allowQueueListResize (uint32 newNumQueues)=0
| check if the number of queues can be changed in this moment.
virtual void | numberOfQueuesChanged (uint32 openMainThreadQueues, uint32 openBackgroundThreadQueues)=0
| notification that the number of open queues changed [main thread]
virtual void | onQueueOpened (IAudioProcessor *processor, DataExchangeQueueID queueID, bool dispatchOnMainThread)=0
| notification that a new queue was opened
virtual void | onQueueClosed (IAudioProcessor *processor, DataExchangeQueueID queueID, bool dispatchOnMainThread)=0
| notification that a queue was closed
virtual void | newBlockReadyToBeSend (DataExchangeQueueID queueID)=0
| notification that a new block is ready to be send [process thread]

## Constructor & Destructor Documentation

## ◆ ~IDataExchangeHandlerHost()

virtual ~IDataExchangeHandlerHost | ( |  | ) |
| virtualdefaultnoexcept

## Member Function Documentation

## ◆ isProcessorInactive()

virtual bool isProcessorInactive | ( | IAudioProcessor * | processor | ) |
| pure virtual

return if the audioprocessor is in an inactive state [main thread]

## ◆ findDataExchangeReceiver()

virtual IPtr< IDataExchangeReceiver > findDataExchangeReceiver | ( | IAudioProcessor * | processor | ) |
| pure virtual

return the data exchange receiver (most likely the edit controller) for the processor [main thread]

## ◆ allowAllocateSize()

virtual bool allowAllocateSize | ( | uint32 | blockSize,
|  | uint32 | numBlocks,
|  | uint32 | alignment )
| pure virtual

check if the requested queue size should be allowed [main thread]

## ◆ isMainThread()

virtual bool isMainThread | ( |  | ) |
| pure virtual

check if this call is made on the main thread [any thread]

## ◆ allowQueueListResize()

virtual bool allowQueueListResize | ( | uint32 | newNumQueues | ) |
| pure virtual

check if the number of queues can be changed in this moment.

this is only allowed if no other thread can access the IDataExchangeManagerHost in this moment [main thread]

## ◆ numberOfQueuesChanged()

virtual void numberOfQueuesChanged | ( | uint32 | openMainThreadQueues,
|  | uint32 | openBackgroundThreadQueues )
| pure virtual

notification that the number of open queues changed [main thread]

## ◆ onQueueOpened()

virtual void onQueueOpened | ( | IAudioProcessor * | processor,
|  | DataExchangeQueueID | queueID,
|  | bool | dispatchOnMainThread )
| pure virtual

notification that a new queue was opened

## ◆ onQueueClosed()

virtual void onQueueClosed | ( | IAudioProcessor * | processor,
|  | DataExchangeQueueID | queueID,
|  | bool | dispatchOnMainThread )
| pure virtual

notification that a queue was closed

## ◆ newBlockReadyToBeSend()

virtual void newBlockReadyToBeSend | ( | DataExchangeQueueID | queueID | ) |
| pure virtual

notification that a new block is ready to be send [process thread]

Empty

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