skia2/include/gpu
mtklein 6f07665768 Simplify SkInstCnt
This code requires fewer macros to use it (just one), has less code in macro
definitions, and has simpler synchronization code (just atomic ints, no SkOnce,
no SkMutex, etc.)

A minor downside, we lose indentation and reverse-ordering in the final report:
  Leaked SkRefCntBase: 7
     Leaked SkFontMgr: 1
     Leaked SkWeakRefCnt: 1
         Leaked SkTypeface: 1
     Leaked SkFlattenable: 3
         Leaked SkXfermode: 3
     Leaked SkPathRef: 1
     Leaked SkPixelRef: 1
         Leaked SkMallocPixelRef: 1
becomes
  Leaked SkXfermode: 3
  Leaked SkMallocPixelRef: 1
  Leaked SkPixelRef: 1
  Leaked SkPathRef: 1
  Leaked SkFlattenable: 3
  Leaked SkTypeface: 1
  Leaked SkWeakRefCnt: 1
  Leaked SkFontMgr: 1
  Leaked SkRefCntBase: 7

This is motivated by wanting to land https://codereview.chromium.org/806473006/,
which makes sure all static use of SkOnce are in global scope.  The current
implementation of SkInstCnt uses them in function scope, which isn't safe.
BUG=skia:

No public API changes.
TBR=reed@google.com

Review URL: https://codereview.chromium.org/841263004
2015-01-13 08:22:44 -08:00
..
effects Add XP to handle the cases where we disable color write. 2014-12-22 07:35:52 -08:00
gl Fix up all the easy virtual ... SK_OVERRIDE cases. 2015-01-09 10:06:40 -08:00
GrBinHashKey.h Make textures register with GrResourceCache2 as scratch. 2014-08-28 09:54:34 -07:00
GrClipData.h "NULL !=" = NULL 2014-09-05 13:34:00 -07:00
GrColor.h Add device space skshader GM to test kDevice_GrCoordSet 2014-12-29 07:05:27 -08:00
GrConfig.h Replace GrResourceCache with GrResourceCache2. 2014-11-14 12:10:15 -08:00
GrContext.h Move ViewMatrix off of drawstate 2014-12-29 15:10:07 -08:00
GrCoordTransform.h Remove GrCoordTransform::kPosition_CoordSet 2014-12-18 10:17:45 -08:00
GrFragmentProcessor.h initial changes to add local matrix to primitive processor 2014-12-19 13:45:20 -08:00
GrFragmentStage.h removing coord change matrices 2014-12-29 09:04:40 -08:00
GrGpuResource.h Simplify SkInstCnt 2015-01-13 08:22:44 -08:00
GrGpuResourceRef.h Simplify SkInstCnt 2015-01-13 08:22:44 -08:00
GrInvariantOutput.h Remove GP from drawstate, revision of invariant output for GP 2014-12-11 15:44:02 -08:00
GrPaint.h removing coord change matrices 2014-12-29 09:04:40 -08:00
GrPathRendererChain.h Move ViewMatrix off of drawstate 2014-12-29 15:10:07 -08:00
GrProcessor.h Remove GP from drawstate, revision of invariant output for GP 2014-12-11 15:44:02 -08:00
GrProcessorUnitTest.h Create xfer processor backend. 2014-12-11 13:15:14 -08:00
GrProgramElement.h Simplify SkInstCnt 2015-01-13 08:22:44 -08:00
GrRect.h Begin atlasing 2014-06-30 08:26:50 -07:00
GrRenderTarget.h Fix up all the easy virtual ... SK_OVERRIDE cases. 2015-01-09 10:06:40 -08:00
GrResourceKey.h Add a simpler key type for scratch resource keys. 2014-12-30 12:50:52 -08:00
GrShaderVar.h Make addUniform take a precision 2014-12-09 10:18:12 -08:00
GrSurface.h Remove GrSurface::isSameAs 2014-11-25 07:41:12 -08:00
GrTexture.h Fix up all the easy virtual ... SK_OVERRIDE cases. 2015-01-09 10:06:40 -08:00
GrTextureAccess.h Simplify SkInstCnt 2015-01-13 08:22:44 -08:00
GrTypes.h Add sRGB texture support. 2014-12-22 08:31:49 -08:00
GrTypesPriv.h Stop creating GrODS for stencilPath commands. 2014-12-17 13:43:13 -08:00
GrUserConfig.h Replace GrResourceCache with GrResourceCache2. 2014-11-14 12:10:15 -08:00
GrXferProcessor.h Add XP to handle the cases where we disable color write. 2014-12-22 07:35:52 -08:00
SkGr.h Add sRGB texture support. 2014-12-22 08:31:49 -08:00
SkGrPixelRef.h Fix up all the easy virtual ... SK_OVERRIDE cases. 2015-01-09 10:06:40 -08:00
SkGrTexturePixelRef.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00