private void TryLoop()
        {
            Debug.WriteLine("Loop started");

            var loopObjects = new LoopObjects();

            while (!_cancellationToken.IsCancellationRequested)
            {
                Manager.AcquireFrame(true);
                foreach (var capability in _enabledCapabilities)
                {
                    _availableCapabilities[capability].Loop(loopObjects);
                }
                Manager.ReleaseFrame();
                if (CyclePauseInMillis > 0)
                {
                    Thread.Sleep(CyclePauseInMillis);
                }
            }
        }