def StartRawDisplayFrameRateMeasurement(self):
     assert not self._surface_stats_collector
     # Clear any leftover data from previous timed out tests
     self._raw_display_frame_rate_measurements = []
     self._surface_stats_collector = \
         surface_stats_collector.SurfaceStatsCollector(self._device)
     self._surface_stats_collector.Start()
예제 #2
0
def main(argv):
    parser = optparse.OptionParser(usage='Usage: %prog [options]',
                                   description=__doc__)
    parser.add_option('-v',
                      '--verbose',
                      dest='verbose_count',
                      default=0,
                      action='count',
                      help='Verbose level (multiple times for more)')
    parser.add_option('--device',
                      help='Serial number of device we should use.')
    parser.add_option(
        '-f',
        '--fields',
        dest='fields',
        default='jank_count,max_frame_delay,avg_surface_fps,'
        'frame_lengths',
        help='Comma separated list of fields to display or "all".')
    parser.add_option('-d',
                      '--delay',
                      dest='delay',
                      default=1,
                      type='float',
                      help='Time in seconds to sleep between updates.')

    options, _ = parser.parse_args(argv)
    run_tests_helper.SetLogLevel(options.verbose_count)

    device = device_utils.DeviceUtils(options.device)
    collector = surface_stats_collector.SurfaceStatsCollector(device)
    collector.DisableWarningAboutEmptyData()

    fields = options.fields.split(',')
    row_count = None

    try:
        collector.Start()
        while True:
            time.sleep(options.delay)
            results = collector.SampleResults()
            results = _MergeResults(results, fields)

            if not results:
                continue

            terminal_height = _GetTerminalHeight()
            if row_count is None or (terminal_height
                                     and row_count >= terminal_height - 3):
                _PrintColumnTitles(results)
                row_count = 0

            _PrintResults(results)
            row_count += 1
    except KeyboardInterrupt:
        sys.exit(0)
    finally:
        collector.Stop()