VST 3 SDK: IDataExchangeHandlerHost Struct Reference
Author: Steinberg

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

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

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

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Macros Groups Pages
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

virtual ~IDataExchangeHandlerHost | ( |  | ) |
| virtualdefaultnoexcept

## Member Function Documentation

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

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

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

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

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

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

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

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

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]

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

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

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

notification that a new queue was opened

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

notification that a queue was closed

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

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

Empty

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