private void StartTracking(NodeHandle node) { if (_factory == null) { Debug.LogError("Factory is null"); return; } if (_factory.nodeGetStatus(node) != NodeStatus.Idle) { Debug.LogError("Wrong node status"); return; } if (Environment == null || Environment.Environment == null) { Debug.LogError("Environment is null"); return; } _trackingLibrary = Antilatency.Alt.Tracking.Library.load(); _placement = GetPlacement(); _trackingTask = _trackingLibrary.createTracking(_factory, node, Environment.Environment); _trackingNode = node; TrackingTaskStateChanged.Invoke(true); }
private void StopTracking() { if (_trackingTask != null) { _trackingTask.Dispose(); _trackingTask = null; } _trackingNode = Antilatency.DeviceNetwork.Constants.InvalidNode; TrackingTaskStateChanged.Invoke(false); }
/// <summary> /// Cleanup at component destroy. When you override this method in derived class, remember to call basic class method first. /// </summary> protected virtual void OnDestroy() { if (_trackingTask != null) { _trackingTask.Dispose(); _trackingTask = null; } if (_trackingLibrary != null) { _trackingLibrary.Dispose(); _trackingLibrary = null; } }