Name Description Size
SkAlphaType.h \enum SkAlphaType Describes how to interpret the alpha component of a pixel. A pixel may be opaque, or alpha, describing multiple levels of transparency. In simple blending, alpha weights the draw color and the destination color to create a new color. If alpha describes a weight from zero to one: new color = draw color * alpha + destination color * (1 - alpha) In practice alpha is encoded in two or more bits, where 1.0 equals all bits set. RGB may have alpha included in each component value; the stored value is the original RGB multiplied by alpha. Premultiplied color components improve performance. 1756
SkAnnotation.h Annotate the canvas by associating the specified URL with the specified rectangle (in local coordinates, just like drawRect). The URL is expected to be escaped and be valid 7-bit ASCII. If the backend of this canvas does not support annotations, this call is safely ignored. The caller is responsible for managing its ownership of the SkData. 1446
SkBBHFactory.h Insert N bounding boxes into the hierarchy. 1636
SkBitmap.h \class SkBitmap SkBitmap describes a two-dimensional raster pixel array. SkBitmap is built on SkImageInfo, containing integer width and height, SkColorType and SkAlphaType describing the pixel format, and SkColorSpace describing the range of colors. SkBitmap points to SkPixelRef, which describes the physical array of pixels. SkImageInfo bounds may be located anywhere fully inside SkPixelRef bounds. SkBitmap can be drawn using SkCanvas. SkBitmap can be a drawing destination for SkCanvas draw member functions. SkBitmap flexibility as a pixel container limits some optimizations available to the target platform. If pixel array is primarily read-only, use SkImage for better performance. If pixel array is primarily written to, use SkSurface for better performance. Declaring SkBitmap const prevents altering SkImageInfo: the SkBitmap height, width, and so on cannot change. It does not affect SkPixelRef: a caller may write its pixels. Declaring SkBitmap const affects SkBitmap configuration, not its contents. SkBitmap is not thread safe. Each thread must have its own copy of SkBitmap fields, although threads may share the underlying pixel array. 54252
SkBlender.h SkBlender represents a custom blend function in the Skia pipeline. When an SkBlender is present in a paint, the SkBlendMode is ignored. A blender combines a source color (the result of our paint) and destination color (from the canvas) into a final color. 856
SkBlendMode.h Blends are operators that take in two colors (source, destination) and return a new color. Many of these operate the same on all 4 components: red, green, blue, alpha. For these, we just document what happens to one component, rather than naming each one separately. Different SkColorTypes have different representations for color components: 8-bit: 0..255 6-bit: 0..63 5-bit: 0..31 4-bit: 0..15 floats: 0...1 The documentation is expressed as if the component values are always 0..1 (floats). For brevity, the documentation uses the following abbreviations s : source d : destination sa : source alpha da : destination alpha Results are abbreviated r : if all 4 components are computed in the same manner ra : result alpha component rc : result "color": red, green, blue components 4247
SkBlurTypes.h 524
SkCanvas.h \class SkCanvas SkCanvas provides an interface for drawing, and how the drawing is clipped and transformed. SkCanvas contains a stack of SkMatrix and clip values. SkCanvas and SkPaint together provide the state to draw into SkSurface or SkBaseDevice. Each SkCanvas draw call transforms the geometry of the object by the concatenation of all SkMatrix values in the stack. The transformed geometry is clipped by the intersection of all of clip values in the stack. The SkCanvas draw calls use SkPaint to supply drawing state such as color, SkTypeface, text size, stroke width, SkShader and so on. To draw to a pixel-based destination, create raster surface or GPU surface. Request SkCanvas from SkSurface to obtain the interface to draw. SkCanvas generated by raster surface draws to memory visible to the CPU. SkCanvas generated by GPU surface uses Vulkan or OpenGL to draw to the GPU. To draw to a document, obtain SkCanvas from SVG canvas, document PDF, or SkPictureRecorder. SkDocument based SkCanvas and other SkCanvas subclasses reference SkBaseDevice describing the destination. SkCanvas can be constructed to draw to SkBitmap without first creating raster surface. This approach may be deprecated in the future. 119089
SkCanvasVirtualEnforcer.h 2846
SkCapabilities.h 900
SkClipOp.h 344
SkColor.h \file SkColor.h Types, consts, functions, and macros for colors. 16382
SkColorFilter.h ColorFilters are optional objects in the drawing pipeline. When present in a paint, they are called with the "src" colors, and return new colors, which are then passed onto the next stage (either ImageFilter or Xfermode). All subclasses are required to be reentrant-safe : it must be legal to share the same instance between several threads. 5021
SkColorPriv.h Turn 0..255 into 0..256 by adding 1 at the half-way point. Used to turn a byte into a scale value, so that we can say scale * value >> 8 instead of alpha * value / 255. In debugging, asserts that alpha is 0..255 5612
SkColorSpace.h Describes a color gamut with primaries and a white point. 8128
SkColorType.h \enum SkColorType Describes how pixel bits encode color. A pixel may be an alpha mask, a grayscale, RGB, or ARGB. kN32_SkColorType selects the native 32-bit ARGB format for the current configuration. This can lead to inconsistent results across platforms, so use with caution. 3341
SkContourMeasure.h Return the length of the contour. 4391
SkCoverageMode.h Describes geometric operations (ala SkRegion::Op) that can be applied to coverage bytes. These can be thought of as variants of porter-duff (SkBlendMode) modes, but only applied to the alpha channel. See SkMaskFilter for ways to use these when combining two different masks. 792
SkCubicMap.h Fast evaluation of a cubic ease-in / ease-out curve. This is defined as a parametric cubic curve inside the unit square. pt[0] is implicitly { 0, 0 } pt[3] is implicitly { 1, 1 } pts[1,2].X are inside the unit [0..1] 1071
SkData.h SkData holds an immutable data buffer. Not only is the data immutable, but the actual ptr that is returned (by data() or bytes()) is guaranteed to always be the same for the life of this instance. 6325
SkDataTable.h Like SkData, SkDataTable holds an immutable data buffer. The data buffer is organized into a table of entries, each with a length, so the entries are not required to all be the same size. 3825
SkDeferredDisplayList.h This class contains pre-processed gpu operations that can be replayed into an SkSurface via SkSurface::draw(SkDeferredDisplayList*). 3863
SkDeferredDisplayListRecorder.h This class is intended to be used as: Get an SkSurfaceCharacterization representing the intended gpu-backed destination SkSurface Create one of these (an SkDeferredDisplayListRecorder) on the stack Get the canvas and render into it Snap off and hold on to an SkDeferredDisplayList Once your app actually needs the pixels, call SkSurface::draw(SkDeferredDisplayList*) This class never accesses the GPU but performs all the cpu work it can. It is thread-safe (i.e., one can break a scene into tiles and perform their cpu-side work in parallel ahead of time). 4047
SkDocument.h SK_ScalarDefaultDPI is 72 dots per inch. 2595
SkDrawable.h Base-class for objects that draw into SkCanvas. The object has a generation ID, which is guaranteed to be unique across all drawables. To allow for clients of the drawable that may want to cache the results, the drawable must change its generation ID whenever its internal state changes such that it will draw differently. 7431
SkDrawLooper.h \class SkDrawLooper DEPRECATED: No longer supported in Skia. 4533
SkEncodedImageFormat.h 300
SkExecutor.h 1354
SkFlattenable.h \class SkFlattenable SkFlattenable is the base class for objects that need to be flattened into a data stream for either transport or as part of the key to the font cache. 3576
SkFont.h \class SkFont SkFont controls options applied when drawing and measuring text. 21512
SkFontArguments.h Represents a set of actual arguments for a font. 2768
SkFontMetrics.h \class SkFontMetrics The metrics of an SkFont. The metric values are consistent with the Skia y-down coordinate system. 6184
SkFontMgr.h The caller must call unref() on the returned object. Never returns NULL; will return an empty set if the name is not found. Passing nullptr as the parameter will return the default system family. Note that most systems don't have a default system family, so passing nullptr will often result in the empty set. It is possible that this will return a style set not accessible from createStyleSet(int) due to hidden or auto-activated fonts. 6333
SkFontParameters.h 1534
SkFontStyle.h 2488
SkFontTypes.h 782
SkGraphics.h Call this at process initialization time if your environment does not permit static global initializers that execute code. Init() is thread-safe and idempotent. 6356
SkICC.h 286
SkImage.h \class SkImage SkImage describes a two dimensional array of pixels to draw. The pixels may be decoded in a raster bitmap, encoded in a SkPicture or compressed data stream, or located in GPU memory as a GPU texture. SkImage cannot be modified after it is created. SkImage may allocate additional storage as needed; for instance, an encoded SkImage may decode when drawn. SkImage width and height are greater than zero. Creating an SkImage with zero width or height returns SkImage equal to nullptr. SkImage may be created from SkBitmap, SkPixmap, SkSurface, SkPicture, encoded streams, GPU texture, YUV_ColorSpace data, or hardware buffer. Encoded streams supported include BMP, GIF, HEIF, ICO, JPEG, PNG, WBMP, WebP. Supported encoding details vary with platform. 81886
SkImageEncoder.h Encode SkPixmap in the given binary image format. @param dst results are written to this stream. @param src source pixels. @param format image format, not all formats are supported. @param quality range from 0-100, this is supported by jpeg and webp. higher values correspond to improved visual quality, but less compression. @return false iff input is bad or format is unsupported. Will always return false if Skia is compiled without image encoders. For SkEncodedImageFormat::kWEBP, if quality is 100, it will use lossless compression. Otherwise it will use lossy. For examples of encoding an image to a file or to a block of memory, see tools/ToolUtils.h. 2360
SkImageFilter.h Base class for image filters. If one is installed in the paint, then all drawing occurs as usual, but it is as if the drawing happened into an offscreen (before the xfermode is applied). This offscreen bitmap will then be handed to the imagefilter, who in turn creates a new bitmap which is what will finally be drawn to the device (using the original xfermode). The local space of image filters matches the local space of the drawn geometry. For instance if there is rotation on the canvas, the blur will be computed along those rotated axes and not in the device space. In order to achieve this result, the actual drawing of the geometry may happen in an unrotated coordinate system so that the filtered image can be computed more easily, and then it will be post transformed to match what would have been produced if the geometry were drawn with the total canvas matrix to begin with. 4692
SkImageGenerator.h The PixelRef which takes ownership of this SkImageGenerator will call the image generator's destructor. 9777
SkImageInfo.h Returns the number of bytes required to store a pixel, including unused padding. Returns zero if ct is kUnknown_SkColorType or invalid. @return bytes per pixel 24235
SkM44.h 14761
SkMallocPixelRef.h We explicitly use the same allocator for our pixels that SkMask does, so that we can freely assign memory allocated by one class to the other. 1442
SkMaskFilter.h \class SkMaskFilter SkMaskFilter is the base class for object that perform transformations on the mask before drawing it. An example subclass is Blur. 1639
SkMatrix.h When we transform points through a matrix containing perspective (the bottom row is something other than 0,0,1), the bruteforce math can produce confusing results (since we might divide by 0, or a negative w value). By default, methods that map rects and paths will apply perspective clipping, but this can be changed by specifying kYes to those methods. 73495
SkMesh.h A specification for custom meshes. Specifies the vertex buffer attributes and stride, the vertex program that produces a user-defined set of varyings, and a fragment program that ingests the interpolated varyings and produces local coordinates for shading and optionally a color. The varyings must include a float2 named "position". If the passed varyings does not contain such a varying then one is implicitly added to the final specification and the SkSL Varyings struct described below. It is an error to have a varying named "position" that has a type other than float2. The provided attributes and varyings are used to create Attributes and Varyings structs in SkSL that are used by the shaders. Each attribute from the Attribute span becomes a member of the SkSL Attributes struct and likewise for the varyings. The signature of the vertex program must be: Varyings main(const Attributes). The signature of the fragment program must be either: float2 main(const Varyings) or float2 main(const Varyings, out (half4|float4) color) where the return value is the local coordinates that will be used to access SkShader. If the color variant is used, the returned color will be blended with SkPaint's SkShader (or SkPaint color in absence of a SkShader) using the SkBlender passed to SkCanvas drawMesh(). To use interpolated local space positions as the shader coordinates, equivalent to how SkPaths are shaded, return the position field from the Varying struct as the coordinates. The vertex and fragment programs may both contain uniforms. Uniforms with the same name are assumed to be shared between stages. It is an error to specify uniforms in the vertex and fragment program with the same name but different types, dimensionality, or layouts. 18134
SkMilestone.h 197
SkOpenTypeSVGDecoder.h Each instance probably owns an SVG DOM. The instance may be cached so needs to report how much memory it retains. 809
SkOverdrawCanvas.h Captures all drawing commands. Rather than draw the actual content, this device increments the alpha channel of each pixel every time it would have been touched by a draw call. This is useful for detecting overdraw. 3260
SkPaint.h \class SkPaint SkPaint controls options applied when drawing. SkPaint collects all options outside of the SkCanvas clip and SkCanvas matrix. Various options apply to strokes and fills, and images. SkPaint collects effects and filters that describe single-pass and multiple-pass algorithms that alter the drawing geometry, color, and transparency. For instance, SkPaint does not directly implement dashing or blur, but contains the objects that do so. 25920
SkPath.h \class SkPath SkPath contain geometry. SkPath may be empty, or contain one or more verbs that outline a figure. SkPath always starts with a move verb to a Cartesian coordinate, and may be followed by additional verbs that add lines or curves. Adding a close verb makes the geometry into a continuous loop, a closed contour. SkPath may contain any number of contours, each beginning with a move verb. SkPath contours may contain only a move verb, or may also contain lines, quadratic beziers, conics, and cubic beziers. SkPath contours may be open or closed. When used to draw a filled area, SkPath describes whether the fill is inside or outside the geometry. SkPath also describes the winding rule used to fill overlapping contours. Internally, SkPath lazily computes metrics likes bounds and convexity. Call SkPath::updateBoundsCache to make SkPath thread safe. 78796
SkPathBuilder.h Appends arc to the builder. Arc added is part of ellipse bounded by oval, from startAngle through sweepAngle. Both startAngle and sweepAngle are measured in degrees, where zero degrees is aligned with the positive x-axis, and positive sweeps extends arc clockwise. arcTo() adds line connecting the builder's last point to initial arc point if forceMoveTo is false and the builder is not empty. Otherwise, added contour begins with first point of arc. Angles greater than -360 and less than 360 are treated modulo 360. @param oval bounds of ellipse containing arc @param startAngleDeg starting angle of arc in degrees @param sweepAngleDeg sweep, in degrees. Positive is clockwise; treated modulo 360 @param forceMoveTo true to start a new contour with arc @return reference to the builder 11420
SkPathEffect.h \class SkPathEffect SkPathEffect is the base class for objects in the SkPaint that affect the geometry of a drawing primitive before it is transformed by the canvas' matrix and drawn. Dashing is implemented as a subclass of SkPathEffect. 3831
SkPathMeasure.h Initialize the pathmeasure with the specified path. The parts of the path that are needed are copied, so the client is free to modify/delete the path after this call. resScale controls the precision of the measure. values > 1 increase the precision (and possibly slow down the computation). 3212
SkPathTypes.h Specifies that "inside" is computed by a non-zero sum of signed edge crossings 1725
SkPathUtils.h Returns the filled equivalent of the stroked path. @param src SkPath read to create a filled version @param paint SkPaint, from which attributes such as stroke cap, width, miter, and join, as well as pathEffect will be used. @param dst resulting SkPath; may be the same as src, but may not be nullptr @param cullRect optional limit passed to SkPathEffect @param resScale if > 1, increase precision, else if (0 < resScale < 1) reduce precision to favor speed and size @return true if the dst path was updated, false if it was not (e.g. if the path represents hairline and cannot be filled). 1488
SkPicture.h \class SkPicture SkPicture records drawing commands made to SkCanvas. The command stream may be played in whole or in part at a later time. SkPicture is an abstract class. SkPicture may be generated by SkPictureRecorder or SkDrawable, or from SkPicture previously saved to SkData or SkStream. SkPicture may contain any SkCanvas drawing command, as well as one or more SkCanvas matrix or SkCanvas clip. SkPicture has a cull SkRect, which is used as a bounding box hint. To limit SkPicture bounds, use SkCanvas clip when recording or drawing SkPicture. 11708
SkPictureRecorder.h Returns the canvas that records the drawing commands. @param bounds the cull rect used when recording this picture. Any drawing the falls outside of this rect is undefined, and may be drawn or it may not. @param bbh optional acceleration structure @param recordFlags optional flags that control recording. @return the canvas. 4304
SkPixelRef.h \class SkPixelRef This class is the smart container for pixel memory, and is used with SkBitmap. This class can be shared/accessed between multiple threads. 4452
SkPixmap.h \class SkPixmap SkPixmap provides a utility to pair SkImageInfo with pixels and row bytes. SkPixmap is a low level class which provides convenience functions to access raster destinations. SkCanvas can not draw SkPixmap, nor does SkPixmap provide a direct drawing destination. Use SkBitmap to draw pixels referenced by SkPixmap; use SkSurface to draw into pixels referenced by SkPixmap. SkPixmap does not try to manage the lifetime of the pixel memory. Use SkPixelRef to manage pixel memory; SkPixelRef is safe across threads. 32878
SkPoint.h SkIVector provides an alternative name for SkIPoint. SkIVector and SkIPoint can be used interchangeably for all purposes. 17160
SkPoint3.h Returns the Euclidian distance from (0,0,0) to (x,y,z) 4246
SkPromiseImageTexture.h This type is used to fulfill textures for PromiseImages. Once an instance is returned from a PromiseImageTextureFulfillProc the GrBackendTexture it wraps must remain valid until the corresponding PromiseImageTextureReleaseProc is called. 1576
SkRasterHandleAllocator.h If a client wants to control the allocation of raster layers in a canvas, it should subclass SkRasterHandleAllocator. This allocator performs two tasks: 1. controls how the memory for the pixels is allocated 2. associates a "handle" to a private object that can track the matrix/clip of the SkCanvas This example allocates a canvas, and defers to the allocator to create the base layer. std::unique_ptr<SkCanvas> canvas = SkRasterHandleAllocator::MakeCanvas( SkImageInfo::Make(...), std::make_unique<MySubclassRasterHandleAllocator>(...), nullptr); If you have already allocated the base layer (and its handle, release-proc etc.) then you can pass those in using the last parameter to MakeCanvas(). Regardless of how the base layer is allocated, each time canvas->saveLayer() is called, your allocator's allocHandle() will be called. 3915
SkRect.h \struct SkIRect SkIRect holds four 32-bit integer coordinates describing the upper and lower bounds of a rectangle. SkIRect may be created from outer bounds or from position, width, and height. SkIRect describes an area; if its right is less than or equal to its left, or if its bottom is less than or equal to its top, it is considered empty. 51091
SkRefCnt.h \class SkRefCntBase SkRefCntBase is the base class for objects that may be shared by multiple objects. When an existing owner wants to share a reference, it calls ref(). When an owner wants to release its reference, it calls unref(). When the shared object's reference count goes to zero as the result of an unref() call, its (virtual) destructor is called. It is an error for the destructor to be called explicitly (or via the object going out of scope on the stack or calling delete) if getRefCnt() > 1. 13424
SkRegion.h \class SkRegion SkRegion describes the set of pixels used to clip SkCanvas. SkRegion is compact, efficiently storing a single integer rectangle, or a run length encoded array of rectangles. SkRegion may reduce the current SkCanvas clip, or may be drawn as one or more integer rectangles. SkRegion iterator returns the scan lines or rectangles contained by it, optionally intersecting a bounding rectangle. 23472
SkRRect.h \class SkRRect SkRRect describes a rounded rectangle with a bounds and a pair of radii for each corner. The bounds and radii can be set so that SkRRect describes: a rectangle with sharp corners; a circle; an oval; or a rectangle with one or more rounded corners. SkRRect allows implementing CSS properties that describe rounded corners. SkRRect may have up to eight different radii, one for each axis on each of its four corners. SkRRect may modify the provided parameters when initializing bounds and radii. If either axis radii is zero or less: radii are stored as zero; corner is square. If corner curves overlap, radii are proportionally reduced to fit within bounds. 20410
SkRSXform.h A compressed form of a rotation+scale matrix. [ fSCos -fSSin fTx ] [ fSSin fSCos fTy ] [ 0 0 1 ] 1919
SkSamplingOptions.h Specify B and C (each between 0...1) to create a shader that applies the corresponding cubic reconstruction filter to the image. Example values: B = 1/3, C = 1/3 "Mitchell" filter B = 0, C = 1/2 "Catmull-Rom" filter See "Reconstruction Filters in Computer Graphics" Don P. Mitchell Arun N. Netravali 1988 https://www.cs.utexas.edu/~fussell/courses/cs384g-fall2013/lectures/mitchell/Mitchell.pdf Desmos worksheet https://www.desmos.com/calculator/aghdpicrvr Nice overview https://entropymine.com/imageworsener/bicubic/ 3362
SkScalar.h Returns true if x is not NaN and not infinite 6177
SkSerialProcs.h A serial-proc is asked to serialize the specified object (e.g. picture or image). If a data object is returned, it will be used (even if it is zero-length). If null is returned, then Skia will take its default action. The default action for pictures is to use Skia's internal format. The default action for images is to encode either in its native format or PNG. The default action for typefaces is to use Skia's internal format. 2683
SkShader.h \class SkShader Shaders specify the source color(s) for what is being drawn. If a paint has no shader, then the paint's color is used. If the paint has a shader, then the shader's color(s) are use instead, but they are modulated by the paint's alpha. This makes it easy to create a shader once (e.g. bitmap tiling or gradient) and then change its transparency w/o having to modify the original shader... only the paint's alpha needs to be modified. 3081
SkSize.h Returns true iff fWidth == 0 && fHeight == 0 2818
SkSpan.h 489
SkStream.h SkStream -- abstraction for a source of bytes. Subclasses can be backed by memory, or a file, or something else. NOTE: Classic "streams" APIs are sort of async, in that on a request for N bytes, they may return fewer than N bytes on a given call, in which case the caller can "try again" to get more bytes, eventually (modulo an error) receiving their total N bytes. Skia streams behave differently. They are effectively synchronous, and will always return all N bytes of the request if possible. If they return fewer (the read() call returns the number of bytes read) then that means there is no more data (at EOF or hit an error). The caller should *not* call again in hopes of fulfilling more of the request. 18001
SkString.h Some helper functions for C strings 11501
SkStrokeRec.h Specify the strokewidth, and optionally if you want stroke + fill. Note, if width==0, then this request is taken to mean: strokeAndFill==true -> new style will be Fill strokeAndFill==false -> new style will be Hairline 4779
SkSurface.h \class SkSurface SkSurface is responsible for managing the pixels that a canvas draws into. The pixels can be allocated either in CPU memory (a raster surface) or on the GPU (a GrRenderTarget surface). SkSurface takes care of allocating a SkCanvas that will draw into the surface. Call surface->getCanvas() to use that canvas (but don't delete it, it is owned by the surface). SkSurface always has non-zero dimensions. If there is a request for a new surface, and either of the requested dimensions are zero, then nullptr will be returned. 61615
SkSurfaceCharacterization.h \class SkSurfaceCharacterization A surface characterization contains all the information Ganesh requires to makes its internal rendering decisions. When passed into a SkDeferredDisplayListRecorder it will copy the data and pass it on to the SkDeferredDisplayList if/when it is created. Note that both of those objects (the Recorder and the DisplayList) will take a ref on the GrContextThreadSafeProxy and SkColorSpace objects. 11006
SkSurfaceProps.h Description of how the LCD strips are arranged for each pixel. If this is unknown, or the pixels are meant to be "portable" and/or transformed before showing (e.g. rotated, scaled) then use kUnknown_SkPixelGeometry. 2999
SkSwizzle.h Swizzles byte order of |count| 32-bit pixels, swapping R and B. (RGBA <-> BGRA) 402
SkTextBlob.h \class SkTextBlob SkTextBlob combines multiple text runs into an immutable container. Each text run consists of glyphs, SkPaint, and position. Only parts of SkPaint related to fonts and text rendering are used by run. 22119
SkTextureCompressionType.h Skia | GL_COMPRESSED_* | MTLPixelFormat* | VK_FORMAT_*_BLOCK -------------------------------------------------------------------------------------- kETC2_RGB8_UNORM | ETC1_RGB8 | ETC2_RGB8 (iOS-only) | ETC2_R8G8B8_UNORM | RGB8_ETC2 | | -------------------------------------------------------------------------------------- kBC1_RGB8_UNORM | RGB_S3TC_DXT1_EXT | N/A | BC1_RGB_UNORM -------------------------------------------------------------------------------------- kBC1_RGBA8_UNORM | RGBA_S3TC_DXT1_EXT | BC1_RGBA (macOS-only)| BC1_RGBA_UNORM 1122
SkTileMode.h Replicate the edge color if the shader draws outside of its original bounds. 886
SkTime.h \class SkTime Platform-implemented utilities to return time of day, and millisecond counter. 1753
SkTraceMemoryDump.h Interface for memory tracing. This interface is meant to be passed as argument to the memory dump methods of Skia objects. The implementation of this interface is provided by the embedder. 3836
SkTypeface.h Machine endian. 20560
SkTypes.h SK_PMCOLOR_BYTE_ORDER can be used to query the byte order of SkPMColor at compile time. 5263
SkUnPreMultiply.h Usage: const Scale* table = SkUnPreMultiply::GetScaleTable(); for (...) { unsigned a = ... SkUnPreMultiply::Scale scale = table[a]; red = SkUnPreMultiply::ApplyScale(scale, red); ... // now red is unpremultiplied } 1146
SkVertices.h An immutable set of vertex data that can be used with SkCanvas::drawVertices. 4417
SkYUVAInfo.h Specifies the structure of planes for a YUV image with optional alpha. The actual planar data is not part of this structure and depending on usage is in external textures or pixmaps. 11986
SkYUVAPixmaps.h SkYUVAInfo combined with per-plane SkColorTypes and row bytes. Fully specifies the SkPixmaps for a YUVA image without the actual pixel memory and data. 13759