The open source OpenXR runtime

d/steamvr_lh: expose IVRDriverInput_004

Used by the lighthouse driver as of SteamVR 2.12.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2548>

+3
+3
src/xrt/drivers/steamvr_lh/steamvr_lh.cpp
··· 142 void * 143 Context::GetGenericInterface(const char *pchInterfaceVersion, vr::EVRInitError *peError) 144 { 145 #define MATCH_INTERFACE(version, interface) \ 146 if (std::strcmp(pchInterfaceVersion, version) == 0) { \ 147 return interface; \ ··· 151 // Known interfaces 152 MATCH_INTERFACE_THIS(vr::IVRServerDriverHost); 153 MATCH_INTERFACE_THIS(vr::IVRDriverInput); 154 MATCH_INTERFACE_THIS(vr::IVRProperties); 155 MATCH_INTERFACE_THIS(vr::IVRDriverLog); 156 MATCH_INTERFACE(vr::IVRSettings_Version, &settings);
··· 142 void * 143 Context::GetGenericInterface(const char *pchInterfaceVersion, vr::EVRInitError *peError) 144 { 145 + CTX_DEBUG("Requested interface %s", pchInterfaceVersion); 146 #define MATCH_INTERFACE(version, interface) \ 147 if (std::strcmp(pchInterfaceVersion, version) == 0) { \ 148 return interface; \ ··· 152 // Known interfaces 153 MATCH_INTERFACE_THIS(vr::IVRServerDriverHost); 154 MATCH_INTERFACE_THIS(vr::IVRDriverInput); 155 + // This interface is not in a public header yet, but just passing IVRDriverInput_003 seems to work. 156 + MATCH_INTERFACE("IVRDriverInput_004", static_cast<vr::IVRDriverInput *>(this)); 157 MATCH_INTERFACE_THIS(vr::IVRProperties); 158 MATCH_INTERFACE_THIS(vr::IVRDriverLog); 159 MATCH_INTERFACE(vr::IVRSettings_Version, &settings);