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
ProcessDataSlicer Class Reference

Process Data Slicer. More...

#include <processdataslicer.h>

Public Member Functions

 ProcessDataSlicer (int32 inSliceSize=8)
 Constructor.
 
template<SymbolicSampleSizes SampleSize, typename DoProcessCallback >
void process (ProcessData &data, DoProcessCallback doProcessing) noexcept
 Process the data.
 
void stop () noexcept
 Stop the slice process.
 

Detailed Description

Process Data Slicer.

Cuts the VST process data into slices to process

Example:

tresult PLUGIN_API Processor::process (ProcessData& data)
{
ProcessDataSlicer slicer (32);
slicer.process<SymbolicSampleSizes::kSample32> (data, [&] (ProcessData& data) {
doSlicedProcessing (data); // data.numSamples <= 32
});
}

Constructor & Destructor Documentation

ProcessDataSlicer ( int32  inSliceSize = 8)
inline

Constructor.

Parameters
inSliceSiceslice size in samples

Member Function Documentation

void process ( ProcessData data,
DoProcessCallback  doProcessing 
)
inlinenoexcept

Process the data.

Template Parameters
SampleSizesample size 32 or 64 bit processing
DoProcessCallbackthe callback proc
Parameters
dataProcess data
doProcessingprocess callback
void stop ( )
inlinenoexcept

Stop the slice process.

If you want to break the slice processing early, you have to capture the slicer in the DoProcessCallback and call the stop method.

Empty

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