| 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 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 79 | 79 |
| 80 // Sets the global instance. Caller keeps ownership. | 80 // Sets the global instance. Caller keeps ownership. |
| 81 // If this function isn't called (for tests), a "default" factory will be | 81 // If this function isn't called (for tests), a "default" factory will be |
| 82 // created on the first call of GetInstance. | 82 // created on the first call of GetInstance. |
| 83 static void SetInstance(ContextFactory* instance); | 83 static void SetInstance(ContextFactory* instance); |
| 84 | 84 |
| 85 // Creates an output surface for the given compositor. The factory may keep | 85 // Creates an output surface for the given compositor. The factory may keep |
| 86 // per-compositor data (e.g. a shared context), that needs to be cleaned up | 86 // per-compositor data (e.g. a shared context), that needs to be cleaned up |
| 87 // by calling RemoveCompositor when the compositor gets destroyed. | 87 // by calling RemoveCompositor when the compositor gets destroyed. |
| 88 virtual scoped_ptr<cc::OutputSurface> CreateOutputSurface( | 88 virtual scoped_ptr<cc::OutputSurface> CreateOutputSurface( |
| 89 Compositor* compositor) = 0; | 89 Compositor* compositor, bool software_fallback) = 0; |
| 90 | 90 |
| 91 // Creates a reflector that copies the content of the |mirrored_compositor| | 91 // Creates a reflector that copies the content of the |mirrored_compositor| |
| 92 // onto |mirroing_layer|. | 92 // onto |mirroing_layer|. |
| 93 virtual scoped_refptr<Reflector> CreateReflector( | 93 virtual scoped_refptr<Reflector> CreateReflector( |
| 94 Compositor* mirrored_compositor, | 94 Compositor* mirrored_compositor, |
| 95 Layer* mirroring_layer) = 0; | 95 Layer* mirroring_layer) = 0; |
| 96 // Removes the reflector, which stops the mirroring. | 96 // Removes the reflector, which stops the mirroring. |
| 97 virtual void RemoveReflector(scoped_refptr<Reflector> reflector) = 0; | 97 virtual void RemoveReflector(scoped_refptr<Reflector> reflector) = 0; |
| 98 | 98 |
| 99 // Returns a reference to the offscreen context provider used by the | 99 // Returns a reference to the offscreen context provider used by the |
| (...skipping 288 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 388 bool draw_on_compositing_end_; | 388 bool draw_on_compositing_end_; |
| 389 | 389 |
| 390 base::WeakPtrFactory<Compositor> schedule_draw_factory_; | 390 base::WeakPtrFactory<Compositor> schedule_draw_factory_; |
| 391 | 391 |
| 392 DISALLOW_COPY_AND_ASSIGN(Compositor); | 392 DISALLOW_COPY_AND_ASSIGN(Compositor); |
| 393 }; | 393 }; |
| 394 | 394 |
| 395 } // namespace ui | 395 } // namespace ui |
| 396 | 396 |
| 397 #endif // UI_COMPOSITOR_COMPOSITOR_H_ | 397 #endif // UI_COMPOSITOR_COMPOSITOR_H_ |
| OLD | NEW |