Home | History | Annotate | Download | only in test
      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/fake_context_provider.h"
     11 #include "cc/test/fake_output_surface.h"
     12 #include "cc/trees/layer_tree_host.h"
     13 
     14 namespace cc {
     15 
     16 class FakeLayerTreeHostClient : public LayerTreeHostClient {
     17  public:
     18   enum RendererOptions {
     19     DIRECT_3D,
     20     DIRECT_SOFTWARE,
     21     DELEGATED_3D,
     22     DELEGATED_SOFTWARE
     23   };
     24   explicit FakeLayerTreeHostClient(RendererOptions options);
     25   virtual ~FakeLayerTreeHostClient();
     26 
     27   virtual void WillBeginFrame() OVERRIDE {}
     28   virtual void DidBeginFrame() OVERRIDE {}
     29   virtual void Animate(double frame_begin_time) OVERRIDE {}
     30   virtual void Layout() OVERRIDE {}
     31   virtual void ApplyScrollAndScale(gfx::Vector2d scroll_delta,
     32                                    float page_scale) OVERRIDE {}
     33 
     34   virtual scoped_ptr<OutputSurface> CreateOutputSurface(bool fallback) OVERRIDE;
     35   virtual void DidInitializeOutputSurface(bool success) OVERRIDE {}
     36   virtual void WillCommit() OVERRIDE {}
     37   virtual void DidCommit() OVERRIDE {}
     38   virtual void DidCommitAndDrawFrame() OVERRIDE {}
     39   virtual void DidCompleteSwapBuffers() OVERRIDE {}
     40 
     41   // Used only in the single-threaded path.
     42   virtual void ScheduleComposite() OVERRIDE {}
     43 
     44   virtual scoped_refptr<cc::ContextProvider>
     45       OffscreenContextProviderForMainThread() OVERRIDE;
     46   virtual scoped_refptr<cc::ContextProvider>
     47       OffscreenContextProviderForCompositorThread() OVERRIDE;
     48 
     49  private:
     50   bool use_software_rendering_;
     51   bool use_delegating_renderer_;
     52 
     53   scoped_refptr<FakeContextProvider> main_thread_contexts_;
     54   scoped_refptr<FakeContextProvider> compositor_thread_contexts_;
     55 };
     56 
     57 }  // namespace cc
     58 
     59 #endif  // CC_TEST_FAKE_LAYER_TREE_HOST_CLIENT_H_
     60