diff --git a/osu.Game/Rulesets/Difficulty/Skills/Skill.cs b/osu.Game/Rulesets/Difficulty/Skills/Skill.cs
index fa7aa8f637..72bb686260 100644
--- a/osu.Game/Rulesets/Difficulty/Skills/Skill.cs
+++ b/osu.Game/Rulesets/Difficulty/Skills/Skill.cs
@@ -33,7 +33,7 @@ namespace osu.Game.Rulesets.Difficulty.Skills
///
/// s that were processed previously. They can affect the strain values of the following objects.
///
- protected readonly History Previous = new History(2); // Contained objects not used yet
+ protected readonly LimitedCapacityStack Previous = new LimitedCapacityStack(2); // Contained objects not used yet
private double currentStrain = 1; // We keep track of the strain level at all times throughout the beatmap.
private double currentSectionPeak = 1; // We also keep track of the peak strain level in the current section.
diff --git a/osu.Game/Rulesets/Difficulty/Utils/History.cs b/osu.Game/Rulesets/Difficulty/Utils/LimitedCapacityStack.cs
similarity index 69%
rename from osu.Game/Rulesets/Difficulty/Utils/History.cs
rename to osu.Game/Rulesets/Difficulty/Utils/LimitedCapacityStack.cs
index d6647d5119..95b7d9b19d 100644
--- a/osu.Game/Rulesets/Difficulty/Utils/History.cs
+++ b/osu.Game/Rulesets/Difficulty/Utils/LimitedCapacityStack.cs
@@ -8,11 +8,13 @@ using System.Collections.Generic;
namespace osu.Game.Rulesets.Difficulty.Utils
{
///
- /// An indexed stack with Push() only, which disposes items at the bottom after the capacity is full.
- /// Indexing starts at the top of the stack.
+ /// An indexed stack with limited depth. Indexing starts at the top of the stack.
///
- public class History : IEnumerable
+ public class LimitedCapacityStack : IEnumerable
{
+ ///
+ /// The number of elements in the stack.
+ ///
public int Count { get; private set; }
private readonly T[] array;
@@ -20,10 +22,10 @@ namespace osu.Game.Rulesets.Difficulty.Utils
private int marker; // Marks the position of the most recently added item.
///
- /// Initializes a new instance of the History class that is empty and has the specified capacity.
+ /// Constructs a new .
///
- /// The number of items the History can hold.
- public History(int capacity)
+ /// The number of items the stack can hold.
+ public LimitedCapacityStack(int capacity)
{
if (capacity < 0)
throw new ArgumentOutOfRangeException();
@@ -34,8 +36,9 @@ namespace osu.Game.Rulesets.Difficulty.Utils
}
///
- /// The most recently added item is returned at index 0.
+ /// Retrieves the item at an index in the stack.
///
+ /// The index of the item to retrieve. The top of the stack is returned at index 0.
public T this[int i]
{
get
@@ -52,11 +55,12 @@ namespace osu.Game.Rulesets.Difficulty.Utils
}
///
- /// Adds the item as the most recent one in the history.
- /// The oldest item is disposed if the history is full.
+ /// Pushes an item to this .
///
- public void Push(T item) // Overwrite the oldest item instead of shifting every item by one with every addition.
+ /// The item to push.
+ public void Push(T item)
{
+ // Overwrite the oldest item instead of shifting every item by one with every addition.
if (marker == 0)
marker = capacity - 1;
else