OLD | NEW |
1 // Copyright (c) 2016 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 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 CC_ANIMATION_TARGET_PROPERTY_H_ | 5 #ifndef CC_ANIMATION_TARGET_PROPERTY_H_ |
6 #define CC_ANIMATION_TARGET_PROPERTY_H_ | 6 #define CC_ANIMATION_TARGET_PROPERTY_H_ |
7 | 7 |
| 8 #include <bitset> |
| 9 |
8 namespace cc { | 10 namespace cc { |
9 | 11 |
10 namespace TargetProperty { | 12 namespace TargetProperty { |
11 | 13 |
12 enum Type { | 14 enum Type { |
13 TRANSFORM = 0, | 15 TRANSFORM = 0, |
14 OPACITY, | 16 OPACITY, |
15 FILTER, | 17 FILTER, |
16 SCROLL_OFFSET, | 18 SCROLL_OFFSET, |
17 BACKGROUND_COLOR, | 19 BACKGROUND_COLOR, |
18 // These sentinels must be last | 20 // These sentinels must be last |
19 FIRST_TARGET_PROPERTY = TRANSFORM, | 21 FIRST_TARGET_PROPERTY = TRANSFORM, |
20 LAST_TARGET_PROPERTY = BACKGROUND_COLOR | 22 LAST_TARGET_PROPERTY = BACKGROUND_COLOR |
21 }; | 23 }; |
22 | 24 |
23 const char* GetName(TargetProperty::Type property); | 25 const char* GetName(TargetProperty::Type property); |
24 | 26 |
25 } // namespace TargetProperty | 27 } // namespace TargetProperty |
26 | 28 |
| 29 // A set of target properties. TargetProperty must be 0-based enum. |
| 30 using TargetProperties = std::bitset<TargetProperty::LAST_TARGET_PROPERTY + 1>; |
| 31 |
27 } // namespace cc | 32 } // namespace cc |
28 | 33 |
29 #endif // CC_ANIMATION_TARGET_PROPERTY_H_ | 34 #endif // CC_ANIMATION_TARGET_PROPERTY_H_ |
OLD | NEW |