| /* |
| * Copyright 2019 Google Inc. |
| * |
| * Use of this source code is governed by a BSD-style license that can be |
| * found in the LICENSE file. |
| */ |
| |
| #include "src/gpu/dawn/GrDawnTextureRenderTarget.h" |
| |
| #include "include/core/SkTraceMemoryDump.h" |
| #include "include/gpu/GrContext.h" |
| #include "src/gpu/GrTexturePriv.h" |
| #include "src/gpu/dawn/GrDawnGpu.h" |
| |
| GrDawnTextureRenderTarget::GrDawnTextureRenderTarget(GrDawnGpu* gpu, |
| SkISize dimensions, |
| wgpu::TextureView textureView, |
| int sampleCnt, |
| const GrDawnTextureInfo& textureInfo, |
| GrMipMapsStatus mipMapsStatus) |
| : GrSurface(gpu, dimensions, GrProtected::kNo) |
| , GrDawnTexture(gpu, dimensions, textureView, textureInfo, mipMapsStatus) |
| , GrDawnRenderTarget(gpu, dimensions, sampleCnt, |
| GrDawnRenderTargetInfo(textureInfo)) {} |
| |
| bool GrDawnTextureRenderTarget::canAttemptStencilAttachment() const { |
| return true; |
| } |
| |
| size_t GrDawnTextureRenderTarget::onGpuMemorySize() const { |
| const GrCaps& caps = *this->getGpu()->caps(); |
| return GrSurface::ComputeSize(caps, this->backendFormat(), this->dimensions(), |
| 1, // FIXME: for MSAA |
| this->texturePriv().mipMapped()); |
| } |