Beispiel #1
0
 private static void DispatchNamedExtrinsicDataEvent(IntPtr handle,
                                                     IntPtr clientData)
 {
     try
     {
         VLExtrinsicDataWrapper extrinsicData = new VLExtrinsicDataWrapper(
             handle, false);
         GCHandle gcHandle = GCHandle.FromIntPtr(clientData);
         VLDebugCameraBehaviour debugCameraBehaviour =
             (VLDebugCameraBehaviour)gcHandle.Target;
         debugCameraBehaviour.OnExtrinsicData(extrinsicData);
         extrinsicData.Dispose();
     }
     catch (Exception e) // Catch all exceptions, because this is a callback
                         // invoked from native code
     {
         Debug.LogError("[vlUnitySDK] " + e.GetType().Name + ": " +
                        e.Message);
     }
 }
Beispiel #2
0
    private void ExtrinsicDataHandler(IntPtr handle)
    {
        VLExtrinsicDataWrapper extrinsicData =
            new VLExtrinsicDataWrapper(handle, false);

        if (OnExtrinsicData != null)
        {
            OnExtrinsicData(extrinsicData);
        }

        if (OnTrackingState != null)
        {
            if (extrinsicData.GetValid())
            {
                OnTrackingState(100, "0");
            }
            else
            {
                OnTrackingState(0, "0");
            }
        }

        extrinsicData.Dispose();
    }