X-Git-Url: http://git.tdb.fi/?p=libs%2Fvr.git;a=blobdiff_plain;f=source%2Fsystem.h;h=e52c05f6da4c7a7855a1c637f7750ec553fa6f71;hp=0610e29e80db7714d8b7fe31c33290546e1141ab;hb=80785cc981166c5faacfcc41476b3d2ffdb65c4a;hpb=b6de7d24475dec8f5d6b8148a69cf8b561bc0761 diff --git a/source/system.h b/source/system.h index 0610e29..e52c05f 100644 --- a/source/system.h +++ b/source/system.h @@ -4,6 +4,7 @@ #include #include #include +#include "motioncontroller.h" namespace Msp { namespace VR { @@ -20,11 +21,18 @@ public: virtual ~System() { } static System *create(const std::string &); + static System *create_autodetect(); virtual void configure_window(Graphics::Window &) const = 0; virtual void configure_view(StereoView &) const = 0; + virtual bool is_absolute_tracking_supported() const { return false; } + virtual void set_absolute_tracking(bool); + virtual bool get_absolute_tracking() const { return false; } virtual HeadTrackingCamera *create_camera(const GL::Camera &) = 0; virtual StereoCombiner *create_combiner(GL::View &) = 0; + virtual MotionController *create_controller(); + + virtual void tick() { } }; } // namespace VR