LMMS
Loading...
Searching...
No Matches
juce::HostBufferMapper Class Reference

#include <juce_VST3Common.h>

Public Member Functions

void prepare (std::vector< ChannelMapping > arrangements)
template<typename FloatType>
Steinberg::Vst::AudioBusBuffersgetVst3LayoutForJuceBuffer (AudioBuffer< FloatType > &source)

Private Types

template<typename FloatType>
using Bus = std::vector<FloatType*>
template<typename FloatType>
using BusMap = std::vector<Bus<FloatType>>

Private Member Functions

template<typename FloatType>
void associateBufferTo (Steinberg::Vst::AudioBusBuffers &vstBuffers, Bus< FloatType > &bus, AudioBuffer< FloatType > &buffer, const ChannelMapping &busMap, int channelStartOffset) const
auto & get (detail::Tag< float >)
auto & get (detail::Tag< double >)

Static Private Member Functions

static void assignRawPointer (Steinberg::Vst::AudioBusBuffers &vstBuffers, float **raw)
static void assignRawPointer (Steinberg::Vst::AudioBusBuffers &vstBuffers, double **raw)

Private Attributes

BusMap< float > floatBusMap
BusMap< double > doubleBusMap
std::vector< Steinberg::Vst::AudioBusBuffersbusBuffers
std::vector< ChannelMappingmappings

Member Typedef Documentation

◆ Bus

template<typename FloatType>
using juce::HostBufferMapper::Bus = std::vector<FloatType*>
private

◆ BusMap

template<typename FloatType>
using juce::HostBufferMapper::BusMap = std::vector<Bus<FloatType>>
private

Member Function Documentation

◆ assignRawPointer() [1/2]

void juce::HostBufferMapper::assignRawPointer ( Steinberg::Vst::AudioBusBuffers & vstBuffers,
double ** raw )
inlinestaticprivate

◆ assignRawPointer() [2/2]

void juce::HostBufferMapper::assignRawPointer ( Steinberg::Vst::AudioBusBuffers & vstBuffers,
float ** raw )
inlinestaticprivate

◆ associateBufferTo()

template<typename FloatType>
void juce::HostBufferMapper::associateBufferTo ( Steinberg::Vst::AudioBusBuffers & vstBuffers,
Bus< FloatType > & bus,
AudioBuffer< FloatType > & buffer,
const ChannelMapping & busMap,
int channelStartOffset ) const
inlineprivate

◆ get() [1/2]

auto & juce::HostBufferMapper::get ( detail::Tag< double > )
inlineprivate

◆ get() [2/2]

auto & juce::HostBufferMapper::get ( detail::Tag< float > )
inlineprivate

◆ getVst3LayoutForJuceBuffer()

template<typename FloatType>
Steinberg::Vst::AudioBusBuffers * juce::HostBufferMapper::getVst3LayoutForJuceBuffer ( AudioBuffer< FloatType > & source)
inline

◆ prepare()

void juce::HostBufferMapper::prepare ( std::vector< ChannelMapping > arrangements)
inline

Member Data Documentation

◆ busBuffers

std::vector<Steinberg::Vst::AudioBusBuffers> juce::HostBufferMapper::busBuffers
private

◆ doubleBusMap

BusMap<double> juce::HostBufferMapper::doubleBusMap
private

◆ floatBusMap

BusMap<float> juce::HostBufferMapper::floatBusMap
private

◆ mappings

std::vector<ChannelMapping> juce::HostBufferMapper::mappings
private

The documentation for this class was generated from the following file: