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); } }