Files
OpenVR-AdvancedSettings-frame/src/openvr/ovr_overlay_wrapper.h
T
RTUnrealandykeara 383f153c54 draft: upgrade codebase to qt6 and cmake (#657)
* update qt6 upgrade progress

* add flawed addition for QRenderTarget and link needed libs

* update to better logging format

* move many assets and qml files into qrc

* get rid of deprecation messages

* remove additional deprecation notices

* make Qt6 finally render on desktop with some progress on vr

* initialize QRhi with QQuickRenderControl

* use default values to stop SegFaults

* fix compilation on windows

* add windows files for aiding in running exe

* fix formatting of testing qt.conf

* first attempt on using textures instead of files in AudioTabController

* Fix public/private access issue

* use getter instead of directly accessing class members

* use QImage as a base to set overlay textures

* use native  logging

* add more QImage Overlays

* implement faulty vulkan implementation

---------

Co-authored-by: ykeara <ykeara1@gmail.com>
2024-05-01 15:19:36 -05:00

62 lines
2.3 KiB
C++

#pragma once
#include <openvr.h>
#include <iostream>
#include <string>
#include <utility>
#include <string>
#include <QImage>
#include "../utils/paths.h"
/* Wrapper For OpenVR's IVR settings class, allows us to do our error logging
* while also minimizing code
*
*/
namespace ovr_overlay_wrapper
{
// might make sense to mirror ovr's errors exactly, but for now this is more
// than sufficient
enum class OverlayError
{
NoError,
UndefinedError,
};
OverlayError createOverlay( const std::string overlayKey,
const std::string overlayName,
vr::VROverlayHandle_t* overlayHandle,
std::string customErrorMsg = "" );
OverlayError setOverlayColor( vr::VROverlayHandle_t overlayHandle,
float red,
float green,
float blue,
std::string customErrorMsg = "" );
OverlayError setOverlayAlpha( vr::VROverlayHandle_t overlayHandle,
float alpha,
std::string customErrorMsg = "" );
OverlayError setOverlayWidthInMeters( vr::VROverlayHandle_t overlayHandle,
float widthInMeters,
std::string customErrorMsg = "" );
OverlayError setOverlayFromFile( vr::VROverlayHandle_t overlayHandle,
std::string fileName,
std::string customErrorMsg = "" );
OverlayError setOverlayFromQImage( vr::VROverlayHandle_t overlayHandle,
QImage& image,
std::string customErrorMsg = "" );
OverlayError showOverlay( vr::VROverlayHandle_t overlayHandle,
std::string customErrorMsg = "" );
OverlayError hideOverlay( vr::VROverlayHandle_t overlayHandle,
std::string customErrorMsg = "" );
OverlayError setOverlayTransformAbsolute(
vr::VROverlayHandle_t overlayHandle,
vr::ETrackingUniverseOrigin trackingOrigin,
const vr::HmdMatrix34_t* trackingOriginToOverlayTransform,
std::string customErrorMsg = "" );
std::string getOverlayKey( vr::VROverlayHandle_t overlayHandle );
} // namespace ovr_overlay_wrapper