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

Side by Side Diff: src/gpu/vk/GrVkRenderTarget.h

Issue 1808263002: Implement Vulkan GrBackendObject for textures. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Tweaks Created 4 years, 9 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/GrVkGpu.cpp ('k') | src/gpu/vk/GrVkRenderTarget.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 2015 Google Inc. 2 * Copyright 2015 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 8
9 #ifndef GrVkRenderTarget_DEFINED 9 #ifndef GrVkRenderTarget_DEFINED
10 #define GrVkRenderTarget_DEFINED 10 #define GrVkRenderTarget_DEFINED
11 11
12 #include "GrVkImage.h" 12 #include "GrVkImage.h"
13 #include "GrRenderTarget.h" 13 #include "GrRenderTarget.h"
14 14
15 #include "GrVkRenderPass.h" 15 #include "GrVkRenderPass.h"
16 16
17 class GrVkCommandBuffer; 17 class GrVkCommandBuffer;
18 class GrVkFramebuffer; 18 class GrVkFramebuffer;
19 class GrVkGpu; 19 class GrVkGpu;
20 class GrVkImageView; 20 class GrVkImageView;
21 class GrVkStencilAttachment; 21 class GrVkStencilAttachment;
22 22
23 struct GrVkTextureInfo;
24
23 #ifdef SK_BUILD_FOR_WIN 25 #ifdef SK_BUILD_FOR_WIN
24 // Windows gives bogus warnings about inheriting asTexture/asRenderTarget via do minance. 26 // Windows gives bogus warnings about inheriting asTexture/asRenderTarget via do minance.
25 #pragma warning(push) 27 #pragma warning(push)
26 #pragma warning(disable: 4250) 28 #pragma warning(disable: 4250)
27 #endif 29 #endif
28 30
29 class GrVkRenderTarget: public GrRenderTarget, public virtual GrVkImage { 31 class GrVkRenderTarget: public GrRenderTarget, public virtual GrVkImage {
30 public: 32 public:
31 static GrVkRenderTarget* CreateNewRenderTarget(GrVkGpu*, const GrSurfaceDesc &, 33 static GrVkRenderTarget* CreateNewRenderTarget(GrVkGpu*, const GrSurfaceDesc &,
32 GrGpuResource::LifeCycle, 34 GrGpuResource::LifeCycle,
33 const GrVkImage::ImageDesc&); 35 const GrVkImage::ImageDesc&);
34 36
35 static GrVkRenderTarget* CreateWrappedRenderTarget(GrVkGpu*, const GrSurface Desc&, 37 static GrVkRenderTarget* CreateWrappedRenderTarget(GrVkGpu*, const GrSurface Desc&,
36 GrGpuResource::LifeCycle, 38 GrGpuResource::LifeCycle,
37 const GrVkImage::Resource * resource); 39 const GrVkTextureInfo*);
38 40
39 ~GrVkRenderTarget() override; 41 ~GrVkRenderTarget() override;
40 42
41 const GrVkFramebuffer* framebuffer() const { return fFramebuffer; } 43 const GrVkFramebuffer* framebuffer() const { return fFramebuffer; }
42 const GrVkImageView* colorAttachmentView() const { return fColorAttachmentVi ew; } 44 const GrVkImageView* colorAttachmentView() const { return fColorAttachmentVi ew; }
43 const GrVkImage::Resource* msaaImageResource() const { return fMSAAImageReso urce; } 45 const GrVkImage::Resource* msaaImageResource() const { return fMSAAImageReso urce; }
44 const GrVkImageView* resolveAttachmentView() const { return fResolveAttachme ntView; } 46 const GrVkImageView* resolveAttachmentView() const { return fResolveAttachme ntView; }
45 const GrVkImage::Resource* stencilImageResource() const; 47 const GrVkImage::Resource* stencilImageResource() const;
46 const GrVkImageView* stencilAttachmentView() const; 48 const GrVkImageView* stencilAttachmentView() const;
47 49
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
128 const GrVkImage::Resource* fMSAAImageResource; 130 const GrVkImage::Resource* fMSAAImageResource;
129 const GrVkImageView* fResolveAttachmentView; 131 const GrVkImageView* fResolveAttachmentView;
130 int fColorValuesPerPixel; 132 int fColorValuesPerPixel;
131 133
132 // This is a cached pointer to a simple render pass. The render target shoul d unref it 134 // This is a cached pointer to a simple render pass. The render target shoul d unref it
133 // once it is done with it. 135 // once it is done with it.
134 const GrVkRenderPass* fCachedSimpleRenderPass; 136 const GrVkRenderPass* fCachedSimpleRenderPass;
135 }; 137 };
136 138
137 #endif 139 #endif
OLDNEW
« no previous file with comments | « src/gpu/vk/GrVkGpu.cpp ('k') | src/gpu/vk/GrVkRenderTarget.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698