Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(13)

Side by Side Diff: Source/core/animation/animatable/AnimatableDouble.h

Issue 1120003002: [Oilpan] Migrate most classes under core/animations to Oilpan heap. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Resize expect size of Persistent Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2013 Google Inc. All rights reserved. 2 * Copyright (C) 2013 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 27 matching lines...) Expand all
38 38
39 class CORE_EXPORT AnimatableDouble final : public AnimatableValue { 39 class CORE_EXPORT AnimatableDouble final : public AnimatableValue {
40 public: 40 public:
41 virtual ~AnimatableDouble() { } 41 virtual ~AnimatableDouble() { }
42 42
43 enum Constraint { 43 enum Constraint {
44 Unconstrained, 44 Unconstrained,
45 InterpolationIsNonContinuousWithZero, 45 InterpolationIsNonContinuousWithZero,
46 }; 46 };
47 47
48 static PassRefPtrWillBeRawPtr<AnimatableDouble> create(double number, Constr aint constraint = Unconstrained) 48 static AnimatableDouble* create(double number, Constraint constraint = Uncon strained)
49 { 49 {
50 return adoptRefWillBeNoop(new AnimatableDouble(number, constraint)); 50 return new AnimatableDouble(number, constraint);
51 } 51 }
52 52
53 double toDouble() const { return m_number; } 53 double toDouble() const { return m_number; }
54 54
55 DEFINE_INLINE_VIRTUAL_TRACE() { AnimatableValue::trace(visitor); } 55 DEFINE_INLINE_VIRTUAL_TRACE() { AnimatableValue::trace(visitor); }
56 56
57 protected: 57 protected:
58 virtual PassRefPtrWillBeRawPtr<AnimatableValue> interpolateTo(const Animatab leValue*, double fraction) const override; 58 virtual AnimatableValue* interpolateTo(const AnimatableValue*, double fracti on) const override;
59 virtual bool usesDefaultInterpolationWith(const AnimatableValue*) const over ride; 59 virtual bool usesDefaultInterpolationWith(const AnimatableValue*) const over ride;
60 60
61 private: 61 private:
62 AnimatableDouble(double number, Constraint constraint) 62 AnimatableDouble(double number, Constraint constraint)
63 : m_number(number) 63 : m_number(number)
64 , m_constraint(constraint) 64 , m_constraint(constraint)
65 { 65 {
66 } 66 }
67 virtual AnimatableType type() const override { return TypeDouble; } 67 virtual AnimatableType type() const override { return TypeDouble; }
68 virtual bool equalTo(const AnimatableValue*) const override; 68 virtual bool equalTo(const AnimatableValue*) const override;
69 69
70 double m_number; 70 double m_number;
71 Constraint m_constraint; 71 Constraint m_constraint;
72 }; 72 };
73 73
74 DEFINE_ANIMATABLE_VALUE_TYPE_CASTS(AnimatableDouble, isDouble()); 74 DEFINE_ANIMATABLE_VALUE_TYPE_CASTS(AnimatableDouble, isDouble());
75 75
76 } // namespace blink 76 } // namespace blink
77 77
78 #endif // AnimatableDouble_h 78 #endif // AnimatableDouble_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698