• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2012 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_FAKE_LAYER_TREE_HOST_CLIENT_H_
6 #define CC_TEST_FAKE_LAYER_TREE_HOST_CLIENT_H_
7 
8 #include "base/memory/scoped_ptr.h"
9 #include "cc/input/input_handler.h"
10 #include "cc/test/test_context_provider.h"
11 #include "cc/trees/layer_tree_host_client.h"
12 #include "cc/trees/layer_tree_host_single_thread_client.h"
13 
14 namespace cc {
15 class OutputSurface;
16 
17 class FakeLayerTreeHostClient : public LayerTreeHostClient,
18                                 public LayerTreeHostSingleThreadClient {
19  public:
20   enum RendererOptions {
21     DIRECT_3D,
22     DIRECT_SOFTWARE,
23     DELEGATED_3D,
24     DELEGATED_SOFTWARE
25   };
26   explicit FakeLayerTreeHostClient(RendererOptions options);
27   virtual ~FakeLayerTreeHostClient();
28 
29   // LayerTreeHostClient implementation.
WillBeginMainFrame(int frame_id)30   virtual void WillBeginMainFrame(int frame_id) OVERRIDE {}
DidBeginMainFrame()31   virtual void DidBeginMainFrame() OVERRIDE {}
Animate(double frame_begin_time)32   virtual void Animate(double frame_begin_time) OVERRIDE {}
Layout()33   virtual void Layout() OVERRIDE {}
ApplyScrollAndScale(gfx::Vector2d scroll_delta,float page_scale)34   virtual void ApplyScrollAndScale(gfx::Vector2d scroll_delta,
35                                    float page_scale) OVERRIDE {}
36 
37   virtual scoped_ptr<OutputSurface> CreateOutputSurface(bool fallback) OVERRIDE;
DidInitializeOutputSurface(bool success)38   virtual void DidInitializeOutputSurface(bool success) OVERRIDE {}
WillCommit()39   virtual void WillCommit() OVERRIDE {}
DidCommit()40   virtual void DidCommit() OVERRIDE {}
DidCommitAndDrawFrame()41   virtual void DidCommitAndDrawFrame() OVERRIDE {}
DidCompleteSwapBuffers()42   virtual void DidCompleteSwapBuffers() OVERRIDE {}
43   virtual scoped_refptr<ContextProvider> OffscreenContextProvider() OVERRIDE;
44 
45   // LayerTreeHostSingleThreadClient implementation.
ScheduleComposite()46   virtual void ScheduleComposite() OVERRIDE {}
ScheduleAnimation()47   virtual void ScheduleAnimation() OVERRIDE {}
DidPostSwapBuffers()48   virtual void DidPostSwapBuffers() OVERRIDE {}
DidAbortSwapBuffers()49   virtual void DidAbortSwapBuffers() OVERRIDE {}
50 
51  private:
52   bool use_software_rendering_;
53   bool use_delegating_renderer_;
54 
55   scoped_refptr<TestContextProvider> offscreen_contexts_;
56 };
57 
58 }  // namespace cc
59 
60 #endif  // CC_TEST_FAKE_LAYER_TREE_HOST_CLIENT_H_
61