bool Event_channel_autowah_depth_slide_process(
        Channel* ch,
        Device_states* dstates,
        const Value* value)
{
    assert(ch != NULL);
    assert(dstates != NULL);
    (void)dstates;
    assert(value != NULL);
    assert(value->type == VALUE_TYPE_TSTAMP);

    Tstamp_copy(
            &ch->autowah_depth_slide,
            &value->value.Tstamp_type);
    LFO_set_depth_slide(&ch->autowah, &value->value.Tstamp_type);

    for (int i = 0; i < KQT_GENERATORS_MAX; ++i)
    {
        Event_check_voice(ch, i);
        Voice_state* vs = ch->fg[i]->state;
        LFO_set_depth_slide(&vs->autowah, &value->value.Tstamp_type);
    }

    return true;
}
Example #2
0
bool Event_master_pattern_delay_process(
        Master_params* master_params, const Value* value)
{
    rassert(master_params != NULL);
    rassert(value != NULL);
    rassert(value->type == VALUE_TYPE_TSTAMP);

    Tstamp_copy(&master_params->delay_left, &value->value.Tstamp_type);
    return true;
}
bool Event_channel_slide_lowpass_length_process(
        Channel* ch,
        Device_states* dstates,
        const Value* value)
{
    assert(ch != NULL);
    assert(dstates != NULL);
    (void)dstates;
    assert(value != NULL);
    assert(value->type == VALUE_TYPE_TSTAMP);

    Tstamp_copy(
            &ch->filter_slide_length,
            &value->value.Tstamp_type);

    for (int i = 0; i < KQT_GENERATORS_MAX; ++i)
    {
        Event_check_voice(ch, i);
        Voice_state* vs = ch->fg[i]->state;
        Slider_set_length(&vs->lowpass_slider, &value->value.Tstamp_type);
    }

    return true;
}