5 writes to _currentDuration
PresentationCore (5)
System\Windows\Media\Animation\Clock.cs (5)
105
_currentDuration
= _resolvedDuration;
2438
_currentDuration
= duration; // If CurrentDuration is different, we update it later in this method
2449
_currentDuration
= CurrentDuration;
2452
_currentDuration
= Duration.Forever; // We treat Automatic as unresolved current duration
3411
current.
_currentDuration
= current._resolvedDuration; // Revert currentDuration back to default size
35 references to _currentDuration
PresentationCore (35)
System\Windows\Media\Animation\Clock.cs (35)
1944
Debug.Assert(
_currentDuration
!= Duration.Automatic, "_currentDuration should never be Automatic.");
1958
if (
_currentDuration
.HasTimeSpan) // For finite duration, use modulo arithmetic to compute current iteration
1960
if (
_currentDuration
.TimeSpan == TimeSpan.Zero) // We must be post-filling if we have gotten here
2090
localProgress = TimeSpan.FromTicks(offsetFromBegin.Ticks %
_currentDuration
.TimeSpan.Ticks);
2110
localProgress =
_currentDuration
.TimeSpan;
2129
localProgress =
_currentDuration
.TimeSpan - localProgress;
2146
timeUntilNextBoundary = DivideTimeSpan(
_currentDuration
.TimeSpan, Math.Abs(parentSpeed));
2150
TimeSpan decelBegin = MultiplyTimeSpan(
_currentDuration
.TimeSpan, 1.0 - _timeline.DecelerationRatio);
2155
TimeSpan accelEnd = MultiplyTimeSpan(
_currentDuration
.TimeSpan, _timeline.AccelerationRatio);
2170
Debug.Assert(
_currentDuration
== Duration.Forever, "_currentDuration has an invalid enum value.");
2193
Debug.Assert(
_currentDuration
.HasTimeSpan, "ComputeCurrentIterationWithGrow should only be called when _currentDuration has a value.");
2198
if (offsetFromBegin <
_currentDuration
.TimeSpan) // We fall within the same iteration as during last tick
2206
long offsetOnLaterIterations = (offsetFromBegin -
_currentDuration
.TimeSpan).Ticks;
2215
_currentIterationBeginTime +=
_currentDuration
.TimeSpan + MultiplyTimeSpan(_resolvedDuration.TimeSpan, iterationIncrement - 1);
2227
_currentIterationBeginTime -=
_currentDuration
.TimeSpan;
2340
Debug.Assert(
_currentDuration
!= Duration.Automatic, "_currentDuration should never be Automatic.");
2342
if (
_currentDuration
.HasTimeSpan) // Finite duration, need to apply accel/decel
2344
Debug.Assert(
_currentDuration
.TimeSpan > TimeSpan.Zero, "ComputeCurrentTime was entered with _currentDuration <= 0");
2354
double durationInTicks = (double)
_currentDuration
.TimeSpan.Ticks;
2415
Debug.Assert(
_currentDuration
== Duration.Forever, "_currentDuration has an invalid enum value.");
2450
if (
_currentDuration
== Duration.Automatic)
2477
Debug.Assert(
_currentDuration
!= Duration.Automatic, "_currentDuration should never be Automatic.");
2482
if (
_currentDuration
.HasTimeSpan &&
_currentDuration
.TimeSpan == TimeSpan.Zero)
2493
else if (
_currentDuration
== Duration.Forever)
2499
Debug.Assert(
_currentDuration
.HasTimeSpan, "_currentDuration is invalid, neither Forever nor a TimeSpan.");
2500
Debug.Assert(
_currentDuration
== _resolvedDuration, "For clocks which cannot grow, _currentDuration must equal _resolvedDuration.");
2508
effectiveDuration = MultiplyTimeSpan(
_currentDuration
.TimeSpan, scalingFactor);
2513
Debug.Assert(
_currentDuration
.HasTimeSpan, "_currentDuration is invalid, neither Forever nor a TimeSpan.");
2529
presentAndFutureDuration = ((double)
_currentDuration
.TimeSpan.Ticks) * presentAndFutureIterations;
2533
presentAndFutureDuration = ((double)
_currentDuration
.TimeSpan.Ticks) // Current iteration; below is the future iteration length
2811
_currentDuration
, _appliedSpeedRatio,
2846
relativeBeginTime,
_currentDuration
, _appliedSpeedRatio,
2856
relativeBeginTime,
_currentDuration
, _appliedSpeedRatio))
2868
postFillDuration,
_currentDuration
, _appliedSpeedRatio,