framesBefore method

Future<int> framesBefore(
  1. DateTime deadline,
  2. int count
)

Requests and observes up to count frames before one shared deadline.

The returned number is deliberately explicit: callers can report a partial observation when the deadline expires instead of collapsing "saw 0" and "saw N - 1" into the same timeout.

Implementation

Future<int> framesBefore(DateTime deadline, int count) async {
  var observed = 0;
  while (observed < count && await nextFrameBefore(deadline)) {
    observed += 1;
  }
  return observed;
}