using UnityEngine.XR.Interaction.Toolkit.Interactors.Casters; namespace UnityEngine.XR.Interaction.Toolkit.UI { /// /// Defines an interface for updating a UI data model. /// /// /// The primary functionality is to enable casters to receive calls to update the UI data model based on the current state of the caster and /// attempting to obtain the current UI raycast result from the caster. /// /// /// public interface IUIModelUpdater { /// /// Updates the UI data model based on the implementer of this interface. /// /// UI data model to update. /// UI select input state to write into the UI data model. /// UI scroll input state to write into the UI data model. /// Returns if UI data model was updated successfully. bool UpdateUIModel(ref TrackedDeviceModel uiModel, bool isSelectActive, in Vector2 scrollDelta); } }