LMMS
Loading...
Searching...
No Matches
calf_plugins::filter_module_with_inertia< FilterClass, Metadata > Class Template Reference

#include <modules_filter.h>

Inheritance diagram for calf_plugins::filter_module_with_inertia< FilterClass, Metadata >:
calf_plugins::audio_module< Metadata > calf_plugins::frequency_response_line_graph calf_plugins::audio_module_iface calf_plugins::line_graph_iface

Public Types

typedef filter_module_with_inertia inertia_filter_module
 These are pointers to the ins, outs, params arrays in the main class.
Public Types inherited from calf_plugins::audio_module< Metadata >
typedef Metadata metadata_type

Public Member Functions

 filter_module_with_inertia ()
void calculate_filter ()
virtual void params_changed ()
 Called when params are changed (before processing).
void on_timer ()
void activate ()
 LADSPA-esque activate function, except it is called after ports are connected, not before.
void set_sample_rate (uint32_t sr)
 Set sample rate for the plugin.
void deactivate ()
 LADSPA-esque deactivate function.
uint32_t process (uint32_t offset, uint32_t numsamples, uint32_t inputs_mask, uint32_t outputs_mask)
 The audio processing loop; assumes numsamples <= MAX_SAMPLE_RUN, for larger buffers, call process_slice.
float freq_gain (int index, double freq) const
Public Member Functions inherited from calf_plugins::audio_module< Metadata >
 audio_module ()
void note_on (int channel, int note, int velocity)
 Handle MIDI Note On.
void note_off (int channel, int note, int velocity)
 Handle MIDI Note Off.
void program_change (int channel, int program)
 Handle MIDI Program Change.
void control_change (int channel, int controller, int value)
 Handle MIDI Control Change.
void pitch_bend (int channel, int value)
void channel_pressure (int channel, int value)
void execute (int cmd_no)
 Execute menu command with given number.
virtual char * configure (const char *key, const char *value)
 DSSI configure call.
void send_configures (send_configure_iface *sci)
 Send all understood configure vars (none by default).
int send_status_updates (send_updates_iface *sui, int last_serial)
 Send all supported status vars (none by default).
void params_reset ()
 Reset parameter values for epp:trigger type parameters (ones activated by oneshot push button instead of check box).
void post_instantiate (uint32_t)
 Called after instantiating (after all the feature pointers are set - including interfaces like progress_report_iface).
uint32_t message_run (const void *valid_ports, void *output_ports)
virtual void get_port_arrays (float **&ins_ptrs, float **&outs_ptrs, float **&params_ptrs)
 Return the array of input port pointers.
virtual const plugin_metadata_ifaceget_metadata_iface () const
 Return metadata object.
virtual void set_progress_report_iface (progress_report_iface *iface)
 Set the progress report interface to communicate progress to.
void zero_by_mask (uint32_t mask, uint32_t offset, uint32_t nsamples)
 utility function: zero port values if mask is 0
uint32_t process_slice (uint32_t offset, uint32_t end)
 utility function: call process, and if it returned zeros in output masks, zero out the relevant output port buffers
virtual const line_graph_ifaceget_line_graph_iface () const
virtual const phase_graph_ifaceget_phase_graph_iface () const
Public Member Functions inherited from calf_plugins::audio_module_iface
virtual ~audio_module_iface ()
Public Member Functions inherited from calf_plugins::frequency_response_line_graph
virtual bool get_gridline (int index, int subindex, int phase, float &pos, bool &vertical, std::string &legend, cairo_iface *context) const
virtual bool get_graph (int index, int subindex, int phase, float *data, int points, cairo_iface *context, int *mode) const
virtual bool get_layers (int index, int generation, unsigned int &layers) const
virtual std::string get_crosshair_label (int x, int y, int sx, int sy, float q, int dB, int name, int note, int cents) const
Public Member Functions inherited from calf_plugins::line_graph_iface
virtual bool get_moving (int index, int subindex, int &direction, float *data, int x, int y, int &offset, uint32_t &color) const
virtual bool get_dot (int index, int subindex, int phase, float &x, float &y, int &size, cairo_iface *context) const
virtual ~line_graph_iface ()
 Standard destructor to make compiler happy.

Public Attributes

dsp::inertia< dsp::exponential_rampinertia_cutoff
dsp::inertia< dsp::exponential_rampinertia_resonance
dsp::inertia< dsp::exponential_rampinertia_gain
dsp::once_per_n timer
bool is_active
volatile int last_generation
volatile int last_calculated_generation
dsp::bypass bypass
vumeters meters
Public Attributes inherited from calf_plugins::audio_module< Metadata >
float * ins [(Metadata::in_count !=0) ? Metadata::in_count :1]
float * outs [(Metadata::out_count !=0) ? Metadata::out_count :1]
float * params [Metadata::param_count]
bool questionable_data_reported_in
bool questionable_data_reported_out
progress_report_ifaceprogress_report
Public Attributes inherited from calf_plugins::frequency_response_line_graph
bool redraw_graph

Member Typedef Documentation

◆ inertia_filter_module

template<typename FilterClass, typename Metadata>
typedef filter_module_with_inertia calf_plugins::filter_module_with_inertia< FilterClass, Metadata >::inertia_filter_module

These are pointers to the ins, outs, params arrays in the main class.

Constructor & Destructor Documentation

◆ filter_module_with_inertia()

template<typename FilterClass, typename Metadata>
calf_plugins::filter_module_with_inertia< FilterClass, Metadata >::filter_module_with_inertia ( )
inline

Member Function Documentation

◆ activate()

template<typename FilterClass, typename Metadata>
void calf_plugins::filter_module_with_inertia< FilterClass, Metadata >::activate ( )
inlinevirtual

LADSPA-esque activate function, except it is called after ports are connected, not before.

Reimplemented from calf_plugins::audio_module< Metadata >.

Reimplemented in calf_plugins::filterclavier_audio_module.

◆ calculate_filter()

template<typename FilterClass, typename Metadata>
void calf_plugins::filter_module_with_inertia< FilterClass, Metadata >::calculate_filter ( )
inline

◆ deactivate()

template<typename FilterClass, typename Metadata>
void calf_plugins::filter_module_with_inertia< FilterClass, Metadata >::deactivate ( )
inlinevirtual

LADSPA-esque deactivate function.

Reimplemented from calf_plugins::audio_module< Metadata >.

Reimplemented in calf_plugins::filterclavier_audio_module.

◆ freq_gain()

template<typename FilterClass, typename Metadata>
float calf_plugins::filter_module_with_inertia< FilterClass, Metadata >::freq_gain ( int index,
double freq ) const
inlinevirtual

◆ on_timer()

template<typename FilterClass, typename Metadata>
void calf_plugins::filter_module_with_inertia< FilterClass, Metadata >::on_timer ( )
inline

◆ params_changed()

template<typename FilterClass, typename Metadata>
virtual void calf_plugins::filter_module_with_inertia< FilterClass, Metadata >::params_changed ( )
inlinevirtual

Called when params are changed (before processing).

Reimplemented from calf_plugins::audio_module< Metadata >.

Reimplemented in calf_plugins::filter_audio_module, and calf_plugins::filterclavier_audio_module.

◆ process()

template<typename FilterClass, typename Metadata>
uint32_t calf_plugins::filter_module_with_inertia< FilterClass, Metadata >::process ( uint32_t offset,
uint32_t numsamples,
uint32_t inputs_mask,
uint32_t outputs_mask )
inlinevirtual

The audio processing loop; assumes numsamples <= MAX_SAMPLE_RUN, for larger buffers, call process_slice.

Implements calf_plugins::audio_module_iface.

◆ set_sample_rate()

template<typename FilterClass, typename Metadata>
void calf_plugins::filter_module_with_inertia< FilterClass, Metadata >::set_sample_rate ( uint32_t sr)
inlinevirtual

Set sample rate for the plugin.

Reimplemented from calf_plugins::audio_module< Metadata >.

Reimplemented in calf_plugins::filterclavier_audio_module.

Member Data Documentation

◆ bypass

template<typename FilterClass, typename Metadata>
dsp::bypass calf_plugins::filter_module_with_inertia< FilterClass, Metadata >::bypass

◆ inertia_cutoff

template<typename FilterClass, typename Metadata>
dsp::inertia<dsp::exponential_ramp> calf_plugins::filter_module_with_inertia< FilterClass, Metadata >::inertia_cutoff

◆ inertia_gain

template<typename FilterClass, typename Metadata>
dsp::inertia<dsp::exponential_ramp> calf_plugins::filter_module_with_inertia< FilterClass, Metadata >::inertia_gain

◆ inertia_resonance

template<typename FilterClass, typename Metadata>
dsp::inertia<dsp::exponential_ramp> calf_plugins::filter_module_with_inertia< FilterClass, Metadata >::inertia_resonance

◆ is_active

template<typename FilterClass, typename Metadata>
bool calf_plugins::filter_module_with_inertia< FilterClass, Metadata >::is_active

◆ last_calculated_generation

template<typename FilterClass, typename Metadata>
volatile int calf_plugins::filter_module_with_inertia< FilterClass, Metadata >::last_calculated_generation

◆ last_generation

template<typename FilterClass, typename Metadata>
volatile int calf_plugins::filter_module_with_inertia< FilterClass, Metadata >::last_generation
mutable

◆ meters

template<typename FilterClass, typename Metadata>
vumeters calf_plugins::filter_module_with_inertia< FilterClass, Metadata >::meters

◆ timer

template<typename FilterClass, typename Metadata>
dsp::once_per_n calf_plugins::filter_module_with_inertia< FilterClass, Metadata >::timer

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