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

Side by Side Diff: src/gpu/gl/GrGLGpu.h

Issue 1249543003: Creating functions for uploading a mipmapped texture. (Closed) Base URL: https://chromium.googlesource.com/skia.git@master
Patch Set: Created 5 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
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 GrGLGpu_DEFINED 8 #ifndef GrGLGpu_DEFINED
9 #define GrGLGpu_DEFINED 9 #define GrGLGpu_DEFINED
10 10
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
121 GrGLGpu(GrGLContext* ctx, GrContext* context); 121 GrGLGpu(GrGLContext* ctx, GrContext* context);
122 122
123 // GrGpu overrides 123 // GrGpu overrides
124 void onResetContext(uint32_t resetBits) override; 124 void onResetContext(uint32_t resetBits) override;
125 125
126 GrTexture* onCreateTexture(const GrSurfaceDesc& desc, GrGpuResource::LifeCyc le lifeCycle, 126 GrTexture* onCreateTexture(const GrSurfaceDesc& desc, GrGpuResource::LifeCyc le lifeCycle,
127 const void* srcData, size_t rowBytes) override; 127 const void* srcData, size_t rowBytes) override;
128 GrTexture* onCreateCompressedTexture(const GrSurfaceDesc& desc, 128 GrTexture* onCreateCompressedTexture(const GrSurfaceDesc& desc,
129 GrGpuResource::LifeCycle lifeCycle, 129 GrGpuResource::LifeCycle lifeCycle,
130 const void* srcData) override; 130 const void* srcData) override;
131 GrTexture* onCreateMipmappedTexture(const GrSurfaceDesc& desc,
132 GrGpuResource::LifeCycle lifeCycle,
133 const SkMipMap& srcData) override;
134 GrTexture* onCreateCompressedMipmappedTexture(const GrSurfaceDesc& desc,
135 GrGpuResource::LifeCycle lifeC ycle,
136 const SkMipMap& srcData) overr ide;
137
131 GrVertexBuffer* onCreateVertexBuffer(size_t size, bool dynamic) override; 138 GrVertexBuffer* onCreateVertexBuffer(size_t size, bool dynamic) override;
132 GrIndexBuffer* onCreateIndexBuffer(size_t size, bool dynamic) override; 139 GrIndexBuffer* onCreateIndexBuffer(size_t size, bool dynamic) override;
133 GrTexture* onWrapBackendTexture(const GrBackendTextureDesc&, GrWrapOwnership ) override; 140 GrTexture* onWrapBackendTexture(const GrBackendTextureDesc&, GrWrapOwnership ) override;
134 GrRenderTarget* onWrapBackendRenderTarget(const GrBackendRenderTargetDesc&, 141 GrRenderTarget* onWrapBackendRenderTarget(const GrBackendRenderTargetDesc&,
135 GrWrapOwnership) override; 142 GrWrapOwnership) override;
136 bool createStencilAttachmentForRenderTarget(GrRenderTarget* rt, int width, i nt height) override; 143 bool createStencilAttachmentForRenderTarget(GrRenderTarget* rt, int width, i nt height) override;
137 bool attachStencilAttachmentToRenderTarget(GrStencilAttachment* sb, 144 bool attachStencilAttachmentToRenderTarget(GrStencilAttachment* sb,
138 GrRenderTarget* rt) override; 145 GrRenderTarget* rt) override;
139 146
140 void onClear(GrRenderTarget*, const SkIRect* rect, GrColor color, 147 void onClear(GrRenderTarget*, const SkIRect* rect, GrColor color,
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after
284 // for the size of the data. The isNewTexture flag should be set to true 291 // for the size of the data. The isNewTexture flag should be set to true
285 // whenever a new texture needs to be created. Otherwise, we assume that 292 // whenever a new texture needs to be created. Otherwise, we assume that
286 // the texture is already in GPU memory and that it's going to be updated 293 // the texture is already in GPU memory and that it's going to be updated
287 // with new data. 294 // with new data.
288 bool uploadCompressedTexData(const GrSurfaceDesc& desc, 295 bool uploadCompressedTexData(const GrSurfaceDesc& desc,
289 const void* data, 296 const void* data,
290 bool isNewTexture = true, 297 bool isNewTexture = true,
291 int left = 0, int top = 0, 298 int left = 0, int top = 0,
292 int width = -1, int height = -1); 299 int width = -1, int height = -1);
293 300
301 // helper for onCreateMipmappedTexture
302 bool uploadMipmappedTexData(const GrSurfaceDesc& desc,
303 const SkMipMap& data);
304
305 // helper for onCreateCompressedMipmappedTexture
306 bool uploadCompressedMipmappedTexData(const GrSurfaceDesc& desc,
307 const SkMipMap& data);
308
294 bool createRenderTargetObjects(const GrSurfaceDesc&, GrGpuResource::LifeCycl e lifeCycle, 309 bool createRenderTargetObjects(const GrSurfaceDesc&, GrGpuResource::LifeCycl e lifeCycle,
295 GrGLuint texID, GrGLRenderTarget::IDDesc*); 310 GrGLuint texID, GrGLRenderTarget::IDDesc*);
296 311
297 enum TempFBOTarget { 312 enum TempFBOTarget {
298 kSrc_TempFBOTarget, 313 kSrc_TempFBOTarget,
299 kDst_TempFBOTarget 314 kDst_TempFBOTarget
300 }; 315 };
301 316
302 GrGLuint bindSurfaceAsFBO(GrSurface* surface, GrGLenum fboTarget, GrGLIRect* viewport, 317 GrGLuint bindSurfaceAsFBO(GrSurface* surface, GrGLenum fboTarget, GrGLIRect* viewport,
303 TempFBOTarget tempFBOTarget); 318 TempFBOTarget tempFBOTarget);
(...skipping 196 matching lines...) Expand 10 before | Expand all | Expand 10 after
500 515
501 // we record what stencil format worked last time to hopefully exit early 516 // we record what stencil format worked last time to hopefully exit early
502 // from our loop that tries stencil formats and calls check fb status. 517 // from our loop that tries stencil formats and calls check fb status.
503 int fLastSuccessfulStencilFmtIdx; 518 int fLastSuccessfulStencilFmtIdx;
504 519
505 typedef GrGpu INHERITED; 520 typedef GrGpu INHERITED;
506 friend class GrGLPathRendering; // For accessing setTextureUnit. 521 friend class GrGLPathRendering; // For accessing setTextureUnit.
507 }; 522 };
508 523
509 #endif 524 #endif
OLDNEW
« src/gpu/SkGr.cpp ('K') | « src/gpu/SkGr.cpp ('k') | src/gpu/gl/GrGLGpu.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698