OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 CompositorMutableStateProvider_h | 5 #ifndef CompositorMutableStateProvider_h |
6 #define CompositorMutableStateProvider_h | 6 #define CompositorMutableStateProvider_h |
7 | 7 |
8 #include "platform/PlatformExport.h" | 8 #include "platform/PlatformExport.h" |
9 | |
10 #include <cstdint> | 9 #include <cstdint> |
11 #include <memory> | 10 #include <memory> |
12 | 11 |
13 namespace cc { | 12 namespace cc { |
14 class LayerTreeImpl; | 13 class LayerTreeImpl; |
15 } // namespace cc | 14 } // namespace cc |
16 | 15 |
17 namespace blink { | 16 namespace blink { |
18 | 17 |
19 class CompositorMutableState; | 18 class CompositorMutableState; |
20 struct CompositorMutations; | 19 struct CompositorMutations; |
21 | 20 |
22 // This class is a window onto compositor-owned state. It vends out wrappers | 21 // This class is a window onto compositor-owned state. It vends out wrappers |
23 // around per-element bits of this state. | 22 // around per-element bits of this state. |
24 class PLATFORM_EXPORT CompositorMutableStateProvider { | 23 class PLATFORM_EXPORT CompositorMutableStateProvider { |
25 public: | 24 public: |
26 CompositorMutableStateProvider(cc::LayerTreeImpl*, CompositorMutations*); | 25 CompositorMutableStateProvider(cc::LayerTreeImpl*, CompositorMutations*); |
27 ~CompositorMutableStateProvider(); | 26 ~CompositorMutableStateProvider(); |
28 | 27 |
29 std::unique_ptr<CompositorMutableState> getMutableStateFor(uint64_t elementI
d); | 28 std::unique_ptr<CompositorMutableState> getMutableStateFor(uint64_t elementI
d); |
30 | 29 |
31 private: | 30 private: |
32 cc::LayerTreeImpl* m_tree; | 31 cc::LayerTreeImpl* m_tree; |
33 CompositorMutations* m_mutations; | 32 CompositorMutations* m_mutations; |
34 }; | 33 }; |
35 | 34 |
36 } // namespace blink | 35 } // namespace blink |
37 | 36 |
38 #endif // CompositorMutableStateProvider_h | 37 #endif // CompositorMutableStateProvider_h |
OLD | NEW |