VST 3 SDK  VST 3.7
SDK for developing VST plug-in
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Macros Groups Pages

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 ( )
default
~HostProcessData ( )
virtualnoexcept

Member Function Documentation

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

Prepare buffer containers for all busses.

If bufferSamples is not null buffers will be created.

void unprepare ( )

Remove bus buffers.

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

Sets one sample buffer for all channels inside a bus.

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

Sets individual sample buffers per channel inside a bus.

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

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

bool setChannelBuffer64 ( BusDirection  dir,
int32  busIndex,
int32  channelIndex,
Sample64 *  sampleBuffer 
)
inline
int32 createBuffers ( IComponent &  component,
AudioBusBuffers *&  buffers,
BusDirection  dir,
int32  bufferSamples 
)
protected
void destroyBuffers ( AudioBusBuffers *&  buffers,
int32 &  busCount 
)
protected
bool checkIfReallocationNeeded ( IComponent &  component,
int32  bufferSamples,
int32  _symbolicSampleSize 
) const
protected
bool isValidBus ( BusDirection  dir,
int32  busIndex 
) const
inlineprotected

Member Data Documentation

constexpr uint64 kAllChannelsSilent
static
Initial value:
=
0xffffffffffffffffUL
bool channelBufferOwner {false}
protected
Empty

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