OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CC_RASTER_TILE_TASK_WORKER_POOL_H_ | 5 #ifndef CC_RASTER_TILE_TASK_WORKER_POOL_H_ |
6 #define CC_RASTER_TILE_TASK_WORKER_POOL_H_ | 6 #define CC_RASTER_TILE_TASK_WORKER_POOL_H_ |
7 | 7 |
8 #include "cc/raster/tile_task_runner.h" | 8 #include "cc/raster/tile_task_runner.h" |
9 #include "ui/gfx/geometry/rect.h" | 9 #include "ui/gfx/geometry/rect.h" |
10 #include "ui/gfx/geometry/size.h" | 10 #include "ui/gfx/geometry/size.h" |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
47 | 47 |
48 // Utility function that can be used to build a task graph. Inserts nodes that | 48 // Utility function that can be used to build a task graph. Inserts nodes that |
49 // represent |task| and all its image decode dependencies in |graph|. | 49 // represent |task| and all its image decode dependencies in |graph|. |
50 static void InsertNodesForRasterTask( | 50 static void InsertNodesForRasterTask( |
51 TaskGraph* graph, | 51 TaskGraph* graph, |
52 RasterTask* task, | 52 RasterTask* task, |
53 const ImageDecodeTask::Vector& decode_tasks, | 53 const ImageDecodeTask::Vector& decode_tasks, |
54 unsigned priority); | 54 unsigned priority); |
55 | 55 |
56 // Utility function that will create a temporary bitmap and copy pixels to | 56 // Utility function that will create a temporary bitmap and copy pixels to |
57 // |memory| when necessary. | 57 // |memory| when necessary. The |canvas_bitmap_rect| is the rect of the bitmap |
| 58 // being played back in the pixel space of the source, ie a rect in the source |
| 59 // that will cover the resulting |memory|. The |canvas_playback_rect| can be a |
| 60 // smaller contained rect inside the |canvas_bitmap_rect| if the |memory| is |
| 61 // already partially complete, and only the subrect needs to be played back. |
58 static void PlaybackToMemory(void* memory, | 62 static void PlaybackToMemory(void* memory, |
59 ResourceFormat format, | 63 ResourceFormat format, |
60 const gfx::Size& size, | 64 const gfx::Size& size, |
61 int stride, | 65 int stride, |
62 const RasterSource* raster_source, | 66 const RasterSource* raster_source, |
63 const gfx::Rect& rect, | 67 const gfx::Rect& canvas_bitmap_rect, |
| 68 const gfx::Rect& canvas_playback_rect, |
64 float scale); | 69 float scale); |
65 | 70 |
66 // Type-checking downcast routine. | 71 // Type-checking downcast routine. |
67 virtual TileTaskRunner* AsTileTaskRunner() = 0; | 72 virtual TileTaskRunner* AsTileTaskRunner() = 0; |
68 }; | 73 }; |
69 | 74 |
70 } // namespace cc | 75 } // namespace cc |
71 | 76 |
72 #endif // CC_RASTER_TILE_TASK_WORKER_POOL_H_ | 77 #endif // CC_RASTER_TILE_TASK_WORKER_POOL_H_ |
OLD | NEW |