| OLD | NEW |
| 1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef CC_TREES_SINGLE_THREAD_PROXY_H_ | 5 #ifndef CC_TREES_SINGLE_THREAD_PROXY_H_ |
| 6 #define CC_TREES_SINGLE_THREAD_PROXY_H_ | 6 #define CC_TREES_SINGLE_THREAD_PROXY_H_ |
| 7 | 7 |
| 8 #include <limits> | 8 #include <limits> |
| 9 | 9 |
| 10 #include "base/cancelable_callback.h" | 10 #include "base/cancelable_callback.h" |
| (...skipping 13 matching lines...) Expand all Loading... |
| 24 class LayerTreeHostSingleThreadClient; | 24 class LayerTreeHostSingleThreadClient; |
| 25 | 25 |
| 26 class CC_EXPORT SingleThreadProxy : public Proxy, | 26 class CC_EXPORT SingleThreadProxy : public Proxy, |
| 27 NON_EXPORTED_BASE(LayerTreeHostImplClient), | 27 NON_EXPORTED_BASE(LayerTreeHostImplClient), |
| 28 SchedulerClient { | 28 SchedulerClient { |
| 29 public: | 29 public: |
| 30 static scoped_ptr<Proxy> Create( | 30 static scoped_ptr<Proxy> Create( |
| 31 LayerTreeHost* layer_tree_host, | 31 LayerTreeHost* layer_tree_host, |
| 32 LayerTreeHostSingleThreadClient* client, | 32 LayerTreeHostSingleThreadClient* client, |
| 33 scoped_refptr<base::SingleThreadTaskRunner> main_task_runner); | 33 scoped_refptr<base::SingleThreadTaskRunner> main_task_runner); |
| 34 virtual ~SingleThreadProxy(); | 34 ~SingleThreadProxy() override; |
| 35 | 35 |
| 36 // Proxy implementation | 36 // Proxy implementation |
| 37 virtual void FinishAllRendering() override; | 37 void FinishAllRendering() override; |
| 38 virtual bool IsStarted() const override; | 38 bool IsStarted() const override; |
| 39 virtual void SetOutputSurface(scoped_ptr<OutputSurface>) override; | 39 void SetOutputSurface(scoped_ptr<OutputSurface>) override; |
| 40 virtual void SetLayerTreeHostClientReady() override; | 40 void SetLayerTreeHostClientReady() override; |
| 41 virtual void SetVisible(bool visible) override; | 41 void SetVisible(bool visible) override; |
| 42 virtual const RendererCapabilities& GetRendererCapabilities() const override; | 42 const RendererCapabilities& GetRendererCapabilities() const override; |
| 43 virtual void SetNeedsAnimate() override; | 43 void SetNeedsAnimate() override; |
| 44 virtual void SetNeedsUpdateLayers() override; | 44 void SetNeedsUpdateLayers() override; |
| 45 virtual void SetNeedsCommit() override; | 45 void SetNeedsCommit() override; |
| 46 virtual void SetNeedsRedraw(const gfx::Rect& damage_rect) override; | 46 void SetNeedsRedraw(const gfx::Rect& damage_rect) override; |
| 47 virtual void SetNextCommitWaitsForActivation() override; | 47 void SetNextCommitWaitsForActivation() override; |
| 48 virtual void NotifyInputThrottledUntilCommit() override {} | 48 void NotifyInputThrottledUntilCommit() override {} |
| 49 virtual void SetDeferCommits(bool defer_commits) override; | 49 void SetDeferCommits(bool defer_commits) override; |
| 50 virtual bool CommitRequested() const override; | 50 bool CommitRequested() const override; |
| 51 virtual bool BeginMainFrameRequested() const override; | 51 bool BeginMainFrameRequested() const override; |
| 52 virtual void MainThreadHasStoppedFlinging() override {} | 52 void MainThreadHasStoppedFlinging() override {} |
| 53 virtual void Start() override; | 53 void Start() override; |
| 54 virtual void Stop() override; | 54 void Stop() override; |
| 55 virtual size_t MaxPartialTextureUpdates() const override; | 55 size_t MaxPartialTextureUpdates() const override; |
| 56 virtual void ForceSerializeOnSwapBuffers() override; | 56 void ForceSerializeOnSwapBuffers() override; |
| 57 virtual bool SupportsImplScrolling() const override; | 57 bool SupportsImplScrolling() const override; |
| 58 virtual void AsValueInto(base::debug::TracedValue* state) const override; | 58 void AsValueInto(base::debug::TracedValue* state) const override; |
| 59 virtual bool MainFrameWillHappenForTesting() override; | 59 bool MainFrameWillHappenForTesting() override; |
| 60 | 60 |
| 61 // SchedulerClient implementation | 61 // SchedulerClient implementation |
| 62 virtual BeginFrameSource* ExternalBeginFrameSource() override; | 62 BeginFrameSource* ExternalBeginFrameSource() override; |
| 63 virtual void WillBeginImplFrame(const BeginFrameArgs& args) override; | 63 void WillBeginImplFrame(const BeginFrameArgs& args) override; |
| 64 virtual void ScheduledActionSendBeginMainFrame() override; | 64 void ScheduledActionSendBeginMainFrame() override; |
| 65 virtual DrawResult ScheduledActionDrawAndSwapIfPossible() override; | 65 DrawResult ScheduledActionDrawAndSwapIfPossible() override; |
| 66 virtual DrawResult ScheduledActionDrawAndSwapForced() override; | 66 DrawResult ScheduledActionDrawAndSwapForced() override; |
| 67 virtual void ScheduledActionCommit() override; | 67 void ScheduledActionCommit() override; |
| 68 virtual void ScheduledActionAnimate() override; | 68 void ScheduledActionAnimate() override; |
| 69 virtual void ScheduledActionUpdateVisibleTiles() override; | 69 void ScheduledActionUpdateVisibleTiles() override; |
| 70 virtual void ScheduledActionActivateSyncTree() override; | 70 void ScheduledActionActivateSyncTree() override; |
| 71 virtual void ScheduledActionBeginOutputSurfaceCreation() override; | 71 void ScheduledActionBeginOutputSurfaceCreation() override; |
| 72 virtual void ScheduledActionManageTiles() override; | 72 void ScheduledActionManageTiles() override; |
| 73 virtual void DidAnticipatedDrawTimeChange(base::TimeTicks time) override; | 73 void DidAnticipatedDrawTimeChange(base::TimeTicks time) override; |
| 74 virtual base::TimeDelta DrawDurationEstimate() override; | 74 base::TimeDelta DrawDurationEstimate() override; |
| 75 virtual base::TimeDelta BeginMainFrameToCommitDurationEstimate() override; | 75 base::TimeDelta BeginMainFrameToCommitDurationEstimate() override; |
| 76 virtual base::TimeDelta CommitToActivateDurationEstimate() override; | 76 base::TimeDelta CommitToActivateDurationEstimate() override; |
| 77 virtual void DidBeginImplFrameDeadline() override; | 77 void DidBeginImplFrameDeadline() override; |
| 78 | 78 |
| 79 // LayerTreeHostImplClient implementation | 79 // LayerTreeHostImplClient implementation |
| 80 virtual void UpdateRendererCapabilitiesOnImplThread() override; | 80 void UpdateRendererCapabilitiesOnImplThread() override; |
| 81 virtual void DidLoseOutputSurfaceOnImplThread() override; | 81 void DidLoseOutputSurfaceOnImplThread() override; |
| 82 virtual void CommitVSyncParameters(base::TimeTicks timebase, | 82 void CommitVSyncParameters(base::TimeTicks timebase, |
| 83 base::TimeDelta interval) override {} | 83 base::TimeDelta interval) override {} |
| 84 virtual void SetEstimatedParentDrawTime(base::TimeDelta draw_time) override {} | 84 void SetEstimatedParentDrawTime(base::TimeDelta draw_time) override {} |
| 85 virtual void SetMaxSwapsPendingOnImplThread(int max) override {} | 85 void SetMaxSwapsPendingOnImplThread(int max) override {} |
| 86 virtual void DidSwapBuffersOnImplThread() override; | 86 void DidSwapBuffersOnImplThread() override; |
| 87 virtual void DidSwapBuffersCompleteOnImplThread() override; | 87 void DidSwapBuffersCompleteOnImplThread() override; |
| 88 virtual void OnCanDrawStateChanged(bool can_draw) override; | 88 void OnCanDrawStateChanged(bool can_draw) override; |
| 89 virtual void NotifyReadyToActivate() override; | 89 void NotifyReadyToActivate() override; |
| 90 virtual void SetNeedsRedrawOnImplThread() override; | 90 void SetNeedsRedrawOnImplThread() override; |
| 91 virtual void SetNeedsRedrawRectOnImplThread( | 91 void SetNeedsRedrawRectOnImplThread(const gfx::Rect& dirty_rect) override; |
| 92 const gfx::Rect& dirty_rect) override; | 92 void SetNeedsAnimateOnImplThread() override; |
| 93 virtual void SetNeedsAnimateOnImplThread() override; | 93 void SetNeedsManageTilesOnImplThread() override; |
| 94 virtual void SetNeedsManageTilesOnImplThread() override; | 94 void DidInitializeVisibleTileOnImplThread() override; |
| 95 virtual void DidInitializeVisibleTileOnImplThread() override; | 95 void SetNeedsCommitOnImplThread() override; |
| 96 virtual void SetNeedsCommitOnImplThread() override; | 96 void PostAnimationEventsToMainThreadOnImplThread( |
| 97 virtual void PostAnimationEventsToMainThreadOnImplThread( | |
| 98 scoped_ptr<AnimationEventsVector> events) override; | 97 scoped_ptr<AnimationEventsVector> events) override; |
| 99 virtual bool ReduceContentsTextureMemoryOnImplThread( | 98 bool ReduceContentsTextureMemoryOnImplThread(size_t limit_bytes, |
| 100 size_t limit_bytes, | 99 int priority_cutoff) override; |
| 101 int priority_cutoff) override; | 100 bool IsInsideDraw() override; |
| 102 virtual bool IsInsideDraw() override; | 101 void RenewTreePriority() override {} |
| 103 virtual void RenewTreePriority() override {} | 102 void PostDelayedScrollbarFadeOnImplThread(const base::Closure& start_fade, |
| 104 virtual void PostDelayedScrollbarFadeOnImplThread( | 103 base::TimeDelta delay) override {} |
| 105 const base::Closure& start_fade, | 104 void DidActivateSyncTree() override; |
| 106 base::TimeDelta delay) override {} | 105 void DidManageTiles() override; |
| 107 virtual void DidActivateSyncTree() override; | 106 void SetDebugState(const LayerTreeDebugState& debug_state) override {} |
| 108 virtual void DidManageTiles() override; | |
| 109 virtual void SetDebugState(const LayerTreeDebugState& debug_state) override {} | |
| 110 | 107 |
| 111 void RequestNewOutputSurface(); | 108 void RequestNewOutputSurface(); |
| 112 | 109 |
| 113 // Called by the legacy path where RenderWidget does the scheduling. | 110 // Called by the legacy path where RenderWidget does the scheduling. |
| 114 void CompositeImmediately(base::TimeTicks frame_begin_time); | 111 void CompositeImmediately(base::TimeTicks frame_begin_time); |
| 115 | 112 |
| 116 private: | 113 private: |
| 117 SingleThreadProxy( | 114 SingleThreadProxy( |
| 118 LayerTreeHost* layer_tree_host, | 115 LayerTreeHost* layer_tree_host, |
| 119 LayerTreeHostSingleThreadClient* client, | 116 LayerTreeHostSingleThreadClient* client, |
| (...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 224 private: | 221 private: |
| 225 DebugScopedSetImplThread impl_thread_; | 222 DebugScopedSetImplThread impl_thread_; |
| 226 DebugScopedSetMainThreadBlocked main_thread_blocked_; | 223 DebugScopedSetMainThreadBlocked main_thread_blocked_; |
| 227 | 224 |
| 228 DISALLOW_COPY_AND_ASSIGN(DebugScopedSetImplThreadAndMainThreadBlocked); | 225 DISALLOW_COPY_AND_ASSIGN(DebugScopedSetImplThreadAndMainThreadBlocked); |
| 229 }; | 226 }; |
| 230 | 227 |
| 231 } // namespace cc | 228 } // namespace cc |
| 232 | 229 |
| 233 #endif // CC_TREES_SINGLE_THREAD_PROXY_H_ | 230 #endif // CC_TREES_SINGLE_THREAD_PROXY_H_ |
| OLD | NEW |