Example #1
0
    void OnDestroy()
    {
        if (enableSignalControl)
        {
            HandGestureManager.Instance.Controller <HandSignalController>().unregisterCallbackFromInspector(handSignalCallback);
            handSignalCallback = null;
        }
        if (enableCursorControl)
        {
            HandGestureManager.Instance.Controller <HandCursorController>().unregisterCallbackFromInspector(handCursorCallback);
            handCursorCallback = null;
        }
        if (enableGrabControl)
        {
            HandGestureManager.Instance.Controller <HandGrabController>().unregisterCallbackFromInspector(handGrabCallback);
            handGrabCallback = null;
        }
        if (enableRawTrackingControl)
        {
            HandGestureManager.Instance.Controller <HandTrackingController>().unregisterCallbackFromInspector(handTrackingCallback);
            handTrackingCallback = null;
        }
        HandGestureManager.Instance.Destroy();


        mMADSDKIntegratorHandSignal.OnDestroy();
        mMADSDKIntegratorHandCursor.OnDestroy();
        mMADSDKIntegratorTrackedHand.OnDestroy();
        mMADSDKIntegratorGrab.OnDestroy();
    }
 public void unregisterCallbackFromInspector(HandSignalCallback callback)
 {
     Log("unregisterCallbackFromInspector");
     if (callback.OnTracked != null)
     {
         _handGestureSignalTrackedEvent.Remove(callback.OnTracked);
     }
     if (callback.OnTrackedLost != null)
     {
         _handGestureSignalLostEvent.Remove(callback.OnTrackedLost);
     }
 }
        public void registerCallbackFromInspector(HandSignalCallback callback, bool enableOnStartup)
        {
            Log("registerCallbackFromInspector");
            if (enableOnStartup)
            {
                this.Enabled = true;
            }

            if (callback.OnTracked != null)
            {
                _handGestureSignalTrackedEvent.Add(callback.OnTracked);
            }
            if (callback.OnTrackedLost != null)
            {
                _handGestureSignalLostEvent.Add(callback.OnTrackedLost);
            }
        }