private void StopTracking() { if (_watching) { _watching = false; _qrWatcher?.Stop(); } }
public void StopScan() { if (!IsReady.Value) { return; } qRCodeWatcher.Stop(); }
public override void Disable() { base.Disable(); if (IsTracking) { IsTracking = false; qrTracker?.Stop(); SendProgressMessage("Disabled tracking"); } }
/// <summary> /// Deregister from the QRCodeWatcher and shut down the instance. /// </summary> private void TearDownQRWatcher() { if (qrWatcher != null) { qrWatcher.Stop(); qrWatcher.Added -= OnQRCodeAddedEvent; qrWatcher.Updated -= OnQRCodeUpdatedEvent; qrWatcher.Removed -= OnQRCodeRemovedEvent; qrWatcher.EnumerationCompleted -= OnQREnumerationEnded; qrWatcher = null; } }
public void StopQRTracking() { if (IsTrackerRunning) { IsTrackerRunning = false; if (qrTracker != null) { qrTracker.Stop(); qrCodesList.Clear(); } var handlers = QRCodesTrackingStateChanged; if (handlers != null) { handlers(this, false); } } }
private async Task StopQRWatchingAsyncImpl(Task previousTask) { await previousTask.IgnoreCancellation(); if (qrWatcher != null && IsWatcherRunning) { qrWatcher.Stop(); IsWatcherRunning = false; DebugLog("QR tracker was stopped."); lock (qrCodesList) { qrCodesList.Clear(); DebugLog("QR Code list was cleared when stopping."); } } lock (lockObj) { startWatcherTask = null; DebugLog("Start tracker task was set back to null."); } }
private void SetupQRTracking() { try { qrTracker = new QRCodeWatcher(); qrTracker.Stop(); qrCodesList.Clear(); IsTrackerRunning = false; qrTracker.Added += QRCodeWatcher_Added; qrTracker.Updated += QRCodeWatcher_Updated; qrTracker.Removed += QRCodeWatcher_Removed; qrTracker.EnumerationCompleted += QRCodeWatcher_EnumerationCompleted; } catch (Exception ex) { Debug.Log("QRCodesManager : exception starting the tracker " + ex.ToString()); } if (AutoStartQRTracking) { StartQRTracking(); } }
// For shutdown, we just need to stop the watcher public void Shutdown() => watcher?.Stop();