Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(56)

Side by Side Diff: cc/tiles/tile_manager_unittest.cc

Issue 1470113002: Move TaskGraph creation to TileManager (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@pinchfix
Patch Set: Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« cc/tiles/tile_manager.h ('K') | « cc/tiles/tile_manager.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 #include "base/run_loop.h" 5 #include "base/run_loop.h"
6 #include "base/thread_task_runner_handle.h" 6 #include "base/thread_task_runner_handle.h"
7 #include "cc/playback/display_list_raster_source.h" 7 #include "cc/playback/display_list_raster_source.h"
8 #include "cc/playback/display_list_recording_source.h" 8 #include "cc/playback/display_list_recording_source.h"
9 #include "cc/raster/raster_buffer.h" 9 #include "cc/raster/raster_buffer.h"
10 #include "cc/resources/resource_pool.h" 10 #include "cc/resources/resource_pool.h"
(...skipping 1679 matching lines...) Expand 10 before | Expand all | Expand 10 after
1690 } 1690 }
1691 } 1691 }
1692 1692
1693 // Fake TileTaskRunner that just no-ops all calls. 1693 // Fake TileTaskRunner that just no-ops all calls.
1694 class FakeTileTaskRunner : public TileTaskRunner, public TileTaskClient { 1694 class FakeTileTaskRunner : public TileTaskRunner, public TileTaskClient {
1695 public: 1695 public:
1696 FakeTileTaskRunner() {} 1696 FakeTileTaskRunner() {}
1697 ~FakeTileTaskRunner() override {} 1697 ~FakeTileTaskRunner() override {}
1698 1698
1699 // TileTaskRunner methods. 1699 // TileTaskRunner methods.
1700 void SetClient(TileTaskRunnerClient* client) override {}
1701 void Shutdown() override {} 1700 void Shutdown() override {}
1702 void CheckForCompletedTasks() override {} 1701 void CheckForCompletedTasks() override {}
1703 ResourceFormat GetResourceFormat(bool must_support_alpha) const override { 1702 ResourceFormat GetResourceFormat(bool must_support_alpha) const override {
1704 return ResourceFormat::RGBA_8888; 1703 return ResourceFormat::RGBA_8888;
1705 } 1704 }
1706 bool GetResourceRequiresSwizzle(bool must_support_alpha) const override { 1705 bool GetResourceRequiresSwizzle(bool must_support_alpha) const override {
1707 return false; 1706 return false;
1708 } 1707 }
1709 1708
1710 void ScheduleTasks(TileTaskQueue* queue) override {} 1709 void ScheduleTasks(scoped_ptr<TaskGraph> graph) override {}
1711 1710
1712 // TileTaskClient methods. 1711 // TileTaskClient methods.
1713 scoped_ptr<RasterBuffer> AcquireBufferForRaster( 1712 scoped_ptr<RasterBuffer> AcquireBufferForRaster(
1714 const Resource* resource, 1713 const Resource* resource,
1715 uint64_t resource_content_id, 1714 uint64_t resource_content_id,
1716 uint64_t previous_content_id) override { 1715 uint64_t previous_content_id) override {
1717 NOTREACHED(); 1716 NOTREACHED();
1718 return nullptr; 1717 return nullptr;
1719 } 1718 }
1720 void ReleaseBufferForRaster(scoped_ptr<RasterBuffer> buffer) override {} 1719 void ReleaseBufferForRaster(scoped_ptr<RasterBuffer> buffer) override {}
1721 }; 1720 };
1722 1721
1723 // Fake TileTaskRunner that just cancels all scheduled tasks immediately. 1722 // Fake TileTaskRunner that just cancels all scheduled tasks immediately.
1724 class CancellingTileTaskRunner : public FakeTileTaskRunner { 1723 class CancellingTileTaskRunner : public FakeTileTaskRunner {
1725 public: 1724 public:
1726 CancellingTileTaskRunner() {} 1725 CancellingTileTaskRunner() {}
1727 ~CancellingTileTaskRunner() override {} 1726 ~CancellingTileTaskRunner() override {}
1728 1727
1729 void ScheduleTasks(TileTaskQueue* queue) override { 1728 void ScheduleTasks(scoped_ptr<TaskGraph> graph) override {
1730 // Just call CompleteOnOriginThread on each item in the queue. As none of 1729 // Just call CompleteOnOriginThread on each item in the queue. As none of
1731 // these items have run yet, they will be treated as cancelled tasks. 1730 // these items have run yet, they will be treated as cancelled tasks.
1732 for (const auto& task : queue->items) { 1731 for (const auto& node : graph->nodes) {
1733 task.task->CompleteOnOriginThread(this); 1732 static_cast<RasterTask*>(node.task)->CompleteOnOriginThread(this);
1734 } 1733 }
1735 } 1734 }
1736 }; 1735 };
1737 1736
1738 class PartialRasterTileManagerTest : public TileManagerTest { 1737 class PartialRasterTileManagerTest : public TileManagerTest {
1739 public: 1738 public:
1740 void CustomizeSettings(LayerTreeSettings* settings) override { 1739 void CustomizeSettings(LayerTreeSettings* settings) override {
1741 settings->use_partial_raster = true; 1740 settings->use_partial_raster = true;
1742 } 1741 }
1743 }; 1742 };
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
1796 host_impl_ = nullptr; 1795 host_impl_ = nullptr;
1797 } 1796 }
1798 1797
1799 // Fake TileTaskRunner that verifies the resource content ID of raster tasks. 1798 // Fake TileTaskRunner that verifies the resource content ID of raster tasks.
1800 class VerifyResourceContentIdTileTaskRunner : public FakeTileTaskRunner { 1799 class VerifyResourceContentIdTileTaskRunner : public FakeTileTaskRunner {
1801 public: 1800 public:
1802 explicit VerifyResourceContentIdTileTaskRunner(uint64_t expected_resource_id) 1801 explicit VerifyResourceContentIdTileTaskRunner(uint64_t expected_resource_id)
1803 : expected_resource_id_(expected_resource_id) {} 1802 : expected_resource_id_(expected_resource_id) {}
1804 ~VerifyResourceContentIdTileTaskRunner() override {} 1803 ~VerifyResourceContentIdTileTaskRunner() override {}
1805 1804
1806 void ScheduleTasks(TileTaskQueue* queue) override { 1805 void ScheduleTasks(scoped_ptr<TaskGraph> graph) override {
1807 for (const auto& task : queue->items) { 1806 for (const auto& node : graph->nodes) {
1807 RasterTask* task = static_cast<RasterTask*>(node.task);
1808 // Triggers a call to AcquireBufferForRaster. 1808 // Triggers a call to AcquireBufferForRaster.
1809 task.task->ScheduleOnOriginThread(this); 1809 task->ScheduleOnOriginThread(this);
1810 // Calls TileManager as though task was cancelled. 1810 // Calls TileManager as though task was cancelled.
1811 task.task->CompleteOnOriginThread(this); 1811 task->CompleteOnOriginThread(this);
1812 } 1812 }
1813 } 1813 }
1814 1814
1815 // TileTaskClient methods. 1815 // TileTaskClient methods.
1816 scoped_ptr<RasterBuffer> AcquireBufferForRaster( 1816 scoped_ptr<RasterBuffer> AcquireBufferForRaster(
1817 const Resource* resource, 1817 const Resource* resource,
1818 uint64_t resource_content_id, 1818 uint64_t resource_content_id,
1819 uint64_t previous_content_id) override { 1819 uint64_t previous_content_id) override {
1820 EXPECT_EQ(expected_resource_id_, resource_content_id); 1820 EXPECT_EQ(expected_resource_id_, resource_content_id);
1821 return nullptr; 1821 return nullptr;
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after
1892 1892
1893 // Ensures that the tile manager does not attempt to reuse tiles when partial 1893 // Ensures that the tile manager does not attempt to reuse tiles when partial
1894 // raster is disabled. 1894 // raster is disabled.
1895 TEST_F(TileManagerTest, PartialRasterSuccessfullyDisabled) { 1895 TEST_F(TileManagerTest, PartialRasterSuccessfullyDisabled) {
1896 RunPartialRasterCheck(std::move(host_impl_), 1896 RunPartialRasterCheck(std::move(host_impl_),
1897 false /* partial_raster_enabled */); 1897 false /* partial_raster_enabled */);
1898 } 1898 }
1899 1899
1900 } // namespace 1900 } // namespace
1901 } // namespace cc 1901 } // namespace cc
OLDNEW
« cc/tiles/tile_manager.h ('K') | « cc/tiles/tile_manager.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698