diff options
author | Stanislaw Halik <sthalik@misaki.pl> | 2017-05-06 13:16:06 +0200 |
---|---|---|
committer | Stanislaw Halik <sthalik@misaki.pl> | 2017-05-10 11:19:22 +0200 |
commit | 40058ef9bb1b2beaf2f764e9b6f605e9ff679b77 (patch) | |
tree | 16cc2fc7b52e3792d153ca68c1e493fb772f8e7b /tracker-steamvr/steamvr.cpp | |
parent | 87c09c0ab5e1334e9877ee6fd7adeb1eb70d5929 (diff) |
tracker/steamvr: expose all valid devices
Diffstat (limited to 'tracker-steamvr/steamvr.cpp')
-rw-r--r-- | tracker-steamvr/steamvr.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/tracker-steamvr/steamvr.cpp b/tracker-steamvr/steamvr.cpp index d32c9d44..43bccdb8 100644 --- a/tracker-steamvr/steamvr.cpp +++ b/tracker-steamvr/steamvr.cpp @@ -55,16 +55,21 @@ void device_list::fill_device_specs(QList<device_spec>& list) device_states, vr::k_unMaxTrackedDeviceCount); static constexpr unsigned bufsiz = vr::k_unTrackingStringSize; - static char str[bufsiz] {}; // vr_lock prevents reentrancy + static char str[bufsiz+1] {}; // vr_lock prevents reentrancy for (unsigned k = 0; k < vr::k_unMaxTrackedDeviceCount; k++) { - if (v->GetTrackedDeviceClass(k) == vr::ETrackedDeviceClass::TrackedDeviceClass_Invalid || - v->GetTrackedDeviceClass(k) == vr::ETrackedDeviceClass::TrackedDeviceClass_TrackingReference) + if (v->GetTrackedDeviceClass(k) == vr::ETrackedDeviceClass::TrackedDeviceClass_Invalid) + { + qDebug() << "no device with index"; continue; + } if (!device_states[k].bDeviceIsConnected) + { + qDebug() << "device not connected but proceeding"; continue; + } unsigned len; @@ -92,6 +97,8 @@ void device_list::fill_device_specs(QList<device_spec>& list) dev.type = "HMD"; break; case vr::ETrackedDeviceClass::TrackedDeviceClass_Controller: dev.type = "Controller"; break; + case vr::ETrackedDeviceClass::TrackedDeviceClass_TrackingReference: + dev.type = "Tracker"; break; default: dev.type = "Unknown"; break; } |