Class fx_effect¶
Defined in File dreammakerfx.h
Inheritance Relationships¶
Derived Types¶
public fx_adsr_envelope(Class fx_adsr_envelope)public fx_allpass_filter(Class fx_allpass_filter)public fx_amplitude_mod(Class fx_amplitude_mod)public fx_arpeggiator(Class fx_arpeggiator)public fx_biquad_filter(Class fx_biquad_filter)public fx_compressor(Class fx_compressor)public fx_delay(Class fx_delay)public fx_destructor(Class fx_destructor)public fx_envelope_tracker(Class fx_envelope_tracker)public fx_gain(Class fx_gain)public fx_impulse_response(Class fx_impulse_response)public fx_instrument_synth(Class fx_instrument_synth)public fx_looper(Class fx_looper)public fx_mixer_2(Class fx_mixer_2)public fx_mixer_3(Class fx_mixer_3)public fx_mixer_4(Class fx_mixer_4)public fx_multitap_delay(Class fx_multitap_delay)public fx_oscillator(Class fx_oscillator)public fx_phase_shifter(Class fx_phase_shifter)public fx_pitch_shift(Class fx_pitch_shift)public fx_pitch_shift_fd(Class fx_pitch_shift_fd)public fx_ring_mod(Class fx_ring_mod)public fx_slicer(Class fx_slicer)public fx_variable_delay(Class fx_variable_delay)
Class Documentation¶
-
class
fx_effect¶ Subclassed by fx_adsr_envelope, fx_allpass_filter, fx_amplitude_mod, fx_arpeggiator, fx_biquad_filter, fx_compressor, fx_delay, fx_destructor, fx_envelope_tracker, fx_gain, fx_impulse_response, fx_instrument_synth, fx_looper, fx_mixer_2, fx_mixer_3, fx_mixer_4, fx_multitap_delay, fx_oscillator, fx_phase_shifter, fx_pitch_shift, fx_pitch_shift_fd, fx_ring_mod, fx_slicer, fx_variable_delay
Public Functions
-
fx_effect()¶
-
bool
service(void)¶
-
void
print_params(void)¶
-
const char *
get_name()¶
-
EFFECT_TYPE
get_type()¶
-
void
enable(void)¶ Enables this effect.
-
void
bypass(void)¶ Bypasses this effect (just passes audio through)
-
void
print_ctrl_node_status(fx_control_node *t)¶
-
void
print_audio_node_status(fx_audio_node *t)¶
-
void
print_parameter(void *val, char *name, PARAM_TYPES type)¶
Public Members
-
char
effect_name[32]¶
Protected Functions
-
bool
get_audio_node_index(fx_audio_node *node, uint8_t *local_node_index)¶ Looks up the index of a given node in the node stack for this effect.
- Return
True if found, false if not
- Parameters
node: The node to look upnode_index: The node index that was looked up (output)
-
bool
get_control_node_index(fx_control_node *node, uint8_t *local_node_index)¶
-
uint16_t *
serialize_params(uint16_t *serialized_params, uint16_t *size)¶
-
bool
float_param_updated(float *param, float *param_last, float threshold)¶ Checks to see if a float parameter has been updated.
This function also applies hysteresis
- Return
True if updated, false if not
- Parameters
param: The parameterparam_last: The parameter last
-
bool
bool_param_updated(bool *param, bool *param_last)¶ Checks to see if a bool parameter has been updated.
- Return
True if updated, false if not
- Parameters
param: The parameterparam_last: The parameter last
Protected Attributes
-
friend fx_effect::fx_pedal
-
EFFECT_TYPE
type¶
-
fx_audio_node *
audio_node_stack[MAX_NODES_PER_FX]¶
-
int
total_audio_nodes¶
-
fx_control_node *
control_node_stack[MAX_NODES_PER_FX]¶
-
int
total_control_nodes¶
-
void *
param_stack[MAX_PARMS_PER_FX]¶
-
PARAM_TYPES
param_stack_types[MAX_PARMS_PER_FX]¶
-
int
total_params¶
-
bool
param_enabled¶
-
fx_audio_node
node_input¶
-
fx_audio_node
node_output¶
-
fx_control_node
node_enabled¶
-
int
node_index¶
-
uint8_t
instance_id¶
-
bool
updated_parameters¶
Friends
-
friend
fx_effect::fx_pedal
-