1 // Copyright 2014 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.
5 #ifndef CONTENT_TEST_FAKE_COMPOSITOR_DEPENDENCIES_H_
6 #define CONTENT_TEST_FAKE_COMPOSITOR_DEPENDENCIES_H_
8 #include "cc/test/test_gpu_memory_buffer_manager.h"
9 #include "cc/test/test_shared_bitmap_manager.h"
10 #include "cc/test/test_task_graph_runner.h"
11 #include "content/renderer/gpu/compositor_dependencies.h"
12 #include "content/test/fake_renderer_scheduler.h"
16 class FakeCompositorDependencies
: public CompositorDependencies
{
18 FakeCompositorDependencies();
19 ~FakeCompositorDependencies() override
;
21 // CompositorDependencies implementation.
22 bool IsGpuRasterizationForced() override
;
23 bool IsGpuRasterizationEnabled() override
;
24 int GetGpuRasterizationMSAASampleCount() override
;
25 bool IsLcdTextEnabled() override
;
26 bool IsDistanceFieldTextEnabled() override
;
27 bool IsZeroCopyEnabled() override
;
28 bool IsPersistentGpuMemoryBufferEnabled() override
;
29 bool IsElasticOverscrollEnabled() override
;
30 std::vector
<unsigned> GetImageTextureTargets() override
;
31 scoped_refptr
<base::SingleThreadTaskRunner
>
32 GetCompositorMainThreadTaskRunner() override
;
33 scoped_refptr
<base::SingleThreadTaskRunner
>
34 GetCompositorImplThreadTaskRunner() override
;
35 cc::SharedBitmapManager
* GetSharedBitmapManager() override
;
36 gpu::GpuMemoryBufferManager
* GetGpuMemoryBufferManager() override
;
37 scheduler::RendererScheduler
* GetRendererScheduler() override
;
38 cc::ContextProvider
* GetSharedMainThreadContextProvider() override
;
39 scoped_ptr
<cc::BeginFrameSource
> CreateExternalBeginFrameSource(
40 int routing_id
) override
;
41 cc::TaskGraphRunner
* GetTaskGraphRunner() override
;
42 bool IsGatherPixelRefsEnabled() override
;
43 bool IsThreadedAnimationEnabled() override
;
46 cc::TestSharedBitmapManager shared_bitmap_manager_
;
47 cc::TestGpuMemoryBufferManager gpu_memory_buffer_manager_
;
48 cc::TestTaskGraphRunner task_graph_runner_
;
49 FakeRendererScheduler renderer_scheduler_
;
51 DISALLOW_COPY_AND_ASSIGN(FakeCompositorDependencies
);
54 } // namespace content
56 #endif // CONTENT_TEST_FAKE_COMPOSITOR_DEPENDENCIES_H_