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 |
11 #include "GrDrawTarget.h" | 11 #include "GrDrawTarget.h" |
12 #include "GrPathRendering.h" | 12 #include "GrPathRendering.h" |
13 #include "GrProgramDesc.h" | 13 #include "GrProgramDesc.h" |
14 #include "SkPath.h" | 14 #include "SkPath.h" |
15 | 15 |
16 class GrContext; | 16 class GrContext; |
| 17 struct GrGLInterface; |
17 class GrNonInstancedVertices; | 18 class GrNonInstancedVertices; |
18 class GrPath; | 19 class GrPath; |
19 class GrPathRange; | 20 class GrPathRange; |
20 class GrPathRenderer; | 21 class GrPathRenderer; |
21 class GrPathRendererChain; | 22 class GrPathRendererChain; |
22 class GrPipeline; | 23 class GrPipeline; |
23 class GrPrimitiveProcessor; | 24 class GrPrimitiveProcessor; |
24 class GrStencilAttachment; | 25 class GrStencilAttachment; |
25 class GrVertices; | 26 class GrVertices; |
26 | 27 |
(...skipping 352 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
379 * restore. Also, it is assumed that when restore is called the current acti
ve set of markers | 380 * restore. Also, it is assumed that when restore is called the current acti
ve set of markers |
380 * is empty. When the stored markers are added back into the active set, the
targets add marker | 381 * is empty. When the stored markers are added back into the active set, the
targets add marker |
381 * is called. | 382 * is called. |
382 */ | 383 */ |
383 void saveActiveTraceMarkers(); | 384 void saveActiveTraceMarkers(); |
384 void restoreActiveTraceMarkers(); | 385 void restoreActiveTraceMarkers(); |
385 | 386 |
386 // Given a rt, find or create a stencil buffer and attach it | 387 // Given a rt, find or create a stencil buffer and attach it |
387 bool attachStencilAttachmentToRenderTarget(GrRenderTarget* target); | 388 bool attachStencilAttachmentToRenderTarget(GrRenderTarget* target); |
388 | 389 |
| 390 // This is only to be used in tests. |
| 391 virtual const GrGLInterface* glInterfaceForTesting() const { return NULL; } |
| 392 |
389 protected: | 393 protected: |
390 // Functions used to map clip-respecting stencil tests into normal | 394 // Functions used to map clip-respecting stencil tests into normal |
391 // stencil funcs supported by GPUs. | 395 // stencil funcs supported by GPUs. |
392 static GrStencilFunc ConvertStencilFunc(bool stencilInClip, | 396 static GrStencilFunc ConvertStencilFunc(bool stencilInClip, |
393 GrStencilFunc func); | 397 GrStencilFunc func); |
394 static void ConvertStencilFuncAndMask(GrStencilFunc func, | 398 static void ConvertStencilFuncAndMask(GrStencilFunc func, |
395 bool clipInStencil, | 399 bool clipInStencil, |
396 unsigned int clipBit, | 400 unsigned int clipBit, |
397 unsigned int userBits, | 401 unsigned int userBits, |
398 unsigned int* ref, | 402 unsigned int* ref, |
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
495 int fGpuTrac
eMarkerCount; | 499 int fGpuTrac
eMarkerCount; |
496 GrTraceMarkerSet fActiveT
raceMarkers; | 500 GrTraceMarkerSet fActiveT
raceMarkers; |
497 GrTraceMarkerSet fStoredT
raceMarkers; | 501 GrTraceMarkerSet fStoredT
raceMarkers; |
498 // The context owns us, not vice-versa, so this ptr is not ref'ed by Gpu. | 502 // The context owns us, not vice-versa, so this ptr is not ref'ed by Gpu. |
499 GrContext* fContext
; | 503 GrContext* fContext
; |
500 | 504 |
501 typedef SkRefCnt INHERITED; | 505 typedef SkRefCnt INHERITED; |
502 }; | 506 }; |
503 | 507 |
504 #endif | 508 #endif |
OLD | NEW |