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()
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()