]> git.tdb.fi Git - libs/vr.git/blobdiff - source/openvr/openvrsystem.h
Receive events from OpenVR
[libs/vr.git] / source / openvr / openvrsystem.h
index 498865992fdaa8c5a886e3f3e2bb8bdb1d3f128d..119eb16e7e7948d211cea8b7804360c7d40b4a89 100644 (file)
@@ -12,7 +12,8 @@ namespace VR {
 class OpenVRSystem: public System
 {
 private:
-       GL::Matrix hmd_matrix;
+       unsigned n_tracked_devices;
+       std::vector<GL::Matrix> tracking_matrices;
 
        static unsigned n_instances;
 
@@ -24,12 +25,17 @@ public:
 
        virtual void configure_window(Graphics::Window &) const { }
        virtual void configure_view(StereoView &) const;
+       virtual bool is_absolute_tracking_supported() const { return true; }
        virtual void set_absolute_tracking(bool);
+       virtual bool get_absolute_tracking() const;
        virtual OpenVRCamera *create_camera(const GL::Camera &);
        virtual OpenVRCombiner *create_combiner(GL::View &);
 
+       virtual void tick();
+
        void update_pose_matrices();
-       const GL::Matrix &get_hmd_matrix() const { return hmd_matrix; }
+       const GL::Matrix &get_tracking_matrix(unsigned) const;
+       const GL::Matrix &get_hmd_matrix() const;
 };
 
 } // namespace VR