borenet@google.com | 1558d68 | 2012-12-12 20:13:26 +0000 | [diff] [blame] | 1 | # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 | # Use of this source code is governed by a BSD-style license that can be |
| 3 | # found in the LICENSE file. |
| 4 | |
| 5 | |
| 6 | """ Helper functions to be used in bench_pictures.cfg. """ |
| 7 | |
| 8 | |
| 9 | def Config(**kwargs): |
| 10 | config = {} |
| 11 | for key in kwargs: |
| 12 | config[key] = kwargs[key] |
| 13 | return config |
| 14 | |
| 15 | |
borenet@google.com | b00d670 | 2013-01-11 20:45:24 +0000 | [diff] [blame] | 16 | def TileArgs(tile_x, tile_y): |
| 17 | return {'mode': ['tile', str(tile_x), str(tile_y)], |
borenet@google.com | 2fd0979 | 2013-02-06 16:27:38 +0000 | [diff] [blame^] | 18 | 'timeIndividualTiles': True, |
borenet@google.com | 96b17aa | 2013-01-15 15:50:42 +0000 | [diff] [blame] | 19 | } |
borenet@google.com | b00d670 | 2013-01-11 20:45:24 +0000 | [diff] [blame] | 20 | |
| 21 | |
borenet@google.com | 1558d68 | 2012-12-12 20:13:26 +0000 | [diff] [blame] | 22 | def BitmapConfig(**kwargs): |
| 23 | return Config(device='bitmap', **kwargs) |
| 24 | |
| 25 | |
| 26 | def GPUConfig(**kwargs): |
| 27 | return Config(device='gpu', **kwargs) |
| 28 | |
| 29 | |
| 30 | def TiledBitmapConfig(tile_x, tile_y, **kwargs): |
borenet@google.com | b00d670 | 2013-01-11 20:45:24 +0000 | [diff] [blame] | 31 | return BitmapConfig(**dict(TileArgs(tile_x, tile_y).items() + kwargs.items())) |
borenet@google.com | 1558d68 | 2012-12-12 20:13:26 +0000 | [diff] [blame] | 32 | |
| 33 | |
| 34 | def TiledGPUConfig(tile_x, tile_y, **kwargs): |
borenet@google.com | b00d670 | 2013-01-11 20:45:24 +0000 | [diff] [blame] | 35 | return GPUConfig(**dict(TileArgs(tile_x, tile_y).items() + kwargs.items())) |
borenet@google.com | 1558d68 | 2012-12-12 20:13:26 +0000 | [diff] [blame] | 36 | |
| 37 | |
borenet@google.com | 9afba74 | 2012-12-18 21:44:53 +0000 | [diff] [blame] | 38 | def ViewportBitmapConfig(viewport_x, viewport_y, **kwargs): |
| 39 | return BitmapConfig(viewport=[str(viewport_x), str(viewport_y)], **kwargs) |
| 40 | |
| 41 | |
| 42 | def ViewportGPUConfig(viewport_x, viewport_y, **kwargs): |
| 43 | return GPUConfig(viewport=[str(viewport_x), str(viewport_y)], **kwargs) |
| 44 | |
| 45 | |
| 46 | def ViewportRTreeConfig(viewport_x, viewport_y, **kwargs): |
borenet@google.com | 8b95474 | 2012-12-19 14:47:53 +0000 | [diff] [blame] | 47 | return RTreeConfig(mode='simple', viewport=[str(viewport_x), str(viewport_y)], |
| 48 | **kwargs) |
borenet@google.com | 9afba74 | 2012-12-18 21:44:53 +0000 | [diff] [blame] | 49 | |
| 50 | |
| 51 | def ViewportGridConfig(viewport_x, viewport_y, **kwargs): |
| 52 | return GridConfig(viewport_x, viewport_y, mode='simple', |
| 53 | viewport=[str(viewport_x), str(viewport_y)], **kwargs) |
| 54 | |
| 55 | |
borenet@google.com | 1558d68 | 2012-12-12 20:13:26 +0000 | [diff] [blame] | 56 | def CopyTilesConfig(tile_x, tile_y, **kwargs): |
| 57 | return BitmapConfig(mode=['copyTile', str(tile_x), str(tile_y)], **kwargs) |
| 58 | |
| 59 | |
| 60 | def RecordConfig(**kwargs): |
| 61 | return BitmapConfig(mode='record', **kwargs) |
| 62 | |
| 63 | |
| 64 | def PlaybackCreationConfig(**kwargs): |
| 65 | return BitmapConfig(mode='playbackCreation', **kwargs) |
| 66 | |
| 67 | |
| 68 | def MultiThreadTileConfig(threads, tile_x, tile_y, **kwargs): |
borenet@google.com | ddf36e7 | 2012-12-14 14:56:37 +0000 | [diff] [blame] | 69 | return TiledBitmapConfig(multi=str(threads), tile_x=tile_x, tile_y=tile_y, |
| 70 | **kwargs) |
| 71 | |
| 72 | |
borenet@google.com | 8b95474 | 2012-12-19 14:47:53 +0000 | [diff] [blame] | 73 | def RTreeConfig(**kwargs): |
| 74 | return BitmapConfig(bbh='rtree', **kwargs) |
borenet@google.com | ddf36e7 | 2012-12-14 14:56:37 +0000 | [diff] [blame] | 75 | |
| 76 | |
| 77 | def GridConfig(tile_x, tile_y, mode, **kwargs): |
| 78 | return BitmapConfig(mode=mode, bbh=['grid', str(tile_x), str(tile_y)], |
| 79 | **kwargs) |
| 80 | |
| 81 | |
borenet@google.com | 8b95474 | 2012-12-19 14:47:53 +0000 | [diff] [blame] | 82 | def RecordRTreeConfig(**kwargs): |
| 83 | return RTreeConfig(mode='record', **kwargs) |
borenet@google.com | ddf36e7 | 2012-12-14 14:56:37 +0000 | [diff] [blame] | 84 | |
| 85 | |
borenet@google.com | 8b95474 | 2012-12-19 14:47:53 +0000 | [diff] [blame] | 86 | def PlaybackCreationRTreeConfig(**kwargs): |
| 87 | return RTreeConfig(mode='playbackCreation', **kwargs) |
borenet@google.com | ddf36e7 | 2012-12-14 14:56:37 +0000 | [diff] [blame] | 88 | |
| 89 | |
| 90 | def TileRTreeConfig(tile_x, tile_y, **kwargs): |
borenet@google.com | b00d670 | 2013-01-11 20:45:24 +0000 | [diff] [blame] | 91 | return RTreeConfig(**dict(TileArgs(tile_x, tile_y).items() + kwargs.items())) |
borenet@google.com | ddf36e7 | 2012-12-14 14:56:37 +0000 | [diff] [blame] | 92 | |
| 93 | |
| 94 | def RecordGridConfig(tile_x, tile_y, **kwargs): |
| 95 | return GridConfig(tile_x=tile_x, tile_y=tile_y, mode='record', **kwargs) |
| 96 | |
| 97 | |
| 98 | def PlaybackCreationGridConfig(tile_x, tile_y, **kwargs): |
| 99 | return GridConfig(tile_x, tile_y, mode='playbackCreation') |
| 100 | |
| 101 | |
| 102 | def TileGridConfig(tile_x, tile_y, **kwargs): |
borenet@google.com | b00d670 | 2013-01-11 20:45:24 +0000 | [diff] [blame] | 103 | return GridConfig(tile_x, tile_y, |
borenet@google.com | 2fd0979 | 2013-02-06 16:27:38 +0000 | [diff] [blame^] | 104 | **dict(TileArgs(tile_x, tile_y).items() + kwargs.items())) |