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" | |
9 #include <cstdint> | 8 #include <cstdint> |
10 #include <memory> | 9 #include <memory> |
11 | 10 #include "platform/PlatformExport.h" |
12 namespace cc { | 11 #include "platform/graphics/CompositorMutableProperties.h" |
13 class LayerTreeImpl; | |
14 } // namespace cc | |
15 | 12 |
16 namespace blink { | 13 namespace blink { |
17 | 14 |
18 class CompositorMutableState; | 15 class CompositorMutableState; |
19 struct CompositorMutations; | 16 struct CompositorMutations; |
20 | 17 |
21 // This class is a window onto compositor-owned state. It vends out wrappers | 18 // This class is a window onto compositor-owned state. It vends out wrappers |
22 // around per-element bits of this state. | 19 // around per-element bits of this state. |
23 class PLATFORM_EXPORT CompositorMutableStateProvider { | 20 class PLATFORM_EXPORT CompositorMutableStateProvider { |
24 public: | 21 public: |
25 CompositorMutableStateProvider(cc::LayerTreeImpl*, CompositorMutations*); | 22 CompositorMutableStateProvider(ProxyCompositorMutablePropertiesMap*, |
| 23 CompositorMutations*); |
26 ~CompositorMutableStateProvider(); | 24 ~CompositorMutableStateProvider(); |
27 | 25 |
28 std::unique_ptr<CompositorMutableState> GetMutableStateFor( | 26 std::unique_ptr<CompositorMutableState> GetMutableStateFor(uint64_t proxy_id); |
29 uint64_t element_id); | |
30 | 27 |
31 private: | 28 private: |
32 cc::LayerTreeImpl* tree_; | 29 ProxyCompositorMutablePropertiesMap* input_properties_; |
33 CompositorMutations* mutations_; | 30 CompositorMutations* mutations_; |
34 }; | 31 }; |
35 | 32 |
36 } // namespace blink | 33 } // namespace blink |
37 | 34 |
38 #endif // CompositorMutableStateProvider_h | 35 #endif // CompositorMutableStateProvider_h |
OLD | NEW |