| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2010 Google Inc. | 2 * Copyright 2010 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 GrContext_DEFINED | 8 #ifndef GrContext_DEFINED |
| 9 #define GrContext_DEFINED | 9 #define GrContext_DEFINED |
| 10 | 10 |
| 11 #include "GrCaps.h" | 11 #include "GrCaps.h" |
| 12 #include "GrClip.h" | 12 #include "GrClip.h" |
| 13 #include "GrColor.h" | 13 #include "GrColor.h" |
| 14 #include "GrPaint.h" | 14 #include "GrPaint.h" |
| 15 #include "GrRenderTarget.h" | 15 #include "GrRenderTarget.h" |
| 16 #include "GrTextureProvider.h" | 16 #include "GrTextureProvider.h" |
| 17 #include "SkMatrix.h" | 17 #include "SkMatrix.h" |
| 18 #include "SkPathEffect.h" | 18 #include "SkPathEffect.h" |
| 19 #include "SkTypes.h" | 19 #include "SkTypes.h" |
| 20 #include "../private/GrAuditTrail.h" |
| 20 #include "../private/GrSingleOwner.h" | 21 #include "../private/GrSingleOwner.h" |
| 21 #include "../private/SkMutex.h" | 22 #include "../private/SkMutex.h" |
| 22 | 23 |
| 23 struct GrBatchAtlasConfig; | 24 struct GrBatchAtlasConfig; |
| 24 class GrBatchFontCache; | 25 class GrBatchFontCache; |
| 25 struct GrContextOptions; | 26 struct GrContextOptions; |
| 26 class GrDrawingManager; | 27 class GrDrawingManager; |
| 27 class GrDrawContext; | 28 class GrDrawContext; |
| 28 class GrDrawTarget; | 29 class GrDrawTarget; |
| 29 class GrFragmentProcessor; | 30 class GrFragmentProcessor; |
| (...skipping 321 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 351 /** Specify the sizes of the GrAtlasTextContext atlases. The configs pointe
r below should be | 352 /** Specify the sizes of the GrAtlasTextContext atlases. The configs pointe
r below should be |
| 352 to an array of 3 entries */ | 353 to an array of 3 entries */ |
| 353 void setTextContextAtlasSizes_ForTesting(const GrBatchAtlasConfig* configs); | 354 void setTextContextAtlasSizes_ForTesting(const GrBatchAtlasConfig* configs); |
| 354 | 355 |
| 355 /** Enumerates all cached GPU resources and dumps their memory to traceMemor
yDump. */ | 356 /** Enumerates all cached GPU resources and dumps their memory to traceMemor
yDump. */ |
| 356 void dumpMemoryStatistics(SkTraceMemoryDump* traceMemoryDump) const; | 357 void dumpMemoryStatistics(SkTraceMemoryDump* traceMemoryDump) const; |
| 357 | 358 |
| 358 /** Get pointer to atlas texture for given mask format */ | 359 /** Get pointer to atlas texture for given mask format */ |
| 359 GrTexture* getFontAtlasTexture(GrMaskFormat format); | 360 GrTexture* getFontAtlasTexture(GrMaskFormat format); |
| 360 | 361 |
| 362 SkString dumpAuditTrailToJson() const { return fAuditTrail.toJson(); } |
| 363 |
| 361 private: | 364 private: |
| 362 GrGpu* fGpu; | 365 GrGpu* fGpu; |
| 363 const GrCaps* fCaps; | 366 const GrCaps* fCaps; |
| 364 GrResourceCache* fResourceCache; | 367 GrResourceCache* fResourceCache; |
| 365 // this union exists because the inheritance of GrTextureProvider->GrResourc
eProvider | 368 // this union exists because the inheritance of GrTextureProvider->GrResourc
eProvider |
| 366 // is in a private header. | 369 // is in a private header. |
| 367 union { | 370 union { |
| 368 GrResourceProvider* fResourceProvider; | 371 GrResourceProvider* fResourceProvider; |
| 369 GrTextureProvider* fTextureProvider; | 372 GrTextureProvider* fTextureProvider; |
| 370 }; | 373 }; |
| (...skipping 27 matching lines...) Expand all Loading... |
| 398 PFCleanUpFunc fFunc; | 401 PFCleanUpFunc fFunc; |
| 399 void* fInfo; | 402 void* fInfo; |
| 400 }; | 403 }; |
| 401 | 404 |
| 402 SkTDArray<CleanUpData> fCleanUpData; | 405 SkTDArray<CleanUpData> fCleanUpData; |
| 403 | 406 |
| 404 const uint32_t fUniqueID; | 407 const uint32_t fUniqueID; |
| 405 | 408 |
| 406 SkAutoTDelete<GrDrawingManager> fDrawingManager; | 409 SkAutoTDelete<GrDrawingManager> fDrawingManager; |
| 407 | 410 |
| 411 GrAuditTrail fAuditTrail; |
| 412 |
| 408 // TODO: have the CMM use drawContexts and rm this friending | 413 // TODO: have the CMM use drawContexts and rm this friending |
| 409 friend class GrClipMaskManager; // the CMM is friended just so it can call '
drawingManager' | 414 friend class GrClipMaskManager; // the CMM is friended just so it can call '
drawingManager' |
| 410 friend class GrDrawingManager; // for access to drawingManager for ProgramU
nitTest | 415 friend class GrDrawingManager; // for access to drawingManager for ProgramU
nitTest |
| 411 GrDrawingManager* drawingManager() { return fDrawingManager; } | 416 GrDrawingManager* drawingManager() { return fDrawingManager; } |
| 412 | 417 |
| 413 GrContext(); // init must be called after the constructor. | 418 GrContext(); // init must be called after the constructor. |
| 414 bool init(GrBackend, GrBackendContext, const GrContextOptions& options); | 419 bool init(GrBackend, GrBackendContext, const GrContextOptions& options); |
| 415 | 420 |
| 416 void initMockContext(); | 421 void initMockContext(); |
| 417 void initCommon(const GrContextOptions&); | 422 void initCommon(const GrContextOptions&); |
| (...skipping 24 matching lines...) Expand all Loading... |
| 442 /** | 447 /** |
| 443 * A callback similar to the above for use by the TextBlobCache | 448 * A callback similar to the above for use by the TextBlobCache |
| 444 * TODO move textblob draw calls below context so we can use the call above. | 449 * TODO move textblob draw calls below context so we can use the call above. |
| 445 */ | 450 */ |
| 446 static void TextBlobCacheOverBudgetCB(void* data); | 451 static void TextBlobCacheOverBudgetCB(void* data); |
| 447 | 452 |
| 448 typedef SkRefCnt INHERITED; | 453 typedef SkRefCnt INHERITED; |
| 449 }; | 454 }; |
| 450 | 455 |
| 451 #endif | 456 #endif |
| OLD | NEW |