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

Side by Side Diff: src/gpu/vk/GrVkResourceProvider.cpp

Issue 2078483002: Start using GrGpuCommandBuffer in GrDrawTarget. (Closed) Base URL: https://skia.googlesource.com/skia.git@memoryWAR
Patch Set: remove errant lines Created 4 years, 5 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 unified diff | Download patch
« no previous file with comments | « src/gpu/vk/GrVkPipelineState.cpp ('k') | tests/VkClearTests.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2016 Google Inc. 2 * Copyright 2016 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #include "GrVkResourceProvider.h" 8 #include "GrVkResourceProvider.h"
9 9
10 #include "GrTextureParams.h" 10 #include "GrTextureParams.h"
(...skipping 321 matching lines...) Expand 10 before | Expand all | Expand 10 after
332 const GrVkRenderPass::LoadSto reOps& colorOps, 332 const GrVkRenderPass::LoadSto reOps& colorOps,
333 const GrVkRenderPass::LoadSto reOps& resolveOps, 333 const GrVkRenderPass::LoadSto reOps& resolveOps,
334 const GrVkRenderPass::LoadSto reOps& stencilOps) { 334 const GrVkRenderPass::LoadSto reOps& stencilOps) {
335 for (int i = 0; i < fRenderPasses.count(); ++i) { 335 for (int i = 0; i < fRenderPasses.count(); ++i) {
336 int idx = (i + fLastReturnedIndex) % fRenderPasses.count(); 336 int idx = (i + fLastReturnedIndex) % fRenderPasses.count();
337 if (fRenderPasses[idx]->equalLoadStoreOps(colorOps, resolveOps, stencilO ps)) { 337 if (fRenderPasses[idx]->equalLoadStoreOps(colorOps, resolveOps, stencilO ps)) {
338 fLastReturnedIndex = idx; 338 fLastReturnedIndex = idx;
339 return fRenderPasses[idx]; 339 return fRenderPasses[idx];
340 } 340 }
341 } 341 }
342 GrVkRenderPass* renderPass = fRenderPasses.push_back(); 342 GrVkRenderPass* renderPass = fRenderPasses.emplace_back(new GrVkRenderPass() );
343 renderPass->init(gpu, *this->getCompatibleRenderPass(), colorOps, resolveOps , stencilOps); 343 renderPass->init(gpu, *this->getCompatibleRenderPass(), colorOps, resolveOps , stencilOps);
344 fLastReturnedIndex = fRenderPasses.count() - 1; 344 fLastReturnedIndex = fRenderPasses.count() - 1;
345 return renderPass; 345 return renderPass;
346 } 346 }
347 347
348 void GrVkResourceProvider::CompatibleRenderPassSet::releaseResources(const GrVkG pu* gpu) { 348 void GrVkResourceProvider::CompatibleRenderPassSet::releaseResources(const GrVkG pu* gpu) {
349 for (int i = 0; i < fRenderPasses.count(); ++i) { 349 for (int i = 0; i < fRenderPasses.count(); ++i) {
350 if (fRenderPasses[i]) { 350 if (fRenderPasses[i]) {
351 fRenderPasses[i]->unref(gpu); 351 fRenderPasses[i]->unref(gpu);
352 fRenderPasses[i] = nullptr; 352 fRenderPasses[i] = nullptr;
353 } 353 }
354 } 354 }
355 } 355 }
356 356
357 void GrVkResourceProvider::CompatibleRenderPassSet::abandonResources() { 357 void GrVkResourceProvider::CompatibleRenderPassSet::abandonResources() {
358 for (int i = 0; i < fRenderPasses.count(); ++i) { 358 for (int i = 0; i < fRenderPasses.count(); ++i) {
359 if (fRenderPasses[i]) { 359 if (fRenderPasses[i]) {
360 fRenderPasses[i]->unrefAndAbandon(); 360 fRenderPasses[i]->unrefAndAbandon();
361 fRenderPasses[i] = nullptr; 361 fRenderPasses[i] = nullptr;
362 } 362 }
363 } 363 }
364 } 364 }
OLDNEW
« no previous file with comments | « src/gpu/vk/GrVkPipelineState.cpp ('k') | tests/VkClearTests.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698