Class fx_ring_mod

Inheritance Relationships

Base Type

Class Documentation

class fx_ring_mod : public fx_effect

Effect: Ring modulator - frequency modulates the audio - crazy sounding.

The following example is a full ring modulator pedal with tone control, wet/dry mix and of course ring modulator.

___ring_mod_1.c___

Public Functions

fx_ring_mod(float ring_mod_freq, float ring_mod_depth)

Basic constructor/initializer for the ring modulator.

Parameters
  • [in] ring_mod_freq: The ring modifier frequency

  • [in] ring_mod_depth: The ring modifier depth

fx_ring_mod(float ring_mod_freq, float ring_mod_depth, bool enable_filter)

Advanced constructor/initializer for the ring modulator.

Parameters
  • [in] ring_mod_freq: The ring modifier frequency

  • [in] ring_mod_depth: The ring modifier depth

  • [in] enable_filter: Removes lower harmonics and creates more of a pitch shifting effect (less crazy)

void enable()

Enable the ring modulator (it is enabled by default)

void bypass()

Bypass the ring modulator (will just pass clean audio through)

void set_freq(float new_freq)

Sets the carrier frequency of the ring moduator (Hz)

Parameters
  • [in] new_freq: The new frequency

void set_depth(float new_depth)

Sets the depth of the ring modulator (0.0 -> 1.0)

Parameters
  • [in] new_depth: The new depth

void print_params(void)

Prints the parameters for the delay effect.

Public Members

fx_audio_node *input

Audio routing node [input]: primary audio input

fx_audio_node *output

Audio routing node [output]: primary audio output

fx_control_node *freq

Control routing node [input]: the carrier frequency of the ring moduator (Hz)

fx_control_node *depth

Control routing node [input]: modulation depth