docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class XRAnchorSubsystem.Provider

    An abstract class to be implemented by providers of this subsystem.

    Inheritance
    object
    SubsystemProvider
    SubsystemProvider<XRAnchorSubsystem>
    XRAnchorSubsystem.Provider
    Inherited Members
    SubsystemProvider<XRAnchorSubsystem>.TryInitialize()
    SubsystemProvider<XRAnchorSubsystem>.Start()
    SubsystemProvider<XRAnchorSubsystem>.Stop()
    SubsystemProvider<XRAnchorSubsystem>.Destroy()
    SubsystemProvider.running
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: UnityEngine.XR.ARSubsystems
    Assembly: Unity.XR.ARSubsystems.dll
    Syntax
    public abstract class XRAnchorSubsystem.Provider : SubsystemProvider<XRAnchorSubsystem>

    Methods

    GetChanges(XRAnchor, Allocator)

    Gets a TrackableChanges<T> struct containing any changes to anchors since the last time you called this method. You are responsible to Dispose() the returned TrackableChanges instance.

    Declaration
    public abstract TrackableChanges<XRAnchor> GetChanges(XRAnchor defaultAnchor, Allocator allocator)
    Parameters
    Type Name Description
    XRAnchor defaultAnchor

    The default anchor. You should use this to initialize the returned TrackableChanges<T> instance by passing it to the constructor TrackableChanges(int, int, int, Allocator, T).

    Allocator allocator

    An Allocator to use when allocating the returned NativeArrays.

    Returns
    Type Description
    TrackableChanges<XRAnchor>

    The changes to anchors since the last call to this method.

    TryAddAnchor(Pose, out XRAnchor)

    Attempts to create a new anchor at the given pose.

    Declaration
    public virtual bool TryAddAnchor(Pose pose, out XRAnchor anchor)
    Parameters
    Type Name Description
    Pose pose

    The pose, in session space, of the new anchor.

    XRAnchor anchor

    The output anchor. Valid only if this method returns true.

    Returns
    Type Description
    bool

    true if the new anchor was added. Otherwise, false.

    See Also
    supportsSynchronousAdd

    TryAddAnchorAsync(Pose)

    Attempts to create a new anchor at the given pose.

    Declaration
    public virtual Awaitable<Result<XRAnchor>> TryAddAnchorAsync(Pose pose)
    Parameters
    Type Name Description
    Pose pose

    The pose, in session space, of the new anchor.

    Returns
    Type Description
    Awaitable<Result<XRAnchor>>

    The result of the async operation, containing the newly added anchor if the operation succeeded. You are responsible to await this result.

    Remarks

    The default implementation of this method will attempt to create and return a result using the class's implementation of TryAddAnchor(Pose, out XRAnchor).

    TryAttachAnchor(TrackableId, Pose, out XRAnchor)

    Attempts to create a new anchor "attached" to the trackable with id trackableToAffix. The behavior of the anchor depends on the type of trackable to which this anchor is attached.

    Declaration
    public virtual bool TryAttachAnchor(TrackableId trackableToAffix, Pose pose, out XRAnchor anchor)
    Parameters
    Type Name Description
    TrackableId trackableToAffix

    The id of the trackable to which to attach.

    Pose pose

    The pose, in session space, of the anchor to create.

    XRAnchor anchor

    The new anchor. Only valid if this method returns true.

    Returns
    Type Description
    bool

    true if the new anchor was added. Otherwise, false.

    TryEraseAnchorAsync(SerializableGuid, CancellationToken)

    Attempts to erase the persistent saved data associated with an anchor given its persistent anchor GUID.

    Declaration
    public virtual Awaitable<XRResultStatus> TryEraseAnchorAsync(SerializableGuid savedAnchorGuid, CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    SerializableGuid savedAnchorGuid

    A persistent anchor GUID created by TrySaveAnchorAsync(TrackableId, CancellationToken).

    CancellationToken cancellationToken

    An optional CancellationToken that you can use to cancel the operation in progress if the loaded provider supportsAsyncCancellation.

    Returns
    Type Description
    Awaitable<XRResultStatus>

    The result of the async operation. You are responsible to await this result.

    See Also
    supportsEraseAnchor

    TryGetSavedAnchorIdsAsync(Allocator, CancellationToken)

    Attempts to get a NativeArray containing all saved persistent anchor GUIDs.

    Declaration
    public virtual Awaitable<Result<NativeArray<SerializableGuid>>> TryGetSavedAnchorIdsAsync(Allocator allocator, CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    Allocator allocator

    The allocation strategy to use for the resulting NativeArray.

    CancellationToken cancellationToken

    An optional CancellationToken that you can use to cancel the operation in progress if the loaded provider supportsAsyncCancellation.

    Returns
    Type Description
    Awaitable<Result<NativeArray<SerializableGuid>>>

    The result of the async operation, containing a NativeArray of persistent anchor GUIDs allocated with the given allocator if the operation succeeded. You are responsible to await this result.

    See Also
    supportsGetSavedAnchorIds

    TryLoadAnchorAsync(SerializableGuid, CancellationToken)

    Attempts to load an anchor given its persistent anchor GUID.

    Declaration
    public virtual Awaitable<Result<XRAnchor>> TryLoadAnchorAsync(SerializableGuid savedAnchorGuid, CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    SerializableGuid savedAnchorGuid

    A persistent anchor GUID created by TrySaveAnchorAsync(TrackableId, CancellationToken).

    CancellationToken cancellationToken

    An optional CancellationToken that you can use to cancel the operation in progress if the loaded provider supportsAsyncCancellation.

    Returns
    Type Description
    Awaitable<Result<XRAnchor>>

    The result of the async operation, containing the newly added anchor if the operation succeeded. You are responsible to await this result.

    See Also
    supportsLoadAnchor

    TryRemoveAnchor(TrackableId)

    Attempts to remove an existing anchor with TrackableId anchorId.

    Declaration
    public virtual bool TryRemoveAnchor(TrackableId anchorId)
    Parameters
    Type Name Description
    TrackableId anchorId

    The id of an existing anchor to remove.

    Returns
    Type Description
    bool

    true if the anchor was removed. Otherwise, false.

    TrySaveAnchorAsync(TrackableId, CancellationToken)

    Attempts to persistently save the given anchor so that it can be loaded in a future AR session. Use the SerializableGuid returned by this method as an input parameter to TryLoadAnchorAsync(SerializableGuid, CancellationToken) or TryEraseAnchorAsync(SerializableGuid, CancellationToken).

    Declaration
    public virtual Awaitable<Result<SerializableGuid>> TrySaveAnchorAsync(TrackableId anchorId, CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    TrackableId anchorId

    The TrackableId of the anchor to save.

    CancellationToken cancellationToken

    An optional CancellationToken that you can use to cancel the operation in progress if the loaded provider supportsAsyncCancellation.

    Returns
    Type Description
    Awaitable<Result<SerializableGuid>>

    The result of the async operation, containing a new persistent anchor GUID if the operation succeeded. You are responsible to await this result.

    See Also
    supportsSaveAnchor
    In This Article
    Back to top
    Copyright © 2024 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)