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 IsImplSidePaintingEnabled() override
;
23 bool IsGpuRasterizationForced() override
;
24 bool IsGpuRasterizationEnabled() override
;
25 int GetGpuRasterizationMSAASampleCount() override
;
26 bool IsLcdTextEnabled() override
;
27 bool IsDistanceFieldTextEnabled() override
;
28 bool IsZeroCopyEnabled() override
;
29 bool IsOneCopyEnabled() override
;
30 bool IsElasticOverscrollEnabled() override
;
31 uint32
GetImageTextureTarget() override
;
32 scoped_refptr
<base::SingleThreadTaskRunner
>
33 GetCompositorMainThreadTaskRunner() override
;
34 scoped_refptr
<base::SingleThreadTaskRunner
>
35 GetCompositorImplThreadTaskRunner() override
;
36 cc::SharedBitmapManager
* GetSharedBitmapManager() override
;
37 gpu::GpuMemoryBufferManager
* GetGpuMemoryBufferManager() override
;
38 scheduler::RendererScheduler
* GetRendererScheduler() override
;
39 cc::ContextProvider
* GetSharedMainThreadContextProvider() override
;
40 scoped_ptr
<cc::BeginFrameSource
> CreateExternalBeginFrameSource(
41 int routing_id
) override
;
42 cc::TaskGraphRunner
* GetTaskGraphRunner() override
;
43 bool IsGatherPixelRefsEnabled() 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_