diff options
Diffstat (limited to 'tracker-hydra')
| -rw-r--r-- | tracker-hydra/CMakeLists.txt | 38 | ||||
| -rw-r--r-- | tracker-hydra/ftnoir_hydra_clientcontrols.ui | 2 | ||||
| -rw-r--r-- | tracker-hydra/ftnoir_tracker_hydra.cpp | 11 | ||||
| -rw-r--r-- | tracker-hydra/ftnoir_tracker_hydra.h | 20 | ||||
| -rw-r--r-- | tracker-hydra/lang/nl_NL.ts | 2 | ||||
| -rw-r--r-- | tracker-hydra/lang/ru_RU.ts | 2 | ||||
| -rw-r--r-- | tracker-hydra/lang/stub.ts | 2 | ||||
| -rw-r--r-- | tracker-hydra/lang/zh_CN.ts | 15 |
8 files changed, 56 insertions, 36 deletions
diff --git a/tracker-hydra/CMakeLists.txt b/tracker-hydra/CMakeLists.txt index afac8d89..48471765 100644 --- a/tracker-hydra/CMakeLists.txt +++ b/tracker-hydra/CMakeLists.txt @@ -1,5 +1,5 @@ set(SDK_HYDRA "" CACHE PATH "libSixense path for Razer Hydra") -if(SDK_HYDRA) +if(SDK_HYDRA AND opentrack-intel) otr_module(tracker-hydra) target_include_directories(opentrack-tracker-hydra SYSTEM PUBLIC ${SDK_HYDRA}/include ${SDK_HYDRA}/include/sixense_utils) if(opentrack-64bit) @@ -15,23 +15,29 @@ if(SDK_HYDRA) set(dir bin) set(ext dll) endif() - set(under_dll _dll) - set(soext dll) - target_link_libraries(opentrack-tracker-hydra "${SDK_HYDRA}/${dir}/win32/release_dll/sixense.${ext}") - install(FILES "${SDK_HYDRA}/bin/win32/release_dll/sixense.dll" DESTINATION ${opentrack-hier-pfx} ${opentrack-perms}) + if (opentrack-64bit) + set(part "x64") + else() + set(part "win32") + endif() + set(lib "${SDK_HYDRA}/${dir}/${part}/release_dll/sixense${six4}.${ext}") + set(dll "${SDK_HYDRA}/bin/${part}/release_dll/sixense${six4}.dll") + install(FILES "${dll}" DESTINATION ${opentrack-libexec} PERMISSIONS ${opentrack-perms-exec}) + target_link_libraries(opentrack-tracker-hydra "${lib}") else() if(APPLE) - set(dest .) - set(under-dll _dll) - set(soext dylib) - set(plat osx) - else() - set(dest ${opentrack-hier-pfx}) - set(under-dll) - set(soext so) - set(plat linux) + set(dest ".") + set(part "release_dll") + set(soext "dylib") + set(plat "osx") + else() # assume Linux + set(dest "${opentrack-libexec}") + set(part "release") + set(soext "so") + set(plat "linux") endif() - target_link_libraries(opentrack-tracker-hydra "${SDK_HYDRA}/lib/${plat}${six4}/release${under-dll}/libsixense${six4}.${soext}") - install(FILES "${SDK_HYDRA}/lib/${plat}${six4}/release${under-dll}/libsixense${six4}.${soext}" DESTINATION ${opentrack-hier-pfx} ${opentrack-perms}) + set(lib "libsixense${six4}.${soext}") + target_link_libraries(opentrack-tracker-hydra "${SDK_HYDRA}/lib/${plat}${six4}/${part}/${lib}") + install(FILES "${SDK_HYDRA}/lib/${plat}${six4}/${part}/${lib}" DESTINATION ${opentrack-libexec} PERMISSIONS ${opentrack-perms-exec}) endif() endif() diff --git a/tracker-hydra/ftnoir_hydra_clientcontrols.ui b/tracker-hydra/ftnoir_hydra_clientcontrols.ui index 7cfac075..4f509f61 100644 --- a/tracker-hydra/ftnoir_hydra_clientcontrols.ui +++ b/tracker-hydra/ftnoir_hydra_clientcontrols.ui @@ -18,7 +18,7 @@ </property> <property name="windowIcon"> <iconset> - <normaloff>images/FaceTrackNoIR.png</normaloff>images/FaceTrackNoIR.png</iconset> + <normaloff>images/opentrack.png</normaloff>images/opentrack.png</iconset> </property> <property name="layoutDirection"> <enum>Qt::LeftToRight</enum> diff --git a/tracker-hydra/ftnoir_tracker_hydra.cpp b/tracker-hydra/ftnoir_tracker_hydra.cpp index 77e62243..5f548bd6 100644 --- a/tracker-hydra/ftnoir_tracker_hydra.cpp +++ b/tracker-hydra/ftnoir_tracker_hydra.cpp @@ -18,12 +18,13 @@ #include <cstdio> #include <cmath> #ifdef _WIN32 +# undef WIN32 +# define WIN32 # define SIXENSE_STATIC_LIB -# define SIXENSE_UTILS_STATIC_LIB #endif #include <sixense.h> -Hydra_Tracker::Hydra_Tracker() : should_quit(false) {} +Hydra_Tracker::Hydra_Tracker() = default; #include <sixense_math.hpp> @@ -33,9 +34,11 @@ Hydra_Tracker::~Hydra_Tracker() sixenseExit(); } -void Hydra_Tracker::start_tracker(QFrame*) +module_status Hydra_Tracker::start_tracker(QFrame*) { sixenseInit(); + + return status_ok(); } void Hydra_Tracker::data(double *data) @@ -52,7 +55,7 @@ void Hydra_Tracker::data(double *data) data[TX] = double(acd.controllers[0].pos[0])/50; data[TY] = double(acd.controllers[0].pos[1])/50; data[TZ] = double(acd.controllers[0].pos[2])/50; - static constexpr double r2d = 180/M_PI; + constexpr double r2d = 180/M_PI; data[Yaw] = double(ypr[0]) * r2d; data[Pitch] = double(ypr[1]) * r2d; data[Roll] = double(ypr[2]) * r2d; diff --git a/tracker-hydra/ftnoir_tracker_hydra.h b/tracker-hydra/ftnoir_tracker_hydra.h index 31a994d5..8af44344 100644 --- a/tracker-hydra/ftnoir_tracker_hydra.h +++ b/tracker-hydra/ftnoir_tracker_hydra.h @@ -5,7 +5,8 @@ #include "options/options.hpp" using namespace options; -struct settings : opts { +struct settings : opts +{ settings() : opts("tracker-hydra") {} @@ -15,10 +16,10 @@ class Hydra_Tracker : public ITracker { public: Hydra_Tracker(); - ~Hydra_Tracker(); - void start_tracker(QFrame *) override; + ~Hydra_Tracker() override; + module_status start_tracker(QFrame *) override; void data(double *data) override; - volatile bool should_quit; + private: settings s; QMutex mutex; @@ -29,8 +30,8 @@ class dialog_hydra: public ITrackerDialog Q_OBJECT public: dialog_hydra(); - void register_tracker(ITracker *) {} - void unregister_tracker() {} + void register_tracker(ITracker *) override {} + void unregister_tracker() override {} private: settings s; Ui::UIHydraControls ui; @@ -41,8 +42,9 @@ private slots: class hydraDll : public Metadata { -public: - QString name() { return QString("Razer Hydra -- inertial device"); } - QIcon icon() { return QIcon(":/images/facetracknoir.png"); } + Q_OBJECT + + QString name() override { return QString("Razer Hydra -- inertial device"); } + QIcon icon() override { return QIcon(":/images/opentrack.png"); } }; diff --git a/tracker-hydra/lang/nl_NL.ts b/tracker-hydra/lang/nl_NL.ts index b6938dfb..8cf49088 100644 --- a/tracker-hydra/lang/nl_NL.ts +++ b/tracker-hydra/lang/nl_NL.ts @@ -4,12 +4,10 @@ <context> <name>UIHydraControls</name> <message> - <location filename="../ftnoir_hydra_clientcontrols.ui" line="+17"/> <source>Sixense Hydra tracker settings FaceTrackNoIR</source> <translation type="unfinished"></translation> </message> <message> - <location line="+16"/> <source>None whatsoever</source> <translation type="unfinished"></translation> </message> diff --git a/tracker-hydra/lang/ru_RU.ts b/tracker-hydra/lang/ru_RU.ts index 906910f4..1abcf7e0 100644 --- a/tracker-hydra/lang/ru_RU.ts +++ b/tracker-hydra/lang/ru_RU.ts @@ -4,12 +4,10 @@ <context> <name>UIHydraControls</name> <message> - <location filename="../ftnoir_hydra_clientcontrols.ui" line="+17"/> <source>Sixense Hydra tracker settings FaceTrackNoIR</source> <translation type="unfinished"></translation> </message> <message> - <location line="+16"/> <source>None whatsoever</source> <translation type="unfinished"></translation> </message> diff --git a/tracker-hydra/lang/stub.ts b/tracker-hydra/lang/stub.ts index e87f3b6c..f5440284 100644 --- a/tracker-hydra/lang/stub.ts +++ b/tracker-hydra/lang/stub.ts @@ -4,12 +4,10 @@ <context> <name>UIHydraControls</name> <message> - <location filename="../ftnoir_hydra_clientcontrols.ui" line="+17"/> <source>Sixense Hydra tracker settings FaceTrackNoIR</source> <translation type="unfinished"></translation> </message> <message> - <location line="+16"/> <source>None whatsoever</source> <translation type="unfinished"></translation> </message> diff --git a/tracker-hydra/lang/zh_CN.ts b/tracker-hydra/lang/zh_CN.ts new file mode 100644 index 00000000..f1257856 --- /dev/null +++ b/tracker-hydra/lang/zh_CN.ts @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE TS> +<TS version="2.1" language="zh_CN"> +<context> + <name>UIHydraControls</name> + <message> + <source>Sixense Hydra tracker settings FaceTrackNoIR</source> + <translation type="unfinished"></translation> + </message> + <message> + <source>None whatsoever</source> + <translation type="unfinished"></translation> + </message> +</context> +</TS> |
