summaryrefslogtreecommitdiffstats
path: root/gfx/vr/ovr_capi_dynamic.h
diff options
context:
space:
mode:
Diffstat (limited to 'gfx/vr/ovr_capi_dynamic.h')
-rw-r--r--gfx/vr/ovr_capi_dynamic.h676
1 files changed, 0 insertions, 676 deletions
diff --git a/gfx/vr/ovr_capi_dynamic.h b/gfx/vr/ovr_capi_dynamic.h
deleted file mode 100644
index 41e313dca..000000000
--- a/gfx/vr/ovr_capi_dynamic.h
+++ /dev/null
@@ -1,676 +0,0 @@
-/* -*- Mode: c++; c-basic-offset: 2; indent-tabs-mode: nil; tab-width: 40 -*- */
-/* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this file,
- * You can obtain one at http://mozilla.org/MPL/2.0/. */
-
-/* This file contains just the needed struct definitions for
- * interacting with the Oculus VR C API, without needing to #include
- * OVR_CAPI.h directly. Note that it uses the same type names as the
- * CAPI, and cannot be #included at the same time as OVR_CAPI.h. It
- * does not include the entire C API, just want's needed.
- */
-
-#ifdef OVR_CAPI_h
-#ifdef _MSC_VER
-#pragma message("ovr_capi_dyanmic.h: OVR_CAPI.h included before ovr_capi_dynamic.h, skipping this")
-#else
-#warning OVR_CAPI.h included before ovr_capi_dynamic.h, skipping this
-#endif
-#define mozilla_ovr_capi_dynamic_h_
-
-#else
-
-#ifndef mozilla_ovr_capi_dynamic_h_
-#define mozilla_ovr_capi_dynamic_h_
-
-#define OVR_CAPI_LIMITED_MOZILLA 1
-
-#ifdef HAVE_64BIT_BUILD
-#define OVR_PTR_SIZE 8
-#define OVR_ON64(x) x
-#else
-#define OVR_PTR_SIZE 4
-#define OVR_ON64(x) /**/
-#endif
-
-#if defined(_WIN32)
-#define OVR_PFN __cdecl
-#else
-#define OVR_PFN
-#endif
-
-#if !defined(OVR_ALIGNAS)
-#if defined(__GNUC__) || defined(__clang__)
-#define OVR_ALIGNAS(n) __attribute__((aligned(n)))
-#elif defined(_MSC_VER) || defined(__INTEL_COMPILER)
-#define OVR_ALIGNAS(n) __declspec(align(n))
-#elif defined(__CC_ARM)
-#define OVR_ALIGNAS(n) __align(n)
-#else
-#error Need to define OVR_ALIGNAS
-#endif
-#endif
-
-#if !defined(OVR_UNUSED_STRUCT_PAD)
-#define OVR_UNUSED_STRUCT_PAD(padName, size) char padName[size];
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-typedef int32_t ovrResult;
-
-typedef enum {
- ovrSuccess = 0,
- ovrSuccess_NotVisible = 1000,
- ovrSuccess_HMDFirmwareMismatch = 4100,
- ovrSuccess_TrackerFirmwareMismatch = 4101,
- ovrSuccess_ControllerFirmwareMismatch = 4104,
-} ovrSuccessType;
-
-typedef char ovrBool;
-typedef struct OVR_ALIGNAS(4) { int x, y; } ovrVector2i;
-typedef struct OVR_ALIGNAS(4) { int w, h; } ovrSizei;
-typedef struct OVR_ALIGNAS(4) { ovrVector2i Pos; ovrSizei Size; } ovrRecti;
-typedef struct OVR_ALIGNAS(4) { float x, y, z, w; } ovrQuatf;
-typedef struct OVR_ALIGNAS(4) { float x, y; } ovrVector2f;
-typedef struct OVR_ALIGNAS(4) { float x, y, z; } ovrVector3f;
-typedef struct OVR_ALIGNAS(4) { float M[4][4]; } ovrMatrix4f;
-
-typedef struct OVR_ALIGNAS(4) {
- ovrQuatf Orientation;
- ovrVector3f Position;
-} ovrPosef;
-
-typedef struct OVR_ALIGNAS(8) {
- ovrPosef ThePose;
- ovrVector3f AngularVelocity;
- ovrVector3f LinearVelocity;
- ovrVector3f AngularAcceleration;
- ovrVector3f LinearAcceleration;
- OVR_UNUSED_STRUCT_PAD(pad0, 4)
- double TimeInSeconds;
-} ovrPoseStatef;
-
-typedef struct {
- float UpTan;
- float DownTan;
- float LeftTan;
- float RightTan;
-} ovrFovPort;
-
-typedef enum {
- ovrHmd_None = 0,
- ovrHmd_DK1 = 3,
- ovrHmd_DKHD = 4,
- ovrHmd_DK2 = 6,
- ovrHmd_CB = 8,
- ovrHmd_Other = 9,
- ovrHmd_E3_2015 = 10,
- ovrHmd_ES06 = 11,
- ovrHmd_ES09 = 12,
- ovrHmd_ES11 = 13,
- ovrHmd_CV1 = 14,
- ovrHmd_EnumSize = 0x7fffffff
-} ovrHmdType;
-
-typedef enum {
- ovrHmdCap_DebugDevice = 0x0010,
- ovrHmdCap_EnumSize = 0x7fffffff
-} ovrHmdCaps;
-
-typedef enum
-{
- ovrTrackingCap_Orientation = 0x0010,
- ovrTrackingCap_MagYawCorrection = 0x0020,
- ovrTrackingCap_Position = 0x0040,
- ovrTrackingCap_EnumSize = 0x7fffffff
-} ovrTrackingCaps;
-
-typedef enum {
- ovrEye_Left = 0,
- ovrEye_Right = 1,
- ovrEye_Count = 2,
- ovrEye_EnumSize = 0x7fffffff
-} ovrEyeType;
-
-typedef enum {
- ovrTrackingOrigin_EyeLevel = 0,
- ovrTrackingOrigin_FloorLevel = 1,
- ovrTrackingOrigin_Count = 2, ///< \internal Count of enumerated elements.
- ovrTrackingOrigin_EnumSize = 0x7fffffff ///< \internal Force type int32_t.
-} ovrTrackingOrigin;
-
-typedef struct OVR_ALIGNAS(OVR_PTR_SIZE) {
- char Reserved[8];
-} ovrGraphicsLuid;
-
-typedef struct OVR_ALIGNAS(OVR_PTR_SIZE) {
- ovrHmdType Type;
- OVR_ON64(OVR_UNUSED_STRUCT_PAD(pad0, 4))
- char ProductName[64];
- char Manufacturer[64];
- short VendorId;
- short ProductId;
- char SerialNumber[24];
- short FirmwareMajor;
- short FirmwareMinor;
- unsigned int AvailableHmdCaps;
- unsigned int DefaultHmdCaps;
- unsigned int AvailableTrackingCaps;
- unsigned int DefaultTrackingCaps;
- ovrFovPort DefaultEyeFov[ovrEye_Count];
- ovrFovPort MaxEyeFov[ovrEye_Count];
- ovrSizei Resolution;
- float DisplayRefreshRate;
- OVR_ON64(OVR_UNUSED_STRUCT_PAD(pad1, 4))
-} ovrHmdDesc;
-
-typedef struct ovrHmdStruct* ovrSession;
-
-typedef enum {
- ovrStatus_OrientationTracked = 0x0001,
- ovrStatus_PositionTracked = 0x0002,
- ovrStatus_EnumSize = 0x7fffffff
-} ovrStatusBits;
-
-typedef struct OVR_ALIGNAS(OVR_PTR_SIZE) {
- float FrustumHFovInRadians;
- float FrustumVFovInRadians;
- float FrustumNearZInMeters;
- float FrustumFarZInMeters;
-} ovrTrackerDesc;
-
-typedef enum {
- ovrTracker_Connected = 0x0020,
- ovrTracker_PoseTracked = 0x0004
-} ovrTrackerFlags;
-
-typedef struct OVR_ALIGNAS(8) {
- unsigned int TrackerFlags;
- ovrPosef Pose;
- ovrPosef LeveledPose;
- OVR_UNUSED_STRUCT_PAD(pad0, 4)
-} ovrTrackerPose;
-
-typedef struct OVR_ALIGNAS(8) {
- ovrPoseStatef HeadPose;
- unsigned int StatusFlags;
- ovrPoseStatef HandPoses[2];
- unsigned int HandStatusFlags[2];
- ovrPosef CalibratedOrigin;
-} ovrTrackingState;
-
-typedef struct OVR_ALIGNAS(4) {
- ovrEyeType Eye;
- ovrFovPort Fov;
- ovrRecti DistortedViewport;
- ovrVector2f PixelsPerTanAngleAtCenter;
- ovrVector3f HmdToEyeOffset;
-} ovrEyeRenderDesc;
-
-typedef struct OVR_ALIGNAS(4) {
- float Projection22;
- float Projection23;
- float Projection32;
-} ovrTimewarpProjectionDesc;
-
-typedef struct OVR_ALIGNAS(4) {
- ovrVector3f HmdToEyeViewOffset[ovrEye_Count];
- float HmdSpaceToWorldScaleInMeters;
-} ovrViewScaleDesc;
-
-typedef enum {
- ovrTexture_2D,
- ovrTexture_2D_External,
- ovrTexture_Cube,
- ovrTexture_Count,
- ovrTexture_EnumSize = 0x7fffffff
-} ovrTextureType;
-
-typedef enum {
- ovrTextureBind_None,
- ovrTextureBind_DX_RenderTarget = 0x0001,
- ovrTextureBind_DX_UnorderedAccess = 0x0002,
- ovrTextureBind_DX_DepthStencil = 0x0004,
- ovrTextureBind_EnumSize = 0x7fffffff
-} ovrTextureBindFlags;
-
-typedef enum {
- OVR_FORMAT_UNKNOWN,
- OVR_FORMAT_B5G6R5_UNORM,
- OVR_FORMAT_B5G5R5A1_UNORM,
- OVR_FORMAT_B4G4R4A4_UNORM,
- OVR_FORMAT_R8G8B8A8_UNORM,
- OVR_FORMAT_R8G8B8A8_UNORM_SRGB,
- OVR_FORMAT_B8G8R8A8_UNORM,
- OVR_FORMAT_B8G8R8A8_UNORM_SRGB,
- OVR_FORMAT_B8G8R8X8_UNORM,
- OVR_FORMAT_B8G8R8X8_UNORM_SRGB,
- OVR_FORMAT_R16G16B16A16_FLOAT,
- OVR_FORMAT_D16_UNORM,
- OVR_FORMAT_D24_UNORM_S8_UINT,
- OVR_FORMAT_D32_FLOAT,
- OVR_FORMAT_D32_FLOAT_S8X24_UINT,
- OVR_FORMAT_ENUMSIZE = 0x7fffffff
-} ovrTextureFormat;
-
-typedef enum {
- ovrTextureMisc_None,
- ovrTextureMisc_DX_Typeless = 0x0001,
- ovrTextureMisc_AllowGenerateMips = 0x0002,
- ovrTextureMisc_EnumSize = 0x7fffffff
-} ovrTextureFlags;
-
-typedef struct {
- ovrTextureType Type;
- ovrTextureFormat Format;
- int ArraySize;
- int Width;
- int Height;
- int MipLevels;
- int SampleCount;
- ovrBool StaticImage;
- unsigned int MiscFlags;
- unsigned int BindFlags;
-} ovrTextureSwapChainDesc;
-
-typedef struct
-{
- ovrTextureFormat Format;
- int Width;
- int Height;
- unsigned int MiscFlags;
-} ovrMirrorTextureDesc;
-
-typedef void* ovrTextureSwapChain;
-typedef struct ovrMirrorTextureData* ovrMirrorTexture;
-
-
-
-typedef enum {
- ovrButton_A = 0x00000001,
- ovrButton_B = 0x00000002,
- ovrButton_RThumb = 0x00000004,
- ovrButton_RShoulder = 0x00000008,
- ovrButton_RMask = ovrButton_A | ovrButton_B | ovrButton_RThumb | ovrButton_RShoulder,
- ovrButton_X = 0x00000100,
- ovrButton_Y = 0x00000200,
- ovrButton_LThumb = 0x00000400,
- ovrButton_LShoulder = 0x00000800,
- ovrButton_LMask = ovrButton_X | ovrButton_Y | ovrButton_LThumb | ovrButton_LShoulder,
- ovrButton_Up = 0x00010000,
- ovrButton_Down = 0x00020000,
- ovrButton_Left = 0x00040000,
- ovrButton_Right = 0x00080000,
- ovrButton_Enter = 0x00100000,
- ovrButton_Back = 0x00200000,
- ovrButton_VolUp = 0x00400000,
- ovrButton_VolDown = 0x00800000,
- ovrButton_Home = 0x01000000,
- ovrButton_Private = ovrButton_VolUp | ovrButton_VolDown | ovrButton_Home,
- ovrButton_EnumSize = 0x7fffffff
-} ovrButton;
-
-typedef enum {
- ovrTouch_A = ovrButton_A,
- ovrTouch_B = ovrButton_B,
- ovrTouch_RThumb = ovrButton_RThumb,
- ovrTouch_RIndexTrigger = 0x00000010,
- ovrTouch_RButtonMask = ovrTouch_A | ovrTouch_B | ovrTouch_RThumb | ovrTouch_RIndexTrigger,
- ovrTouch_X = ovrButton_X,
- ovrTouch_Y = ovrButton_Y,
- ovrTouch_LThumb = ovrButton_LThumb,
- ovrTouch_LIndexTrigger = 0x00001000,
- ovrTouch_LButtonMask = ovrTouch_X | ovrTouch_Y | ovrTouch_LThumb | ovrTouch_LIndexTrigger,
- ovrTouch_RIndexPointing = 0x00000020,
- ovrTouch_RThumbUp = 0x00000040,
- ovrTouch_RPoseMask = ovrTouch_RIndexPointing | ovrTouch_RThumbUp,
- ovrTouch_LIndexPointing = 0x00002000,
- ovrTouch_LThumbUp = 0x00004000,
- ovrTouch_LPoseMask = ovrTouch_LIndexPointing | ovrTouch_LThumbUp,
- ovrTouch_EnumSize = 0x7fffffff
-} ovrTouch;
-
-typedef enum {
- ovrControllerType_None = 0x00,
- ovrControllerType_LTouch = 0x01,
- ovrControllerType_RTouch = 0x02,
- ovrControllerType_Touch = 0x03,
- ovrControllerType_Remote = 0x04,
- ovrControllerType_XBox = 0x10,
- ovrControllerType_Active = 0xff,
- ovrControllerType_EnumSize = 0x7fffffff
-} ovrControllerType;
-
-typedef enum {
- ovrHand_Left = 0,
- ovrHand_Right = 1,
- ovrHand_Count = 2,
- ovrHand_EnumSize = 0x7fffffff
-} ovrHandType;
-
-typedef struct {
- double TimeInSeconds;
- unsigned int Buttons;
- unsigned int Touches;
- float IndexTrigger[ovrHand_Count];
- float HandTrigger[ovrHand_Count];
- ovrVector2f Thumbstick[ovrHand_Count];
- ovrControllerType ControllerType;
-} ovrInputState;
-
-typedef enum {
- ovrInit_Debug = 0x00000001,
- ovrInit_RequestVersion = 0x00000004,
- ovrinit_WritableBits = 0x00ffffff,
- ovrInit_EnumSize = 0x7fffffff
-} ovrInitFlags;
-
-typedef enum {
- ovrLogLevel_Debug = 0,
- ovrLogLevel_Info = 1,
- ovrLogLevel_Error = 2,
- ovrLogLevel_EnumSize = 0x7fffffff
-} ovrLogLevel;
-
-typedef void (OVR_PFN* ovrLogCallback)(uintptr_t userData, int level, const char* message);
-
-typedef struct OVR_ALIGNAS(8) {
- uint32_t Flags;
- uint32_t RequestedMinorVersion;
- ovrLogCallback LogCallback;
- uintptr_t UserData;
- uint32_t ConnectionTimeoutMS;
- OVR_ON64(OVR_UNUSED_STRUCT_PAD(pad0, 4))
-} ovrInitParams;
-
-typedef ovrResult(OVR_PFN* pfn_ovr_Initialize)(const ovrInitParams* params);
-typedef void (OVR_PFN* pfn_ovr_Shutdown)();
-
-typedef struct {
- ovrResult Result;
- char ErrorString[512];
-} ovrErrorInfo;
-
-typedef void (OVR_PFN* pfn_ovr_GetLastErrorInfo)(ovrErrorInfo* errorInfo);
-typedef const char* (OVR_PFN* pfn_ovr_GetVersionString)();
-typedef int (OVR_PFN* pfn_ovr_TraceMessage)(int level, const char* message);
-typedef ovrHmdDesc (OVR_PFN* pfn_ovr_GetHmdDesc)(ovrSession session);
-typedef unsigned int (OVR_PFN* pfn_ovr_GetTrackerCount)(ovrSession session);
-typedef ovrTrackerDesc* (OVR_PFN* pfn_ovr_GetTrackerDesc)(ovrSession session, unsigned int trackerDescIndex);
-typedef ovrResult (OVR_PFN* pfn_ovr_Create)(ovrSession* pSession, ovrGraphicsLuid* pLuid);
-typedef void (OVR_PFN* pfn_ovr_Destroy)(ovrSession session);
-
-typedef struct {
- ovrBool IsVisible;
- ovrBool HmdPresent;
- ovrBool HmdMounted;
- ovrBool DisplayLost;
- ovrBool ShouldQuit;
- ovrBool ShouldRecenter;
-} ovrSessionStatus;
-
-typedef ovrResult (OVR_PFN* pfn_ovr_GetSessionStatus)(ovrSession session, ovrSessionStatus* sessionStatus);
-
-typedef ovrResult (OVR_PFN* pfn_ovr_SetTrackingOriginType)(ovrSession session, ovrTrackingOrigin origin);
-typedef ovrTrackingOrigin (OVR_PFN* pfn_ovr_GetTrackingOriginType)(ovrSession session);
-typedef ovrResult (OVR_PFN* pfn_ovr_RecenterTrackingOrigin)(ovrSession session);
-typedef void (OVR_PFN* pfn_ovr_ClearShouldRecenterFlag)(ovrSession session);
-typedef ovrTrackingState (OVR_PFN* pfn_ovr_GetTrackingState)(ovrSession session, double absTime, ovrBool latencyMarker);
-typedef ovrTrackerPose (OVR_PFN* pfn_ovr_GetTrackerPose)(ovrSession session, unsigned int trackerPoseIndex);
-typedef ovrResult (OVR_PFN* pfn_ovr_GetInputState)(ovrSession session, ovrControllerType controllerType, ovrInputState* inputState);
-typedef unsigned int (OVR_PFN* pfn_ovr_GetConnectedControllerTypes)(ovrSession session);
-typedef ovrResult (OVR_PFN* pfn_ovr_SetControllerVibration)(ovrSession session, ovrControllerType controllerType, float frequency, float amplitude);
-
-enum {
- ovrMaxLayerCount = 16
-};
-
-typedef enum {
- ovrLayerType_Disabled = 0,
- ovrLayerType_EyeFov = 1,
- ovrLayerType_Quad = 3,
- ovrLayerType_EyeMatrix = 5,
- ovrLayerType_EnumSize = 0x7fffffff
-} ovrLayerType;
-
-typedef enum {
- ovrLayerFlag_HighQuality = 0x01,
- ovrLayerFlag_TextureOriginAtBottomLeft = 0x02,
- ovrLayerFlag_HeadLocked = 0x04
-} ovrLayerFlags;
-
-typedef struct OVR_ALIGNAS(OVR_PTR_SIZE) {
- ovrLayerType Type;
- unsigned Flags;
-} ovrLayerHeader;
-
-typedef struct OVR_ALIGNAS(OVR_PTR_SIZE) {
- ovrLayerHeader Header;
- ovrTextureSwapChain ColorTexture[ovrEye_Count];
- ovrRecti Viewport[ovrEye_Count];
- ovrFovPort Fov[ovrEye_Count];
- ovrPosef RenderPose[ovrEye_Count];
- double SensorSampleTime;
-} ovrLayerEyeFov;
-
-typedef struct OVR_ALIGNAS(OVR_PTR_SIZE) {
- ovrLayerHeader Header;
- ovrTextureSwapChain ColorTexture[ovrEye_Count];
- ovrRecti Viewport[ovrEye_Count];
- ovrPosef RenderPose[ovrEye_Count];
- ovrMatrix4f Matrix[ovrEye_Count];
- double SensorSampleTime;
-} ovrLayerEyeMatrix;
-
-typedef struct OVR_ALIGNAS(OVR_PTR_SIZE) {
- ovrLayerHeader Header;
- ovrTextureSwapChain ColorTexture;
- ovrRecti Viewport;
- ovrPosef QuadPoseCenter;
- ovrVector2f QuadSize;
-} ovrLayerQuad;
-
-typedef union {
- ovrLayerHeader Header;
- ovrLayerEyeFov EyeFov;
- ovrLayerQuad Quad;
-} ovrLayer_Union;
-
-
-typedef ovrResult (OVR_PFN* pfn_ovr_GetTextureSwapChainLength)(ovrSession session, ovrTextureSwapChain chain, int* out_Length);
-typedef ovrResult (OVR_PFN* pfn_ovr_GetTextureSwapChainCurrentIndex)(ovrSession session, ovrTextureSwapChain chain, int* out_Index);
-typedef ovrResult (OVR_PFN* pfn_ovr_GetTextureSwapChainDesc)(ovrSession session, ovrTextureSwapChain chain, ovrTextureSwapChainDesc* out_Desc);
-typedef ovrResult (OVR_PFN* pfn_ovr_CommitTextureSwapChain)(ovrSession session, ovrTextureSwapChain chain);
-typedef void (OVR_PFN* pfn_ovr_DestroyTextureSwapChain)(ovrSession session, ovrTextureSwapChain chain);
-typedef void (OVR_PFN* pfn_ovr_DestroyMirrorTexture)(ovrSession session, ovrMirrorTexture mirrorTexture);
-typedef ovrSizei(OVR_PFN* pfn_ovr_GetFovTextureSize)(ovrSession session, ovrEyeType eye, ovrFovPort fov, float pixelsPerDisplayPixel);
-typedef ovrEyeRenderDesc(OVR_PFN* pfn_ovr_GetRenderDesc)(ovrSession session, ovrEyeType eyeType, ovrFovPort fov);
-typedef ovrResult(OVR_PFN* pfn_ovr_SubmitFrame)(ovrSession session, unsigned int frameIndex,
- const ovrViewScaleDesc* viewScaleDesc,
- ovrLayerHeader const * const * layerPtrList, unsigned int layerCount);
-typedef double (OVR_PFN* pfn_ovr_GetPredictedDisplayTime)(ovrSession session, long long frameIndex);
-typedef double (OVR_PFN* pfn_ovr_GetTimeInSeconds)();
-
-
-typedef enum {
- ovrPerfHud_Off = 0,
- ovrPerfHud_PerfSummary = 1,
- ovrPerfHud_LatencyTiming = 2,
- ovrPerfHud_AppRenderTiming = 3,
- ovrPerfHud_CompRenderTiming = 4,
- ovrPerfHud_VersionInfo = 5,
- ovrPerfHud_Count = 6,
- ovrPerfHud_EnumSize = 0x7fffffff
-} ovrPerfHudMode;
-
-typedef enum {
- ovrLayerHud_Off = 0,
- ovrLayerHud_Info = 1,
- ovrLayerHud_EnumSize = 0x7fffffff
-} ovrLayerHudMode;
-
-typedef enum {
- ovrDebugHudStereo_Off = 0,
- ovrDebugHudStereo_Quad = 1,
- ovrDebugHudStereo_QuadWithCrosshair = 2,
- ovrDebugHudStereo_CrosshairAtInfinity = 3,
- ovrDebugHudStereo_Count,
- ovrDebugHudStereo_EnumSize = 0x7fffffff
-} ovrDebugHudStereoMode;
-
-typedef ovrBool(OVR_PFN* pfn_ovr_GetBool)(ovrSession session, const char* propertyName, ovrBool defaultVal);
-typedef ovrBool(OVR_PFN* pfn_ovr_SetBool)(ovrSession session, const char* propertyName, ovrBool value);
-typedef int (OVR_PFN* pfn_ovr_GetInt)(ovrSession session, const char* propertyName, int defaultVal);
-typedef ovrBool (OVR_PFN* pfn_ovr_SetInt)(ovrSession session, const char* propertyName, int value);
-typedef float (OVR_PFN* pfn_ovr_GetFloat)(ovrSession session, const char* propertyName, float defaultVal);
-typedef ovrBool (OVR_PFN* pfn_ovr_SetFloat)(ovrSession session, const char* propertyName, float value);
-typedef unsigned int (OVR_PFN* pfn_ovr_GetFloatArray)(ovrSession session, const char* propertyName,
- float values[], unsigned int valuesCapacity);
-typedef ovrBool (OVR_PFN* pfn_ovr_SetFloatArray)(ovrSession session, const char* propertyName,
- const float values[], unsigned int valuesSize);
-typedef const char* (OVR_PFN* pfn_ovr_GetString)(ovrSession session, const char* propertyName,
- const char* defaultVal);
-typedef ovrBool (OVR_PFN* pfn_ovr_SetString)(ovrSession session, const char* propertyName,
- const char* value);
-
-
-
-typedef enum {
- ovrError_MemoryAllocationFailure = -1000,
- ovrError_SocketCreationFailure = -1001,
- ovrError_InvalidSession = -1002,
- ovrError_Timeout = -1003,
- ovrError_NotInitialized = -1004,
- ovrError_InvalidParameter = -1005,
- ovrError_ServiceError = -1006,
- ovrError_NoHmd = -1007,
- ovrError_Unsupported = -1009,
- ovrError_DeviceUnavailable = -1010,
- ovrError_InvalidHeadsetOrientation = -1011,
- ovrError_ClientSkippedDestroy = -1012,
- ovrError_ClientSkippedShutdown = -1013,
- ovrError_AudioReservedBegin = -2000,
- ovrError_AudioDeviceNotFound = -2001,
- ovrError_AudioComError = -2002,
- ovrError_AudioReservedEnd = -2999,
- ovrError_Initialize = -3000,
- ovrError_LibLoad = -3001,
- ovrError_LibVersion = -3002,
- ovrError_ServiceConnection = -3003,
- ovrError_ServiceVersion = -3004,
- ovrError_IncompatibleOS = -3005,
- ovrError_DisplayInit = -3006,
- ovrError_ServerStart = -3007,
- ovrError_Reinitialization = -3008,
- ovrError_MismatchedAdapters = -3009,
- ovrError_LeakingResources = -3010,
- ovrError_ClientVersion = -3011,
- ovrError_OutOfDateOS = -3012,
- ovrError_OutOfDateGfxDriver = -3013,
- ovrError_IncompatibleGPU = -3014,
- ovrError_NoValidVRDisplaySystem = -3015,
- ovrError_Obsolete = -3016,
- ovrError_DisabledOrDefaultAdapter = -3017,
- ovrError_HybridGraphicsNotSupported = -3018,
- ovrError_DisplayManagerInit = -3019,
- ovrError_TrackerDriverInit = -3020,
- ovrError_InvalidBundleAdjustment = -4000,
- ovrError_USBBandwidth = -4001,
- ovrError_USBEnumeratedSpeed = -4002,
- ovrError_ImageSensorCommError = -4003,
- ovrError_GeneralTrackerFailure = -4004,
- ovrError_ExcessiveFrameTruncation = -4005,
- ovrError_ExcessiveFrameSkipping = -4006,
- ovrError_SyncDisconnected = -4007,
- ovrError_TrackerMemoryReadFailure = -4008,
- ovrError_TrackerMemoryWriteFailure = -4009,
- ovrError_TrackerFrameTimeout = -4010,
- ovrError_TrackerTruncatedFrame = -4011,
- ovrError_TrackerDriverFailure = -4012,
- ovrError_TrackerNRFFailure = -4013,
- ovrError_HardwareGone = -4014,
- ovrError_NordicEnabledNoSync = -4015,
- ovrError_NordicSyncNoFrames = -4016,
- ovrError_CatastrophicFailure = -4017,
- ovrError_HMDFirmwareMismatch = -4100,
- ovrError_TrackerFirmwareMismatch = -4101,
- ovrError_BootloaderDeviceDetected = -4102,
- ovrError_TrackerCalibrationError = -4103,
- ovrError_ControllerFirmwareMismatch = -4104,
- ovrError_IMUTooManyLostSamples = -4200,
- ovrError_IMURateError = -4201,
- ovrError_FeatureReportFailure = -4202,
- ovrError_Incomplete = -5000,
- ovrError_Abandoned = -5001,
- ovrError_DisplayLost = -6000,
- ovrError_TextureSwapChainFull = -6001,
- ovrError_TextureSwapChainInvalid = -6002,
- ovrError_RuntimeException = -7000,
- ovrError_MetricsUnknownApp = -90000,
- ovrError_MetricsDuplicateApp = -90001,
- ovrError_MetricsNoEvents = -90002,
- ovrError_MetricsRuntime = -90003,
- ovrError_MetricsFile = -90004,
- ovrError_MetricsNoClientInfo = -90005,
- ovrError_MetricsNoAppMetaData = -90006,
- ovrError_MetricsNoApp = -90007,
- ovrError_MetricsOafFailure = -90008,
- ovrError_MetricsSessionAlreadyActive = -90009,
- ovrError_MetricsSessionNotActive = -90010,
-} ovrErrorType;
-
-
-#ifdef XP_WIN
-
-struct IUnknown;
-
-typedef ovrResult (OVR_PFN* pfn_ovr_CreateTextureSwapChainDX)(ovrSession session,
- IUnknown* d3dPtr,
- const ovrTextureSwapChainDesc* desc,
- ovrTextureSwapChain* out_TextureSwapChain);
-
-typedef ovrResult (OVR_PFN* pfn_ovr_GetTextureSwapChainBufferDX)(ovrSession session,
- ovrTextureSwapChain chain,
- int index,
- IID iid,
- void** out_Buffer);
-
-typedef ovrResult (OVR_PFN* pfn_ovr_CreateMirrorTextureDX)(ovrSession session,
- IUnknown* d3dPtr,
- const ovrMirrorTextureDesc* desc,
- ovrMirrorTexture* out_MirrorTexture);
-
-typedef ovrResult (OVR_PFN* pfn_ovr_GetMirrorTextureBufferDX)(ovrSession session,
- ovrMirrorTexture mirrorTexture,
- IID iid,
- void** out_Buffer);
-
-#endif
-
-
-typedef ovrResult (OVR_PFN* pfn_ovr_CreateTextureSwapChainGL)(ovrSession session,
- const ovrTextureSwapChainDesc* desc,
- ovrTextureSwapChain* out_TextureSwapChain);
-
-typedef ovrResult (OVR_PFN* pfn_ovr_GetTextureSwapChainBufferGL)(ovrSession session,
- ovrTextureSwapChain chain,
- int index,
- unsigned int* out_TexId);
-
-typedef ovrResult (OVR_PFN* pfn_ovr_CreateMirrorTextureGL)(ovrSession session,
- const ovrMirrorTextureDesc* desc,
- ovrMirrorTexture* out_MirrorTexture);
-
-typedef ovrResult (OVR_PFN* pfn_ovr_GetMirrorTextureBufferGL)(ovrSession session,
- ovrMirrorTexture mirrorTexture,
- unsigned int* out_TexId);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* mozilla_ovr_capi_dynamic_h_ */
-#endif /* OVR_CAPI_h */