Chromium Code Reviews| OLD | NEW |
|---|---|
| 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 23 matching lines...) Expand all Loading... | |
| 34 #include "platform/animation/TimingFunction.h" | 34 #include "platform/animation/TimingFunction.h" |
| 35 #include "public/platform/WebCompositorAnimation.h" | 35 #include "public/platform/WebCompositorAnimation.h" |
| 36 | 36 |
| 37 namespace blink { | 37 namespace blink { |
| 38 | 38 |
| 39 class WebCompositorAnimationCurve; | 39 class WebCompositorAnimationCurve; |
| 40 | 40 |
| 41 class CompositorAnimationsImpl { | 41 class CompositorAnimationsImpl { |
| 42 private: | 42 private: |
| 43 struct CompositorTiming { | 43 struct CompositorTiming { |
| 44 void assertValid() const | |
| 45 { | |
| 46 ASSERT(scaledDuration > 0); | |
| 47 ASSERT(std::isfinite(scaledTimeOffset)); | |
| 48 ASSERT(adjustedIterationCount > 0 || adjustedIterationCount == -1); | |
| 49 ASSERT(std::isfinite(playbackRate)); | |
|
dstockwell
2014/10/14 04:54:10
playbackRate should also not be 0
samli
2014/10/14 04:57:55
Done.
| |
| 50 ASSERT(iterationStart >= 0); | |
| 51 } | |
| 52 | |
| 44 Timing::PlaybackDirection direction; | 53 Timing::PlaybackDirection direction; |
| 45 double scaledDuration; | 54 double scaledDuration; |
| 46 double scaledTimeOffset; | 55 double scaledTimeOffset; |
| 47 double adjustedIterationCount; | 56 double adjustedIterationCount; |
| 48 double playbackRate; | 57 double playbackRate; |
| 49 Timing::FillMode fillMode; | 58 Timing::FillMode fillMode; |
| 50 double iterationStart; | 59 double iterationStart; |
| 51 }; | 60 }; |
| 52 | 61 |
| 53 static bool convertTimingForCompositor(const Timing&, double timeOffset, Com positorTiming& out, double playerPlaybackRate); | 62 static bool convertTimingForCompositor(const Timing&, double timeOffset, Com positorTiming& out, double playerPlaybackRate); |
| 54 | 63 |
| 55 static void getAnimationOnCompositor(const Timing&, double startTime, double timeOffset, const KeyframeEffectModelBase&, Vector<OwnPtr<WebCompositorAnimatio n> >& animations, double playerPlaybackRate); | 64 static void getAnimationOnCompositor(const Timing&, double startTime, double timeOffset, const KeyframeEffectModelBase&, Vector<OwnPtr<WebCompositorAnimatio n> >& animations, double playerPlaybackRate); |
| 56 | 65 |
| 57 static void addKeyframesToCurve(WebCompositorAnimationCurve&, const Animatab leValuePropertySpecificKeyframeVector&, const Timing&); | 66 static void addKeyframesToCurve(WebCompositorAnimationCurve&, const Animatab leValuePropertySpecificKeyframeVector&, const Timing&); |
| 58 | 67 |
| 59 friend class CompositorAnimations; | 68 friend class CompositorAnimations; |
| 60 friend class AnimationCompositorAnimationsTest; | 69 friend class AnimationCompositorAnimationsTest; |
| 61 }; | 70 }; |
| 62 | 71 |
| 63 } // namespace blink | 72 } // namespace blink |
| OLD | NEW |