X-Git-Url: http://git.tdb.fi/?p=libs%2Fvr.git;a=blobdiff_plain;f=source%2Fsystem.cpp;h=500e672f3365518276c51145b5eb9150aa129143;hp=99a6d4871ece2486b7658eb2c1234d9ecbf6f62c;hb=80785cc981166c5faacfcc41476b3d2ffdb65c4a;hpb=31c28161d36749d040cbab0099b352f53cad232d diff --git a/source/system.cpp b/source/system.cpp index 99a6d48..500e672 100644 --- a/source/system.cpp +++ b/source/system.cpp @@ -25,5 +25,42 @@ System *System::create(const string &type) throw invalid_argument(format("system '%s' not supported", type)); } +System *System::create_autodetect() +{ +#ifdef WITH_OPENVR + if(OpenVRSystem::is_maybe_available()) + { + try + { + return new OpenVRSystem; + } + catch(const runtime_error &) + { } + } +#endif + +#ifdef WITH_LIBOVR + try + { + return new LibOVRSystem; + } + catch(const runtime_error &) + { } +#endif + + return 0; +} + +void System::set_absolute_tracking(bool a) +{ + if(a) + throw invalid_argument("absolute tracking not supported"); +} + +MotionController *System::create_controller() +{ + throw runtime_error("controller not supported"); +} + } // namespace VR } // namespace Msp