1#ifndef _VAE_EFFECTS_PROCESSOR
2#define _VAE_EFFECTS_PROCESSOR
4#include "../pod/vae_effect.hpp"
5#include "../pod/vae_mixer.hpp"
6#include "../dsp/vae_effect_base.hpp"
7#include "../vae_util.hpp"
9namespace vae {
namespace core {
bool resize(const Size length, uchar channels)
! Will not keep the contents! Resizes the buffer to the desired length and channel count.
uchar channels() const
Returns the amount of channels.
Size validSize() const
Returns the length of actually valid audio in the buffer.
void setValidSize(const Size v)
Set the amount of valid samples currently in the buffer This is mostly a convenience flag since the a...
void set(const T2 *samples, Size length, const uchar channel=0, const Size offsetDst=0)
Set a single channel from an array.
void mix(Effect &effect, ScratchBuffer &buffer)
ScratchBuffer mScratchBuffer
virtual void process(Effect &effect, const ScratchBuffer &in, ScratchBuffer &out)=0
virtual int getNumInputs()=0
virtual int getNumOutputs()=0
constexpr Size MaxBlock
Maximum block size.
constexpr unsigned char MaxChannels
Maximum channel count used to pre allocate buffers.
Contains Typedefinitions and basic structures use by the public API and internally.
effect::EffectBase * effect
References the DSP.
#define VAE_PROFILER_SCOPE_NAMED(name)
Profiles a scope and names it.
#define VAE_ASSERT(condition)