mirror of https://github.com/ppy/osu
30 lines
1.0 KiB
C#
30 lines
1.0 KiB
C#
// 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 osu.Framework.Allocation;
|
|
using osu.Framework.Audio;
|
|
using osu.Framework.Timing;
|
|
using osu.Game.Beatmaps.ControlPoints;
|
|
using osu.Game.Graphics.Containers;
|
|
|
|
namespace osu.Game.Beatmaps
|
|
{
|
|
/// <summary>
|
|
/// Provides various data sources which allow for synchronising visuals to a known beat.
|
|
/// Primarily intended for use with <see cref="BeatSyncedContainer"/>.
|
|
/// </summary>
|
|
[Cached]
|
|
public interface IBeatSyncProvider : IHasAmplitudes
|
|
{
|
|
/// <summary>
|
|
/// Access any available control points from a beatmap providing beat sync. If <c>null</c>, no current provider is available.
|
|
/// </summary>
|
|
ControlPointInfo? ControlPoints { get; }
|
|
|
|
/// <summary>
|
|
/// Access a clock currently responsible for providing beat sync. If <c>null</c>, no current provider is available.
|
|
/// </summary>
|
|
IClock? Clock { get; }
|
|
}
|
|
}
|