Monado OpenXR Runtime

SteamVR driver context implementation and entrypoint. More...

#include <cstring>
#include <dlfcn.h>
#include <memory>
#include <cmath>
#include <unordered_map>
#include <string_view>
#include <filesystem>
#include <istream>
#include <thread>
#include "openvr_driver.h"
#include "vdf_parser.hpp"
#include "steamvr_lh_interface.h"
#include "interfaces/context.hpp"
#include "device.hpp"
#include "util/u_device.h"
#include "util/u_misc.h"
#include "util/u_system_helpers.h"
#include "vive/vive_bindings.h"
#include "math/m_api.h"
Include dependency graph for steamvr_lh.cpp:

Macros

#define CTX_ERR(...)   U_LOG_IFL_E(log_level, __VA_ARGS__)
 
#define CTX_WARN(...)   U_LOG_IFL_W(log_level, __VA_ARGS__)
 
#define CTX_INFO(...)   U_LOG_IFL_I(log_level, __VA_ARGS__)
 
#define CTX_TRACE(...)   U_LOG_IFL_T(log_level, __VA_ARGS__)
 
#define CTX_DEBUG(...)   U_LOG_IFL_D(log_level, __VA_ARGS__)
 
#define MATCH_INTERFACE(version, interface)
 
#define MATCH_INTERFACE_THIS(interface)   MATCH_INTERFACE(interface##_Version, static_cast<interface *>(this))
 
#define VERIFY(expr, msg)
 

Functions

xrt_result_t get_roles (struct xrt_system_devices *xsysd, struct xrt_system_roles *out_roles)
 
void destroy (struct xrt_system_devices *xsysd)
 
enum xrt_result steamvr_lh_create_devices (struct xrt_system_devices **out_xsysd)
 Creates the steamvr system devices. More...
 

Detailed Description

SteamVR driver context implementation and entrypoint.

Author
Shawn Wallace yungw.nosp@m.alla.nosp@m.ce@li.nosp@m.ve.c.nosp@m.om

Macro Definition Documentation

◆ MATCH_INTERFACE

#define MATCH_INTERFACE (   version,
  interface 
)
Value:
if (std::strcmp(pchInterfaceVersion, version) == 0) { \
return interface; \
}

◆ VERIFY

#define VERIFY (   expr,
  msg 
)
Value:
if (!(expr)) { \
CTX_ERR("Activating HMD failed: %s", msg); \
delete this->hmd; \
this->hmd = nullptr; \
return false; \
}