| 12345678910111213141516171819202122232425262728293031323334353637 | namespace LitMotion{    /// <summary>    /// Provides the function to schedule the execution of a motion.    /// </summary>    public interface IMotionScheduler    {        /// <summary>        /// Schedule the motion.        /// </summary>        /// <typeparam name="TValue">The type of value to animate</typeparam>        /// <typeparam name="TOptions">The type of special parameters given to the motion data</typeparam>        /// <typeparam name="TAdapter">The type of adapter that support value animation</typeparam>        /// <param name="data">Motion data</param>        /// <param name="callbackData">Motion callback data</param>        /// <returns>Motion handle</returns>        MotionHandle Schedule<TValue, TOptions, TAdapter>(ref MotionData<TValue, TOptions> data, ref MotionCallbackData callbackData)            where TValue : unmanaged            where TOptions : unmanaged, IMotionOptions            where TAdapter : unmanaged, IMotionAdapter<TValue, TOptions>;        /// <summary>        /// Returns the current time.        /// </summary>        double Time { get; }    }    /// <summary>    /// Type of time used to play the motion    /// </summary>    public enum MotionTimeKind : byte    {        Time = 0,        UnscaledTime = 1,        Realtime = 2    }}
 |