251 lines
9.2 KiB
C#
251 lines
9.2 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Runtime.InteropServices;
|
|
using Unity.XR.OpenXR.Features.PICOSupport;
|
|
using UnityEngine;
|
|
using UnityEngine.XR;
|
|
|
|
namespace Unity.XR.PXR
|
|
{
|
|
public delegate void XrEventDataBufferCallBack(ref XrEventDataBuffer dataBuffer);
|
|
[StructLayout(LayoutKind.Sequential)]
|
|
public struct XrEventDataBuffer
|
|
{
|
|
public XrStructureType type;
|
|
public IntPtr next;
|
|
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 4000)]
|
|
public byte[] data;
|
|
};
|
|
public enum PxrSenseDataProviderState
|
|
{
|
|
Initialized,
|
|
Running,
|
|
Stopped
|
|
}
|
|
public enum PxrFutureState
|
|
{
|
|
Pending = 1,
|
|
Ready = 2
|
|
}
|
|
public enum PxrSemanticLabel
|
|
{
|
|
Unknown = 0,
|
|
Floor,
|
|
Ceiling,
|
|
Wall,
|
|
Door,
|
|
Window,
|
|
Opening,
|
|
Table,
|
|
Sofa,
|
|
Chair,
|
|
Human = 10,
|
|
VirtualWall = 18,
|
|
}
|
|
public enum PxrSceneComponentType
|
|
{
|
|
Location = 0,
|
|
Semantic,
|
|
Box2D,
|
|
Polygon,
|
|
Box3D,
|
|
TriangleMesh = 5,
|
|
}
|
|
|
|
public enum PxrSenseDataProviderType
|
|
{
|
|
SpatialAnchor,
|
|
SceneCapture,
|
|
}
|
|
[StructLayout(LayoutKind.Sequential)]
|
|
public struct PxrSceneBox2D
|
|
{
|
|
public Vector2 offset;
|
|
public XrExtent2Df extent;
|
|
}
|
|
[StructLayout(LayoutKind.Sequential)]
|
|
public struct PxrScenePolygon
|
|
{
|
|
public Vector2[] vertices;
|
|
}
|
|
[StructLayout(LayoutKind.Sequential)]
|
|
public struct PxrSceneBox3D
|
|
{
|
|
public Vector3 position;
|
|
public Quaternion rotation;
|
|
public Vector3 extent;
|
|
}
|
|
public struct PxrSceneComponentData
|
|
{
|
|
public Guid uuid;
|
|
public Vector3 position;
|
|
public Quaternion rotation;
|
|
public PxrSemanticLabel label;
|
|
public PxrSceneComponentType[] types;
|
|
public PxrSceneBox3D box3D;
|
|
public PxrSceneBox2D box2D;
|
|
public PxrScenePolygon polygon;
|
|
}
|
|
public enum PxrMeshLod
|
|
{
|
|
Low,
|
|
Medium,
|
|
High
|
|
}
|
|
[StructLayout(LayoutKind.Sequential)]
|
|
public struct PxrSpatialMeshInfo
|
|
{
|
|
public Guid uuid;
|
|
public MeshChangeState state;
|
|
public Vector3 position;
|
|
public Quaternion rotation;
|
|
public ushort[] indices;
|
|
public Vector3[] vertices;
|
|
public PxrSemanticLabel[] labels;
|
|
}
|
|
[StructLayout(LayoutKind.Sequential)]
|
|
public struct PxrEventSenseDataProviderStateChanged
|
|
{
|
|
public ulong providerHandle;
|
|
public PxrSenseDataProviderState newState;
|
|
}
|
|
public enum PxrResult
|
|
{
|
|
SUCCESS = 0,
|
|
TIMEOUT_EXPIRED = 1,
|
|
SESSION_LOSS_PENDING = 3,
|
|
EVENT_UNAVAILABLE = 4,
|
|
SPACE_BOUNDS_UNAVAILABLE = 7,
|
|
SESSION_NOT_FOCUSED = 8,
|
|
FRAME_DISCARDED = 9,
|
|
ERROR_VALIDATION_FAILURE = -1,
|
|
ERROR_RUNTIME_FAILURE = -2,
|
|
ERROR_OUT_OF_MEMORY = -3,
|
|
ERROR_API_VERSION_UNSUPPORTED = -4,
|
|
ERROR_INITIALIZATION_FAILED = -6,
|
|
ERROR_FUNCTION_UNSUPPORTED = -7,
|
|
ERROR_FEATURE_UNSUPPORTED = -8,
|
|
ERROR_EXTENSION_NOT_PRESENT = -9,
|
|
ERROR_LIMIT_REACHED = -10,
|
|
ERROR_SIZE_INSUFFICIENT = -11,
|
|
ERROR_HANDLE_INVALID = -12,
|
|
ERROR_INSTANCE_LOST = -13,
|
|
ERROR_SESSION_RUNNING = -14,
|
|
ERROR_SESSION_NOT_RUNNING = -16,
|
|
ERROR_SESSION_LOST = -17,
|
|
ERROR_SYSTEM_INVALID = -18,
|
|
ERROR_PATH_INVALID = -19,
|
|
ERROR_PATH_COUNT_EXCEEDED = -20,
|
|
ERROR_PATH_FORMAT_INVALID = -21,
|
|
ERROR_PATH_UNSUPPORTED = -22,
|
|
ERROR_LAYER_INVALID = -23,
|
|
ERROR_LAYER_LIMIT_EXCEEDED = -24,
|
|
ERROR_SWAPCHAIN_RECT_INVALID = -25,
|
|
ERROR_SWAPCHAIN_FORMAT_UNSUPPORTED = -26,
|
|
ERROR_ACTION_TYPE_MISMATCH = -27,
|
|
ERROR_SESSION_NOT_READY = -28,
|
|
ERROR_SESSION_NOT_STOPPING = -29,
|
|
ERROR_TIME_INVALID = -30,
|
|
ERROR_REFERENCE_SPACE_UNSUPPORTED = -31,
|
|
ERROR_FILE_ACCESS_ERROR = -32,
|
|
ERROR_FILE_CONTENTS_INVALID = -33,
|
|
ERROR_FORM_FACTOR_UNSUPPORTED = -34,
|
|
ERROR_FORM_FACTOR_UNAVAILABLE = -35,
|
|
ERROR_API_LAYER_NOT_PRESENT = -36,
|
|
ERROR_CALL_ORDER_INVALID = -37,
|
|
ERROR_GRAPHICS_DEVICE_INVALID = -38,
|
|
ERROR_POSE_INVALID = -39,
|
|
ERROR_INDEX_OUT_OF_RANGE = -40,
|
|
ERROR_VIEW_CONFIGURATION_TYPE_UNSUPPORTED = -41,
|
|
ERROR_ENVIRONMENT_BLEND_MODE_UNSUPPORTED = -42,
|
|
ERROR_NAME_DUPLICATED = -44,
|
|
ERROR_NAME_INVALID = -45,
|
|
ERROR_ACTIONSET_NOT_ATTACHED = -46,
|
|
ERROR_ACTIONSETS_ALREADY_ATTACHED = -47,
|
|
ERROR_LOCALIZED_NAME_DUPLICATED = -48,
|
|
ERROR_LOCALIZED_NAME_INVALID = -49,
|
|
ERROR_GRAPHICS_REQUIREMENTS_CALL_MISSING = -50,
|
|
ERROR_RUNTIME_UNAVAILABLE = -51,
|
|
ERROR_EXTENSION_NOT_ENABLED = -800,
|
|
|
|
ERROR_SPATIAL_LOCALIZATION_RUNNING = -1000,
|
|
ERROR_SPATIAL_LOCALIZATION_NOT_RUNNING = -1001,
|
|
ERROR_SPATIAL_MAP_CREATED = -1002,
|
|
ERROR_SPATIAL_MAP_NOT_CREATED = -1003,
|
|
ERROR_COMPONENT_NOT_SUPPORTED = -501,
|
|
ERROR_COMPONENT_CONFLICT = -502,
|
|
ERROR_COMPONENT_NOT_ADDED = -503,
|
|
ERROR_COMPONENT_ADDED = -504,
|
|
ERROR_ANCHOR_ENTITY_NOT_FOUND = -505,
|
|
ERROR_TRACKING_STATE_INVALID = -506,
|
|
|
|
ERROR_ANCHOR_SHARING_NETWORK_TIMEOUT = -601,
|
|
ERROR_ANCHOR_SHARING_AUTHENTICATION_FAILURE = -602,
|
|
ERROR_ANCHOR_SHARING_NETWORK_FAILURE = -603,
|
|
ERROR_ANCHOR_SHARING_LOCALIZATION_FAIL = -604,
|
|
ERROR_ANCHOR_SHARING_MAP_INSUFFICIENT = -605,
|
|
|
|
|
|
ERROR_EXTENSION_DEPENDENCY_NOT_ENABLED = -1000710001,
|
|
ERROR_PERMISSION_INSUFFICIENT = -1000710000,
|
|
ERROR_ANDROID_THREAD_SETTINGS_ID_INVALID_KHR = -1000003000,
|
|
ERROR_ANDROID_THREAD_SETTINGS_FAILURE_KHR = -1000003001,
|
|
ERROR_CREATE_SPATIAL_ANCHOR_FAILED_MSFT = -1000039001,
|
|
ERROR_SECONDARY_VIEW_CONFIGURATION_TYPE_NOT_ENABLED_MSFT = -1000053000,
|
|
ERROR_CONTROLLER_MODEL_KEY_INVALID_MSFT = -1000055000,
|
|
ERROR_REPROJECTION_MODE_UNSUPPORTED_MSFT = -1000066000,
|
|
ERROR_COMPUTE_NEW_SCENE_NOT_COMPLETED_MSFT = -1000097000,
|
|
ERROR_SCENE_COMPONENT_ID_INVALID_MSFT = -1000097001,
|
|
ERROR_SCENE_COMPONENT_TYPE_MISMATCH_MSFT = -1000097002,
|
|
ERROR_SCENE_MESH_BUFFER_ID_INVALID_MSFT = -1000097003,
|
|
ERROR_SCENE_COMPUTE_FEATURE_INCOMPATIBLE_MSFT = -1000097004,
|
|
ERROR_SCENE_COMPUTE_CONSISTENCY_MISMATCH_MSFT = -1000097005,
|
|
ERROR_DISPLAY_REFRESH_RATE_UNSUPPORTED_FB = -1000101000,
|
|
ERROR_COLOR_SPACE_UNSUPPORTED_FB = -1000108000,
|
|
ERROR_SPACE_COMPONENT_NOT_SUPPORTED_FB = -1000113000,
|
|
ERROR_SPACE_COMPONENT_NOT_ENABLED_FB = -1000113001,
|
|
ERROR_SPACE_COMPONENT_STATUS_PENDING_FB = -1000113002,
|
|
ERROR_SPACE_COMPONENT_STATUS_ALREADY_SET_FB = -1000113003,
|
|
ERROR_UNEXPECTED_STATE_PASSTHROUGH_FB = -1000118000,
|
|
ERROR_FEATURE_ALREADY_CREATED_PASSTHROUGH_FB = -1000118001,
|
|
ERROR_FEATURE_REQUIRED_PASSTHROUGH_FB = -1000118002,
|
|
ERROR_NOT_PERMITTED_PASSTHROUGH_FB = -1000118003,
|
|
ERROR_INSUFFICIENT_RESOURCES_PASSTHROUGH_FB = -1000118004,
|
|
ERROR_UNKNOWN_PASSTHROUGH_FB = -1000118050,
|
|
ERROR_RENDER_MODEL_KEY_INVALID_FB = -1000119000,
|
|
RENDER_MODEL_UNAVAILABLE_FB = 1000119020,
|
|
ERROR_MARKER_NOT_TRACKED_VARJO = -1000124000,
|
|
ERROR_MARKER_ID_INVALID_VARJO = -1000124001,
|
|
ERROR_MARKER_DETECTOR_PERMISSION_DENIED_ML = -1000138000,
|
|
ERROR_MARKER_DETECTOR_LOCATE_FAILED_ML = -1000138001,
|
|
ERROR_MARKER_DETECTOR_INVALID_DATA_QUERY_ML = -1000138002,
|
|
ERROR_MARKER_DETECTOR_INVALID_CREATE_INFO_ML = -1000138003,
|
|
ERROR_MARKER_INVALID_ML = -1000138004,
|
|
ERROR_LOCALIZATION_MAP_INCOMPATIBLE_ML = -1000139000,
|
|
ERROR_LOCALIZATION_MAP_UNAVAILABLE_ML = -1000139001,
|
|
ERROR_LOCALIZATION_MAP_FAIL_ML = -1000139002,
|
|
ERROR_LOCALIZATION_MAP_IMPORT_EXPORT_PERMISSION_DENIED_ML = -1000139003,
|
|
ERROR_LOCALIZATION_MAP_PERMISSION_DENIED_ML = -1000139004,
|
|
ERROR_LOCALIZATION_MAP_ALREADY_EXISTS_ML = -1000139005,
|
|
ERROR_LOCALIZATION_MAP_CANNOT_EXPORT_CLOUD_MAP_ML = -1000139006,
|
|
ERROR_SPATIAL_ANCHOR_NAME_NOT_FOUND_MSFT = -1000142001,
|
|
ERROR_SPATIAL_ANCHOR_NAME_INVALID_MSFT = -1000142002,
|
|
SCENE_MARKER_DATA_NOT_STRING_MSFT = 1000147000,
|
|
ERROR_SPACE_MAPPING_INSUFFICIENT_FB = -1000169000,
|
|
ERROR_SPACE_LOCALIZATION_FAILED_FB = -1000169001,
|
|
ERROR_SPACE_NETWORK_TIMEOUT_FB = -1000169002,
|
|
ERROR_SPACE_NETWORK_REQUEST_FAILED_FB = -1000169003,
|
|
ERROR_SPACE_CLOUD_STORAGE_DISABLED_FB = -1000169004,
|
|
ERROR_PASSTHROUGH_COLOR_LUT_BUFFER_SIZE_MISMATCH_META = -1000266000,
|
|
ENVIRONMENT_DEPTH_NOT_AVAILABLE_META = 1000291000,
|
|
ERROR_HINT_ALREADY_SET_QCOM = -1000306000,
|
|
ERROR_NOT_AN_ANCHOR_HTC = -1000319000,
|
|
ERROR_SPACE_NOT_LOCATABLE_EXT = -1000429000,
|
|
ERROR_PLANE_DETECTION_PERMISSION_DENIED_EXT = -1000429001,
|
|
ERROR_FUTURE_PENDING_EXT = -1000469001,
|
|
ERROR_FUTURE_INVALID_EXT = -1000469002,
|
|
ERROR_EXTENSION_DEPENDENCY_NOT_ENABLED_KHR = ERROR_EXTENSION_DEPENDENCY_NOT_ENABLED,
|
|
ERROR_PERMISSION_INSUFFICIENT_KHR = ERROR_PERMISSION_INSUFFICIENT,
|
|
}
|
|
|
|
} |