VST 3 SDK VST 3.8
SDK for developing VST plug-in
Loading...
Searching...
No Matches

Extension of ProcessData. More...

#include <processdata.h>

+ Inheritance diagram for HostProcessData:

Public Member Functions

 HostProcessData ()=default
 
virtual ~HostProcessData () noexcept
 
bool prepare (IComponent &component, int32 bufferSamples, int32 _symbolicSampleSize)
 Prepare buffer containers for all busses.
 
void unprepare ()
 Remove bus buffers.
 
bool setChannelBuffers (BusDirection dir, int32 busIndex, Sample32 *sampleBuffer)
 Sets one sample buffer for all channels inside a bus.
 
bool setChannelBuffers64 (BusDirection dir, int32 busIndex, Sample64 *sampleBuffer)
 
bool setChannelBuffers (BusDirection dir, int32 busIndex, Sample32 *sampleBuffers[], int32 bufferCount)
 Sets individual sample buffers per channel inside a bus.
 
bool setChannelBuffers64 (BusDirection dir, int32 busIndex, Sample64 *sampleBuffers[], int32 bufferCount)
 
bool setChannelBuffer (BusDirection dir, int32 busIndex, int32 channelIndex, Sample32 *sampleBuffer)
 Sets one sample buffer for a given channel inside a bus.
 
bool setChannelBuffer64 (BusDirection dir, int32 busIndex, int32 channelIndex, Sample64 *sampleBuffer)
 
- Public Member Functions inherited from ProcessData
 ProcessData ()
 

Static Public Attributes

static constexpr uint64 kAllChannelsSilent
 

Protected Member Functions

int32 createBuffers (IComponent &component, AudioBusBuffers *&buffers, BusDirection dir, int32 bufferSamples)
 
void destroyBuffers (AudioBusBuffers *&buffers, int32 &busCount)
 
bool checkIfReallocationNeeded (IComponent &component, int32 bufferSamples, int32 _symbolicSampleSize) const
 
bool isValidBus (BusDirection dir, int32 busIndex) const
 

Protected Attributes

bool channelBufferOwner {false}
 

Additional Inherited Members

- Public Attributes inherited from ProcessData
int32 processMode
 
int32 symbolicSampleSize
 
int32 numSamples
 
int32 numInputs
 
int32 numOutputs
 
AudioBusBuffers * inputs
 
AudioBusBuffers * outputs
 
IParameterChanges * inputParameterChanges
 
IParameterChanges * outputParameterChanges
 
IEventList * inputEvents
 
IEventList * outputEvents
 
ProcessContext * processContext
 

Detailed Description

Extension of ProcessData.

Helps setting up the buffers for the process data structure for a component. When the prepare method is called with bufferSamples != 0 the buffer management is handled by this class. Otherwise the buffers need to be setup explicitly.

Constructor & Destructor Documentation

◆ HostProcessData()

HostProcessData ( )
default

◆ ~HostProcessData()

~HostProcessData ( )
virtualnoexcept

Member Function Documentation

◆ prepare()

bool prepare ( IComponent & component,
int32 bufferSamples,
int32 _symbolicSampleSize )

Prepare buffer containers for all busses.

If bufferSamples is not null buffers will be created.

◆ unprepare()

void unprepare ( )

Remove bus buffers.

◆ setChannelBuffers() [1/2]

bool setChannelBuffers ( BusDirection dir,
int32 busIndex,
Sample32 * sampleBuffer )
inline

Sets one sample buffer for all channels inside a bus.

◆ setChannelBuffers64() [1/2]

bool setChannelBuffers64 ( BusDirection dir,
int32 busIndex,
Sample64 * sampleBuffer )
inline

◆ setChannelBuffers() [2/2]

bool setChannelBuffers ( BusDirection dir,
int32 busIndex,
Sample32 * sampleBuffers[],
int32 bufferCount )
inline

Sets individual sample buffers per channel inside a bus.

◆ setChannelBuffers64() [2/2]

bool setChannelBuffers64 ( BusDirection dir,
int32 busIndex,
Sample64 * sampleBuffers[],
int32 bufferCount )
inline

◆ setChannelBuffer()

bool setChannelBuffer ( BusDirection dir,
int32 busIndex,
int32 channelIndex,
Sample32 * sampleBuffer )
inline

Sets one sample buffer for a given channel inside a bus.

◆ setChannelBuffer64()

bool setChannelBuffer64 ( BusDirection dir,
int32 busIndex,
int32 channelIndex,
Sample64 * sampleBuffer )
inline

◆ createBuffers()

int32 createBuffers ( IComponent & component,
AudioBusBuffers *& buffers,
BusDirection dir,
int32 bufferSamples )
protected

◆ destroyBuffers()

void destroyBuffers ( AudioBusBuffers *& buffers,
int32 & busCount )
protected

◆ checkIfReallocationNeeded()

bool checkIfReallocationNeeded ( IComponent & component,
int32 bufferSamples,
int32 _symbolicSampleSize ) const
protected

◆ isValidBus()

bool isValidBus ( BusDirection dir,
int32 busIndex ) const
inlineprotected

Member Data Documentation

◆ kAllChannelsSilent

uint64 kAllChannelsSilent
staticconstexpr
Initial value:
=
0xffffffffffffffffUL

◆ channelBufferOwner

bool channelBufferOwner {false}
protected
Empty

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