Пример #1
0
 private void StopTracking()
 {
     if (_watching)
     {
         _watching = false;
         _qrWatcher?.Stop();
     }
 }
Пример #2
0
    public void StopScan()
    {
        if (!IsReady.Value)
        {
            return;
        }

        qRCodeWatcher.Stop();
    }
Пример #3
0
 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;
     }
 }
Пример #5
0
        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();
            }
        }
Пример #8
0
 // For shutdown, we just need to stop the watcher
 public void Shutdown() => watcher?.Stop();