OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef UI_COMPOSITOR_TEST_IN_PROCESS_CONTEXT_FACTORY_H_ | 5 #ifndef UI_COMPOSITOR_TEST_IN_PROCESS_CONTEXT_FACTORY_H_ |
6 #define UI_COMPOSITOR_TEST_IN_PROCESS_CONTEXT_FACTORY_H_ | 6 #define UI_COMPOSITOR_TEST_IN_PROCESS_CONTEXT_FACTORY_H_ |
7 | 7 |
8 #include "cc/test/test_gpu_memory_buffer_manager.h" | 8 #include "cc/test/test_gpu_memory_buffer_manager.h" |
9 #include "cc/test/test_shared_bitmap_manager.h" | 9 #include "cc/test/test_shared_bitmap_manager.h" |
10 #include "ui/compositor/compositor.h" | 10 #include "ui/compositor/compositor.h" |
11 | 11 |
12 namespace base { | 12 namespace base { |
13 class Thread; | 13 class Thread; |
14 } | 14 } |
15 | 15 |
16 namespace webkit { | 16 namespace webkit { |
17 namespace gpu { | 17 namespace gpu { |
18 class ContextProviderInProcess; | 18 class ContextProviderInProcess; |
19 } | 19 } |
20 } | 20 } |
21 | 21 |
22 namespace ui { | 22 namespace ui { |
23 | 23 |
24 class InProcessContextFactory : public ContextFactory { | 24 class InProcessContextFactory : public ContextFactory { |
25 public: | 25 public: |
26 InProcessContextFactory(); | 26 InProcessContextFactory(); |
27 ~InProcessContextFactory() override; | 27 ~InProcessContextFactory() override; |
28 | 28 |
29 // ContextFactory implementation | 29 // ContextFactory implementation |
30 scoped_ptr<cc::OutputSurface> CreateOutputSurface( | 30 void CreateOutputSurface(base::WeakPtr<Compositor> compositor, |
31 Compositor* compositor, | 31 bool software_fallback) override; |
32 bool software_fallback) override; | |
33 | 32 |
34 scoped_refptr<Reflector> CreateReflector(Compositor* mirrored_compositor, | 33 scoped_refptr<Reflector> CreateReflector(Compositor* mirrored_compositor, |
35 Layer* mirroring_layer) override; | 34 Layer* mirroring_layer) override; |
36 void RemoveReflector(scoped_refptr<Reflector> reflector) override; | 35 void RemoveReflector(scoped_refptr<Reflector> reflector) override; |
37 | 36 |
38 scoped_refptr<cc::ContextProvider> SharedMainThreadContextProvider() override; | 37 scoped_refptr<cc::ContextProvider> SharedMainThreadContextProvider() override; |
39 void RemoveCompositor(Compositor* compositor) override; | 38 void RemoveCompositor(Compositor* compositor) override; |
40 bool DoesCreateTestContexts() override; | 39 bool DoesCreateTestContexts() override; |
41 cc::SharedBitmapManager* GetSharedBitmapManager() override; | 40 cc::SharedBitmapManager* GetSharedBitmapManager() override; |
42 cc::GpuMemoryBufferManager* GetGpuMemoryBufferManager() override; | 41 cc::GpuMemoryBufferManager* GetGpuMemoryBufferManager() override; |
43 base::MessageLoopProxy* GetCompositorMessageLoop() override; | 42 base::MessageLoopProxy* GetCompositorMessageLoop() override; |
44 scoped_ptr<cc::SurfaceIdAllocator> CreateSurfaceIdAllocator() override; | 43 scoped_ptr<cc::SurfaceIdAllocator> CreateSurfaceIdAllocator() override; |
45 | 44 |
46 private: | 45 private: |
47 scoped_ptr<base::Thread> compositor_thread_; | 46 scoped_ptr<base::Thread> compositor_thread_; |
48 scoped_refptr<webkit::gpu::ContextProviderInProcess> | 47 scoped_refptr<webkit::gpu::ContextProviderInProcess> |
49 shared_main_thread_contexts_; | 48 shared_main_thread_contexts_; |
50 cc::TestSharedBitmapManager shared_bitmap_manager_; | 49 cc::TestSharedBitmapManager shared_bitmap_manager_; |
51 cc::TestGpuMemoryBufferManager gpu_memory_buffer_manager_; | 50 cc::TestGpuMemoryBufferManager gpu_memory_buffer_manager_; |
52 uint32_t next_surface_id_namespace_; | 51 uint32_t next_surface_id_namespace_; |
53 | 52 |
54 DISALLOW_COPY_AND_ASSIGN(InProcessContextFactory); | 53 DISALLOW_COPY_AND_ASSIGN(InProcessContextFactory); |
55 }; | 54 }; |
56 | 55 |
57 } // namespace ui | 56 } // namespace ui |
58 | 57 |
59 #endif // UI_COMPOSITOR_TEST_IN_PROCESS_CONTEXT_FACTORY_H_ | 58 #endif // UI_COMPOSITOR_TEST_IN_PROCESS_CONTEXT_FACTORY_H_ |
OLD | NEW |