mixedreality/com.microsoft.mixedreality..../Core/Providers/InputSimulation/IMixedRealityInputPlaybackS...

60 lines
1.7 KiB
C#

// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
using System.Threading.Tasks;
namespace Microsoft.MixedReality.Toolkit.Input
{
/// <summary>
/// Plays back input animation via the input simulation system.
/// </summary>
public interface IMixedRealityInputPlaybackService : IMixedRealityInputDeviceManager
{
/// <summary>
/// The animation currently being played.
/// </summary>
InputAnimation Animation { get; set; }
/// <summary>
/// True if the animation is currently playing.
/// </summary>
bool IsPlaying { get; }
/// <summary>
/// The local time in seconds relative to the start of the animation.
/// </summary>
float LocalTime { get; set; }
/// <summary>
/// Start playing the animation.
/// </summary>
void Play();
/// <summary>
/// Stop playing the animation and jump to the start.
/// </summary>
void Stop();
/// <summary>
/// Pause playback and keep the current local time.
/// </summary>
void Pause();
/// <summary>
/// Try to load input animation data from the given file.
/// </summary>
/// <returns>
/// True if loading input animation from the file succeeded.
/// </returns>
bool LoadInputAnimation(string filepath);
/// <summary>
/// Try to load input animation data from the given file asynchronously.
/// </summary>
/// <returns>
/// True if loading input animation from the file succeeded.
/// </returns>
Task<bool> LoadInputAnimationAsync(string filepath);
}
}