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

Side by Side Diff: src/gpu/GrGpu.h

Issue 1760343003: Revert of Don't allow nullptr in texels array params (unless using a transfer buffer). (Closed) Base URL: https://skia.googlesource.com/skia@usesdk
Patch Set: 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 | « include/gpu/GrTextureProvider.h ('k') | src/gpu/GrGpu.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 2011 Google Inc. 2 * Copyright 2011 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 #ifndef GrGpu_DEFINED 8 #ifndef GrGpu_DEFINED
9 #define GrGpu_DEFINED 9 #define GrGpu_DEFINED
10 10
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
89 * For compressed formats the level contains the compress ed pixel data. 89 * For compressed formats the level contains the compress ed pixel data.
90 * Otherwise, it contains width*height texels. If there i s only one 90 * Otherwise, it contains width*height texels. If there i s only one
91 * element and it contains nullptr fPixels, texture data is 91 * element and it contains nullptr fPixels, texture data is
92 * uninitialized. 92 * uninitialized.
93 * @return The texture object if successful, otherwise nullptr. 93 * @return The texture object if successful, otherwise nullptr.
94 */ 94 */
95 GrTexture* createTexture(const GrSurfaceDesc& desc, SkBudgeted budgeted, 95 GrTexture* createTexture(const GrSurfaceDesc& desc, SkBudgeted budgeted,
96 const SkTArray<GrMipLevel>& texels); 96 const SkTArray<GrMipLevel>& texels);
97 97
98 /** 98 /**
99 * Simplified createTexture() interface when there is no initial texel data 99 * This function is a shim which creates a SkTArGrMipLevell> of size 1.
100 * to upload. 100 * It then calls createTexture with that SkTArray.
101 *
102 * @param srcData texel data to load texture. Begins with full-size
103 * palette data for paletted texture. For compressed
104 * formats it contains the compressed pixel data. Otherwise,
105 * it contains width*height texels. If nullptr texture data
106 * is uninitialized.
107 * @param rowBytes the number of bytes between consecutive rows. Zero
108 * means rows are tightly packed. This field is ignored
109 * for compressed pixel formats.
110 * @return The texture object if successful, otherwise, nullptr.
101 */ 111 */
102 GrTexture* createTexture(const GrSurfaceDesc& desc, SkBudgeted budgeted) { 112 GrTexture* createTexture(const GrSurfaceDesc& desc, SkBudgeted budgeted,
103 return this->createTexture(desc, budgeted, SkTArray<GrMipLevel>()); 113 const void* srcData, size_t rowBytes);
104 } 114
105
106 /** 115 /**
107 * Implements GrTextureProvider::wrapBackendTexture 116 * Implements GrTextureProvider::wrapBackendTexture
108 */ 117 */
109 GrTexture* wrapBackendTexture(const GrBackendTextureDesc&, GrWrapOwnership); 118 GrTexture* wrapBackendTexture(const GrBackendTextureDesc&, GrWrapOwnership);
110 119
111 /** 120 /**
112 * Implements GrTextureProvider::wrapBackendRenderTarget 121 * Implements GrTextureProvider::wrapBackendRenderTarget
113 */ 122 */
114 GrRenderTarget* wrapBackendRenderTarget(const GrBackendRenderTargetDesc&, Gr WrapOwnership); 123 GrRenderTarget* wrapBackendRenderTarget(const GrBackendRenderTargetDesc&, Gr WrapOwnership);
115 124
(...skipping 485 matching lines...) Expand 10 before | Expand all | Expand 10 after
601 ResetTimestamp fResetTi mestamp; 610 ResetTimestamp fResetTi mestamp;
602 uint32_t fResetBi ts; 611 uint32_t fResetBi ts;
603 // The context owns us, not vice-versa, so this ptr is not ref'ed by Gpu. 612 // The context owns us, not vice-versa, so this ptr is not ref'ed by Gpu.
604 GrContext* fContext ; 613 GrContext* fContext ;
605 614
606 friend class GrPathRendering; 615 friend class GrPathRendering;
607 typedef SkRefCnt INHERITED; 616 typedef SkRefCnt INHERITED;
608 }; 617 };
609 618
610 #endif 619 #endif
OLDNEW
« no previous file with comments | « include/gpu/GrTextureProvider.h ('k') | src/gpu/GrGpu.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698