VAE - Virtual Audio Engine 1
Small Data Driven Audio Engine
vae::core::effect::FaustBase Class Referenceabstract

Interaface for faust DSP code. More...

#include <vae_faust_common.hpp>

Inheritance diagram for vae::core::effect::FaustBase:
Collaboration diagram for vae::core::effect::FaustBase:

Public Member Functions

virtual void buildUserInterface (UI *ui_interface)=0
 
virtual void instanceConstants (int samplingFreq)=0
 
virtual void metadata (Meta *m)=0
 
virtual void compute (int count, Sample **inputs, Sample **outputs)=0
 
void process (Effect &effect, const ScratchBuffer &in, ScratchBuffer &out) override
 
 FaustBase ()
 
virtual ~FaustBase ()
 
- Public Member Functions inherited from vae::core::effect::EffectBase
virtual void init (int samplingFreq)=0
 Init dsp and clear state. More...
 
virtual int getNumInputs ()=0
 
virtual int getNumOutputs ()=0
 
virtual void instanceClear ()=0
 Reset dsp state delay lines and so on. More...
 
 EffectBase ()
 
virtual ~EffectBase ()
 

Detailed Description

Interaface for faust DSP code.

Definition at line 49 of file vae_faust_common.hpp.

Constructor & Destructor Documentation

◆ FaustBase()

vae::core::effect::FaustBase::FaustBase ( )
inline

Definition at line 80 of file vae_faust_common.hpp.

80{ }

◆ ~FaustBase()

virtual vae::core::effect::FaustBase::~FaustBase ( )
inlinevirtual

Definition at line 81 of file vae_faust_common.hpp.

81{ }

Member Function Documentation

◆ buildUserInterface()

virtual void vae::core::effect::FaustBase::buildUserInterface ( UI ui_interface)
pure virtual

Implemented in vae::core::effect::VAEReverb.

Here is the caller graph for this function:

◆ compute()

virtual void vae::core::effect::FaustBase::compute ( int  count,
Sample **  inputs,
Sample **  outputs 
)
pure virtual
Here is the caller graph for this function:

◆ instanceConstants()

virtual void vae::core::effect::FaustBase::instanceConstants ( int  samplingFreq)
pure virtual

◆ metadata()

virtual void vae::core::effect::FaustBase::metadata ( Meta m)
pure virtual

◆ process()

void vae::core::effect::FaustBase::process ( Effect effect,
const ScratchBuffer in,
ScratchBuffer out 
)
inlineoverridevirtual

Implements vae::core::effect::EffectBase.

Definition at line 60 of file vae_faust_common.hpp.

60 {
61 // Update DSP values
62 {
63 VAE_PROFILER_SCOPE_NAMED("Update Faust DSP")
64 UI ui = { effect };
66 }
67
68 // Convert buffers
71 in.getRaw(ain);
72 out.getRaw(aout);
73
74 // Do the thing
75 {
76 VAE_PROFILER_SCOPE_NAMED("Faust DSP")
77 compute(in.validSize(), const_cast<Sample**>(ain), aout);
78 }
79 }
virtual void compute(int count, Sample **inputs, Sample **outputs)=0
virtual void buildUserInterface(UI *ui_interface)=0
constexpr unsigned char MaxChannels
Maximum channel count used to pre allocate buffers.
Definition: vae.hpp:268
float Sample
Default sample types used where ever possible, changing this means the engine needs to be recompiled,...
Definition: vae.hpp:32
#define VAE_PROFILER_SCOPE_NAMED(name)
Profiles a scope and names it.
Here is the call graph for this function:

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