diff options
| author | gdkchan <gab.dark.100@gmail.com> | 2018-06-10 21:46:42 -0300 |
|---|---|---|
| committer | gdkchan <gab.dark.100@gmail.com> | 2018-06-10 21:46:42 -0300 |
| commit | 76f3b1b3a4637ec72abfbb8cbc0679f2e0ca838f (patch) | |
| tree | 0411b709de31c1c0517763512df8eeb9f7491bc9 /Ryujinx.Core/PerformanceStatistics.cs | |
| parent | 518fe799da6dd4f12c58c9e6e174767effb0b868 (diff) | |
Rename Ryujinx.Core to Ryujinx.HLE and add a separate project for a future LLE implementation
Diffstat (limited to 'Ryujinx.Core/PerformanceStatistics.cs')
| -rw-r--r-- | Ryujinx.Core/PerformanceStatistics.cs | 84 |
1 files changed, 0 insertions, 84 deletions
diff --git a/Ryujinx.Core/PerformanceStatistics.cs b/Ryujinx.Core/PerformanceStatistics.cs deleted file mode 100644 index e5d930f9..00000000 --- a/Ryujinx.Core/PerformanceStatistics.cs +++ /dev/null @@ -1,84 +0,0 @@ -using System.Diagnostics; -using System.Timers; - -namespace Ryujinx.Core -{ - public class PerformanceStatistics - { - Stopwatch ExecutionTime = new Stopwatch(); - Timer ResetTimer = new Timer(1000); - - long CurrentGameFrameEnded; - long CurrentSystemFrameEnded; - long CurrentSystemFrameStart; - long LastGameFrameEnded; - long LastSystemFrameEnded; - - double AccumulatedGameFrameTime; - double AccumulatedSystemFrameTime; - double CurrentGameFrameTime; - double CurrentSystemFrameTime; - double PreviousGameFrameTime; - double PreviousSystemFrameTime; - public double GameFrameRate { get; private set; } - public double SystemFrameRate { get; private set; } - public long SystemFramesRendered; - public long GameFramesRendered; - public long ElapsedMilliseconds => ExecutionTime.ElapsedMilliseconds; - public long ElapsedMicroseconds => (long) - (((double)ExecutionTime.ElapsedTicks / Stopwatch.Frequency) * 1000000); - public long ElapsedNanoseconds => (long) - (((double)ExecutionTime.ElapsedTicks / Stopwatch.Frequency) * 1000000000); - - public PerformanceStatistics() - { - ExecutionTime.Start(); - ResetTimer.Elapsed += ResetTimerElapsed; - ResetTimer.AutoReset = true; - ResetTimer.Start(); - } - - private void ResetTimerElapsed(object sender, ElapsedEventArgs e) - { - ResetStatistics(); - } - - public void StartSystemFrame() - { - PreviousSystemFrameTime = CurrentSystemFrameTime; - LastSystemFrameEnded = CurrentSystemFrameEnded; - CurrentSystemFrameStart = ElapsedMicroseconds; - } - - public void EndSystemFrame() - { - CurrentSystemFrameEnded = ElapsedMicroseconds; - CurrentSystemFrameTime = CurrentSystemFrameEnded - CurrentSystemFrameStart; - AccumulatedSystemFrameTime += CurrentSystemFrameTime; - SystemFramesRendered++; - } - - public void RecordGameFrameTime() - { - CurrentGameFrameEnded = ElapsedMicroseconds; - CurrentGameFrameTime = CurrentGameFrameEnded - LastGameFrameEnded; - PreviousGameFrameTime = CurrentGameFrameTime; - LastGameFrameEnded = CurrentGameFrameEnded; - AccumulatedGameFrameTime += CurrentGameFrameTime; - GameFramesRendered++; - } - - public void ResetStatistics() - { - GameFrameRate = 1000 / ((AccumulatedGameFrameTime / GameFramesRendered) / 1000); - GameFrameRate = double.IsNaN(GameFrameRate) ? 0 : GameFrameRate; - SystemFrameRate = 1000 / ((AccumulatedSystemFrameTime / SystemFramesRendered) / 1000); - SystemFrameRate = double.IsNaN(SystemFrameRate) ? 0 : SystemFrameRate; - - GameFramesRendered = 0; - SystemFramesRendered = 0; - AccumulatedGameFrameTime = 0; - AccumulatedSystemFrameTime = 0; - } - } -} |
