Esempio n. 1
0
        /// <inheritdoc/>
        public void Remove(IRenderLoopTask i)
        {
            Contract.Requires <ArgumentNullException>(i != null);
            Dispatcher.UIThread.VerifyAccess();

            _items.Remove(i);

            if (_items.Count == 0)
            {
                Timer.Tick -= TimerTick;
            }
        }
Esempio n. 2
0
        /// <inheritdoc/>
        public void Remove(IRenderLoopTask i)
        {
            _ = i ?? throw new ArgumentNullException(nameof(i));
            Dispatcher.UIThread.VerifyAccess();
            lock (_items)
            {
                _items.Remove(i);

                if (_items.Count == 0)
                {
                    Timer.Tick -= TimerTick;
                }
            }
        }
Esempio n. 3
0
        /// <inheritdoc/>
        public void Add(IRenderLoopTask i)
        {
            Contract.Requires <ArgumentNullException>(i != null);
            Dispatcher.UIThread.VerifyAccess();

            lock (_items)
            {
                _items.Add(i);

                if (_items.Count == 1)
                {
                    Timer.Tick += TimerTick;
                }
            }
        }
Esempio n. 4
0
 void IRenderLoop.Remove(IRenderLoopTask i)
 {
     AvaloniaLocator.Current.GetService <IRenderLoop>().Remove(this);
 }
Esempio n. 5
0
 public DeferredRendererProxy(IRenderRoot root)
 {
     _renderer     = new DeferredRenderer(root, this);
     _rendererTask = (IRenderLoopTask)_renderer;
 }
Esempio n. 6
0
 private void RunFrame(IRenderLoopTask task)
 {
     task.Update(TimeSpan.Zero);
     task.Render();
 }
Esempio n. 7
0
 private void IgnoreFirstFrame(IRenderLoopTask task, Mock <ISceneBuilder> sceneBuilder)
 {
     RunFrame(task);
     sceneBuilder.ResetCalls();
 }
 private void IgnoreFirstFrame(IRenderLoopTask task, Mock <ISceneBuilder> sceneBuilder)
 {
     RunFrame(task);
     sceneBuilder.Invocations.Clear();
 }