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

Unified Diff: cc/resources/raster_worker_pool_unittest.cc

Issue 236313006: cc: Add initial GPU-to-GPU copy rasterizer implementation. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: address review feedback Created 6 years, 8 months 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 side-by-side diff with in-line comments
Download patch
Index: cc/resources/raster_worker_pool_unittest.cc
diff --git a/cc/resources/raster_worker_pool_unittest.cc b/cc/resources/raster_worker_pool_unittest.cc
index aff7461896b8ecc9f281aa1646dddcea6a58906e..c6b725acee24c1a56ba8cf406d84589dbf92ea2a 100644
--- a/cc/resources/raster_worker_pool_unittest.cc
+++ b/cc/resources/raster_worker_pool_unittest.cc
@@ -9,11 +9,13 @@
#include "base/cancelable_callback.h"
#include "cc/resources/direct_raster_worker_pool.h"
+#include "cc/resources/image_copy_raster_worker_pool.h"
#include "cc/resources/image_raster_worker_pool.h"
#include "cc/resources/picture_pile.h"
#include "cc/resources/picture_pile_impl.h"
#include "cc/resources/pixel_buffer_raster_worker_pool.h"
#include "cc/resources/rasterizer.h"
+#include "cc/resources/resource_pool.h"
#include "cc/resources/resource_provider.h"
#include "cc/resources/scoped_resource.h"
#include "cc/test/fake_output_surface.h"
@@ -34,6 +36,7 @@ enum RasterThread {
enum RasterWorkerPoolType {
RASTER_WORKER_POOL_TYPE_PIXEL_BUFFER,
RASTER_WORKER_POOL_TYPE_IMAGE,
+ RASTER_WORKER_POOL_TYPE_IMAGE_COPY,
RASTER_WORKER_POOL_TYPE_DIRECT
};
@@ -130,6 +133,8 @@ class RasterWorkerPoolTest
ResourceProvider::Create(
output_surface_.get(), shared_bitmap_manager_.get(), 0, false, 1)
.Pass();
+ staging_resource_pool_ = ResourcePool::Create(
+ resource_provider_.get(), GL_TEXTURE_2D, RGBA_8888);
switch (GetParam()) {
case RASTER_WORKER_POOL_TYPE_PIXEL_BUFFER:
@@ -145,6 +150,13 @@ class RasterWorkerPoolTest
RasterWorkerPool::GetTaskGraphRunner(),
resource_provider_.get());
break;
+ case RASTER_WORKER_POOL_TYPE_IMAGE_COPY:
+ raster_worker_pool_ = ImageCopyRasterWorkerPool::Create(
+ base::MessageLoopProxy::current().get(),
+ RasterWorkerPool::GetTaskGraphRunner(),
+ resource_provider_.get(),
+ staging_resource_pool_.get());
+ break;
case RASTER_WORKER_POOL_TYPE_DIRECT:
raster_worker_pool_ = DirectRasterWorkerPool::Create(
base::MessageLoopProxy::current().get(),
@@ -156,7 +168,10 @@ class RasterWorkerPoolTest
DCHECK(raster_worker_pool_);
raster_worker_pool_->AsRasterizer()->SetClient(this);
}
- virtual ~RasterWorkerPoolTest() { resource_provider_.reset(); }
+ virtual ~RasterWorkerPoolTest() {
+ staging_resource_pool_.reset();
+ resource_provider_.reset();
+ }
// Overridden from testing::Test:
virtual void TearDown() OVERRIDE {
@@ -268,6 +283,7 @@ class RasterWorkerPoolTest
scoped_ptr<FakeOutputSurface> output_surface_;
scoped_ptr<SharedBitmapManager> shared_bitmap_manager_;
scoped_ptr<ResourceProvider> resource_provider_;
+ scoped_ptr<ResourcePool> staging_resource_pool_;
scoped_ptr<RasterWorkerPool> raster_worker_pool_;
base::CancelableClosure timeout_;
int timeout_seconds_;
@@ -332,6 +348,7 @@ INSTANTIATE_TEST_CASE_P(RasterWorkerPoolTests,
RasterWorkerPoolTest,
::testing::Values(RASTER_WORKER_POOL_TYPE_PIXEL_BUFFER,
RASTER_WORKER_POOL_TYPE_IMAGE,
+ RASTER_WORKER_POOL_TYPE_IMAGE_COPY,
RASTER_WORKER_POOL_TYPE_DIRECT));
} // namespace

Powered by Google App Engine
This is Rietveld 408576698