2020-03-27 09:03:02 +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 osu.Framework.Allocation;
|
|
|
|
using osu.Framework.Timing;
|
|
|
|
|
|
|
|
namespace osu.Game.Skinning
|
|
|
|
{
|
|
|
|
/// <summary>
|
|
|
|
/// Denotes an object which provides a reference time to start animations from.
|
|
|
|
/// </summary>
|
2020-04-02 05:30:22 +00:00
|
|
|
/// <remarks>
|
|
|
|
/// This should not be used to start an animation immediately at the current time.
|
|
|
|
/// To do so, use <see cref="LegacySkinExtensions.GetAnimation"/> with <code>startAtCurrentTime = true</code> instead.
|
|
|
|
/// </remarks>
|
2020-03-27 09:03:02 +00:00
|
|
|
[Cached]
|
|
|
|
public interface IAnimationTimeReference
|
|
|
|
{
|
|
|
|
/// <summary>
|
|
|
|
/// The reference clock.
|
|
|
|
/// </summary>
|
|
|
|
IFrameBasedClock Clock { get; }
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// The time which animations should be started from, relative to <see cref="Clock"/>.
|
|
|
|
/// </summary>
|
|
|
|
double AnimationStartTime { get; }
|
|
|
|
}
|
|
|
|
}
|