skia2/include/core
cdalton 855d83ff79 Uses a single pre-baked set of paths for drawing nvpr text of a given
typeface. Loads the paths using the driver's glyph loading routines.

Refactors GrPathRange to accept a PathGenerator class that it uses to
lazily initialize its paths. The client code is no longer expected to
initialize the paths in a GrPathRange; instead it must provide a
PathGenerator* instance to createPathRange().

Adds a new createGlyphs() method to GrPathRendering that creates a
range of glyph paths, indexed by glyph id. GrPathRendering implements
createGlyphs() with a PathGenerator that loads glyph paths using the
skia frameworks. GrGLPathRendering uses glMemoryGlyphIndexArrayNV()
instead, when possible, to load the glyph paths.

Removes all GlyphPathRange logic from GrStencilAndCoverTextContext.
It instead uses createGlyphs().

BUG=skia:2939
R=bsalomon@google.com, jvanverth@google.com

Author: cdalton@nvidia.com

Review URL: https://codereview.chromium.org/563283004
2014-09-18 13:51:53 -07:00
..
SkAdvancedTypefaceMetrics.h [PDF] Fix font embedding restrictions. 2014-06-19 11:05:39 -07:00
SkAnnotation.h Factory methods for heap-allocated SkAnnotation objects. 2014-02-27 11:47:36 +00:00
SkBBHFactory.h Remove SkQuadTree. 2014-08-26 14:07:04 -07:00
SkBitmap.h "NULL !=" = NULL 2014-09-05 13:34:00 -07:00
SkBitmapDevice.h hide deviceproperties, prepare the way for surfaceprops 2014-09-17 10:49:38 -07:00
SkBlitRow.h replace config() with colorType() 2014-05-29 15:57:47 +00:00
SkBlurTypes.h move common blur types into central header 2014-04-28 16:25:35 +00:00
SkCanvas.h Revert of Revert of allow canvas to force conservative clips (for speed) (patchset #1 id:1 of https://codereview.chromium.org/554033003/) 2014-09-09 18:46:22 -07:00
SkChunkAlloc.h combine glyph and image bulk alloc, and adjust initial alloc size, to reduce total waste from 50% to 30% 2013-06-19 19:25:36 +00:00
SkClipStack.h Add dump() to SkClipStack to help with debugging. 2014-06-09 07:59:06 -07:00
SkColor.h SkAlpha constant defs 2013-07-19 17:43:27 +00:00
SkColorFilter.h Simplify flattening to just write enough to call the factory/public-constructor for the class. We want to *not* rely on private constructors, and not rely on calling through the inheritance hierarchy for either flattening or unflattening(CreateProc). 2014-08-21 07:59:51 -07:00
SkColorPriv.h Address MSVC warnings about possible value truncation. In the process removes some apparently unused code. 2014-09-02 13:40:48 -07:00
SkColorShader.h extend SkShader to report a luminance-color to be used for gamma correction 2014-08-22 08:30:20 -07:00
SkColorTable.h Expose SkColorTable class 2014-08-05 12:20:19 -07:00
SkComposeShader.h Add functions for inspecting SkShader. 2014-05-13 18:14:45 +00:00
SkData.h use SkData::NewUninitialized 2014-09-12 12:12:27 -07:00
SkDataTable.h Remove SkDataTable from SkFlattenable hierarchy. 2013-10-15 20:39:57 +00:00
SkDeque.h This CL addresses "SkCanvas::save flags are not respected by GPU backend" (https://code.google.com/p/skia/issues/detail?id=1503). 2013-08-16 00:53:34 +00:00
SkDevice.h hide deviceproperties, prepare the way for surfaceprops 2014-09-17 10:49:38 -07:00
SkDither.h Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:09:54 +00:00
SkDocument.h remove SkFloatToScalar macro 2013-11-25 19:44:07 +00:00
SkDraw.h Allow custom blitters to be passed to SkDraw::drawPath 2014-08-06 11:12:14 -07:00
SkDrawFilter.h Add GPU support for roundrects 2013-04-25 15:27:00 +00:00
SkDrawLooper.h Simplify flattening to just write enough to call the factory/public-constructor for the class. We want to *not* rely on private constructors, and not rely on calling through the inheritance hierarchy for either flattening or unflattening(CreateProc). 2014-08-21 07:59:51 -07:00
SkDrawPictureCallback.h Replace SkPictureReplacementPlayback with GrRecordReplaceDraw 2014-09-03 11:04:31 -07:00
SkDynamicAnnotations.h Split SkTRacy into SkTRacy and SkTRacyReffable. 2014-07-10 11:11:50 -07:00
SkEndian.h fix size_t/int warnings 2014-04-23 19:19:44 +00:00
SkError.h Sanitizing source files in Housekeeper-Nightly 2013-09-05 07:01:19 +00:00
SkFixed.h SK_CPU_ARM --> SK_CPU_ARM32 2014-06-03 12:07:31 -07:00
SkFlattenable.h Simplify flattening to just write enough to call the factory/public-constructor for the class. We want to *not* rely on private constructors, and not rely on calling through the inheritance hierarchy for either flattening or unflattening(CreateProc). 2014-08-21 07:59:51 -07:00
SkFlattenableBuffers.h Move SkReadBuffer.h and SkReader32.h out of include. 2014-08-19 06:27:53 -07:00
SkFlattenableSerialization.h Removed unnecessary define 2013-11-08 15:24:12 +00:00
SkFloatBits.h remove unused SkIntToFloatCast_NoOverflowCheck 2014-08-19 07:39:41 -07:00
SkFloatingPoint.h Clarify build test for presense of 'float copysign(float, float)'. 2014-09-17 11:16:51 -07:00
SkFont.h Treat embedded bitmaps as a hinting method. 2014-08-19 13:18:58 -07:00
SkFontHost.h Remove a layer of indirection and code from SkFontHost. 2014-09-10 15:49:48 -07:00
SkFontLCDConfig.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-03-13 07:01:04 +00:00
SkGraphics.h add PurgeResourceCache to track leaks 2014-09-11 12:22:34 -07:00
SkImage.h Add the method isOpaque() to SkImage 2014-08-19 14:29:02 -07:00
SkImageDecoder.h eliminate code related to SkBitmap::Config 2014-08-18 08:13:03 -07:00
SkImageEncoder.h ios fixes 2014-07-11 12:14:51 -07:00
SkImageFilter.h Remove SkImageFilter::Set/GetExternalCache. 2014-08-26 14:06:01 -07:00
SkImageGenerator.h Add support for the Rec601 YUV color space to GrYUVtoRGBEffect. 2014-09-12 17:45:58 -07:00
SkImageInfo.h Add support for the Rec601 YUV color space to GrYUVtoRGBEffect. 2014-09-12 17:45:58 -07:00
SkInstCnt.h Fix thread unsafe mutex initialization. 2014-07-25 11:52:48 -07:00
SkMallocPixelRef.h remove SK_SUPPORT_LEGACY_PIXELREF_UNFLATTENABLE code 2014-07-14 09:21:31 -07:00
SkMask.h Guard against most unintentionally ephemeral SkAutoFoo instantiations. 2013-11-18 16:03:59 +00:00
SkMaskFilter.h Simplify flattening to just write enough to call the factory/public-constructor for the class. We want to *not* rely on private constructors, and not rely on calling through the inheritance hierarchy for either flattening or unflattening(CreateProc). 2014-08-21 07:59:51 -07:00
SkMath.h SK_CPU_ARM --> SK_CPU_ARM32 2014-06-03 12:07:31 -07:00
SkMatrix.h "NULL !=" = NULL 2014-09-05 13:34:00 -07:00
SkMetaData.h "NULL !=" = NULL 2014-09-05 13:34:00 -07:00
SkMultiPictureDraw.h SkMultiPictureDraw API 2014-08-21 13:12:42 -07:00
SkOnce.h Clean up SkOnce: 2014-06-02 11:26:59 -07:00
SkOSFile.h Add option to dump images from nanobench. 2014-08-07 14:28:50 -07:00
SkPackBits.h Automatic update of all copyright notices to reflect new license terms. 2011-07-28 14:26:00 +00:00
SkPaint.h Uses a single pre-baked set of paths for drawing nvpr text of a given 2014-09-18 13:51:53 -07:00
SkPath.h add dumpHex() option to SkPath 2014-09-15 09:26:09 -07:00
SkPathEffect.h Simplify flattening to just write enough to call the factory/public-constructor for the class. We want to *not* rely on private constructors, and not rely on calling through the inheritance hierarchy for either flattening or unflattening(CreateProc). 2014-08-21 07:59:51 -07:00
SkPathMeasure.h add SK_API 2013-05-08 13:25:02 +00:00
SkPathRef.h "NULL !=" = NULL 2014-09-05 13:34:00 -07:00
SkPicture.h Change SkPicture::draw to playback 2014-09-04 08:42:50 -07:00
SkPictureRecorder.h Try out scalar picture sizes 2014-08-29 08:03:56 -07:00
SkPixelRef.h Add support for the Rec601 YUV color space to GrYUVtoRGBEffect. 2014-09-12 17:45:58 -07:00
SkPoint.h Move GrIPoint16 to SkIPoint16 (and remove GrPoint.h) 2014-06-02 10:20:15 -07:00
SkPostConfig.h CrashHandler for Windows. 2014-06-19 07:41:59 -07:00
SkPreConfig.h Remove copile time enabling of SK_ARM_HAS_NEON. 2014-08-01 09:21:19 -04:00
SkRasterizer.h Simplify flattening to just write enough to call the factory/public-constructor for the class. We want to *not* rely on private constructors, and not rely on calling through the inheritance hierarchy for either flattening or unflattening(CreateProc). 2014-08-21 07:59:51 -07:00
SkRect.h update to accommodate latest clang in chrome toolchain 2014-09-18 11:00:40 -07:00
SkRefCnt.h Serialize the font index. 2014-09-18 10:55:32 -07:00
SkRegion.h Add dump() to SkClipStack to help with debugging. 2014-06-09 07:59:06 -07:00
SkRRect.h Add dump() to SkClipStack to help with debugging. 2014-06-09 07:59:06 -07:00
SkScalar.h add rounding-using-doubles methods on SkScalar and SkRect 2014-05-05 16:04:42 +00:00
SkShader.h make set3DMask virtual, so we can safely notify the shadercontext 2014-09-10 10:20:24 -07:00
SkSize.h deprecate SkScalarRound (and its ilk), use SkScalarRound[ToInt,ToScalar]. #define SK_SUPPORT_DEPRECATED_SCALARROUND for legacy clients 2013-12-17 19:22:07 +00:00
SkStream.h remove confusing/unused stream methods 2014-09-12 08:49:54 -07:00
SkString.h Initial refactor of shaderbuilder to prepare for geometry shaders 2014-08-21 20:18:45 -07:00
SkStrokeRec.h Add a GrPathRange class 2014-07-21 15:32:44 -07:00
SkSurface.h Begin atlasing 2014-06-30 08:26:50 -07:00
SkTArray.h "NULL !=" = NULL 2014-09-05 13:34:00 -07:00
SkTDArray.h Assert SkTDArray::pop() doesn't underflow. 2014-09-11 06:36:11 -07:00
SkTDict.h move some headers out of public 2014-06-17 09:04:45 -07:00
SkTDStack.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
SkTemplates.h "NULL !=" = NULL 2014-09-05 13:34:00 -07:00
SkTextBlob.h Expose drawTextBlob to devices. 2014-08-28 14:32:24 -07:00
SkThread.h Fix thread unsafe mutex initialization. 2014-07-25 11:52:48 -07:00
SkTime.h Revert of Add nanosecond timer. (https://codereview.chromium.org/250243002/) 2014-04-24 20:17:24 +00:00
SkTInternalLList.h "NULL !=" = NULL 2014-09-05 13:34:00 -07:00
SkTLazy.h "NULL !=" = NULL 2014-09-05 13:34:00 -07:00
SkTRegistry.h Rewrite SkTRegistry to take any trivially-copyable type. 2013-09-04 17:20:18 +00:00
SkTSearch.h One SkTSearch to rule them all. Allow key to be of different type than the array. 2013-05-17 19:05:03 +00:00
SkTypeface.h Uses a single pre-baked set of paths for drawing nvpr text of a given 2014-09-18 13:51:53 -07:00
SkTypes.h "NULL !=" = NULL 2014-09-05 13:34:00 -07:00
SkUnPreMultiply.h Factor out UnPreMultiplyPreservingByteOrder 2014-01-15 22:24:58 +00:00
SkUtils.h SSE2 implementation of memcpy32 2014-05-21 12:43:07 +00:00
SkWeakRefCnt.h Revert "Remove ability for Release code to call getRefCnt() or getWeakRefCnt()." 2014-07-09 09:04:07 -04:00
SkWriteBuffer.h read/write function_ptrs as just void*, and not as 'array of bytes' 2014-04-16 16:24:08 +00:00
SkWriter32.h SkCanvas::drawPatch param SkPoint[12] 2014-08-12 08:34:29 -07:00
SkXfermode.h Simplify flattening to just write enough to call the factory/public-constructor for the class. We want to *not* rely on private constructors, and not rely on calling through the inheritance hierarchy for either flattening or unflattening(CreateProc). 2014-08-21 07:59:51 -07:00