Пример #1
0
        /// <summary>
        /// Clears the current <see cref="IChroma" /> instance, if necessary.
        /// </summary>
        /// <returns>An object representing the progress of this asynchronous task.</returns>
        private static async Task ClearCurrentAsync()
        {
            if (_instance == null)
            {
                return;
            }

            Log.Debug("Uninitializing current IChroma instance");
            await _instance.UninitializeAsync().ConfigureAwait(false);
        }
Пример #2
0
        public void UnInitialize()
        {
            if (!Initialized)
            {
                return;
            }

            if (_chroma == null)
            {
                SdkUnInit?.Invoke(this, new SdkUnInitEvent());
            }
            else
            {
                _chroma.UninitializeAsync().ContinueWith(task => SdkUnInit?.Invoke(this, new SdkUnInitEvent()));
            }

            Initialized = false;
        }
Пример #3
0
 private void Timer_Tick(object sender, EventArgs e)
 {
     if (!isDeviceInUse())
     {
         if (chroma.Initialized)
         {
             chroma.UninitializeAsync();
         }
     }
     else
     {
         if (!chroma.Initialized)
         {
             initChromaSkd();
             updateKeyboardStatus(AudioController.DefaultCaptureDevice);
         }
         else
         {
             updateKeyboardStatus(AudioController.DefaultCaptureDevice);
         }
     }
 }