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(HandTrackingCallback callback) { Log("unregisterCallbackFromInspector"); if (callback.OnTracking != null) { _handGestureTrackingEvent.Remove(callback.OnTracking); } }
public void registerCallbackFromInspector(HandTrackingCallback callback, bool enableOnStartup) { Log("registerCallbackFromInspector"); if (enableOnStartup) { this.Enabled = true; } if (callback.OnTracking != null) { _handGestureTrackingEvent.Add(callback.OnTracking); } }