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 PathInterpolationFunctions_h | 5 #ifndef PathInterpolationFunctions_h |
6 #define PathInterpolationFunctions_h | 6 #define PathInterpolationFunctions_h |
7 | 7 |
8 #include "core/animation/InterpolationType.h" | 8 #include "core/animation/InterpolationType.h" |
9 #include "core/svg/SVGPathByteStream.h" | 9 #include "core/svg/SVGPathByteStream.h" |
| 10 #include <memory> |
10 | 11 |
11 namespace blink { | 12 namespace blink { |
12 | 13 |
13 class StylePath; | 14 class StylePath; |
14 | 15 |
15 class PathInterpolationFunctions { | 16 class PathInterpolationFunctions { |
16 public: | 17 public: |
17 static PassOwnPtr<SVGPathByteStream> appliedValue(const InterpolableValue&,
const NonInterpolableValue*); | 18 static std::unique_ptr<SVGPathByteStream> appliedValue(const InterpolableVal
ue&, const NonInterpolableValue*); |
18 | 19 |
19 static void composite(UnderlyingValueOwner&, double underlyingFraction, cons
t InterpolationType&, const InterpolationValue&); | 20 static void composite(UnderlyingValueOwner&, double underlyingFraction, cons
t InterpolationType&, const InterpolationValue&); |
20 | 21 |
21 static InterpolationValue convertValue(const SVGPathByteStream&); | 22 static InterpolationValue convertValue(const SVGPathByteStream&); |
22 | 23 |
23 static InterpolationValue convertValue(const StylePath*); | 24 static InterpolationValue convertValue(const StylePath*); |
24 | 25 |
25 static InterpolationValue maybeConvertNeutral(const InterpolationValue& unde
rlying, InterpolationType::ConversionCheckers&); | 26 static InterpolationValue maybeConvertNeutral(const InterpolationValue& unde
rlying, InterpolationType::ConversionCheckers&); |
26 | 27 |
27 static PairwiseInterpolationValue maybeMergeSingles(InterpolationValue&& sta
rt, InterpolationValue&& end); | 28 static PairwiseInterpolationValue maybeMergeSingles(InterpolationValue&& sta
rt, InterpolationValue&& end); |
28 }; | 29 }; |
29 | 30 |
30 } // namespace blink | 31 } // namespace blink |
31 | 32 |
32 #endif // PathInterpolationFunctions_h | 33 #endif // PathInterpolationFunctions_h |
OLD | NEW |