Class thl::dsp::BaseProcessor#

class BaseProcessor#

Inheritance diagram for thl::dsp::BaseProcessor:

digraph { graph [bgcolor="#00000000"] node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2] edge [color="#1414CE"] "1" [label="thl::dsp::BaseProcessor" tooltip="thl::dsp::BaseProcessor" fillcolor="#BFBFBF"] "2" [label="thl::dsp::fx::ConstellationReverbImpl" tooltip="thl::dsp::fx::ConstellationReverbImpl"] "3" [label="thl::dsp::fx::IntellijelWavefolderImpl" tooltip="thl::dsp::fx::IntellijelWavefolderImpl"] "4" [label="thl::dsp::fx::StereoFDN" tooltip="thl::dsp::fx::StereoFDN"] "5" [label="thl::dsp::granular::GrainProcessorImpl" tooltip="thl::dsp::granular::GrainProcessorImpl"] "6" [label="thl::dsp::metronome::MetronomePlayerImpl" tooltip="thl::dsp::metronome::MetronomePlayerImpl"] "7" [label="thl::dsp::synth::SineProcessorImpl" tooltip="thl::dsp::synth::SineProcessorImpl"] "8" [label="thl::dsp::utils::LimiterImpl" tooltip="thl::dsp::utils::LimiterImpl"] "2" -> "1" [dir=forward tooltip="public-inheritance"] "3" -> "1" [dir=forward tooltip="public-inheritance"] "4" -> "1" [dir=forward tooltip="public-inheritance"] "5" -> "1" [dir=forward tooltip="public-inheritance"] "6" -> "1" [dir=forward tooltip="public-inheritance"] "7" -> "1" [dir=forward tooltip="public-inheritance"] "8" -> "1" [dir=forward tooltip="public-inheritance"] }

Subclassed by thl::dsp::fx::ConstellationReverbImpl, thl::dsp::fx::IntellijelWavefolderImpl, thl::dsp::fx::StereoFDN, thl::dsp::granular::GrainProcessorImpl, thl::dsp::metronome::MetronomePlayerImpl, thl::dsp::synth::SineProcessorImpl, thl::dsp::utils::LimiterImpl

Public Functions

virtual ~BaseProcessor() = default#
virtual void prepare(const double &sample_rate, const size_t &samples_per_block, const size_t &num_channels) = 0#
virtual void process(thl::core::BufferView buffer, uint32_t modulation_offset = 0) = 0#
void process_modulated(const thl::core::BufferView &buffer)#
void process_modulated(const thl::core::BufferView &buffer, std::span<const uint32_t> change_points)#

Protected Functions

inline virtual std::span<const uint32_t> get_change_points()#