com.jme3.system.jopenvr.OpenVRUtil Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jme3-vr Show documentation
Show all versions of jme3-vr Show documentation
jMonkeyEngine is a 3-D game engine for adventurous Java developers
package com.jme3.system.jopenvr;
import com.jme3.input.vr.openvr.OpenVRInput;
import com.jme3.system.jopenvr.JOpenVRLibrary.EColorSpace;
import com.jme3.system.jopenvr.JOpenVRLibrary.ETextureType;
import com.jme3.system.jopenvr.JOpenVRLibrary.ETrackedDeviceProperty;
import com.jme3.system.jopenvr.JOpenVRLibrary.ETrackedPropertyError;
import com.jme3.system.jopenvr.JOpenVRLibrary.EVRCompositorError;
import com.jme3.system.jopenvr.JOpenVRLibrary.EVRInitError;
import com.sun.jna.Memory;
import com.sun.jna.Pointer;
import com.sun.jna.ptr.IntByReference;
/**
* A utility class that provide helper methods for OpenVR system.
* @author Julien Seinturier - 2017 - http://www.seinturier.fr
*/
public class OpenVRUtil {
/**
* A private constructor to inhibit instantiation of this class.
*/
private OpenVRUtil() {
}
/**
* Get the value of the given string {@link JOpenVRLibrary.ETrackedDeviceProperty property} attached to the given device.
* @param system the underlying OpenVR system.
* @param deviceIndex the index of the device to query.
* @param property the property to query.
* @param bufferSize the size of the buffer to use for storing native string.
* @return the value of the given string property attached to the given device.
* @see OpenVRInput#getTrackedControllerCount()
* @see JOpenVRLibrary.ETrackedDeviceProperty
* @see #getTrackedDeviceStringProperty(VR_IVRSystem_FnTable, int, int)
*/
public static String getTrackedDeviceStringProperty(VR_IVRSystem_FnTable system, int deviceIndex, int property, int bufferSize){
String str ="";
int unBufferSize = 256;
Pointer pchValue = new Memory(unBufferSize);
IntByReference pError = new IntByReference();
system.GetStringTrackedDeviceProperty.apply(deviceIndex, property, pchValue, unBufferSize, pError);
if (pError.getValue() == ETrackedPropertyError.ETrackedPropertyError_TrackedProp_Success){
str = pchValue.getString(0);
} else if (pError.getValue() == ETrackedPropertyError.ETrackedPropertyError_TrackedProp_BufferTooSmall){
throw new IllegalArgumentException("Cannot access property \""+getETrackedDevicePropertyString(property)+"\" ("+property+") for device "+deviceIndex+": "+getETrackedPropertyErrorString(pError.getValue())+" ("+pError.getValue()+")");
} else if (pError.getValue() == ETrackedPropertyError.ETrackedPropertyError_TrackedProp_CouldNotContactServer){
throw new IllegalArgumentException("Cannot access property \""+getETrackedDevicePropertyString(property)+"\" ("+property+") for device "+deviceIndex+": "+getETrackedPropertyErrorString(pError.getValue())+" ("+pError.getValue()+")");
} else if (pError.getValue() == ETrackedPropertyError.ETrackedPropertyError_TrackedProp_InvalidDevice){
throw new IllegalArgumentException("Cannot access property \""+getETrackedDevicePropertyString(property)+"\" ("+property+") for device "+deviceIndex+": "+getETrackedPropertyErrorString(pError.getValue())+" ("+pError.getValue()+")");
} else if (pError.getValue() == ETrackedPropertyError.ETrackedPropertyError_TrackedProp_InvalidOperation){
throw new IllegalArgumentException("Cannot access property \""+getETrackedDevicePropertyString(property)+"\" ("+property+") for device "+deviceIndex+": "+getETrackedPropertyErrorString(pError.getValue())+" ("+pError.getValue()+")");
} else if (pError.getValue() == ETrackedPropertyError.ETrackedPropertyError_TrackedProp_NotYetAvailable){
throw new IllegalArgumentException("Cannot access property \""+getETrackedDevicePropertyString(property)+"\" ("+property+") for device "+deviceIndex+": "+getETrackedPropertyErrorString(pError.getValue())+" ("+pError.getValue()+")");
} else if (pError.getValue() == ETrackedPropertyError.ETrackedPropertyError_TrackedProp_PermissionDenied){
throw new IllegalArgumentException("Cannot access property \""+getETrackedDevicePropertyString(property)+"\" ("+property+") for device "+deviceIndex+": "+getETrackedPropertyErrorString(pError.getValue())+" ("+pError.getValue()+")");
} else if (pError.getValue() == ETrackedPropertyError.ETrackedPropertyError_TrackedProp_StringExceedsMaximumLength){
throw new IllegalArgumentException("Cannot access property \""+getETrackedDevicePropertyString(property)+"\" ("+property+") for device "+deviceIndex+": "+getETrackedPropertyErrorString(pError.getValue())+" ("+pError.getValue()+")");
} else if (pError.getValue() == ETrackedPropertyError.ETrackedPropertyError_TrackedProp_UnknownProperty){
throw new IllegalArgumentException("Cannot access property \""+getETrackedDevicePropertyString(property)+"\" ("+property+") for device "+deviceIndex+": "+getETrackedPropertyErrorString(pError.getValue())+" ("+pError.getValue()+")");
} else if (pError.getValue() == ETrackedPropertyError.ETrackedPropertyError_TrackedProp_ValueNotProvidedByDevice){
throw new IllegalArgumentException("Cannot access property \""+getETrackedDevicePropertyString(property)+"\" ("+property+") for device "+deviceIndex+": "+getETrackedPropertyErrorString(pError.getValue())+" ("+pError.getValue()+")");
} else if (pError.getValue() == ETrackedPropertyError.ETrackedPropertyError_TrackedProp_WrongDataType){
throw new IllegalArgumentException("Cannot access property \""+getETrackedDevicePropertyString(property)+"\" ("+property+") for device "+deviceIndex+": "+getETrackedPropertyErrorString(pError.getValue())+" ("+pError.getValue()+")");
} else if (pError.getValue() == ETrackedPropertyError.ETrackedPropertyError_TrackedProp_WrongDeviceClass){
throw new IllegalArgumentException("Cannot access property \""+getETrackedDevicePropertyString(property)+"\" ("+property+") for device "+deviceIndex+": "+getETrackedPropertyErrorString(pError.getValue())+" ("+pError.getValue()+")");
} else {
throw new IllegalArgumentException("Cannot access property \""+getETrackedDevicePropertyString(property)+"\" ("+property+") for device "+deviceIndex+": "+getETrackedPropertyErrorString(pError.getValue())+" ("+pError.getValue()+")");
}
return str;
}
/**
* Get the value of the given string {@link JOpenVRLibrary.ETrackedDeviceProperty property} attached to the given device.
* @param system the underlying OpenVR system.
* @param deviceIndex the index of the device to query.
* @param property the property to query.
* @return the value of the given string property attached to the given device.
* @see OpenVRInput#getTrackedControllerCount()
* @see JOpenVRLibrary.ETrackedDeviceProperty
* @see #getTrackedDeviceStringProperty(VR_IVRSystem_FnTable, int, int, int)
*/
public static String getTrackedDeviceStringProperty(VR_IVRSystem_FnTable system, int deviceIndex, int property){
return getTrackedDeviceStringProperty(system, deviceIndex, property, 256);
}
/**
* Get the String description of the given {@link ETrackedPropertyError string tracked property error}.
* @param error the string tracked property error.
* @return the String description of the given string tracked property error.
*/
public static String getETrackedPropertyErrorString(int error){
String str ="";
switch(error){
case ETrackedPropertyError.ETrackedPropertyError_TrackedProp_Success:
str = "Success";
break;
case ETrackedPropertyError.ETrackedPropertyError_TrackedProp_WrongDataType:
str = "Wrong data type";
break;
case ETrackedPropertyError.ETrackedPropertyError_TrackedProp_WrongDeviceClass:
str = "Wrong device class";
break;
case ETrackedPropertyError.ETrackedPropertyError_TrackedProp_BufferTooSmall:
str = "Buffer too small";
break;
case ETrackedPropertyError.ETrackedPropertyError_TrackedProp_UnknownProperty:
str = "Unknown property";
break;
case ETrackedPropertyError.ETrackedPropertyError_TrackedProp_InvalidDevice:
str = "Invalid device";
break;
case ETrackedPropertyError.ETrackedPropertyError_TrackedProp_CouldNotContactServer:
str = "Could not contact server";
break;
case ETrackedPropertyError.ETrackedPropertyError_TrackedProp_ValueNotProvidedByDevice:
str = "Value not provided by device";
break;
case ETrackedPropertyError.ETrackedPropertyError_TrackedProp_StringExceedsMaximumLength:
str = "String exceed maximum length";
break;
case ETrackedPropertyError.ETrackedPropertyError_TrackedProp_NotYetAvailable:
str = "Not yet available";
break;
case ETrackedPropertyError.ETrackedPropertyError_TrackedProp_PermissionDenied:
str = "Permission denied";
break;
case ETrackedPropertyError.ETrackedPropertyError_TrackedProp_InvalidOperation:
str = "Invalid operation";
break;
default:
str = "Not handled error";
}
return str;
}
/**
* Get the description of the given {@link EColorSpace color space}.
* @param eColorSpace the color space.
* @return the description of the given color space.
*/
public static String getEColorSpaceString(int eColorSpace){
String str = "";
switch(eColorSpace){
case EColorSpace.EColorSpace_ColorSpace_Auto:
str = "Auto";
break;
case EColorSpace.EColorSpace_ColorSpace_Gamma:
str = "Gamma";
break;
case EColorSpace.EColorSpace_ColorSpace_Linear:
str = "Linear";
break;
default:
str = "Unknown ("+eColorSpace+")";
}
return str;
}
/**
* Get the description of the given {@link ETextureType texture type}.
* @param type the texture type
* @return the description of the given texture type.
*/
public static String getETextureTypeString(int type){
String str = "";
switch(type){
case ETextureType.ETextureType_TextureType_DirectX:
str = "DirectX";
break;
case ETextureType.ETextureType_TextureType_OpenGL:
str = "OpenGL";
break;
case ETextureType.ETextureType_TextureType_Vulkan:
str = "Vulkan";
break;
case ETextureType.ETextureType_TextureType_IOSurface:
str = "IOSurface";
break;
case ETextureType.ETextureType_TextureType_DirectX12:
str = "DirectX12";
break;
default:
str = "Unknown ("+type+")";
}
return str;
}
/**
* Get the description of the given {@link EVRCompositorError EVR compositor error}.
* @param error the EVR compositor error.
* @return the description of the given EVR compositor error.
*/
public static String getEVRCompositorErrorString(int error){
String str ="";
switch(error){
case EVRCompositorError.EVRCompositorError_VRCompositorError_None:
str = "None";
break;
case EVRCompositorError.EVRCompositorError_VRCompositorError_RequestFailed:
str = "Request failed";
break;
case EVRCompositorError.EVRCompositorError_VRCompositorError_IncompatibleVersion:
str = "Incompatible version";
break;
case EVRCompositorError.EVRCompositorError_VRCompositorError_DoNotHaveFocus:
str = "Do not have focus";
break;
case EVRCompositorError.EVRCompositorError_VRCompositorError_InvalidTexture:
str = "Invalid texture";
break;
case EVRCompositorError.EVRCompositorError_VRCompositorError_IsNotSceneApplication:
str = "Is not scene application";
break;
case EVRCompositorError.EVRCompositorError_VRCompositorError_TextureIsOnWrongDevice:
str = "Texture is on wrong device";
break;
case EVRCompositorError.EVRCompositorError_VRCompositorError_TextureUsesUnsupportedFormat:
str = "Texture uses unsupported format";
break;
case EVRCompositorError.EVRCompositorError_VRCompositorError_SharedTexturesNotSupported:
str = "Shared textures not supported";
break;
case EVRCompositorError.EVRCompositorError_VRCompositorError_IndexOutOfRange:
str = "Index out of range";
break;
case EVRCompositorError.EVRCompositorError_VRCompositorError_AlreadySubmitted:
str = "Already submitted";
break;
}
return str;
}
/**
* Get the description of the given {@link EVRInitError EVR init error}.
* @param error the EVR init error.
* @return the description of the given EVR init error.
*/
public static String getEVRInitErrorString(int error){
String str = "";
switch(error){
case EVRInitError.EVRInitError_VRInitError_None:
str="None";
break;
case EVRInitError.EVRInitError_VRInitError_Unknown:
str="Unknown";
break;
case EVRInitError.EVRInitError_VRInitError_Init_InstallationNotFound:
str="Installation not found";
break;
case EVRInitError.EVRInitError_VRInitError_Init_InstallationCorrupt:
str="Installation corrupt";
break;
case EVRInitError.EVRInitError_VRInitError_Init_VRClientDLLNotFound:
str="VR Client DLL not found";
break;
case EVRInitError.EVRInitError_VRInitError_Init_FileNotFound:
str="File not found";
break;
case EVRInitError.EVRInitError_VRInitError_Init_FactoryNotFound:
str="Factory not found";
break;
case EVRInitError.EVRInitError_VRInitError_Init_InterfaceNotFound:
str="Interface not found";
break;
case EVRInitError.EVRInitError_VRInitError_Init_InvalidInterface:
str="Invalid interface";
break;
case EVRInitError.EVRInitError_VRInitError_Init_UserConfigDirectoryInvalid:
str="User config directory invalid";
break;
case EVRInitError.EVRInitError_VRInitError_Init_HmdNotFound:
str="HMD not found";
break;
case EVRInitError.EVRInitError_VRInitError_Init_NotInitialized:
str="Not initialized";
break;
case EVRInitError.EVRInitError_VRInitError_Init_PathRegistryNotFound:
str="Path registry not found";
break;
case EVRInitError.EVRInitError_VRInitError_Init_NoConfigPath:
str="No config path";
break;
case EVRInitError.EVRInitError_VRInitError_Init_NoLogPath:
str="No log path";
break;
case EVRInitError.EVRInitError_VRInitError_Init_PathRegistryNotWritable:
str="Path registry not writable";
break;
case EVRInitError.EVRInitError_VRInitError_Init_AppInfoInitFailed:
str="AppInfo init failed";
break;
case EVRInitError.EVRInitError_VRInitError_Init_Retry:
str="Init retry";
break;
case EVRInitError.EVRInitError_VRInitError_Init_InitCanceledByUser:
str="Init canceled by user";
break;
case EVRInitError.EVRInitError_VRInitError_Init_AnotherAppLaunching:
str="Another app launching";
break;
case EVRInitError.EVRInitError_VRInitError_Init_SettingsInitFailed:
str="Setting init failed";
break;
case EVRInitError.EVRInitError_VRInitError_Init_ShuttingDown:
str="Shutting down";
break;
case EVRInitError.EVRInitError_VRInitError_Init_TooManyObjects:
str="Too many objects";
break;
case EVRInitError.EVRInitError_VRInitError_Init_NoServerForBackgroundApp:
str="No server background app";
break;
case EVRInitError.EVRInitError_VRInitError_Init_NotSupportedWithCompositor:
str="Not supported with compositor";
break;
case EVRInitError.EVRInitError_VRInitError_Init_NotAvailableToUtilityApps:
str="Not available to utility apps";
break;
case EVRInitError.EVRInitError_VRInitError_Init_Internal:
str="Internal";
break;
case EVRInitError.EVRInitError_VRInitError_Init_HmdDriverIdIsNone:
str="Driver Id is None";
break;
case EVRInitError.EVRInitError_VRInitError_Init_HmdNotFoundPresenceFailed:
str="HMD not found presence failed";
break;
case EVRInitError.EVRInitError_VRInitError_Init_VRMonitorNotFound:
str="VR monitor not found";
break;
case EVRInitError.EVRInitError_VRInitError_Init_VRMonitorStartupFailed:
str="VR monitor startup failed";
break;
case EVRInitError.EVRInitError_VRInitError_Init_LowPowerWatchdogNotSupported:
str="Low power watchdog not supported";
break;
case EVRInitError.EVRInitError_VRInitError_Init_InvalidApplicationType:
str="Invalid application type";
break;
case EVRInitError.EVRInitError_VRInitError_Init_NotAvailableToWatchdogApps:
str="Not available to watchdog apps";
break;
case EVRInitError.EVRInitError_VRInitError_Init_WatchdogDisabledInSettings:
str="Watchdog disabled in settings";
break;
case EVRInitError.EVRInitError_VRInitError_Init_VRDashboardNotFound:
str="VR dashboard not found";
break;
case EVRInitError.EVRInitError_VRInitError_Init_VRDashboardStartupFailed:
str="VR dashboard setup failed";
break;
case EVRInitError.EVRInitError_VRInitError_Driver_Failed:
str="Driver failed";
break;
case EVRInitError.EVRInitError_VRInitError_Driver_Unknown:
str="Driver unknown";
break;
case EVRInitError.EVRInitError_VRInitError_Driver_HmdUnknown:
str="HMD unknown";
break;
case EVRInitError.EVRInitError_VRInitError_Driver_NotLoaded:
str="Driver not loaded";
break;
case EVRInitError.EVRInitError_VRInitError_Driver_RuntimeOutOfDate:
str="Driver runtime out of date";
break;
case EVRInitError.EVRInitError_VRInitError_Driver_HmdInUse:
str="HMD in use";
break;
case EVRInitError.EVRInitError_VRInitError_Driver_NotCalibrated:
str="Not calibrated";
break;
case EVRInitError.EVRInitError_VRInitError_Driver_CalibrationInvalid:
str="Calibration invalid";
break;
case EVRInitError.EVRInitError_VRInitError_Driver_HmdDisplayNotFound:
str="HMD display not found";
break;
case EVRInitError.EVRInitError_VRInitError_Driver_TrackedDeviceInterfaceUnknown:
str="Tracked device interface unknown";
break;
case EVRInitError.EVRInitError_VRInitError_Driver_HmdDriverIdOutOfBounds:
str="HMD driver Id out of bounds";
break;
case EVRInitError.EVRInitError_VRInitError_Driver_HmdDisplayMirrored:
str="HMD display mirrored";
break;
case EVRInitError.EVRInitError_VRInitError_IPC_ServerInitFailed:
str="";
break;
case EVRInitError.EVRInitError_VRInitError_IPC_ConnectFailed: str=""; break;
case EVRInitError.EVRInitError_VRInitError_IPC_SharedStateInitFailed: str=""; break;
case EVRInitError.EVRInitError_VRInitError_IPC_CompositorInitFailed: str=""; break;
case EVRInitError.EVRInitError_VRInitError_IPC_MutexInitFailed: str=""; break;
case EVRInitError.EVRInitError_VRInitError_IPC_Failed: str=""; break;
case EVRInitError.EVRInitError_VRInitError_IPC_CompositorConnectFailed: str=""; break;
case EVRInitError.EVRInitError_VRInitError_IPC_CompositorInvalidConnectResponse: str=""; break;
case EVRInitError.EVRInitError_VRInitError_IPC_ConnectFailedAfterMultipleAttempts: str=""; break;
case EVRInitError.EVRInitError_VRInitError_Compositor_Failed: str=""; break;
case EVRInitError.EVRInitError_VRInitError_Compositor_D3D11HardwareRequired: str=""; break;
case EVRInitError.EVRInitError_VRInitError_Compositor_FirmwareRequiresUpdate: str=""; break;
case EVRInitError.EVRInitError_VRInitError_Compositor_OverlayInitFailed: str=""; break;
case EVRInitError.EVRInitError_VRInitError_Compositor_ScreenshotsInitFailed: str=""; break;
case EVRInitError.EVRInitError_VRInitError_VendorSpecific_UnableToConnectToOculusRuntime: str=""; break;
case EVRInitError.EVRInitError_VRInitError_VendorSpecific_HmdFound_CantOpenDevice: str=""; break;
case EVRInitError.EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToRequestConfigStart: str=""; break;
case EVRInitError.EVRInitError_VRInitError_VendorSpecific_HmdFound_NoStoredConfig: str=""; break;
case EVRInitError.EVRInitError_VRInitError_VendorSpecific_HmdFound_ConfigTooBig: str=""; break;
case EVRInitError.EVRInitError_VRInitError_VendorSpecific_HmdFound_ConfigTooSmall: str=""; break;
case EVRInitError.EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToInitZLib: str=""; break;
case EVRInitError.EVRInitError_VRInitError_VendorSpecific_HmdFound_CantReadFirmwareVersion: str=""; break;
case EVRInitError.EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToSendUserDataStart: str=""; break;
case EVRInitError.EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToGetUserDataStart: str=""; break;
case EVRInitError.EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToGetUserDataNext: str=""; break;
case EVRInitError.EVRInitError_VRInitError_VendorSpecific_HmdFound_UserDataAddressRange: str=""; break;
case EVRInitError.EVRInitError_VRInitError_VendorSpecific_HmdFound_UserDataError: str=""; break;
case EVRInitError.EVRInitError_VRInitError_VendorSpecific_HmdFound_ConfigFailedSanityCheck: str=""; break;
case EVRInitError.EVRInitError_VRInitError_Steam_SteamInstallationNotFound: str=""; break;
default:
}
return str;
}
/**
* Get the description of the given tracked device property.
* @param property the tracked device property.
* @return the description of the given tracked device property.
*/
public static String getETrackedDevicePropertyString(int property){
String str = "";
switch(property){
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_Invalid:
str = "Invalid";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_TrackingSystemName_String:
str = "Tracking system name";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_ModelNumber_String:
str = "Model number";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_SerialNumber_String:
str = "Serial number";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_RenderModelName_String:
str = "Render model name";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_WillDriftInYaw_Bool:
str = "Will drift in yaw";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_ManufacturerName_String:
str = "Manufacturer name";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_TrackingFirmwareVersion_String:
str = "Tracking firmware version";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_HardwareRevision_String:
str = "Hardware revision";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_AllWirelessDongleDescriptions_String:
str = "All wireless dongle descriptions";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_ConnectedWirelessDongle_String:
str = "Connect wireless dongle";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DeviceIsWireless_Bool:
str = "Device is wireless";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DeviceIsCharging_Bool:
str = "Device is charging";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DeviceBatteryPercentage_Float:
str = "Device battery percentage";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_StatusDisplayTransform_Matrix34:
str = "Status display transform";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_Firmware_UpdateAvailable_Bool:
str = "Update available";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_Firmware_ManualUpdate_Bool:
str = "Firmware manual update";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_Firmware_ManualUpdateURL_String:
str = "Firmware manual update URL";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_HardwareRevision_Uint64:
str = "Hardware revision";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_FirmwareVersion_Uint64:
str = "Firmware version";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_FPGAVersion_Uint64:
str = "FPGA version";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_VRCVersion_Uint64:
str = "VRC version";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_RadioVersion_Uint64:
str = "Radio version";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DongleVersion_Uint64:
str = "Dongle version";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_BlockServerShutdown_Bool:
str = "Block server shutdown";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_CanUnifyCoordinateSystemWithHmd_Bool:
str = "Can unify coordinate system with HMD";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_ContainsProximitySensor_Bool:
str = "Contains proximity sensor";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DeviceProvidesBatteryStatus_Bool:
str = "Device provides battery status";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DeviceCanPowerOff_Bool:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_Firmware_ProgrammingTarget_String:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DeviceClass_Int32:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_HasCamera_Bool:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DriverVersion_String:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_Firmware_ForceUpdateRequired_Bool:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_ViveSystemButtonFixRequired_Bool:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_ParentDriver_Uint64:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_ReportsTimeSinceVSync_Bool:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_SecondsFromVsyncToPhotons_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayFrequency_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_UserIpdMeters_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_CurrentUniverseId_Uint64:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_PreviousUniverseId_Uint64:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayFirmwareVersion_Uint64:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_IsOnDesktop_Bool:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayMCType_Int32:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayMCOffset_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayMCScale_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_EdidVendorID_Int32:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayMCImageLeft_String:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayMCImageRight_String:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayGCBlackClamp_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_EdidProductID_Int32:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_CameraToHeadTransform_Matrix34:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayGCType_Int32:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayGCOffset_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayGCScale_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayGCPrescale_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayGCImage_String:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_LensCenterLeftU_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_LensCenterLeftV_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_LensCenterRightU_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_LensCenterRightV_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_UserHeadToEyeDepthMeters_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_CameraFirmwareVersion_Uint64:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_CameraFirmwareDescription_String:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayFPGAVersion_Uint64:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayBootloaderVersion_Uint64:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayHardwareVersion_Uint64:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_AudioFirmwareVersion_Uint64:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_CameraCompatibilityMode_Int32:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_ScreenshotHorizontalFieldOfViewDegrees_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_ScreenshotVerticalFieldOfViewDegrees_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplaySuppressed_Bool:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayAllowNightMode_Bool:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayMCImageWidth_Int32:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayMCImageHeight_Int32:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayMCImageNumChannels_Int32:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayMCImageData_Binary:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_AttachedDeviceId_String:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_SupportedButtons_Uint64:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_Axis0Type_Int32:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_Axis1Type_Int32:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_Axis2Type_Int32:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_Axis3Type_Int32:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_Axis4Type_Int32:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_ControllerRoleHint_Int32:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_FieldOfViewLeftDegrees_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_FieldOfViewRightDegrees_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_FieldOfViewTopDegrees_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_FieldOfViewBottomDegrees_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_TrackingRangeMinimumMeters_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_TrackingRangeMaximumMeters_Float:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_ModeLabel_String:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_IconPathName_String:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_NamedIconPathDeviceOff_String:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_NamedIconPathDeviceSearching_String:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_NamedIconPathDeviceSearchingAlert_String:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_NamedIconPathDeviceReady_String:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_NamedIconPathDeviceReadyAlert_String:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_NamedIconPathDeviceNotReady_String:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_NamedIconPathDeviceStandby_String:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_NamedIconPathDeviceAlertLow_String:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayHiddenArea_Binary_Start:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayHiddenArea_Binary_End:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_UserConfigPath_String:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_InstallPath_String:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_VendorSpecific_Reserved_Start:
str = "";
break;
case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_VendorSpecific_Reserved_End:
str = "";
break;
}
return str;
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy