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 registerCallbackFromInspector(HandGrabCallback callback, bool enableOnStartup) { Log("registerCallbackFromInspector"); if (enableOnStartup) { this.Enabled = true; } if (callback.OnStarted != null) { _handGestureGrabStartedEvent.Add(callback.OnStarted); } if (callback.OnMoved != null) { _handGestureGrabMovedEvent.Add(callback.OnMoved); } if (callback.OnEnded != null) { _handGestureGrabEndedEvent.Add(callback.OnEnded); } if (callback.OnCancelled != null) { _handGestureGrabCancelledEvent.Add(callback.OnCancelled); } }
public void unregisterCallbackFromInspector(HandGrabCallback callback) { Log("unregisterCallbackFromInspector"); if (callback.OnStarted != null) { _handGestureGrabStartedEvent.Remove(callback.OnStarted); } if (callback.OnMoved != null) { _handGestureGrabMovedEvent.Remove(callback.OnMoved); } if (callback.OnEnded != null) { _handGestureGrabEndedEvent.Remove(callback.OnEnded); } if (callback.OnCancelled != null) { _handGestureGrabCancelledEvent.Remove(callback.OnCancelled); } }