blob: 2c5d965bb0262ab804cce97350d6ee4122257c67 [file] [log] [blame]
Cary Clark8032b982017-07-28 11:04:54 -04001# external references that will be documented eventually ...
2#External
Cary Clark61ca7c52018-01-02 11:34:14 -05003 DirectWrite TrueType Windows Linux Android iOS __ANDROID_API__ AHardwareBuffer
Cary Clark682c58d2018-05-16 07:07:07 -04004 FreeType FreeType-based Harfbuzz
Cary Clark77b3f3a2018-11-07 14:59:03 -05005 LCD RGB sRGB BGR RGBA ARGB YUV YUVA HSV SDTV HDTV
Cary Clark8032b982017-07-28 11:04:54 -04006 Unicode Unicode5 UTF-8 UTF-16 UTF-32 ASCII Unichar
Cary Clark8032b982017-07-28 11:04:54 -04007 API
Cary Clark61ca7c52018-01-02 11:34:14 -05008 BMP GIF HEIF ICO JPEG PNG WBMP WebP
Cary Clark5538c132018-06-14 12:28:14 -04009 CPU
Cary Clark09d80c02018-10-31 12:14:03 -040010 GPU GPU-backed OpenGL Vulkan VkDevice I/O MSAA
Cary Clarkbc5697d2017-10-04 14:31:33 -040011 PDF XPS
Cary Clark8032b982017-07-28 11:04:54 -040012 RFC
Cary Clarkbc5697d2017-10-04 14:31:33 -040013 NaN NaNs
Cary Clark77b3f3a2018-11-07 14:59:03 -050014 bool U16CPU int int8_t int16_t int32_t int64_t uint8_t uint16_t uint32_t uint64_t size_t
Cary Clark09d80c02018-10-31 12:14:03 -040015 nullptr
16 malloc() calloc() assert() std::move()
Cary Clark77b3f3a2018-11-07 14:59:03 -050017 C C++ SIZE_MAX C_FILE FILE
Cary Clark682c58d2018-05-16 07:07:07 -040018 CSS HTML
Cary Clark77b3f3a2018-11-07 14:59:03 -050019 affine destructor multitexturing representable subclasses descender descenders grayscale kerning
20 unhinted
21
22 Sa Da Sc Dc 0xAARRGGBB # temporary until figure out what to do
Cary Clark224c7002018-06-27 11:00:21 -040023
Cary Clark77b3f3a2018-11-07 14:59:03 -050024 SkUserConfig.h # not external, but still thinking about how markup refers to this
Cary Clarkbad5ad72017-08-03 17:14:08 -040025 SkXXX.h # ditto
Cary Clarkd0530ba2017-09-14 11:25:39 -040026 SkXXX_Reference # ditto
Cary Clark8032b982017-07-28 11:04:54 -040027 Skia # ditto
Cary Clarkbc5697d2017-10-04 14:31:33 -040028 SK_ABORT # ditto
29 SK_API # ditto
Cary Clarkd0530ba2017-09-14 11:25:39 -040030 SK_DEBUG # ditto
31 SK_RELEASE # ditto
Cary Clark8032b982017-07-28 11:04:54 -040032 SK_USE_FREETYPE_EMBOLDEN # ditto
Cary Clark8032b982017-07-28 11:04:54 -040033 SK_BUILD_FOR_ANDROID_FRAMEWORK # ditto
Cary Clarkac47b882018-01-11 10:35:44 -050034 SK_BUILD_FOR_MAC # ditto
35 SK_BUILD_FOR_IOS # ditto
Cary Clarka560c472017-11-27 10:44:06 -050036 SK_SUPPORT_GPU # ditto
Cary Clarkac47b882018-01-11 10:35:44 -050037 SK_HAS_JPEG_LIBRARY # ditto
38 SK_HAS_PNG_LIBRARY # ditto
39 SK_HAS_WEBP_LIBRARY # ditto
Cary Clark2d4bf5f2018-04-16 08:37:38 -040040 SK_IGNORE_GPU_DITHER # ditto
Cary Clark06c20f32018-03-20 15:53:27 -040041 SK_PMCOLOR_BYTE_ORDER # ditto
Cary Clark8032b982017-07-28 11:04:54 -040042
43# FreeType related
44FT_LOAD_TARGET_LIGHT
45FT_LOAD_TARGET_NORMAL
46FT_LOAD_TARGET_LCD
47FT_LOAD_TARGET_LCD_V
48FT_LOAD_NO_HINTING
49FT_Load_Glyph
50
51#External ##
52
Ruiqi Maoc97a3392018-08-15 10:44:19 -040053# this jargon requires a substitute to space the phrase.
54#Topic Little_Endian
Cary Clark5538c132018-06-14 12:28:14 -040055#Substitute little endian
56##
57
58#Topic Big_Endian
59#Substitute big endian
60##
61
Ruiqi Maoc97a3392018-08-15 10:44:19 -040062#Topic YUV_Component_Y
Cary Clark5538c132018-06-14 12:28:14 -040063#Substitute YUV component y
64##
65
Ruiqi Maoc97a3392018-08-15 10:44:19 -040066#Topic YUV_Component_U
Cary Clark5538c132018-06-14 12:28:14 -040067#Substitute YUV component u
68##
69
70#Topic YUV_Component_V
71#Substitute YUV component v
72##
73
74#Topic UV_Mapping
75#Substitute UV mapping
76##
77
Ruiqi Maoc97a3392018-08-15 10:44:19 -040078#Topic Multi_Sample_Anti_Aliasing
Cary Clark5538c132018-06-14 12:28:14 -040079#Substitute multi-sample anti-aliasing
80##
81
82#Topic GPU_Share_Group
83#Substitute GPU share group
84##
85
Ruiqi Maoc97a3392018-08-15 10:44:19 -040086#Topic Bezier_Curve
Cary Clark5538c132018-06-14 12:28:14 -040087#Substitute Bezier cruve
88##
89
Ruiqi Maoc97a3392018-08-15 10:44:19 -040090#Topic Coons_Patch
Cary Clark5538c132018-06-14 12:28:14 -040091#Substitute Coons patch
92##
93
Ruiqi Maoc97a3392018-08-15 10:44:19 -040094#Topic Cartesian_Coordinate
Cary Clark5538c132018-06-14 12:28:14 -040095#Substitute Cartesian coordinate
96##
97
Ruiqi Maoc97a3392018-08-15 10:44:19 -040098#Topic Euclidean_Distance
Cary Clark5538c132018-06-14 12:28:14 -040099#Substitute Euclidean distance
100##
101
Ruiqi Maoc97a3392018-08-15 10:44:19 -0400102#Topic Euclidean_Space
Cary Clark5538c132018-06-14 12:28:14 -0400103#Substitute Euclidean space
104##
105
Ruiqi Maoc97a3392018-08-15 10:44:19 -0400106#Topic HTML_Gray
Cary Clark5538c132018-06-14 12:28:14 -0400107#Substitute HTML gray
108##
109
Ruiqi Maoc97a3392018-08-15 10:44:19 -0400110#Topic HTML_Silver
Cary Clark5538c132018-06-14 12:28:14 -0400111#Substitute HTML silver
112##
113
Ruiqi Maoc97a3392018-08-15 10:44:19 -0400114#Topic HTML_Lime
Cary Clark5538c132018-06-14 12:28:14 -0400115#Substitute HTML lime
116##
117
Ruiqi Maoc97a3392018-08-15 10:44:19 -0400118#Topic HTML_Green
Cary Clark5538c132018-06-14 12:28:14 -0400119#Substitute HTML green
120##
121
Ruiqi Maoc97a3392018-08-15 10:44:19 -0400122#Topic HTML_Aqua
Cary Clark5538c132018-06-14 12:28:14 -0400123#Substitute HTML aqua
124##
125
126#Topic HTML_Fuchsia
127#Substitute HTML fuchsia
128##
129
Ruiqi Maoc97a3392018-08-15 10:44:19 -0400130#Topic SVG_lightgray
Cary Clark5538c132018-06-14 12:28:14 -0400131#Substitute SVG light gray
132##
133
134#Topic SVG_darkgray
135#Substitute SVG dark gray
136##
137
138# start of topics to be documented in the future
139
Cary Clarkce101242017-09-01 15:51:02 -0400140#Topic Alias
Cary Clark137b8742018-05-30 09:21:49 -0400141#Alias Aliased ##
142#Alias Aliasing ##
Cary Clarkce101242017-09-01 15:51:02 -0400143##
144
Cary Clark8032b982017-07-28 11:04:54 -0400145#Topic Arc
Cary Clark137b8742018-05-30 09:21:49 -0400146#Alias Arcs ##
Cary Clark8032b982017-07-28 11:04:54 -0400147#Topic ##
148
Cary Clarka560c472017-11-27 10:44:06 -0500149#Topic Backend_Semaphore
Cary Clark137b8742018-05-30 09:21:49 -0400150#Alias Backend_Semaphores ##
Cary Clarka560c472017-11-27 10:44:06 -0500151#Class GrBackendSemaphore
Cary Clarka560c472017-11-27 10:44:06 -0500152##
153##
154
Cary Clark8032b982017-07-28 11:04:54 -0400155#Topic BBH_Factory
156#Class SkBBHFactory
157##
158##
159
Cary Clark8032b982017-07-28 11:04:54 -0400160
161#Topic Circle
Cary Clark137b8742018-05-30 09:21:49 -0400162#Alias Circles ##
Cary Clark8032b982017-07-28 11:04:54 -0400163#Topic ##
164
165#Topic Clip_Op
166#EnumClass SkClipOp
167 #Const kDifference 0
168 ##
169 #Const kIntersect 1
170 ##
171##
172##
173
Cary Clark8032b982017-07-28 11:04:54 -0400174#Topic Color_Filter
175#Class SkColorFilter
176#Class ##
Cary Clark682c58d2018-05-16 07:07:07 -0400177##
Cary Clark8032b982017-07-28 11:04:54 -0400178
179#Topic Color_Space
Cary Clarkd0530ba2017-09-14 11:25:39 -0400180#Class SkColorSpace
181 #Method static sk_sp<SkColorSpace> MakeSRGBLinear()
182 ##
Cary Clark681287e2018-03-16 11:34:15 -0400183 #Method bool gammaCloseToSRGB() const
184 ##
Cary Clark06c20f32018-03-20 15:53:27 -0400185 #Method static bool Equals(const SkColorSpace* src, const SkColorSpace* dst)
186 ##
Cary Clarkd0530ba2017-09-14 11:25:39 -0400187##
Cary Clark8032b982017-07-28 11:04:54 -0400188##
189
Cary Clark2ade9972017-11-02 17:49:34 -0400190#Topic Create_Color_Space_Xform_Canvas
191#Method std::unique_ptr<SkCanvas> SK_API SkCreateColorSpaceXformCanvas(SkCanvas* target,
192 sk_sp<SkColorSpace> targetCS)
193##
194##
195
Cary Clarkce101242017-09-01 15:51:02 -0400196#Topic Core_Graphics
197#Substitute Core Graphics
198##
199
200#Topic Core_Text
201#Substitute Core Text
202##
203
Cary Clark8032b982017-07-28 11:04:54 -0400204#Topic Curve
Cary Clark137b8742018-05-30 09:21:49 -0400205#Alias Curves ##
Cary Clark8032b982017-07-28 11:04:54 -0400206##
207
208#Topic Data
Cary Clarka560c472017-11-27 10:44:06 -0500209#Class SkData
210##
Cary Clark8032b982017-07-28 11:04:54 -0400211##
212
Cary Clark94732662018-03-12 08:09:48 -0400213#Topic Debug_Canvas
214#Class SkDebugCanvas
215##
216##
217
Cary Clark7fc1d122017-10-09 14:07:42 -0400218#Topic Debugging
219#Method SK_API void SkDebugf(const char format[], ...)
220##
221##
222
Cary Clarka560c472017-11-27 10:44:06 -0500223#Topic Deferred_Display_List
224#Class SkDeferredDisplayList
225##
226#Subtopic Recorder
227#Class SkDeferredDisplayListRecorder
228##
229##
230##
231
Cary Clark224c7002018-06-27 11:00:21 -0400232#Topic Deserial_Procs
233#Struct SkDeserialProcs
Cary Clark09d80c02018-10-31 12:14:03 -0400234#Member SkDeserialPictureProc fPictureProc
235##
236#Member void* fPictureCtx
237##
238#Member SkDeserialTypefaceProc fTypefaceProc
239##
240#Member void* fTypefaceCtx
241##
Cary Clark224c7002018-06-27 11:00:21 -0400242##
243##
244
Cary Clark8032b982017-07-28 11:04:54 -0400245#Topic Device
246#Class SkBaseDevice
247##
Cary Clark682c58d2018-05-16 07:07:07 -0400248##
Cary Clark8032b982017-07-28 11:04:54 -0400249
250#Topic Document
251#Class SkDocument
252 #Method SkCanvas* beginPage(SkScalar width, SkScalar height,
253 const SkRect* content = NULL)
254 ##
255##
256#Subtopic PDF
257##
258##
259
Cary Clarkce101242017-09-01 15:51:02 -0400260#Topic Draw_Layer
261##
262
Cary Clark8032b982017-07-28 11:04:54 -0400263#Topic Draw_Looper
264#Class SkDrawLooper
265#Class ##
Cary Clark682c58d2018-05-16 07:07:07 -0400266##
Cary Clark8032b982017-07-28 11:04:54 -0400267
268#Topic Drawable
269#Class SkDrawable
270 #Method void draw(SkCanvas*, const SkMatrix* = NULL)
271 ##
272##
273##
274
Cary Clark682c58d2018-05-16 07:07:07 -0400275# to be in topic Encoded_Image_Format
Cary Clarkac47b882018-01-11 10:35:44 -0500276#EnumClass SkEncodedImageFormat
277 #Const kUnknown 0
278 ##
279 #Const kBMP 1
280 ##
281 #Const kGIF 2
282 ##
283 #Const kICO 3
284 ##
285 #Const kJPEG 4
286 ##
287 #Const kPNG 5
288 ##
289 #Const kWBMP 6
290 ##
291 #Const kWEBP 7
292 ##
293 #Const kPKM 8
294 ##
295 #Const kKTX 9
296 ##
297 #Const kASTC 10
298 ##
299 #Const kDNG 11
300 ##
301 #Const kHEIF 12
302 ##
303##
Cary Clark682c58d2018-05-16 07:07:07 -0400304# end of topic Encoded_Image_Format
Cary Clarkac47b882018-01-11 10:35:44 -0500305
Cary Clark8032b982017-07-28 11:04:54 -0400306#Topic Filter_Quality
307#Enum SkFilterQuality
308 #Const kNone_SkFilterQuality 0
309 ##
310 #Const kLow_SkFilterQuality 1
311 ##
312 #Const kMedium_SkFilterQuality 2
313 ##
314 #Const kHigh_SkFilterQuality 3
315 ##
316#Enum ##
Cary Clarkd0530ba2017-09-14 11:25:39 -0400317#Subtopic Nearest_Neighbor
318#Substitute nearest neighbor filter
319##
320#Subtopic Bilerp
321#Substitute bilerp filter
322##
323#Subtopic MipMap
324#Substitute mip-map filter
325##
326#Subtopic BiCubic
327#Substitute bicubic filter
328##
Cary Clark8032b982017-07-28 11:04:54 -0400329#Topic ##
330
331#Topic Font
332#Subtopic Advance
333#Subtopic ##
334#Subtopic Engine
335##
Cary Clark14768f62018-10-29 20:33:51 -0400336#Enum SkTextEncoding
337#Const kUTF8_SkTextEncoding 0
338##
339#Const kUTF16_SkTextEncoding 1
340##
341#Const kUTF32_SkTextEncoding 2
342##
343#Const kGlyphID_SkTextEncoding 3
344##
345##
346#Class SkFont
347##
Cary Clark885f1072018-11-08 13:31:39 -0500348#EnumClass SkFontHinting
349#Const kNone 0
Cary Clark4a23bbf2018-11-08 16:00:33 -0500350#Line # glyph outlines unchanged ##
351 Leaves glyph outlines unchanged from their native representation.
352 With FreeType, this is equivalent to the FT_LOAD_NO_HINTING
353 bit-field constant supplied to FT_Load_Glyph, which indicates that the vector
354 outline being loaded should not be fitted to the pixel grid but simply scaled
355 to 26.6 fractional pixels.
Cary Clark11407e52018-11-05 21:26:13 -0500356##
Cary Clark885f1072018-11-08 13:31:39 -0500357#Const kSlight 1
Cary Clark4a23bbf2018-11-08 16:00:33 -0500358#Line # minimal modification to improve contrast ##
359 Modifies glyph outlines minimally to improve contrast.
360 With FreeType, this is equivalent in spirit to the
361 FT_LOAD_TARGET_LIGHT value supplied to FT_Load_Glyph. It chooses a
362 lighter hinting algorithm for non-monochrome modes.
363 Generated Glyphs may be fuzzy but better resemble their original shape.
Cary Clark11407e52018-11-05 21:26:13 -0500364##
Cary Clark885f1072018-11-08 13:31:39 -0500365#Const kNormal 2
Cary Clark4a23bbf2018-11-08 16:00:33 -0500366#Line # glyph outlines modified to improve contrast ##
367 Modifies glyph outlines to improve contrast. This is the default.
368 With FreeType, this supplies FT_LOAD_TARGET_NORMAL to FT_Load_Glyph,
369 choosing the default hinting algorithm, which is optimized for standard
370 gray-level rendering.
Cary Clark11407e52018-11-05 21:26:13 -0500371##
Cary Clark885f1072018-11-08 13:31:39 -0500372#Const kFull 3
Cary Clark4a23bbf2018-11-08 16:00:33 -0500373#Line # modifies glyph outlines for maximum contrast ##
374 Modifies glyph outlines for maximum contrast. With FreeType, this selects
375 FT_LOAD_TARGET_LCD or FT_LOAD_TARGET_LCD_V if kLCDRenderText_Flag is set.
376 FT_LOAD_TARGET_LCD is a variant of FT_LOAD_TARGET_NORMAL optimized for
377 horizontally decimated LCD displays; FT_LOAD_TARGET_LCD_V is a
378 variant of FT_LOAD_TARGET_NORMAL optimized for vertically decimated LCD displays.
Cary Clark11407e52018-11-05 21:26:13 -0500379##
380##
Cary Clark7e69c8f2018-11-06 20:40:45 -0500381#Struct SkFontMetrics
382#Line # values computed by Font_Manager using Typeface ##
383
384 SkFontMetrics is filled out by SkPaint::getFontMetrics. SkFontMetrics contents
385 reflect the values
386 computed by Font_Manager using Typeface. Values are set to zero if they are
387 not available.
388
389 All vertical values are relative to the baseline, on a y-axis pointing down.
390 Zero is on the baseline, negative values are above the baseline, and positive
391 values are below the baseline.
392
393 fUnderlineThickness and fUnderlinePosition have a bit set in fFlags if their values
394 are valid, since their value may be zero.
395
396 fStrikeoutThickness and fStrikeoutPosition have a bit set in fFlags if their values
397 are valid, since their value may be zero.
398
399 #Enum FontMetricsFlags
400 #Line # valid Font_Metrics ##
401
402 FontMetricsFlags are set in fFlags when underline and strikeout metrics are valid;
403 the underline or strikeout metric may be valid and zero.
404 Fonts with embedded bitmaps may not have valid underline or strikeout metrics.
405
406 #Const kUnderlineThicknessIsValid_Flag 0x0001
407 #Line # set if fUnderlineThickness is valid ##
408 ##
409 #Const kUnderlinePositionIsValid_Flag 0x0002
410 #Line # set if fUnderlinePosition is valid ##
411 ##
412 #Const kStrikeoutThicknessIsValid_Flag 0x0004
413 #Line # set if fStrikeoutThickness is valid ##
414 ##
415 #Const kStrikeoutPositionIsValid_Flag 0x0008
416 #Line # set if fStrikeoutPosition is valid ##
417 ##
418
419 #Enum ##
420
421 #Member uint32_t fFlags
422 #Line # is set to FontMetricsFlags when metrics are valid ##
423 ##
424
425 #Member SkScalar fTop
426 #Line # extent above baseline ##
427 Greatest extent above the baseline for any glyph.
428 Typically less than zero.
429 ##
430
431 #Member SkScalar fAscent
432 #Line # distance to reserve above baseline ##
433 Recommended distance above the baseline to reserve for a line of text.
434 Typically less than zero.
435 ##
436
437 #Member SkScalar fDescent
438 #Line # distance to reserve below baseline ##
439 Recommended distance below the baseline to reserve for a line of text.
440 Typically greater than zero.
441 ##
442
443 #Member SkScalar fBottom
444 #Line # extent below baseline ##
445 Greatest extent below the baseline for any glyph.
446 Typically greater than zero.
447 ##
448
449 #Member SkScalar fLeading
450 #Line # distance to add between lines ##
451 Recommended distance to add between lines of text.
452 Typically greater than or equal to zero.
453 ##
454
455 #Member SkScalar fAvgCharWidth
456 #Line # average character width ##
457 Average character width, if it is available.
458 Zero if no average width is stored in the font.
459 ##
460
461 #Member SkScalar fMaxCharWidth
462 #Line # maximum character width ##
463 ##
464
465 #Member SkScalar fXMin
466 #Line # minimum x ##
467 Minimum bounding box x-axis value for all Glyphs.
468 Typically less than zero.
469 ##
470
471 #Member SkScalar fXMax
472 #Line # maximum x ##
473 Maximum bounding box x-axis value for all Glyphs.
474 Typically greater than zero.
475 ##
476
477 #Member SkScalar fXHeight
478 #Line # height of lower-case 'x' ##
479 May be zero if no lower-case height is stored in the font.
480 ##
481
482 #Member SkScalar fCapHeight
483 #Line # height of an upper-case letter ##
484 May be zero if no upper-case height is stored in the font.
485 ##
486
487 #Member SkScalar fUnderlineThickness
488 #Line # underline thickness ##
489 If the metric is valid, the kUnderlineThicknessIsValid_Flag is set in fFlags.
490 If kUnderlineThicknessIsValid_Flag is clear, fUnderlineThickness is zero.
491 ##
492
493 #Member SkScalar fUnderlinePosition
494 #Line # underline position relative to baseline ##
495 Position of the top of the underline stroke relative to the baseline.
496 Typically positive when valid.
497
498 If the metric is valid, the kUnderlinePositionIsValid_Flag is set in fFlags.
499 If kUnderlinePositionIsValid_Flag is clear, fUnderlinePosition is zero.
500 ##
501
502 #Member SkScalar fStrikeoutThickness
503 #Line # strikeout thickness ##
504
505 If the metric is valid, the kStrikeoutThicknessIsValid_Flag is set in fFlags.
506 If kStrikeoutThicknessIsValid_Flag is clear, fStrikeoutThickness is zero.
507 ##
508
509 #Member SkScalar fStrikeoutPosition
510 #Line # strikeout position relative to baseline ##
511 Position of the bottom of the strikeout stroke relative to the baseline.
512 Typically negative when valid.
513
514 If the metric is valid, the kStrikeoutPositionIsValid_Flag is set in fFlags.
515 If kStrikeoutPositionIsValid_Flag is clear, fStrikeoutPosition is zero.
516 ##
517
518 #Method bool hasUnderlineThickness(SkScalar* thickness) const
519 #Line # returns underline thickness if set ##
520
521#NoExample
522 ##
523 ##
524
525 #Method bool hasUnderlinePosition(SkScalar* position) const
526 #Line # returns underline position if set ##
527
528#NoExample
529 ##
530 ##
531
532 #Method bool hasStrikeoutThickness(SkScalar* thickness) const
533 #Line # returns strikeout thickness if set ##
534
535#NoExample
536 ##
537 ##
538
539 #Method bool hasStrikeoutPosition(SkScalar* position) const
540 #Line # returns strikeout position if set ##
541
542#NoExample
543 ##
544 ##
545
546#Struct ##
Cary Clark8032b982017-07-28 11:04:54 -0400547#Topic ##
548
549#Topic Font_Manager
550#Topic ##
551
552#Topic Glyph
Cary Clarkd2ca79c2018-08-10 13:09:13 -0400553#Subtopic ID
554##
Cary Clark137b8742018-05-30 09:21:49 -0400555#Alias Glyphs ##
Cary Clark8032b982017-07-28 11:04:54 -0400556##
557
Cary Clarkbad5ad72017-08-03 17:14:08 -0400558#Topic GPU_Context
559#Substitute GPU context
Cary Clark2ade9972017-11-02 17:49:34 -0400560#Class GrContext
Cary Clark77b3f3a2018-11-07 14:59:03 -0500561#Method void abandonContext()
562##
Cary Clark2ade9972017-11-02 17:49:34 -0400563#Method void flush()
564##
565##
Cary Clarkbad5ad72017-08-03 17:14:08 -0400566##
567
568#Topic GPU_Surface
569#Substitute GPU surface
570##
571
Cary Clark61ca7c52018-01-02 11:34:14 -0500572#Topic GPU_Texture
573#Substitute GPU texture
574##
575
Cary Clarkce101242017-09-01 15:51:02 -0400576#Topic HTML_Canvas
577 #Substitute HTML Canvas
578 #Subtopic ArcTo
579 #Substitute HTML Canvas arcTo
580 ##
581##
582
Cary Clark8032b982017-07-28 11:04:54 -0400583#Topic Image_Filter
Cary Clark8032b982017-07-28 11:04:54 -0400584#Class SkImageFilter
585#Class ##
586#Topic ##
587
Cary Clark682c58d2018-05-16 07:07:07 -0400588#Class SkImageGenerator
589##
590
Cary Clark8032b982017-07-28 11:04:54 -0400591#Topic Image_Scaling
592##
593
Cary Clark154beea2017-10-26 07:58:48 -0400594#Topic ISize
595#Struct SkISize
Cary Clark09d80c02018-10-31 12:14:03 -0400596#Method int32_t width() const
597##
598#Method int32_t height() const
599##
Cary Clark154beea2017-10-26 07:58:48 -0400600##
601##
602
Cary Clark682c58d2018-05-16 07:07:07 -0400603#Topic Left_Side_Bearing
Cary Clarkce101242017-09-01 15:51:02 -0400604##
605
Cary Clark8032b982017-07-28 11:04:54 -0400606#Topic Line
Cary Clark137b8742018-05-30 09:21:49 -0400607#Alias Lines ##
Cary Clark8032b982017-07-28 11:04:54 -0400608#Topic ##
609
Cary Clark682c58d2018-05-16 07:07:07 -0400610# to be in Topic Malloc_Pixel_Ref
Cary Clarkbc5697d2017-10-04 14:31:33 -0400611#Class SkMallocPixelRef
612 #Method static sk_sp<SkPixelRef> MakeZeroed(const SkImageInfo&, size_t rowBytes)
613 ##
614 #Method static sk_sp<SkPixelRef> MakeAllocate(const SkImageInfo&, size_t rowBytes)
615 ##
616##
Cary Clark682c58d2018-05-16 07:07:07 -0400617# end of Topic Malloc_Pixel_Ref
618
619#Struct SkMask
Cary Clarkbc5697d2017-10-04 14:31:33 -0400620##
621
Cary Clark8032b982017-07-28 11:04:54 -0400622#Topic Mask_Alpha
623#Topic ##
624
625#Topic Mask_Filter
626#Class SkMaskFilter
627#Class ##
628#Topic ##
629
Cary Clark682c58d2018-05-16 07:07:07 -0400630# to be in Topic Math
Cary Clark77b3f3a2018-11-07 14:59:03 -0500631 #Method Luminosity(dstColor)
632 # this permits using Luminosity() in documentation
Cary Clark09d80c02018-10-31 12:14:03 -0400633 ##
Cary Clark77b3f3a2018-11-07 14:59:03 -0500634 #Method Saturation(dstColor)
635 # this permits using Saturation() in documentation
636 ##
637 #Method SetLuminosity(srcSaturation, dstLuminosity)
638 # this permits using SetLuminosity() in documentation
639 ##
640 #Method SetSaturation(srcSaturation, dstSaturation)
641 # this permits using SetSaturation() in documentation
Cary Clarkd0530ba2017-09-14 11:25:39 -0400642 ##
Cary Clarkbc5697d2017-10-04 14:31:33 -0400643 #Method SkIntToScalar(x)
644 ##
645 #Method SkScalarRoundToInt(x)
646 ##
647 #Method SkScalarFloorToInt(x)
648 ##
649 #Method SkScalarCeilToInt(x)
650 ##
651 #Method SkScalarFloorToScalar(x)
652 ##
653 #Method SkScalarCeilToScalar(x)
654 ##
Cary Clark7fc1d122017-10-09 14:07:42 -0400655 #Method SkScalarIsFinite(x)
656 ##
657 #Method SkScalarIsNaN(x)
658 ##
659 #Method template <typename D, typename S> inline bool SkTFitsIn(S s)
660 ##
Cary Clark77b3f3a2018-11-07 14:59:03 -0500661 #Method float abs(float x)
662 # this permits using abs(x) in documentation
663 ##
664 #Method float max(float x)
665 # this permits using max(x) in documentation
666 ##
667 #Method float min(float x)
668 # this permits using max(x) in documentation
669 ##
670 #Method float sizeof(float x)
671 # this permits using sizeof(x) in documentation
672 ##
673 #Method float sqrt(float x)
674 # this permits using sqrt(x) in documentation
675 ##
676 #Method static inline bool sk_64_isS32(int64_t value)
677 ##
Cary Clark682c58d2018-05-16 07:07:07 -0400678# end of Topic Math
Cary Clarkd0530ba2017-09-14 11:25:39 -0400679
Cary Clark2ade9972017-11-02 17:49:34 -0400680#Topic Meta_Data
681#Class SkMetaData
682##
683##
684
Cary Clarkbc5697d2017-10-04 14:31:33 -0400685#Topic Mip_Map
Cary Clark5538c132018-06-14 12:28:14 -0400686#Substitute mip map
Cary Clarkbc5697d2017-10-04 14:31:33 -0400687##
Cary Clark8032b982017-07-28 11:04:54 -0400688
689#Topic Nine_Patch
690##
691
Cary Clark09d80c02018-10-31 12:14:03 -0400692# to be in Topic Number_Types ?
Cary Clarka560c472017-11-27 10:44:06 -0500693 #Typedef uint16_t SkGlyphID
Cary Clark8032b982017-07-28 11:04:54 -0400694 #Typedef ##
Cary Clark682c58d2018-05-16 07:07:07 -0400695 #Topic Scalar
Cary Clarkd2ca79c2018-08-10 13:09:13 -0400696 #Alias Scalars ##
Cary Clarka560c472017-11-27 10:44:06 -0500697 #Typedef float SkScalar
Cary Clark8032b982017-07-28 11:04:54 -0400698 #Typedef ##
Cary Clark7fc1d122017-10-09 14:07:42 -0400699 ##
Cary Clark884dd7d2017-10-11 10:37:52 -0400700 #Const SK_MinS32FitsInFloat
701 to be written
702 ##
703 #Const SK_MaxS32FitsInFloat
704 to be written
705 ##
Cary Clark7fc1d122017-10-09 14:07:42 -0400706 #Const SK_ScalarMin
707 to be written
708 ##
Cary Clark8032b982017-07-28 11:04:54 -0400709 #Const SK_ScalarMax
710 to be written
711 ##
712 #Const SK_ScalarInfinity
713 to be written
714 ##
715 #Const SK_ScalarNegativeInfinity
716 to be written
717 ##
718 #Const SK_ScalarNaN
719 to be written
720 ##
Cary Clark682c58d2018-05-16 07:07:07 -0400721 #Const SK_ScalarNearlyZero
722 to be written
723 ##
Cary Clark7fc1d122017-10-09 14:07:42 -0400724 #Const SK_MinS32
725 to be written
726 ##
727 #Const SK_MaxS32
728 to be written
729 ##
Cary Clarka560c472017-11-27 10:44:06 -0500730 #Typedef int32_t SkUnichar
Cary Clark8032b982017-07-28 11:04:54 -0400731 #Typedef ##
Cary Clarka560c472017-11-27 10:44:06 -0500732 #Typedef unsigned U8CPU
Cary Clark8032b982017-07-28 11:04:54 -0400733 #Typedef ##
Cary Clark682c58d2018-05-16 07:07:07 -0400734# end of Topic Number_Types
Cary Clark8032b982017-07-28 11:04:54 -0400735
Cary Clarkce101242017-09-01 15:51:02 -0400736#Topic OS_X
737#Substitute OS X
738##
739
Cary Clark8032b982017-07-28 11:04:54 -0400740#Topic Oval
Cary Clark137b8742018-05-30 09:21:49 -0400741#Alias Ovals ##
Cary Clark8032b982017-07-28 11:04:54 -0400742#Topic ##
743
744#Topic Paint_Defaults
745#Const SkPaintDefaults_Flags 0
746##
747#Const SkPaintDefaults_Hinting 2
748##
749#Const SkPaintDefaults_TextSize 12
750##
751#Const SkPaintDefaults_MiterLimit 4
752##
753#Topic ##
754
755#Topic Patch
Cary Clark137b8742018-05-30 09:21:49 -0400756#Alias Patches ##
Cary Clark8032b982017-07-28 11:04:54 -0400757#Topic ##
758
759#Topic Path_Effect
760 #Class SkPathEffect
761 #Class ##
762#Topic ##
763
Cary Clark682c58d2018-05-16 07:07:07 -0400764# to be in Topic Path_Measure
Cary Clark8032b982017-07-28 11:04:54 -0400765 #Class SkPathMeasure
766 #Method void dump() const
767 ##
768 ##
Cary Clark682c58d2018-05-16 07:07:07 -0400769# end of Topic Path_Measure
Cary Clark8032b982017-07-28 11:04:54 -0400770
771#Topic PathOps
Cary Clark682c58d2018-05-16 07:07:07 -0400772 #Enum SkPathOp
773 ##
Cary Clark8032b982017-07-28 11:04:54 -0400774 #Method bool SK_API Op(const SkPath& one, const SkPath& two, SkPathOp op, SkPath* result)
775 ##
776#Topic ##
777
Cary Clark224c7002018-06-27 11:00:21 -0400778#Topic Picture_Recorder
Cary Clark8032b982017-07-28 11:04:54 -0400779 #Class SkPictureRecorder
780 #Method SkCanvas* beginRecording(const SkRect& bounds,
781 SkBBHFactory* bbhFactory = NULL,
782 uint32_t recordFlags = 0)
783 ##
784 ##
785##
Cary Clark8032b982017-07-28 11:04:54 -0400786
787#Topic Pixel
788#Subtopic Storage
789##
790##
791
Cary Clarkbc5697d2017-10-04 14:31:33 -0400792#Topic Pixel_Ref
Cary Clarkd0530ba2017-09-14 11:25:39 -0400793#Class SkPixelRef
Cary Clarkbc5697d2017-10-04 14:31:33 -0400794 #Method int width() const
795 ##
796 #Method int height() const
797 ##
798 #Method bool isImmutable() const
799 ##
800 #Method void setImmutable()
801 ##
Cary Clarkd0530ba2017-09-14 11:25:39 -0400802##
Cary Clarkbad5ad72017-08-03 17:14:08 -0400803##
804
Cary Clarkd0530ba2017-09-14 11:25:39 -0400805#Enum SkPixelGeometry
Cary Clark8032b982017-07-28 11:04:54 -0400806##
807
Cary Clark154beea2017-10-26 07:58:48 -0400808#Topic Point3
809#Struct SkPoint3
810##
811#Topic ##
812
Cary Clarkce101242017-09-01 15:51:02 -0400813#Topic PostScript
814#Substitute PostScript
815#Subtopic Arct
816#Substitute PostScript arct
817##
818##
819
820#Topic Premultiply
Cary Clark137b8742018-05-30 09:21:49 -0400821#Alias Premultiplied ##
Cary Clark80247e52018-07-11 16:18:41 -0400822#Alias Premultiplies ##
Cary Clarkce101242017-09-01 15:51:02 -0400823##
824
825#Topic Raster_Engine
826##
827
Cary Clark8032b982017-07-28 11:04:54 -0400828#Topic Raster_Handle_Allocator
829#Class SkRasterHandleAllocator
Cary Clark682c58d2018-05-16 07:07:07 -0400830 #Typedef void* Handle
831 ##
Cary Clark8032b982017-07-28 11:04:54 -0400832 #Struct Rec
833 ##
834 #Method static std::unique_ptr<SkCanvas> MakeCanvas(std::unique_ptr<SkRasterHandleAllocator>, const SkImageInfo&, const Rec* rec = nullptr)
835 ##
836##
837##
838
Cary Clark2f466242017-12-11 16:03:17 -0500839#Topic Raster_Bitmap
840##
841
Cary Clarkbad5ad72017-08-03 17:14:08 -0400842#Topic Raster_Surface
843##
844
Cary Clark682c58d2018-05-16 07:07:07 -0400845# to be in Topic Rasterizer
Cary Clark8032b982017-07-28 11:04:54 -0400846#Class SkRasterizer
847#Class ##
Cary Clark682c58d2018-05-16 07:07:07 -0400848# end of Topic Rasterizer
Cary Clark8032b982017-07-28 11:04:54 -0400849
Cary Clark8032b982017-07-28 11:04:54 -0400850#Topic Reference_Count
Cary Clarkbc5697d2017-10-04 14:31:33 -0400851#Class SkRefCnt
852#Class ##
Cary Clark09d80c02018-10-31 12:14:03 -0400853##
854
855#Topic Smart_Pointer
Cary Clark8032b982017-07-28 11:04:54 -0400856#Class sk_sp
857#Class ##
858#Topic ##
859
Cary Clarka560c472017-11-27 10:44:06 -0500860#Topic Render_Target
861#Class GrRenderTarget
862##
863##
864
Cary Clarkce101242017-09-01 15:51:02 -0400865#Topic Right_Side_Bearing
866##
867
Cary Clark8032b982017-07-28 11:04:54 -0400868#Topic RSXform
869#Struct SkRSXform
Cary Clark09d80c02018-10-31 12:14:03 -0400870#Member SkScalar fSCos
871##
872#Member SkScalar fSSin
873##
874#Member SkScalar fTx
875##
876#Member SkScalar fTy
877##
Cary Clark8032b982017-07-28 11:04:54 -0400878##
879##
880
Cary Clark224c7002018-06-27 11:00:21 -0400881#Topic Serial_Procs
882#Struct SkSerialProcs
Cary Clark09d80c02018-10-31 12:14:03 -0400883#Member SkSerialPictureProc fPictureProc
884##
885#Member void* fPictureCtx
886##
887#Member SkSerialTypefaceProc fTypefaceProc
888##
889#Member void* fTypefaceCtx
890##
Cary Clark224c7002018-06-27 11:00:21 -0400891##
892##
893
Cary Clark8032b982017-07-28 11:04:54 -0400894#Topic Shader
895#Class SkShader
896 #Enum TileMode
897 #Const kClamp_TileMode 0
898 ##
Cary Clark61dfc3a2018-01-03 08:37:53 -0500899 #Const kRepeat_TileMode 1
900 ##
901 #Const kMirror_TileMode 2
902 ##
Cary Clark8032b982017-07-28 11:04:54 -0400903 ##
904 #Method static sk_sp<SkShader> MakeBitmapShader(const SkBitmap& src, TileMode tmx, TileMode tmy,
905 const SkMatrix* localMatrix = nullptr)
906 ##
Cary Clark224c7002018-06-27 11:00:21 -0400907 #Method static sk_sp<SkShader> MakeCompose(sk_sp<SkShader> dst, sk_sp<SkShader> src,
908 SkBlendMode mode, float lerp = 1)
909 ##
Cary Clark8032b982017-07-28 11:04:54 -0400910#Class ##
Cary Clark8032b982017-07-28 11:04:54 -0400911#Topic ##
912
Cary Clarkbc5697d2017-10-04 14:31:33 -0400913#Topic Size
Cary Clark154beea2017-10-26 07:58:48 -0400914#Struct SkSize
Cary Clark09d80c02018-10-31 12:14:03 -0400915#Method int32_t width() const
916##
917#Method int32_t height() const
918##
Cary Clark154beea2017-10-26 07:58:48 -0400919##
Cary Clarkbc5697d2017-10-04 14:31:33 -0400920##
921
Cary Clark8032b982017-07-28 11:04:54 -0400922#Topic Sprite
Cary Clark137b8742018-05-30 09:21:49 -0400923#Alias Sprites ##
Cary Clark8032b982017-07-28 11:04:54 -0400924#Topic ##
925
Cary Clarkd2ca79c2018-08-10 13:09:13 -0400926#Topic Stream_Asset
927#Class SkStreamAsset
Cary Clark682c58d2018-05-16 07:07:07 -0400928##
Cary Clarkd2ca79c2018-08-10 13:09:13 -0400929#Topic ##
Cary Clark8032b982017-07-28 11:04:54 -0400930
931#Topic String
932#Class SkString
933#Class ##
934#Topic ##
935
Cary Clarkce101242017-09-01 15:51:02 -0400936#Topic Supersampling
937##
938
Cary Clarka560c472017-11-27 10:44:06 -0500939#Topic Surface_Characterization
940#Class SkSurfaceCharacterization
Cary Clark8032b982017-07-28 11:04:54 -0400941##
Cary Clarka560c472017-11-27 10:44:06 -0500942##
943
944#Topic Surface_Properties
Cary Clark8032b982017-07-28 11:04:54 -0400945 #Class SkSurfaceProps
Cary Clark2a8c48b2018-02-15 17:31:24 -0500946 #Subtopic Legacy_Font_Host
Cary Clark8032b982017-07-28 11:04:54 -0400947 #Enum InitType
948 #Const kLegacyFontHost_InitType 0
949 ##
950 ##
Cary Clarkbad5ad72017-08-03 17:14:08 -0400951 #Topic ##
Cary Clark8032b982017-07-28 11:04:54 -0400952 ##
953##
Cary Clark8032b982017-07-28 11:04:54 -0400954
955#Topic SVG
956#Subtopic Canvas
957##
958#Subtopic Arc
959##
Cary Clark09d80c02018-10-31 12:14:03 -0400960#Subtopic Sweep_Flag
961#Substitute SVG sweep-flag
962##
Cary Clark8032b982017-07-28 11:04:54 -0400963##
964
965#Topic Text
966#Topic ##
967
Cary Clarka560c472017-11-27 10:44:06 -0500968#Topic Texture
969#Class GrBackendTexture
Cary Clarkba75aee2018-04-05 08:18:41 -0400970 #Method bool isValid() const
971 ##
Cary Clarka560c472017-11-27 10:44:06 -0500972##
973##
974
Robert Phillipsb6df1c12018-10-05 10:31:34 -0400975#Topic YUV_Planes
976#Class SkYUVAIndex
977##
978##
979
Robert Phillips8caf85f2018-04-05 09:30:38 -0400980#Topic RenderTarget
981#Class GrBackendRenderTarget
982 #Method bool isValid() const
983 ##
984##
985##
986
Cary Clark681287e2018-03-16 11:34:15 -0400987#Topic Transfer_Mode
988##
989
Cary Clark8032b982017-07-28 11:04:54 -0400990#Topic Typeface
Cary Clarkd2ca79c2018-08-10 13:09:13 -0400991#Subtopic ID
992#Typedef uint32_t SkFontID
993##
994##
Cary Clark8032b982017-07-28 11:04:54 -0400995#Class SkTypeface
Cary Clarkd2ca79c2018-08-10 13:09:13 -0400996 #Method SkFontID uniqueID() const
997 ##
Cary Clark8032b982017-07-28 11:04:54 -0400998#Class ##
999#Topic ##
1000
Cary Clark682c58d2018-05-16 07:07:07 -04001001# to be defined in types
Cary Clarka560c472017-11-27 10:44:06 -05001002 #Typedef intptr_t GrBackendObject
1003 #Typedef ##
1004
Cary Clark5538c132018-06-14 12:28:14 -04001005 #EnumClass GrMipMapped
1006 #Const kNo 0
1007 ##
1008 #Const kYes 1
1009 ##
1010 #EnumClass ##
1011
Cary Clarka560c472017-11-27 10:44:06 -05001012 #Enum GrSurfaceOrigin
Cary Clark682c58d2018-05-16 07:07:07 -04001013 #Const kBottomLeft_GrSurfaceOrigin 0
Cary Clarka560c472017-11-27 10:44:06 -05001014 ##
1015 #Const kTopLeft_GrSurfaceOrigin 1
1016 ##
1017 #Enum ##
1018
Cary Clarka560c472017-11-27 10:44:06 -05001019 #EnumClass SkBudgeted
1020 #Const kNo 0
1021 ##
1022 #Const kYes 1
1023 ##
1024 #EnumClass ##
Cary Clarka560c472017-11-27 10:44:06 -05001025
1026 #EnumClass GrSemaphoresSubmitted
1027 #Const kNo 0
1028 ##
1029 #Const kYes 1
1030 ##
1031 #EnumClass ##
Cary Clark682c58d2018-05-16 07:07:07 -04001032# end of defined in types
Cary Clarka560c472017-11-27 10:44:06 -05001033
Cary Clarkce101242017-09-01 15:51:02 -04001034#Topic Unpremultiply
Cary Clark137b8742018-05-30 09:21:49 -04001035#Alias Unpremultiplied ##
Cary Clarkce101242017-09-01 15:51:02 -04001036##
1037
Cary Clark8032b982017-07-28 11:04:54 -04001038#Topic Vertices
Cary Clark682c58d2018-05-16 07:07:07 -04001039#Class SkVertices
Ruiqi Maoc97a3392018-08-15 10:44:19 -04001040#Class Bone
1041##
Cary Clark682c58d2018-05-16 07:07:07 -04001042##
Cary Clark8032b982017-07-28 11:04:54 -04001043#Subtopic Colors
1044##
1045#Subtopic Texs
1046##
1047#Topic ##
1048
Cary Clark224c7002018-06-27 11:00:21 -04001049#Topic Xfermode_Image_Filter
1050#Class SkXfermodeImageFilter
1051##
1052##