setTaps method

void setTaps(
  1. List<EchoTapConfig>? taps
)

Sets the taps of the echo.

Implementation

void setTaps(final List<EchoTapConfig>? taps) {
  if (taps == null || taps.isEmpty) {
    synthizer.check(
      synthizer.synthizer.syz_globalEchoSetTaps(handle.value, 0, nullptr),
    );
  } else {
    final a = malloc<syz_EchoTapConfig>(taps.length);
    for (var i = 0; i < taps.length; i++) {
      final t = taps[i];
      a[i]
        ..delay = t.delay
        ..gain_l = t.gainL
        ..gain_r = t.gainR;
    }
    synthizer.check(
      synthizer.synthizer.syz_globalEchoSetTaps(handle.value, taps.length, a),
    );
    malloc.free(a);
  }
}