Class fx_phase_shifter

Inheritance Relationships

Base Type

Class Documentation

class fx_phase_shifter : public fx_effect

Effect: Phase shifter for creating rich phase shifts.

Example: phase_shifter_1.c

Public Functions

fx_phase_shifter(float rate_hz, float depth, float feedback)

Basic constructor/initializer for the phase shifter.

Parameters
  • [in] rate_hz: The rate hz of the LFO modulating the phase shifter

  • [in] depth: The depth of the phase shifter

  • [in] feedback: The feedback of the phase shifter

fx_phase_shifter(float rate_hz, float depth, float feedback, float inital_phase, OSC_TYPES mod_type)

Constructs a new instance.

Parameters
  • [in] rate_hz: The rate hz of the LFO modulating the phase shifter

  • [in] depth: The depth of the phase shifter (0.0 -> 1.0)

  • [in] feedback: The feedback of the phase shifter (-1.0 -> 1.0)

  • [in] inital_phase: The inital phase in degrees of the LFO

  • [in] mod_type: The modifier type (OSC_TYPES)

void enable()

Enable the phase shifter (it is enabled by default)

void bypass()

Bypass the phase shifter (will just pass clean audio through)

void set_depth(float depth)

Sets the depth of the phase shifter.

Parameters
  • [in] depth: The depth fom 0.0 -> 1.0. 0.0 is no modulation at all, 1.0 is full modulation.

void set_rate_hz(float rate_hz)

Sets the rate of the phase shifter in Hertz (cycles per second)

Parameters
  • [in] rate_hz: The rate hz

void set_feedback(float feedback)

Sets the feedback of the phase shifter.

Parameters
  • [in] feedback: Feedback value (between -1.0 and 1.0)

void set_lfo_type(OSC_TYPES new_type)

Sets the the type of oscillator used as the LFO.

Parameters
  • [in] new_type: The new type of LFO (OSC_TYPES)

void print_params(void)

Print the parameters for this effect.

Public Members

fx_audio_node *input

Audio routing node: primary audio input

fx_audio_node *output

Audio routing node: primary audio output

fx_control_node *depth

Control routing node: phase shifter depth (should be between 0.0 and 1.0)

fx_control_node *rate_hz

Control routing node: phase shifter rate (Hz) (i.e. 1.0 = once per second)

fx_control_node *feedback

Control routing node: phase shifter feedback (should be between -1.0 and 1.0)