| OLD | NEW |
| 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 231 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 242 * @param buffer memory to read pixels from | 242 * @param buffer memory to read pixels from |
| 243 * @param rowBytes number of bytes between consecutive rows. Zero | 243 * @param rowBytes number of bytes between consecutive rows. Zero |
| 244 * means rows are tightly packed. | 244 * means rows are tightly packed. |
| 245 */ | 245 */ |
| 246 bool writePixels(GrSurface* surface, | 246 bool writePixels(GrSurface* surface, |
| 247 int left, int top, int width, int height, | 247 int left, int top, int width, int height, |
| 248 GrPixelConfig config, const void* buffer, | 248 GrPixelConfig config, const void* buffer, |
| 249 size_t rowBytes); | 249 size_t rowBytes); |
| 250 | 250 |
| 251 /** | 251 /** |
| 252 * Clear the passed in render target. Ignores the draw state and clip. Clear
s the whole thing if | 252 * Clear the passed in render target. Ignores the draw state and clip. |
| 253 * rect is NULL, otherwise just the rect. If canIgnoreRect is set then the e
ntire render target | |
| 254 * can be optionally cleared. | |
| 255 */ | 253 */ |
| 256 void clear(const SkIRect* rect, GrColor color, bool canIgnoreRect,GrRenderTa
rget* renderTarget); | 254 void clear(const SkIRect& rect, GrColor color, GrRenderTarget* renderTarget)
; |
| 257 | 255 |
| 258 | 256 |
| 259 void clearStencilClip(const SkIRect& rect, bool insideClip, GrRenderTarget*
renderTarget); | 257 void clearStencilClip(const SkIRect& rect, bool insideClip, GrRenderTarget*
renderTarget); |
| 260 | 258 |
| 261 /** | 259 /** |
| 262 * Discards the contents render target. NULL indicates that the current rend
er target should | 260 * Discards the contents render target. NULL indicates that the current rend
er target should |
| 263 * be discarded. | 261 * be discarded. |
| 264 **/ | 262 **/ |
| 265 virtual void discard(GrRenderTarget* = NULL) = 0; | 263 virtual void discard(GrRenderTarget* = NULL) = 0; |
| 266 | 264 |
| (...skipping 176 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 443 virtual GrTexture* onCreateCompressedTexture(const GrSurfaceDesc& desc, | 441 virtual GrTexture* onCreateCompressedTexture(const GrSurfaceDesc& desc, |
| 444 GrGpuResource::LifeCycle lifeCy
cle, | 442 GrGpuResource::LifeCycle lifeCy
cle, |
| 445 const void* srcData) = 0; | 443 const void* srcData) = 0; |
| 446 virtual GrTexture* onWrapBackendTexture(const GrBackendTextureDesc&, GrWrapO
wnership) = 0; | 444 virtual GrTexture* onWrapBackendTexture(const GrBackendTextureDesc&, GrWrapO
wnership) = 0; |
| 447 virtual GrRenderTarget* onWrapBackendRenderTarget(const GrBackendRenderTarge
tDesc&, | 445 virtual GrRenderTarget* onWrapBackendRenderTarget(const GrBackendRenderTarge
tDesc&, |
| 448 GrWrapOwnership) = 0; | 446 GrWrapOwnership) = 0; |
| 449 virtual GrVertexBuffer* onCreateVertexBuffer(size_t size, bool dynamic) = 0; | 447 virtual GrVertexBuffer* onCreateVertexBuffer(size_t size, bool dynamic) = 0; |
| 450 virtual GrIndexBuffer* onCreateIndexBuffer(size_t size, bool dynamic) = 0; | 448 virtual GrIndexBuffer* onCreateIndexBuffer(size_t size, bool dynamic) = 0; |
| 451 | 449 |
| 452 // overridden by backend-specific derived class to perform the clear. | 450 // overridden by backend-specific derived class to perform the clear. |
| 453 virtual void onClear(GrRenderTarget*, const SkIRect* rect, GrColor color, | 451 virtual void onClear(GrRenderTarget*, const SkIRect& rect, GrColor color) =
0; |
| 454 bool canIgnoreRect) = 0; | |
| 455 | 452 |
| 456 | 453 |
| 457 // Overridden by backend specific classes to perform a clear of the stencil
clip bits. This is | 454 // Overridden by backend specific classes to perform a clear of the stencil
clip bits. This is |
| 458 // ONLY used by the the clip target | 455 // ONLY used by the the clip target |
| 459 virtual void onClearStencilClip(GrRenderTarget*, const SkIRect& rect, bool i
nsideClip) = 0; | 456 virtual void onClearStencilClip(GrRenderTarget*, const SkIRect& rect, bool i
nsideClip) = 0; |
| 460 | 457 |
| 461 // overridden by backend-specific derived class to perform the draw call. | 458 // overridden by backend-specific derived class to perform the draw call. |
| 462 virtual void onDraw(const DrawArgs&, const GrNonInstancedVertices&) = 0; | 459 virtual void onDraw(const DrawArgs&, const GrNonInstancedVertices&) = 0; |
| 463 | 460 |
| 464 virtual bool onGetReadPixelsInfo(GrSurface* srcSurface, int readWidth, int r
eadHeight, | 461 virtual bool onGetReadPixelsInfo(GrSurface* srcSurface, int readWidth, int r
eadHeight, |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 518 GrTraceMarkerSet fActiveT
raceMarkers; | 515 GrTraceMarkerSet fActiveT
raceMarkers; |
| 519 GrTraceMarkerSet fStoredT
raceMarkers; | 516 GrTraceMarkerSet fStoredT
raceMarkers; |
| 520 // The context owns us, not vice-versa, so this ptr is not ref'ed by Gpu. | 517 // The context owns us, not vice-versa, so this ptr is not ref'ed by Gpu. |
| 521 GrContext* fContext
; | 518 GrContext* fContext
; |
| 522 | 519 |
| 523 friend class GrPathRendering; | 520 friend class GrPathRendering; |
| 524 typedef SkRefCnt INHERITED; | 521 typedef SkRefCnt INHERITED; |
| 525 }; | 522 }; |
| 526 | 523 |
| 527 #endif | 524 #endif |
| OLD | NEW |