JUCE
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
dsp::ProcessContextReplacing< ContextSampleType > Struct Template Reference

Contains context information that is passed into an algorithm's process method. More...

Public Types

using SampleType = ContextSampleType
 The type of a single sample (which may be a vector if multichannel). More...
 
using AudioBlockType = AudioBlock< SampleType >
 The type of audio block that this context handles. More...
 
using ConstAudioBlockType = AudioBlock< const SampleType >
 

Public Member Functions

 ProcessContextReplacing (AudioBlockType &block) noexcept
 Creates a ProcessContextReplacing that uses the given audio block. More...
 
 ProcessContextReplacing (const ProcessContextReplacing &)=default
 
 ProcessContextReplacing (ProcessContextReplacing &&)=default
 
const ConstAudioBlockTypegetInputBlock () const noexcept
 Returns the audio block to use as the input to a process function. More...
 
AudioBlockTypegetOutputBlock () const noexcept
 Returns the audio block to use as the output to a process function. More...
 

Static Public Member Functions

static constexpr bool usesSeparateInputAndOutputBlocks ()
 All process context classes will define this constant method so that templated code can determine whether the input and output blocks refer to the same buffer, or to two different ones. More...
 

Public Attributes

bool isBypassed = false
 If set to true, then a processor's process() method is expected to do whatever is appropriate for it to be in a bypassed state. More...
 

Detailed Description

template<typename ContextSampleType>
struct dsp::ProcessContextReplacing< ContextSampleType >

Contains context information that is passed into an algorithm's process method.

This context is intended for use in situations where a single block is being used for both the input and output, so it will return the same object for both its getInputBlock() and getOutputBlock() methods.

See also
ProcessContextNonReplacing

Member Typedef Documentation

◆ SampleType

template<typename ContextSampleType>
using dsp::ProcessContextReplacing< ContextSampleType >::SampleType = ContextSampleType

The type of a single sample (which may be a vector if multichannel).

◆ AudioBlockType

template<typename ContextSampleType>
using dsp::ProcessContextReplacing< ContextSampleType >::AudioBlockType = AudioBlock<SampleType>

The type of audio block that this context handles.

◆ ConstAudioBlockType

template<typename ContextSampleType>
using dsp::ProcessContextReplacing< ContextSampleType >::ConstAudioBlockType = AudioBlock<const SampleType>

Constructor & Destructor Documentation

◆ ProcessContextReplacing() [1/3]

template<typename ContextSampleType>
dsp::ProcessContextReplacing< ContextSampleType >::ProcessContextReplacing ( AudioBlockType block)
noexcept

Creates a ProcessContextReplacing that uses the given audio block.

Note that the caller must not delete the block while it is still in use by this object!

◆ ProcessContextReplacing() [2/3]

template<typename ContextSampleType>
dsp::ProcessContextReplacing< ContextSampleType >::ProcessContextReplacing ( const ProcessContextReplacing< ContextSampleType > &  )
default

◆ ProcessContextReplacing() [3/3]

template<typename ContextSampleType>
dsp::ProcessContextReplacing< ContextSampleType >::ProcessContextReplacing ( ProcessContextReplacing< ContextSampleType > &&  )
default

Member Function Documentation

◆ getInputBlock()

template<typename ContextSampleType>
const ConstAudioBlockType& dsp::ProcessContextReplacing< ContextSampleType >::getInputBlock ( ) const
noexcept

Returns the audio block to use as the input to a process function.

◆ getOutputBlock()

template<typename ContextSampleType>
AudioBlockType& dsp::ProcessContextReplacing< ContextSampleType >::getOutputBlock ( ) const
noexcept

Returns the audio block to use as the output to a process function.

◆ usesSeparateInputAndOutputBlocks()

template<typename ContextSampleType>
static constexpr bool dsp::ProcessContextReplacing< ContextSampleType >::usesSeparateInputAndOutputBlocks ( )
static

All process context classes will define this constant method so that templated code can determine whether the input and output blocks refer to the same buffer, or to two different ones.

Member Data Documentation

◆ isBypassed

template<typename ContextSampleType>
bool dsp::ProcessContextReplacing< ContextSampleType >::isBypassed = false

If set to true, then a processor's process() method is expected to do whatever is appropriate for it to be in a bypassed state.

Referenced by dsp::ProcessorChain< Processors >::process().


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