LMMS
Loading...
Searching...
No Matches
calf_plugins::limiter_audio_module Class Reference

#include <modules_limit.h>

Inheritance diagram for calf_plugins::limiter_audio_module:
calf_plugins::audio_module< limiter_metadata > calf_plugins::line_graph_iface calf_plugins::limiter_metadata calf_plugins::audio_module_iface calf_plugins::plugin_metadata< limiter_metadata > calf_plugins::plugin_metadata_iface

Public Member Functions

 limiter_audio_module ()
void activate ()
 LADSPA-esque activate function, except it is called after ports are connected, not before.
void deactivate ()
 LADSPA-esque deactivate function.
void params_changed ()
 Called when params are changed (before processing).
void set_srates ()
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.
void set_sample_rate (uint32_t sr)
 Set sample rate for the plugin.
Public Member Functions inherited from calf_plugins::audio_module< limiter_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::line_graph_iface
virtual bool get_graph (int index, int subindex, int phase, float *data, int points, cairo_iface *context, int *mode=0) const
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 bool get_gridline (int index, int subindex, int phase, float &pos, bool &vertical, std::string &legend, cairo_iface *context) 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
virtual ~line_graph_iface ()
 Standard destructor to make compiler happy.

Public Attributes

uint32_t srate
bool is_active
float limit_old
bool asc_old
float attack_old
Public Attributes inherited from calf_plugins::audio_module< limiter_metadata >
float * ins [(limiter_metadata::in_count !=0) ? limiter_metadata::in_count :1]
float * outs [(limiter_metadata::out_count !=0) ? limiter_metadata::out_count :1]
float * params [limiter_metadata::param_count]
bool questionable_data_reported_in
bool questionable_data_reported_out
progress_report_ifaceprogress_report

Private Types

typedef limiter_audio_module AM

Private Attributes

uint32_t asc_led
int oversampling_old
dsp::lookahead_limiter limiter
dsp::resampleN resampler [2]
dsp::bypass bypass
vumeters meters

Additional Inherited Members

Public Types inherited from calf_plugins::audio_module< limiter_metadata >
typedef limiter_metadata metadata_type

Member Typedef Documentation

◆ AM

Constructor & Destructor Documentation

◆ limiter_audio_module()

limiter_audio_module::limiter_audio_module ( )

Member Function Documentation

◆ activate()

void limiter_audio_module::activate ( )
virtual

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

Reimplemented from calf_plugins::audio_module< limiter_metadata >.

◆ deactivate()

void limiter_audio_module::deactivate ( )
virtual

LADSPA-esque deactivate function.

Reimplemented from calf_plugins::audio_module< limiter_metadata >.

◆ params_changed()

void limiter_audio_module::params_changed ( )
virtual

Called when params are changed (before processing).

Reimplemented from calf_plugins::audio_module< limiter_metadata >.

◆ process()

uint32_t limiter_audio_module::process ( uint32_t offset,
uint32_t numsamples,
uint32_t inputs_mask,
uint32_t outputs_mask )
virtual

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

Implements calf_plugins::audio_module_iface.

◆ set_sample_rate()

void limiter_audio_module::set_sample_rate ( uint32_t sr)
virtual

Set sample rate for the plugin.

Reimplemented from calf_plugins::audio_module< limiter_metadata >.

◆ set_srates()

void limiter_audio_module::set_srates ( )

Member Data Documentation

◆ asc_led

uint32_t calf_plugins::limiter_audio_module::asc_led
private

◆ asc_old

bool calf_plugins::limiter_audio_module::asc_old

◆ attack_old

float calf_plugins::limiter_audio_module::attack_old

◆ bypass

dsp::bypass calf_plugins::limiter_audio_module::bypass
private

◆ is_active

bool calf_plugins::limiter_audio_module::is_active

◆ limit_old

float calf_plugins::limiter_audio_module::limit_old

◆ limiter

dsp::lookahead_limiter calf_plugins::limiter_audio_module::limiter
private

◆ meters

vumeters calf_plugins::limiter_audio_module::meters
private

◆ oversampling_old

int calf_plugins::limiter_audio_module::oversampling_old
private

◆ resampler

dsp::resampleN calf_plugins::limiter_audio_module::resampler[2]
private

◆ srate

uint32_t calf_plugins::limiter_audio_module::srate

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