| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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_COMPOSITOR_H_ | 5 #ifndef UI_COMPOSITOR_COMPOSITOR_H_ |
| 6 #define UI_COMPOSITOR_COMPOSITOR_H_ | 6 #define UI_COMPOSITOR_COMPOSITOR_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 | 9 |
| 10 #include "base/containers/hash_tables.h" | 10 #include "base/containers/hash_tables.h" |
| (...skipping 15 matching lines...) Expand all Loading... |
| 26 | 26 |
| 27 class SkBitmap; | 27 class SkBitmap; |
| 28 | 28 |
| 29 namespace base { | 29 namespace base { |
| 30 class MessageLoopProxy; | 30 class MessageLoopProxy; |
| 31 class RunLoop; | 31 class RunLoop; |
| 32 } | 32 } |
| 33 | 33 |
| 34 namespace cc { | 34 namespace cc { |
| 35 class ContextProvider; | 35 class ContextProvider; |
| 36 class GpuMemoryBufferManager; |
| 36 class Layer; | 37 class Layer; |
| 37 class LayerTreeDebugState; | 38 class LayerTreeDebugState; |
| 38 class LayerTreeHost; | 39 class LayerTreeHost; |
| 39 class SharedBitmapManager; | 40 class SharedBitmapManager; |
| 40 } | 41 } |
| 41 | 42 |
| 42 namespace gfx { | 43 namespace gfx { |
| 43 class Rect; | 44 class Rect; |
| 44 class Size; | 45 class Size; |
| 45 } | 46 } |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 85 // Destroys per-compositor data. | 86 // Destroys per-compositor data. |
| 86 virtual void RemoveCompositor(Compositor* compositor) = 0; | 87 virtual void RemoveCompositor(Compositor* compositor) = 0; |
| 87 | 88 |
| 88 // When true, the factory uses test contexts that do not do real GL | 89 // When true, the factory uses test contexts that do not do real GL |
| 89 // operations. | 90 // operations. |
| 90 virtual bool DoesCreateTestContexts() = 0; | 91 virtual bool DoesCreateTestContexts() = 0; |
| 91 | 92 |
| 92 // Gets the shared bitmap manager for software mode. | 93 // Gets the shared bitmap manager for software mode. |
| 93 virtual cc::SharedBitmapManager* GetSharedBitmapManager() = 0; | 94 virtual cc::SharedBitmapManager* GetSharedBitmapManager() = 0; |
| 94 | 95 |
| 96 // Gets the GPU memory buffer manager. |
| 97 virtual cc::GpuMemoryBufferManager* GetGpuMemoryBufferManager() = 0; |
| 98 |
| 95 // Gets the compositor message loop, or NULL if not using threaded | 99 // Gets the compositor message loop, or NULL if not using threaded |
| 96 // compositing. | 100 // compositing. |
| 97 virtual base::MessageLoopProxy* GetCompositorMessageLoop() = 0; | 101 virtual base::MessageLoopProxy* GetCompositorMessageLoop() = 0; |
| 98 }; | 102 }; |
| 99 | 103 |
| 100 // This class represents a lock on the compositor, that can be used to prevent | 104 // This class represents a lock on the compositor, that can be used to prevent |
| 101 // commits to the compositor tree while we're waiting for an asynchronous | 105 // commits to the compositor tree while we're waiting for an asynchronous |
| 102 // event. The typical use case is when waiting for a renderer to produce a frame | 106 // event. The typical use case is when waiting for a renderer to produce a frame |
| 103 // at the right size. The caller keeps a reference on this object, and drops the | 107 // at the right size. The caller keeps a reference on this object, and drops the |
| 104 // reference once it desires to release the lock. | 108 // reference once it desires to release the lock. |
| (...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 321 LayerAnimatorCollection layer_animator_collection_; | 325 LayerAnimatorCollection layer_animator_collection_; |
| 322 | 326 |
| 323 base::WeakPtrFactory<Compositor> schedule_draw_factory_; | 327 base::WeakPtrFactory<Compositor> schedule_draw_factory_; |
| 324 | 328 |
| 325 DISALLOW_COPY_AND_ASSIGN(Compositor); | 329 DISALLOW_COPY_AND_ASSIGN(Compositor); |
| 326 }; | 330 }; |
| 327 | 331 |
| 328 } // namespace ui | 332 } // namespace ui |
| 329 | 333 |
| 330 #endif // UI_COMPOSITOR_COMPOSITOR_H_ | 334 #endif // UI_COMPOSITOR_COMPOSITOR_H_ |
| OLD | NEW |