#include "util.h" #include #include #include class Panel; struct CursorPos { int x, y; }; class App { public: App(); ~App(); void Update(); std::vector GetControllers(); glm::mat4 GetTrackerPose(TrackerID tracker); bool IsGrabActive(TrackerID controller); CursorPos GetCursorPosition(); Display *_xdisplay; Window _root_window; GLFWwindow *_gl_window; int _root_width; int _root_height; vr::ETrackingUniverseOrigin _tracking_origin; vr::IVRSystem *vr_sys; vr::IVROverlay *vr_overlay; std::vector _panels; private: void InitX11(); void InitOVR(); void InitGLFW(); };