Files
watrbx-game-engine/Rendering/VrApi/Include/VrApi_LocalPrefs.h
T
2025-09-18 17:55:52 -04:00

85 lines
3.9 KiB
C

/************************************************************************************
Filename : VrApi_LocalPrefs.h
Content : Interface for device-local preferences
Created : July 8, 2014
Authors : John Carmack
Copyright : Copyright 2014 Oculus VR, LLC. All Rights reserved.
*************************************************************************************/
#ifndef OVR_VrApi_LocalPrefs_h
#define OVR_VrApi_LocalPrefs_h
#include "VrApi_Config.h"
#include "VrApi_Types.h"
#if defined( __cplusplus )
extern "C" {
#endif
// Local preferences are for storing platform-wide settings that are tied to
// a device instead of an application or user.
// Initially this is just a set of strings stored to /sdcard/.oculusprefs, but it
// may move to some other database.
//
// While it is here, you can easily set one or more values with adb like this:
// adb shell "echo dev_enableCapture 1 > /sdcard/.oculusprefs"
//
// The key / value pairs are just alternate tokens, with no newline required, so
// you can set multiple values at once:
//
// adb shell "echo dev_enableCapture 1 dev_powerLevelState 1 > /sdcard/.oculusprefs"
// Enable support for Oculus Remote Monitor to connect to the application.
#define LOCAL_PREF_VRAPI_ENABLE_CAPTURE "dev_enableCapture" // "0" or "1"
// Use the provided cpu and gpu levels for setting
// fixed clock levels.
#define LOCAL_PREF_VRAPI_CPU_LEVEL "dev_cpuLevel" // "0", "1", "2", or "3"
#define LOCAL_PREF_VRAPI_GPU_LEVEL "dev_gpuLevel" // "0", "1", "2", or "3"
// Shipping applications will always want this on, but if you want to draw
// directly to the screen for debug tasks, you can run synchronously so the
// init thread is still current on the window.
#define LOCAL_PREF_VRAPI_ASYNC_TIMEWARP "dev_asyncTimewarp" // "0" or "1"
// Optionally force a specific MinimumVsyncs.
#define LOCAL_PREF_VRAPI_MINIMUM_VSYNCS "dev_mimumumVsyncs" // "0", "1", "2", "3"
// Optionally force a specific extra latency mode.
#define LOCAL_PREF_VRAPI_EXTRA_LATENCY_MODE "dev_extraLatencyMode" // "0" = off, "1" = on, "2" = dynamic
// For video capture or testing on reference platforms without direct frontbuffer
// rendering, direct frontbuffer can be forced off.
#define LOCAL_PREF_VRAPI_FRONTBUFFER "dev_frontbuffer" // "0" or "1"
// Optional distortion file to override built-in distortion.
#define LOCAL_PREF_VRAPI_DISTORTION_FILE_NAME "dev_distortionFileName" // default = ""
// Experimental feature that clips the distortion mesh to reduce GPU fill for timewarp+distortion
#define LOCAL_PREF_VRAPI_CLIP_DISTORTION_MESH "dev_clipDistortionMesh" // "0" = off, "1" = clip to optics, "2" = clip to framebuffer
// Debug option to draw the axis lines after warp.
#define LOCAL_PREF_VRAPI_DRAW_CALIBRATION_LINES "dev_drawCalibrationLines" // "0" or "1"
#define LOCAL_PREF_VRAPI_GPU_TIMINGS "dev_gpuTimings" // "0" = off, "1" = glBeginQuery/glEndQuery, "2" = glQueryCounter
#define LOCAL_PREF_APP_DEBUG_OPTIONS "dev_debugOptions" // "0" or "1"
#define LOCAL_PREF_VRAPI_SIMULATE_UNDOCK "dev_simulateUndock" // time to wait before simulating an undock event, < 0 means don't simulate
// Query the in-memory preferences for a (case insensitive) key / value pair.
// If the returned string is not defaultKeyValue, it will remain valid until the next ovr_UpdateLocalPreferences().
OVR_VRAPI_EXPORT const char * ovr_GetLocalPreferenceValueForKey( const char * keyName, const char * defaultKeyValue );
// Updates the in-memory data and synchronously writes it to storage.
OVR_VRAPI_EXPORT void ovr_SetLocalPreferenceValueForKey( const char * keyName, const char * keyValue );
#if defined( __cplusplus )
} // extern "C"
#endif
#endif // OVR_VrApi_LocalPrefs_h