OLD | NEW |
| (Empty) |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 #ifndef CC_TEST_TEST_HOOKS_H_ | |
6 #define CC_TEST_TEST_HOOKS_H_ | |
7 | |
8 #include "base/macros.h" | |
9 #include "cc/animation/animation_delegate.h" | |
10 #include "cc/trees/layer_tree_host.h" | |
11 #include "cc/trees/layer_tree_host_impl.h" | |
12 | |
13 namespace cc { | |
14 | |
15 // Used by test stubs to notify the test when something interesting happens. | |
16 class TestHooks : public AnimationDelegate { | |
17 public: | |
18 TestHooks(); | |
19 ~TestHooks() override; | |
20 | |
21 void ReadSettings(const LayerTreeSettings& settings); | |
22 | |
23 virtual void CreateResourceAndTileTaskWorkerPool( | |
24 LayerTreeHostImpl* host_impl, | |
25 scoped_ptr<TileTaskWorkerPool>* tile_task_worker_pool, | |
26 scoped_ptr<ResourcePool>* resource_pool); | |
27 virtual void WillBeginImplFrameOnThread(LayerTreeHostImpl* host_impl, | |
28 const BeginFrameArgs& args) {} | |
29 virtual void DidFinishImplFrameOnThread(LayerTreeHostImpl* host_impl) {} | |
30 virtual void BeginMainFrameAbortedOnThread(LayerTreeHostImpl* host_impl, | |
31 CommitEarlyOutReason reason) {} | |
32 virtual void WillPrepareTiles(LayerTreeHostImpl* host_impl) {} | |
33 virtual void BeginCommitOnThread(LayerTreeHostImpl* host_impl) {} | |
34 virtual void WillCommitCompleteOnThread(LayerTreeHostImpl* host_impl) {} | |
35 virtual void CommitCompleteOnThread(LayerTreeHostImpl* host_impl) {} | |
36 virtual void WillActivateTreeOnThread(LayerTreeHostImpl* host_impl) {} | |
37 virtual void DidActivateTreeOnThread(LayerTreeHostImpl* host_impl) {} | |
38 virtual void InitializedRendererOnThread(LayerTreeHostImpl* host_impl, | |
39 bool success) {} | |
40 virtual DrawResult PrepareToDrawOnThread( | |
41 LayerTreeHostImpl* host_impl, | |
42 LayerTreeHostImpl::FrameData* frame_data, | |
43 DrawResult draw_result); | |
44 virtual void DrawLayersOnThread(LayerTreeHostImpl* host_impl) {} | |
45 virtual void SwapBuffersOnThread(LayerTreeHostImpl* host_impl, bool result) {} | |
46 virtual void SwapBuffersCompleteOnThread(LayerTreeHostImpl* host_impl) {} | |
47 virtual void NotifyReadyToActivateOnThread(LayerTreeHostImpl* host_impl) {} | |
48 virtual void NotifyReadyToDrawOnThread(LayerTreeHostImpl* host_impl) {} | |
49 virtual void NotifyAllTileTasksCompleted(LayerTreeHostImpl* host_impl) {} | |
50 virtual void NotifyTileStateChangedOnThread(LayerTreeHostImpl* host_impl, | |
51 const Tile* tile) {} | |
52 virtual void AnimateLayers(LayerTreeHostImpl* host_impl, | |
53 base::TimeTicks monotonic_time) {} | |
54 virtual void UpdateAnimationState(LayerTreeHostImpl* host_impl, | |
55 bool has_unfinished_animation) {} | |
56 virtual void WillAnimateLayers(LayerTreeHostImpl* host_impl, | |
57 base::TimeTicks monotonic_time) {} | |
58 virtual void ApplyViewportDeltas( | |
59 const gfx::Vector2dF& inner_delta, | |
60 const gfx::Vector2dF& outer_delta, | |
61 const gfx::Vector2dF& elastic_overscroll_delta, | |
62 float scale, | |
63 float top_controls_delta) {} | |
64 virtual void BeginMainFrame(const BeginFrameArgs& args) {} | |
65 virtual void WillBeginMainFrame() {} | |
66 virtual void DidBeginMainFrame() {} | |
67 virtual void UpdateLayerTreeHost() {} | |
68 virtual void DidInitializeOutputSurface() {} | |
69 virtual void DidFailToInitializeOutputSurface() {} | |
70 virtual void DidAddAnimation() {} | |
71 virtual void WillCommit() {} | |
72 virtual void DidCommit() {} | |
73 virtual void DidCommitAndDrawFrame() {} | |
74 virtual void DidCompleteSwapBuffers() {} | |
75 virtual void DidSetVisibleOnImplTree(LayerTreeHostImpl* host_impl, | |
76 bool visible) {} | |
77 virtual void ScheduleComposite() {} | |
78 virtual void DidSetNeedsUpdateLayers() {} | |
79 virtual void DidActivateSyncTree() {} | |
80 | |
81 // Hooks for SchedulerClient. | |
82 virtual void ScheduledActionWillSendBeginMainFrame() {} | |
83 virtual void ScheduledActionSendBeginMainFrame() {} | |
84 virtual void ScheduledActionDrawAndSwapIfPossible() {} | |
85 virtual void ScheduledActionCommit() {} | |
86 virtual void ScheduledActionBeginOutputSurfaceCreation() {} | |
87 virtual void ScheduledActionPrepareTiles() {} | |
88 virtual void ScheduledActionInvalidateOutputSurface() {} | |
89 virtual void SendBeginFramesToChildren(const BeginFrameArgs& args) {} | |
90 virtual void SendBeginMainFrameNotExpectedSoon() {} | |
91 | |
92 // Hooks for ProxyImpl | |
93 virtual void SetThrottleFrameProductionOnImpl(bool throttle) {} | |
94 virtual void UpdateTopControlsStateOnImpl(TopControlsState constraints, | |
95 TopControlsState current, | |
96 bool animate) {} | |
97 virtual void InitializeOutputSurfaceOnImpl(OutputSurface* output_surface) {} | |
98 virtual void MainThreadHasStoppedFlingingOnImpl() {} | |
99 virtual void SetInputThrottledUntilCommitOnImpl(bool is_throttled) {} | |
100 virtual void SetDeferCommitsOnImpl(bool defer_commits) {} | |
101 virtual void BeginMainFrameAbortedOnImpl(CommitEarlyOutReason reason) {} | |
102 virtual void SetNeedsRedrawOnImpl(const gfx::Rect& damage_rect) {} | |
103 virtual void SetNeedsCommitOnImpl() {} | |
104 virtual void FinishAllRenderingOnImpl() {} | |
105 virtual void SetVisibleOnImpl(bool visible) {} | |
106 virtual void ReleaseOutputSurfaceOnImpl() {} | |
107 virtual void FinishGLOnImpl() {} | |
108 virtual void StartCommitOnImpl() {} | |
109 | |
110 // Hooks for ProxyMain | |
111 virtual void ReceivedDidCompleteSwapBuffers() {} | |
112 virtual void ReceivedSetRendererCapabilitiesMainCopy( | |
113 const RendererCapabilities& capabilities) {} | |
114 virtual void ReceivedBeginMainFrameNotExpectedSoon() {} | |
115 virtual void ReceivedDidCommitAndDrawFrame() {} | |
116 virtual void ReceivedSetAnimationEvents() {} | |
117 virtual void ReceivedDidLoseOutputSurface() {} | |
118 virtual void ReceivedRequestNewOutputSurface() {} | |
119 virtual void ReceivedDidInitializeOutputSurface( | |
120 bool success, | |
121 const RendererCapabilities& capabilities) {} | |
122 virtual void ReceivedDidCompletePageScaleAnimation() {} | |
123 virtual void ReceivedPostFrameTimingEventsOnMain() {} | |
124 virtual void ReceivedBeginMainFrame() {} | |
125 | |
126 // Implementation of AnimationDelegate: | |
127 void NotifyAnimationStarted(base::TimeTicks monotonic_time, | |
128 Animation::TargetProperty target_property, | |
129 int group) override {} | |
130 void NotifyAnimationFinished(base::TimeTicks monotonic_time, | |
131 Animation::TargetProperty target_property, | |
132 int group) override {} | |
133 | |
134 virtual void RequestNewOutputSurface() = 0; | |
135 }; | |
136 | |
137 } // namespace cc | |
138 | |
139 #endif // CC_TEST_TEST_HOOKS_H_ | |
OLD | NEW |