OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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_RUNNER_H_ | 5 #ifndef CC_RASTER_TILE_TASK_RUNNER_H_ |
6 #define CC_RASTER_TILE_TASK_RUNNER_H_ | 6 #define CC_RASTER_TILE_TASK_RUNNER_H_ |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <vector> | 10 #include <vector> |
(...skipping 16 matching lines...) Expand all Loading... |
27 uint64_t previous_content_id) = 0; | 27 uint64_t previous_content_id) = 0; |
28 virtual void ReleaseBufferForRaster(scoped_ptr<RasterBuffer> buffer) = 0; | 28 virtual void ReleaseBufferForRaster(scoped_ptr<RasterBuffer> buffer) = 0; |
29 | 29 |
30 protected: | 30 protected: |
31 virtual ~TileTaskClient() {} | 31 virtual ~TileTaskClient() {} |
32 }; | 32 }; |
33 | 33 |
34 class CC_EXPORT TileTask : public Task { | 34 class CC_EXPORT TileTask : public Task { |
35 public: | 35 public: |
36 typedef std::vector<scoped_refptr<TileTask>> Vector; | 36 typedef std::vector<scoped_refptr<TileTask>> Vector; |
37 | |
38 virtual void ScheduleOnOriginThread(TileTaskClient* client) = 0; | 37 virtual void ScheduleOnOriginThread(TileTaskClient* client) = 0; |
39 virtual void CompleteOnOriginThread(TileTaskClient* client) = 0; | 38 virtual void CompleteOnOriginThread(TileTaskClient* client) = 0; |
40 | 39 |
41 void WillSchedule(); | 40 void WillSchedule(); |
42 void DidSchedule(); | 41 void DidSchedule(); |
43 bool HasBeenScheduled() const; | 42 bool HasBeenScheduled() const; |
44 | 43 |
45 void WillComplete(); | 44 void WillComplete(); |
46 void DidComplete(); | 45 void DidComplete(); |
47 bool HasCompleted() const; | 46 bool HasCompleted() const; |
(...skipping 11 matching lines...) Expand all Loading... |
59 typedef std::vector<scoped_refptr<ImageDecodeTask>> Vector; | 58 typedef std::vector<scoped_refptr<ImageDecodeTask>> Vector; |
60 | 59 |
61 protected: | 60 protected: |
62 ImageDecodeTask(); | 61 ImageDecodeTask(); |
63 ~ImageDecodeTask() override; | 62 ~ImageDecodeTask() override; |
64 }; | 63 }; |
65 | 64 |
66 class CC_EXPORT RasterTask : public TileTask { | 65 class CC_EXPORT RasterTask : public TileTask { |
67 public: | 66 public: |
68 typedef std::vector<scoped_refptr<RasterTask>> Vector; | 67 typedef std::vector<scoped_refptr<RasterTask>> Vector; |
| 68 bool IsRasterTask() override { return true; } |
69 | 69 |
70 const ImageDecodeTask::Vector& dependencies() const { return dependencies_; } | 70 const ImageDecodeTask::Vector& dependencies() const { return dependencies_; } |
71 | 71 |
72 protected: | 72 protected: |
73 explicit RasterTask(ImageDecodeTask::Vector* dependencies); | 73 explicit RasterTask(ImageDecodeTask::Vector* dependencies); |
74 ~RasterTask() override; | 74 ~RasterTask() override; |
75 | 75 |
76 private: | 76 private: |
77 ImageDecodeTask::Vector dependencies_; | 77 ImageDecodeTask::Vector dependencies_; |
78 }; | 78 }; |
(...skipping 24 matching lines...) Expand all Loading... |
103 // Determine if the resource requires swizzling. | 103 // Determine if the resource requires swizzling. |
104 virtual bool GetResourceRequiresSwizzle(bool must_support_alpha) const = 0; | 104 virtual bool GetResourceRequiresSwizzle(bool must_support_alpha) const = 0; |
105 | 105 |
106 protected: | 106 protected: |
107 virtual ~TileTaskRunner() {} | 107 virtual ~TileTaskRunner() {} |
108 }; | 108 }; |
109 | 109 |
110 } // namespace cc | 110 } // namespace cc |
111 | 111 |
112 #endif // CC_RASTER_TILE_TASK_RUNNER_H_ | 112 #endif // CC_RASTER_TILE_TASK_RUNNER_H_ |
OLD | NEW |