84 lines
2.8 KiB
C#
84 lines
2.8 KiB
C#
namespace UnityEngine.XR.ARKit
|
|
{
|
|
/// <summary>
|
|
/// The status of a session serialization request.
|
|
/// </summary>
|
|
/// <seealso cref="ARKitSessionSubsystem.GetARWorldMapAsync(System.Action{ARWorldMapRequestStatus,ARWorldMap})"/>
|
|
/// <seealso cref="ARKitSessionSubsystem.worldMappingStatus"/>
|
|
public enum ARWorldMapRequestStatus
|
|
{
|
|
/// <summary>
|
|
/// The request is not valid.
|
|
/// </summary>
|
|
Invalid = 0,
|
|
|
|
/// <summary>
|
|
/// The request is pending.
|
|
/// </summary>
|
|
Pending,
|
|
|
|
/// <summary>
|
|
/// The request completed successfully.
|
|
/// </summary>
|
|
Success,
|
|
|
|
/// <summary>
|
|
/// An unknown error occurred.
|
|
/// </summary>
|
|
ErrorUnknown,
|
|
|
|
/// <summary>
|
|
/// The request failed because serialization is not supported.
|
|
/// </summary>
|
|
ErrorNotSupported,
|
|
|
|
/// <summary>
|
|
/// The request failed because the supplied data was not valid.
|
|
/// </summary>
|
|
ErrorBadData,
|
|
|
|
/// <summary>
|
|
/// The request failed because there are insufficient features to
|
|
/// serialize a session. The API requires more data; try scanning more of
|
|
/// the environment.
|
|
/// </summary>
|
|
ErrorInsufficientFeatures
|
|
}
|
|
|
|
/// <summary>
|
|
/// Extension methods for the <see cref="ARWorldMapRequestStatus"/> enum.
|
|
/// </summary>
|
|
public static class ARWorldMapRequestStatusExtensions
|
|
{
|
|
/// <summary>
|
|
/// Whether the serialization request is complete. `IsDone` does not mean the
|
|
/// request completed successfully. See <see cref="IsError(ARWorldMapRequestStatus)"/>.
|
|
/// </summary>
|
|
/// <param name="status">The <see cref="ARWorldMapRequestStatus"/> being extended.</param>
|
|
/// <returns><see langword="true"/> if <paramref name="status"/> indicates the request has completed.
|
|
/// Otherwise, returns <see langword="false"/>.</returns>
|
|
public static bool IsDone(this ARWorldMapRequestStatus status)
|
|
{
|
|
return status != ARWorldMapRequestStatus.Pending;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Whether the serialization request completed with an error.
|
|
/// </summary>
|
|
/// <param name="status">The <see cref="ARWorldMapRequestStatus"/> being extended.</param>
|
|
/// <returns><see langword="true"/> if <paramref name="status"/> indicates an error status.
|
|
/// Otherwise, returns <see langword="false"/>.</returns>
|
|
public static bool IsError(this ARWorldMapRequestStatus status)
|
|
{
|
|
switch (status)
|
|
{
|
|
case ARWorldMapRequestStatus.Pending:
|
|
case ARWorldMapRequestStatus.Success:
|
|
return false;
|
|
default:
|
|
return true;
|
|
}
|
|
}
|
|
}
|
|
}
|