using System; using System.Linq; using System.Collections.Generic; using UnityEditor.Experimental.GraphView; using UnityEngine; using UnityEngine.UIElements; namespace UnityEditor.VFX.UI { interface IControlledElement { Controller controller { get; } void OnControllerChanged(ref ControllerChangedEvent e); } interface IControllerListener { void OnControllerEvent(ControllerEvent e); } interface IControlledElement : IControlledElement where T : Controller { new T controller { get; } } interface ISettableControlledElement where T : Controller { T controller { get; set; } } }