Home | History | Annotate | Download | only in resources
      1 (function(){
      2 
      3 var framesPerTimerReading = 10;
      4 var frameCount = 0;
      5 var startTime;
      6 var trackingFrameRate = false;
      7 
      8 function trackFrameRate(currTime)
      9 {
     10     if (++frameCount == framesPerTimerReading) {
     11         frameCount = 0;
     12         PerfTestRunner.measureValueAsync(1000 * framesPerTimerReading / (currTime - startTime));
     13         startTime = currTime;
     14     }
     15 
     16     if (trackingFrameRate)
     17         requestAnimationFrame(trackFrameRate);
     18 }
     19 
     20 window.startTrackingFrameRate = function() {
     21     if (trackingFrameRate)
     22         return;
     23     trackingFrameRate = true;
     24     startTime = performance.now();
     25     trackFrameRate();
     26 };
     27 
     28 window.stopTrackingFrameRate = function() {
     29     trackingFrameRate = false;
     30 };
     31 
     32 })();
     33