// Copyright (c) ppy Pty Ltd . Licensed under the MIT Licence. // See the LICENCE file in the repository root for full licence text. #nullable disable using osu.Game.Rulesets; using osu.Game.Rulesets.Objects; namespace osu.Game.Beatmaps { /// /// Provides functionality to alter a after it has been converted. /// public interface IBeatmapProcessor { /// /// The to process. This should already be converted to the applicable . /// IBeatmap Beatmap { get; } /// /// Processes the converted prior to being invoked. /// /// Nested s generated during will not be present by this point, /// and no mods will have been applied to the s. /// /// /// /// This can only be used to add alterations to s generated directly through the conversion process. /// void PreProcess(); /// /// Processes the converted after has been invoked. /// /// Nested s generated during will be present by this point, /// and mods will have been applied to all s. /// /// /// /// This should be used to add alterations to s while they are in their most playable state. /// void PostProcess(); } }