summaryrefslogtreecommitdiff
path: root/Library/PackageCache/com.unity.timeline@1.2.13/Runtime/Utilities/IPropertyCollector.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Library/PackageCache/com.unity.timeline@1.2.13/Runtime/Utilities/IPropertyCollector.cs')
-rw-r--r--Library/PackageCache/com.unity.timeline@1.2.13/Runtime/Utilities/IPropertyCollector.cs102
1 files changed, 102 insertions, 0 deletions
diff --git a/Library/PackageCache/com.unity.timeline@1.2.13/Runtime/Utilities/IPropertyCollector.cs b/Library/PackageCache/com.unity.timeline@1.2.13/Runtime/Utilities/IPropertyCollector.cs
new file mode 100644
index 0000000..08f991a
--- /dev/null
+++ b/Library/PackageCache/com.unity.timeline@1.2.13/Runtime/Utilities/IPropertyCollector.cs
@@ -0,0 +1,102 @@
+using System.Collections.Generic;
+
+namespace UnityEngine.Timeline
+{
+ /// <summary>
+ /// Interface used to inform the Timeline Editor about potential property modifications that may occur while previewing.
+ /// </summary>
+ public interface IPropertyCollector
+ {
+ /// <summary>
+ /// Sets the active game object for subsequent property modifications.
+ /// </summary>
+ /// <param name="gameObject">The GameObject to push.</param>
+ void PushActiveGameObject(GameObject gameObject);
+
+ /// <summary>
+ /// Removes the active GameObject from the modification stack, restoring the previous value.
+ /// </summary>
+ void PopActiveGameObject();
+
+ /// <summary>
+ /// Add properties modified by an animation clip.
+ /// </summary>
+ /// <param name="clip">The animation clip that contains the properties</param>
+ void AddFromClip(AnimationClip clip);
+
+ /// <summary>
+ /// Add property modifications specified by a list of animation clips.
+ /// </summary>
+ /// <param name="clips">The list of animation clips used to determine which property modifications to apply.</param>
+ void AddFromClips(IEnumerable<AnimationClip> clips);
+
+ /// <summary>
+ /// Add property modifications using the serialized property name.
+ /// </summary>
+ /// <param name="name">The name of the serialized property</param>
+ /// <typeparam name="T">The type of the component the property exists on</typeparam>
+ /// <remarks>
+ /// This method uses the most recent gameObject from PushActiveGameObject
+ /// </remarks>
+ void AddFromName<T>(string name) where T : Component;
+
+ /// <summary>
+ /// Add property modifications using the serialized property name.
+ /// </summary>
+ /// <param name="name">The name of the serialized property</param>
+ /// <remarks>
+ /// This method uses the most recent gameObject from PushActiveGameObject
+ /// </remarks>
+ void AddFromName(string name);
+
+ /// <summary>
+ /// Add property modifications modified by an animation clip.
+ /// </summary>
+ /// <param name="obj">The GameObject where the properties exist</param>
+ /// <param name="clip">The animation clip that contains the properties</param>
+ void AddFromClip(GameObject obj, AnimationClip clip);
+
+ /// <summary>
+ /// Add property modifications specified by a list of animation clips.
+ /// </summary>
+ /// <param name="obj">The gameObject that will be animated</param>
+ /// <param name="clips">The list of animation clips used to determine which property modifications to apply.</param>
+ void AddFromClips(GameObject obj, IEnumerable<AnimationClip> clips);
+
+ /// <summary>
+ /// Add property modifications using the serialized property name.
+ /// </summary>
+ /// <param name="name">The name of the serialized property</param>
+ /// <param name="obj">The gameObject where the properties exist</param>
+ /// <typeparam name="T">The type of the component the property exists on</typeparam>>
+ void AddFromName<T>(GameObject obj, string name) where T : Component;
+
+ /// <summary>
+ /// Add property modifications using the serialized property name.
+ /// </summary>
+ /// <param name="obj">The gameObject where the properties exist</param>
+ /// <param name="name">The name of the serialized property</param>
+ void AddFromName(GameObject obj, string name);
+
+ /// <summary>
+ /// Add property modifications using the serialized property name.
+ /// </summary>
+ /// <param name="name">The name of the serialized property</param>
+ /// <param name="component">The component where the properties exist</param>
+ void AddFromName(Component component, string name);
+
+ /// <summary>
+ /// Set all serializable properties on a component to be under preview control.
+ /// </summary>
+ /// <param name="obj">The gameObject where the properties exist</param>
+ /// <param name="component">The component to set in preview mode</param>
+ void AddFromComponent(GameObject obj, Component component);
+
+ /// <summary>
+ /// Add property modifications modified by an animation clip.
+ /// </summary>
+ /// <param name="obj">The Object where the properties exist</param>
+ /// <param name="clip">The animation clip that contains the properties</param>
+ void AddObjectProperties(Object obj, AnimationClip clip);
+ }
+}