5 writes to _currentDuration
PresentationCore (5)
System\Windows\Media\Animation\Clock.cs (5)
118
_currentDuration
= _resolvedDuration;
2452
_currentDuration
= duration; // If CurrentDuration is different, we update it later in this method
2463
_currentDuration
= CurrentDuration;
2466
_currentDuration
= Duration.Forever; // We treat Automatic as unresolved current duration
3425
current.
_currentDuration
= current._resolvedDuration; // Revert currentDuration back to default size
35 references to _currentDuration
PresentationCore (35)
System\Windows\Media\Animation\Clock.cs (35)
1957
Debug.Assert(
_currentDuration
!= Duration.Automatic, "_currentDuration should never be Automatic.");
1972
if (
_currentDuration
.HasTimeSpan) // For finite duration, use modulo arithmetic to compute current iteration
1974
if (
_currentDuration
.TimeSpan == TimeSpan.Zero) // We must be post-filling if we have gotten here
2104
localProgress = TimeSpan.FromTicks(offsetFromBegin.Ticks %
_currentDuration
.TimeSpan.Ticks);
2124
localProgress =
_currentDuration
.TimeSpan;
2143
localProgress =
_currentDuration
.TimeSpan - localProgress;
2160
timeUntilNextBoundary = DivideTimeSpan(
_currentDuration
.TimeSpan, Math.Abs(parentSpeed));
2164
TimeSpan decelBegin = MultiplyTimeSpan(
_currentDuration
.TimeSpan, 1.0 - _timeline.DecelerationRatio);
2169
TimeSpan accelEnd = MultiplyTimeSpan(
_currentDuration
.TimeSpan, _timeline.AccelerationRatio);
2184
Debug.Assert(
_currentDuration
== Duration.Forever, "_currentDuration has an invalid enum value.");
2207
Debug.Assert(
_currentDuration
.HasTimeSpan, "ComputeCurrentIterationWithGrow should only be called when _currentDuration has a value.");
2212
if (offsetFromBegin <
_currentDuration
.TimeSpan) // We fall within the same iteration as during last tick
2220
long offsetOnLaterIterations = (offsetFromBegin -
_currentDuration
.TimeSpan).Ticks;
2229
_currentIterationBeginTime +=
_currentDuration
.TimeSpan + MultiplyTimeSpan(_resolvedDuration.TimeSpan, iterationIncrement - 1);
2241
_currentIterationBeginTime -=
_currentDuration
.TimeSpan;
2354
Debug.Assert(
_currentDuration
!= Duration.Automatic, "_currentDuration should never be Automatic.");
2356
if (
_currentDuration
.HasTimeSpan) // Finite duration, need to apply accel/decel
2358
Debug.Assert(
_currentDuration
.TimeSpan > TimeSpan.Zero, "ComputeCurrentTime was entered with _currentDuration <= 0");
2368
double durationInTicks = (double)
_currentDuration
.TimeSpan.Ticks;
2429
Debug.Assert(
_currentDuration
== Duration.Forever, "_currentDuration has an invalid enum value.");
2464
if (
_currentDuration
== Duration.Automatic)
2491
Debug.Assert(
_currentDuration
!= Duration.Automatic, "_currentDuration should never be Automatic.");
2496
if (
_currentDuration
.HasTimeSpan &&
_currentDuration
.TimeSpan == TimeSpan.Zero)
2507
else if (
_currentDuration
== Duration.Forever)
2513
Debug.Assert(
_currentDuration
.HasTimeSpan, "_currentDuration is invalid, neither Forever nor a TimeSpan.");
2514
Debug.Assert(
_currentDuration
== _resolvedDuration, "For clocks which cannot grow, _currentDuration must equal _resolvedDuration.");
2522
effectiveDuration = MultiplyTimeSpan(
_currentDuration
.TimeSpan, scalingFactor);
2527
Debug.Assert(
_currentDuration
.HasTimeSpan, "_currentDuration is invalid, neither Forever nor a TimeSpan.");
2543
presentAndFutureDuration = ((double)
_currentDuration
.TimeSpan.Ticks) * presentAndFutureIterations;
2547
presentAndFutureDuration = ((double)
_currentDuration
.TimeSpan.Ticks) // Current iteration; below is the future iteration length
2825
_currentDuration
, _appliedSpeedRatio,
2860
relativeBeginTime,
_currentDuration
, _appliedSpeedRatio,
2870
relativeBeginTime,
_currentDuration
, _appliedSpeedRatio))
2882
postFillDuration,
_currentDuration
, _appliedSpeedRatio,