public void Step() { ulong lastCycle = cycle; ++cycle; ulong nextCycle = cycle; StepTimer(); int lastCycleFrame = (int)((double)lastCycle / FrameCounterRate); int nextCycleFrame = (int)((double)nextCycle / FrameCounterRate); if (lastCycleFrame != nextCycleFrame) { StepFrameCounter(); } int lastCycleSample = (int)((double)lastCycle / SampleRate); int nextCycleSample = (int)((double)nextCycle / SampleRate); if (lastCycleSample != nextCycleSample) { float filteredOutput = filterChain.Apply(Output); WriteSample?.Invoke(filteredOutput); } }
private static void WriteSample() { var writeSample = new WriteSample(); writeSample.Run(); Console.ReadKey(); }