// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License
using UnityEngine;
namespace Microsoft.MixedReality.Toolkit.Experimental.StateVisualizer
{
///
/// Interface for animatable properties, utilized in the State Visualizer component.
///
public interface IStateAnimatableProperty
{
///
/// The name of the state associated with this animatable property.
///
string StateName { get; set; }
///
/// The name of the animatable property.
///
string AnimatablePropertyName { get; set; }
///
/// The target game object to receive animations based on the values of the animatable properties.
///
GameObject Target { get; set; }
///
/// Sets the keyframes in an animation clip based on the values of the animatable properties.
///
/// The animation clip to add keyframes to
void SetKeyFrames(AnimationClip animationClip);
///
/// Removes the keyframes in an animation clip.
///
/// The animation clip for keyframe removal
void RemoveKeyFrames(AnimationClip animationClip);
}
}