diff options
| -rw-r--r-- | ftnoir_tracker_rift_080/ftnoir_tracker_rift_080.cpp | 22 | 
1 files changed, 14 insertions, 8 deletions
| diff --git a/ftnoir_tracker_rift_080/ftnoir_tracker_rift_080.cpp b/ftnoir_tracker_rift_080/ftnoir_tracker_rift_080.cpp index 5495e0e3..889ac8c3 100644 --- a/ftnoir_tracker_rift_080/ftnoir_tracker_rift_080.cpp +++ b/ftnoir_tracker_rift_080/ftnoir_tracker_rift_080.cpp @@ -21,18 +21,24 @@ Rift_Tracker::~Rift_Tracker()  void Rift_Tracker::start_tracker(QFrame*)  { -	ovrGraphicsLuid luid; -    ovrResult result = ovr_Create(&hmd, &luid); -    if (OVR_SUCCESS(result))      { -        ovr_ConfigureTracking(hmd, ovrTrackingCap_Orientation | ovrTrackingCap_MagYawCorrection | ovrTrackingCap_Position, ovrTrackingCap_Orientation); +        ovrInitParams args = {0}; +        if (!OVR_SUCCESS(ovr_Initialize(&args))) +            goto error;      } -    else      { -        // XXX need change ITracker et al api to allow for failure reporting -        // this qmessagebox doesn't give any relevant details either -sh 20141012 -        QMessageBox::warning(0,"Error", "Unable to start Rift tracker",QMessageBox::Ok,QMessageBox::NoButton); +        ovrGraphicsLuid luid = {0}; +        ovrResult res = ovr_Create(&hmd, &luid); +        if (OVR_SUCCESS(res)) +        { +            ovr_ConfigureTracking(hmd, ovrTrackingCap_Orientation | ovrTrackingCap_MagYawCorrection | ovrTrackingCap_Position, ovrTrackingCap_Orientation); +        } +        else +            goto error;      } +    return; +error: +    QMessageBox::warning(0,"Error", "Unable to start Rift tracker",QMessageBox::Ok,QMessageBox::NoButton);  }  void Rift_Tracker::data(double *data) | 
