StyleCop clean OpenRA.Game

This commit is contained in:
Matthias Mailänder
2015-01-02 15:11:36 +01:00
parent 9dd607c846
commit 44cd174a8d
61 changed files with 628 additions and 581 deletions

View File

@@ -0,0 +1,78 @@
#region Copyright & License Information
/*
* Copyright 2007-2015 The OpenRA Developers (see AUTHORS)
* This file is part of OpenRA, which is free software. It is made
* available to you under the terms of the GNU General Public License
* as published by the Free Software Foundation. For more information,
* see COPYING.
*/
#endregion
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Drawing;
using OpenRA.Primitives;
namespace OpenRA.Support
{
public class PerfItem
{
public readonly Color C;
public readonly string Name;
double[] samples = new double[100];
public double Val = 0.0;
int head = 1, tail = 0;
public bool HasNormalTick = true;
public PerfItem(string name, Color c)
{
Name = name;
C = c;
}
public void Tick()
{
samples[head++] = Val;
if (head == samples.Length) head = 0;
if (head == tail && ++tail == samples.Length) tail = 0;
Val = 0.0;
}
public IEnumerable<double> Samples()
{
var n = head;
while (n != tail)
{
--n;
if (n < 0) n = samples.Length - 1;
yield return samples[n];
}
}
public double Average(int count)
{
var i = 0;
var n = head;
double sum = 0;
while (i < count && n != tail)
{
if (--n < 0) n = samples.Length - 1;
sum += samples[n];
i++;
}
return sum / i;
}
public double LastValue
{
get
{
var n = head;
if (--n < 0) n = samples.Length - 1;
return samples[n];
}
}
}
}