osu/osu.Game/Rulesets/Edit/Checks/Components/ICheck.cs

30 lines
1022 B
C#
Raw Normal View History

2021-04-07 12:35:33 +00:00
// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence.
// See the LICENCE file in the repository root for full licence text.
using System.Collections.Generic;
namespace osu.Game.Rulesets.Edit.Checks.Components
2021-04-07 12:35:33 +00:00
{
2021-04-13 14:30:20 +00:00
/// <summary>
/// A specific check that can be run on a beatmap to verify or find issues.
/// </summary>
public interface ICheck
2021-04-07 12:35:33 +00:00
{
/// <summary>
2021-04-12 06:27:12 +00:00
/// The metadata for this check.
2021-04-07 12:35:33 +00:00
/// </summary>
public CheckMetadata Metadata { get; }
2021-04-07 12:35:33 +00:00
/// <summary>
2021-04-12 06:27:12 +00:00
/// All possible templates for issues that this check may return.
2021-04-07 12:35:33 +00:00
/// </summary>
public IEnumerable<IssueTemplate> PossibleTemplates { get; }
2021-04-07 12:35:33 +00:00
/// <summary>
2021-04-12 06:27:12 +00:00
/// Runs this check and returns any issues detected for the provided beatmap.
/// </summary>
/// <param name="context">The beatmap verifier context associated with the beatmap.</param>
2021-05-13 09:24:22 +00:00
public IEnumerable<Issue> Run(BeatmapVerifierContext context);
2021-04-07 12:35:33 +00:00
}
}