| OLD | NEW |
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 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 #include "config.h" | 5 #include "config.h" |
| 6 | 6 |
| 7 #include "CCActiveAnimation.h" | 7 #include "CCActiveAnimation.h" |
| 8 | 8 |
| 9 #include "CCAnimationCurve.h" | 9 #include "CCAnimationCurve.h" |
| 10 #include "TraceEvent.h" | 10 #include "TraceEvent.h" |
| (...skipping 24 matching lines...) Expand all Loading... |
| 35 "Transform", | 35 "Transform", |
| 36 "Opacity" | 36 "Opacity" |
| 37 }; | 37 }; |
| 38 | 38 |
| 39 COMPILE_ASSERT(static_cast<int>(cc::CCActiveAnimation::TargetPropertyEnumSize) =
= arraysize(s_targetPropertyNames), TargetProperty_names_match_enum); | 39 COMPILE_ASSERT(static_cast<int>(cc::CCActiveAnimation::TargetPropertyEnumSize) =
= arraysize(s_targetPropertyNames), TargetProperty_names_match_enum); |
| 40 | 40 |
| 41 } // namespace | 41 } // namespace |
| 42 | 42 |
| 43 namespace cc { | 43 namespace cc { |
| 44 | 44 |
| 45 PassOwnPtr<CCActiveAnimation> CCActiveAnimation::create(PassOwnPtr<CCAnimationCu
rve> curve, int animationId, int groupId, TargetProperty targetProperty) | 45 scoped_ptr<CCActiveAnimation> CCActiveAnimation::create(scoped_ptr<CCAnimationCu
rve> curve, int animationId, int groupId, TargetProperty targetProperty) |
| 46 { | 46 { |
| 47 return adoptPtr(new CCActiveAnimation(curve, animationId, groupId, targetPro
perty)); | 47 return make_scoped_ptr(new CCActiveAnimation(curve.Pass(), animationId, grou
pId, targetProperty)); |
| 48 } | 48 } |
| 49 | 49 |
| 50 CCActiveAnimation::CCActiveAnimation(PassOwnPtr<CCAnimationCurve> curve, int ani
mationId, int groupId, TargetProperty targetProperty) | 50 CCActiveAnimation::CCActiveAnimation(scoped_ptr<CCAnimationCurve> curve, int ani
mationId, int groupId, TargetProperty targetProperty) |
| 51 : m_curve(curve) | 51 : m_curve(curve.Pass()) |
| 52 , m_id(animationId) | 52 , m_id(animationId) |
| 53 , m_group(groupId) | 53 , m_group(groupId) |
| 54 , m_targetProperty(targetProperty) | 54 , m_targetProperty(targetProperty) |
| 55 , m_runState(WaitingForTargetAvailability) | 55 , m_runState(WaitingForTargetAvailability) |
| 56 , m_iterations(1) | 56 , m_iterations(1) |
| 57 , m_startTime(0) | 57 , m_startTime(0) |
| 58 , m_alternatesDirection(false) | 58 , m_alternatesDirection(false) |
| 59 , m_timeOffset(0) | 59 , m_timeOffset(0) |
| 60 , m_needsSynchronizedStartTime(false) | 60 , m_needsSynchronizedStartTime(false) |
| 61 , m_suspended(false) | 61 , m_suspended(false) |
| (...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 173 // Calculate x where trimmed = x + n * m_curve->duration() for some positive
integer n. | 173 // Calculate x where trimmed = x + n * m_curve->duration() for some positive
integer n. |
| 174 trimmed = fmod(trimmed, m_curve->duration()); | 174 trimmed = fmod(trimmed, m_curve->duration()); |
| 175 | 175 |
| 176 // If we're alternating and on an odd iteration, reverse the direction. | 176 // If we're alternating and on an odd iteration, reverse the direction. |
| 177 if (m_alternatesDirection && iteration % 2 == 1) | 177 if (m_alternatesDirection && iteration % 2 == 1) |
| 178 return m_curve->duration() - trimmed; | 178 return m_curve->duration() - trimmed; |
| 179 | 179 |
| 180 return trimmed; | 180 return trimmed; |
| 181 } | 181 } |
| 182 | 182 |
| 183 PassOwnPtr<CCActiveAnimation> CCActiveAnimation::clone(InstanceType instanceType
) const | 183 scoped_ptr<CCActiveAnimation> CCActiveAnimation::clone(InstanceType instanceType
) const |
| 184 { | 184 { |
| 185 return cloneAndInitialize(instanceType, m_runState, m_startTime); | 185 return cloneAndInitialize(instanceType, m_runState, m_startTime); |
| 186 } | 186 } |
| 187 | 187 |
| 188 PassOwnPtr<CCActiveAnimation> CCActiveAnimation::cloneAndInitialize(InstanceType
instanceType, RunState initialRunState, double startTime) const | 188 scoped_ptr<CCActiveAnimation> CCActiveAnimation::cloneAndInitialize(InstanceType
instanceType, RunState initialRunState, double startTime) const |
| 189 { | 189 { |
| 190 OwnPtr<CCActiveAnimation> toReturn(adoptPtr(new CCActiveAnimation(m_curve->c
lone(), m_id, m_group, m_targetProperty))); | 190 scoped_ptr<CCActiveAnimation> toReturn(new CCActiveAnimation(m_curve->clone(
), m_id, m_group, m_targetProperty)); |
| 191 toReturn->m_runState = initialRunState; | 191 toReturn->m_runState = initialRunState; |
| 192 toReturn->m_iterations = m_iterations; | 192 toReturn->m_iterations = m_iterations; |
| 193 toReturn->m_startTime = startTime; | 193 toReturn->m_startTime = startTime; |
| 194 toReturn->m_pauseTime = m_pauseTime; | 194 toReturn->m_pauseTime = m_pauseTime; |
| 195 toReturn->m_totalPausedTime = m_totalPausedTime; | 195 toReturn->m_totalPausedTime = m_totalPausedTime; |
| 196 toReturn->m_timeOffset = m_timeOffset; | 196 toReturn->m_timeOffset = m_timeOffset; |
| 197 toReturn->m_alternatesDirection = m_alternatesDirection; | 197 toReturn->m_alternatesDirection = m_alternatesDirection; |
| 198 toReturn->m_isControllingInstance = instanceType == ControllingInstance; | 198 toReturn->m_isControllingInstance = instanceType == ControllingInstance; |
| 199 return toReturn.release(); | 199 return toReturn.Pass(); |
| 200 } | 200 } |
| 201 | 201 |
| 202 void CCActiveAnimation::pushPropertiesTo(CCActiveAnimation* other) const | 202 void CCActiveAnimation::pushPropertiesTo(CCActiveAnimation* other) const |
| 203 { | 203 { |
| 204 // Currently, we only push changes due to pausing and resuming animations on
the main thread. | 204 // Currently, we only push changes due to pausing and resuming animations on
the main thread. |
| 205 if (m_runState == CCActiveAnimation::Paused || other->m_runState == CCActive
Animation::Paused) { | 205 if (m_runState == CCActiveAnimation::Paused || other->m_runState == CCActive
Animation::Paused) { |
| 206 other->m_runState = m_runState; | 206 other->m_runState = m_runState; |
| 207 other->m_pauseTime = m_pauseTime; | 207 other->m_pauseTime = m_pauseTime; |
| 208 other->m_totalPausedTime = m_totalPausedTime; | 208 other->m_totalPausedTime = m_totalPausedTime; |
| 209 } | 209 } |
| 210 } | 210 } |
| 211 | 211 |
| 212 } // namespace cc | 212 } // namespace cc |
| OLD | NEW |