interface RenderFrequencySample { public double get(Complex c, double frac); void subtractPeriodFrom(IAddPlateau audio, DoubleRange period, Complex intensity); public default void addTo(double[] samples, DoubleRange period, Complex intensity) { if (samples == null) ret; subtractPeriodFrom(new IAddPlateau { public void addPlateau(double start, double end, double intensity) { int i1 = ifloor(start), i2 = ifloor(end); for (int i = i1; i < i2; i++) samples[i] -= intensity; } }, period, intensity); } }