Artifact
69d24d252c64f26b231a74c07f98cadb0d049ea3:
- File
cairo/cairo-functions.ss
— part of check-in
[342d9b1e94]
at
2016-12-15 01:14:13
on branch trunk
— cairo ffi improvements
(user:
aldo
size: 45240)
0000: 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 (define-cairo-fu
0010: 6e 63 20 69 6e 74 20 63 61 69 72 6f 2d 76 65 72 nc int cairo-ver
0020: 73 69 6f 6e 20 28 29 20 22 63 61 69 72 6f 5f 76 sion () "cairo_v
0030: 65 72 73 69 6f 6e 22 29 0a 28 64 65 66 69 6e 65 ersion").(define
0040: 2d 63 61 69 72 6f 2d 66 75 6e 63 20 73 74 72 69 -cairo-func stri
0050: 6e 67 20 63 61 69 72 6f 2d 76 65 72 73 69 6f 6e ng cairo-version
0060: 2d 73 74 72 69 6e 67 20 28 29 20 22 63 61 69 72 -string () "cair
0070: 6f 5f 76 65 72 73 69 6f 6e 5f 73 74 72 69 6e 67 o_version_string
0080: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
0090: 2d 66 75 6e 63 20 28 2a 20 63 61 69 72 6f 2d 74 -func (* cairo-t
00a0: 29 20 63 61 69 72 6f 2d 63 72 65 61 74 65 20 28 ) cairo-create (
00b0: 28 74 61 72 67 65 74 20 28 2a 20 63 61 69 72 6f (target (* cairo
00c0: 2d 73 75 72 66 61 63 65 2d 74 29 29 29 20 22 63 -surface-t))) "c
00d0: 61 69 72 6f 5f 63 72 65 61 74 65 22 29 0a 28 64 airo_create").(d
00e0: 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 efine-cairo-func
00f0: 20 28 2a 20 63 61 69 72 6f 2d 74 29 20 63 61 69 (* cairo-t) cai
0100: 72 6f 2d 72 65 66 65 72 65 6e 63 65 20 28 28 63 ro-reference ((c
0110: 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 29 20 r (* cairo-t)))
0120: 22 63 61 69 72 6f 5f 72 65 66 65 72 65 6e 63 65 "cairo_reference
0130: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
0140: 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f -func void cairo
0150: 2d 64 65 73 74 72 6f 79 20 28 28 63 72 20 28 2a -destroy ((cr (*
0160: 20 63 61 69 72 6f 2d 74 29 29 29 20 22 63 61 69 cairo-t))) "cai
0170: 72 6f 5f 64 65 73 74 72 6f 79 22 29 0a 28 64 65 ro_destroy").(de
0180: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
0190: 75 6e 73 69 67 6e 65 64 2d 69 6e 74 20 63 61 69 unsigned-int cai
01a0: 72 6f 2d 67 65 74 2d 72 65 66 65 72 65 6e 63 65 ro-get-reference
01b0: 2d 63 6f 75 6e 74 20 28 28 63 72 20 28 2a 20 63 -count ((cr (* c
01c0: 61 69 72 6f 2d 74 29 29 29 20 22 63 61 69 72 6f airo-t))) "cairo
01d0: 5f 67 65 74 5f 72 65 66 65 72 65 6e 63 65 5f 63 _get_reference_c
01e0: 6f 75 6e 74 22 29 0a 28 64 65 66 69 6e 65 2d 63 ount").(define-c
01f0: 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 2a 20 airo-func void*
0200: 63 61 69 72 6f 2d 67 65 74 2d 75 73 65 72 2d 64 cairo-get-user-d
0210: 61 74 61 20 28 28 63 72 20 28 2a 20 63 61 69 72 ata ((cr (* cair
0220: 6f 2d 74 29 29 20 28 6b 65 79 20 28 2a 20 63 61 o-t)) (key (* ca
0230: 69 72 6f 2d 75 73 65 72 2d 64 61 74 61 2d 6b 65 iro-user-data-ke
0240: 79 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 67 65 y-t))) "cairo_ge
0250: 74 5f 75 73 65 72 5f 64 61 74 61 22 29 0a 28 64 t_user_data").(d
0260: 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 efine-cairo-func
0270: 20 63 61 69 72 6f 2d 73 74 61 74 75 73 2d 74 20 cairo-status-t
0280: 63 61 69 72 6f 2d 73 65 74 2d 75 73 65 72 2d 64 cairo-set-user-d
0290: 61 74 61 20 28 28 63 72 20 28 2a 20 63 61 69 72 ata ((cr (* cair
02a0: 6f 2d 74 29 29 20 28 6b 65 79 20 28 2a 20 63 61 o-t)) (key (* ca
02b0: 69 72 6f 2d 75 73 65 72 2d 64 61 74 61 2d 6b 65 iro-user-data-ke
02c0: 79 2d 74 29 29 20 28 75 73 65 72 5f 64 61 74 61 y-t)) (user_data
02d0: 20 76 6f 69 64 2a 29 20 28 64 65 73 74 72 6f 79 void*) (destroy
02e0: 20 63 61 69 72 6f 2d 64 65 73 74 72 6f 79 2d 66 cairo-destroy-f
02f0: 75 6e 63 2d 74 29 29 20 22 63 61 69 72 6f 5f 73 unc-t)) "cairo_s
0300: 65 74 5f 75 73 65 72 5f 64 61 74 61 22 29 0a 28 et_user_data").(
0310: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
0320: 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 73 61 76 c void cairo-sav
0330: 65 20 28 28 63 72 20 28 2a 20 63 61 69 72 6f 2d e ((cr (* cairo-
0340: 74 29 29 29 20 22 63 61 69 72 6f 5f 73 61 76 65 t))) "cairo_save
0350: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
0360: 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f -func void cairo
0370: 2d 72 65 73 74 6f 72 65 20 28 28 63 72 20 28 2a -restore ((cr (*
0380: 20 63 61 69 72 6f 2d 74 29 29 29 20 22 63 61 69 cairo-t))) "cai
0390: 72 6f 5f 72 65 73 74 6f 72 65 22 29 0a 28 64 65 ro_restore").(de
03a0: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
03b0: 76 6f 69 64 20 63 61 69 72 6f 2d 70 75 73 68 2d void cairo-push-
03c0: 67 72 6f 75 70 20 28 28 63 72 20 28 2a 20 63 61 group ((cr (* ca
03d0: 69 72 6f 2d 74 29 29 29 20 22 63 61 69 72 6f 5f iro-t))) "cairo_
03e0: 70 75 73 68 5f 67 72 6f 75 70 22 29 0a 28 64 65 push_group").(de
03f0: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
0400: 76 6f 69 64 20 63 61 69 72 6f 2d 70 75 73 68 2d void cairo-push-
0410: 67 72 6f 75 70 2d 77 69 74 68 2d 63 6f 6e 74 65 group-with-conte
0420: 6e 74 20 28 28 63 72 20 28 2a 20 63 61 69 72 6f nt ((cr (* cairo
0430: 2d 74 29 29 20 28 63 6f 6e 74 65 6e 74 20 63 61 -t)) (content ca
0440: 69 72 6f 2d 63 6f 6e 74 65 6e 74 2d 74 29 29 20 iro-content-t))
0450: 22 63 61 69 72 6f 5f 70 75 73 68 5f 67 72 6f 75 "cairo_push_grou
0460: 70 5f 77 69 74 68 5f 63 6f 6e 74 65 6e 74 22 29 p_with_content")
0470: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
0480: 75 6e 63 20 28 2a 20 63 61 69 72 6f 2d 70 61 74 unc (* cairo-pat
0490: 74 65 72 6e 2d 74 29 20 63 61 69 72 6f 2d 70 6f tern-t) cairo-po
04a0: 70 2d 67 72 6f 75 70 20 28 28 63 72 20 28 2a 20 p-group ((cr (*
04b0: 63 61 69 72 6f 2d 74 29 29 29 20 22 63 61 69 72 cairo-t))) "cair
04c0: 6f 5f 70 6f 70 5f 67 72 6f 75 70 22 29 0a 28 64 o_pop_group").(d
04d0: 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 efine-cairo-func
04e0: 20 76 6f 69 64 20 63 61 69 72 6f 2d 70 6f 70 2d void cairo-pop-
04f0: 67 72 6f 75 70 2d 74 6f 2d 73 6f 75 72 63 65 20 group-to-source
0500: 28 28 63 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 ((cr (* cairo-t)
0510: 29 29 20 22 63 61 69 72 6f 5f 70 6f 70 5f 67 72 )) "cairo_pop_gr
0520: 6f 75 70 5f 74 6f 5f 73 6f 75 72 63 65 22 29 0a oup_to_source").
0530: 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 (define-cairo-fu
0540: 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 73 65 nc void cairo-se
0550: 74 2d 6f 70 65 72 61 74 6f 72 20 28 28 63 72 20 t-operator ((cr
0560: 28 2a 20 63 61 69 72 6f 2d 74 29 29 20 28 6f 70 (* cairo-t)) (op
0570: 20 63 61 69 72 6f 2d 6f 70 65 72 61 74 6f 72 2d cairo-operator-
0580: 74 29 29 20 22 63 61 69 72 6f 5f 73 65 74 5f 6f t)) "cairo_set_o
0590: 70 65 72 61 74 6f 72 22 29 0a 28 64 65 66 69 6e perator").(defin
05a0: 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 e-cairo-func voi
05b0: 64 20 63 61 69 72 6f 2d 73 65 74 2d 73 6f 75 72 d cairo-set-sour
05c0: 63 65 20 28 28 63 72 20 28 2a 20 63 61 69 72 6f ce ((cr (* cairo
05d0: 2d 74 29 29 20 28 73 6f 75 72 63 65 20 28 2a 20 -t)) (source (*
05e0: 63 61 69 72 6f 2d 70 61 74 74 65 72 6e 2d 74 29 cairo-pattern-t)
05f0: 29 29 20 22 63 61 69 72 6f 5f 73 65 74 5f 73 6f )) "cairo_set_so
0600: 75 72 63 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 urce").(define-c
0610: 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 airo-func void c
0620: 61 69 72 6f 2d 73 65 74 2d 73 6f 75 72 63 65 2d airo-set-source-
0630: 72 67 62 20 28 28 63 72 20 28 2a 20 63 61 69 72 rgb ((cr (* cair
0640: 6f 2d 74 29 29 20 28 72 65 64 20 64 6f 75 62 6c o-t)) (red doubl
0650: 65 29 20 28 67 72 65 65 6e 20 64 6f 75 62 6c 65 e) (green double
0660: 29 20 28 62 6c 75 65 20 64 6f 75 62 6c 65 29 29 ) (blue double))
0670: 20 22 63 61 69 72 6f 5f 73 65 74 5f 73 6f 75 72 "cairo_set_sour
0680: 63 65 5f 72 67 62 22 29 0a 28 64 65 66 69 6e 65 ce_rgb").(define
0690: 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 -cairo-func void
06a0: 20 63 61 69 72 6f 2d 73 65 74 2d 73 6f 75 72 63 cairo-set-sourc
06b0: 65 2d 72 67 62 61 20 28 28 63 72 20 28 2a 20 63 e-rgba ((cr (* c
06c0: 61 69 72 6f 2d 74 29 29 20 28 72 65 64 20 64 6f airo-t)) (red do
06d0: 75 62 6c 65 29 20 28 67 72 65 65 6e 20 64 6f 75 uble) (green dou
06e0: 62 6c 65 29 20 28 62 6c 75 65 20 64 6f 75 62 6c ble) (blue doubl
06f0: 65 29 20 28 61 6c 70 68 61 20 64 6f 75 62 6c 65 e) (alpha double
0700: 29 29 20 22 63 61 69 72 6f 5f 73 65 74 5f 73 6f )) "cairo_set_so
0710: 75 72 63 65 5f 72 67 62 61 22 29 0a 28 64 65 66 urce_rgba").(def
0720: 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 ine-cairo-func v
0730: 6f 69 64 20 63 61 69 72 6f 2d 73 65 74 2d 73 6f oid cairo-set-so
0740: 75 72 63 65 2d 73 75 72 66 61 63 65 20 28 28 63 urce-surface ((c
0750: 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 20 28 r (* cairo-t)) (
0760: 73 75 72 66 61 63 65 20 28 2a 20 63 61 69 72 6f surface (* cairo
0770: 2d 73 75 72 66 61 63 65 2d 74 29 29 20 28 78 20 -surface-t)) (x
0780: 64 6f 75 62 6c 65 29 20 28 79 20 64 6f 75 62 6c double) (y doubl
0790: 65 29 29 20 22 63 61 69 72 6f 5f 73 65 74 5f 73 e)) "cairo_set_s
07a0: 6f 75 72 63 65 5f 73 75 72 66 61 63 65 22 29 0a ource_surface").
07b0: 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 (define-cairo-fu
07c0: 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 73 65 nc void cairo-se
07d0: 74 2d 74 6f 6c 65 72 61 6e 63 65 20 28 28 63 72 t-tolerance ((cr
07e0: 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 20 28 74 (* cairo-t)) (t
07f0: 6f 6c 65 72 61 6e 63 65 20 64 6f 75 62 6c 65 29 olerance double)
0800: 29 20 22 63 61 69 72 6f 5f 73 65 74 5f 74 6f 6c ) "cairo_set_tol
0810: 65 72 61 6e 63 65 22 29 0a 28 64 65 66 69 6e 65 erance").(define
0820: 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 -cairo-func void
0830: 20 63 61 69 72 6f 2d 73 65 74 2d 61 6e 74 69 61 cairo-set-antia
0840: 6c 69 61 73 20 28 28 63 72 20 28 2a 20 63 61 69 lias ((cr (* cai
0850: 72 6f 2d 74 29 29 20 28 61 6e 74 69 61 6c 69 61 ro-t)) (antialia
0860: 73 20 63 61 69 72 6f 2d 61 6e 74 69 61 6c 69 61 s cairo-antialia
0870: 73 2d 74 29 29 20 22 63 61 69 72 6f 5f 73 65 74 s-t)) "cairo_set
0880: 5f 61 6e 74 69 61 6c 69 61 73 22 29 0a 28 64 65 _antialias").(de
0890: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
08a0: 76 6f 69 64 20 63 61 69 72 6f 2d 73 65 74 2d 66 void cairo-set-f
08b0: 69 6c 6c 2d 72 75 6c 65 20 28 28 63 72 20 28 2a ill-rule ((cr (*
08c0: 20 63 61 69 72 6f 2d 74 29 29 20 28 66 69 6c 6c cairo-t)) (fill
08d0: 5f 72 75 6c 65 20 63 61 69 72 6f 2d 66 69 6c 6c _rule cairo-fill
08e0: 2d 72 75 6c 65 2d 74 29 29 20 22 63 61 69 72 6f -rule-t)) "cairo
08f0: 5f 73 65 74 5f 66 69 6c 6c 5f 72 75 6c 65 22 29 _set_fill_rule")
0900: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
0910: 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 73 unc void cairo-s
0920: 65 74 2d 6c 69 6e 65 2d 77 69 64 74 68 20 28 28 et-line-width ((
0930: 63 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 20 cr (* cairo-t))
0940: 28 77 69 64 74 68 20 64 6f 75 62 6c 65 29 29 20 (width double))
0950: 22 63 61 69 72 6f 5f 73 65 74 5f 6c 69 6e 65 5f "cairo_set_line_
0960: 77 69 64 74 68 22 29 0a 28 64 65 66 69 6e 65 2d width").(define-
0970: 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 cairo-func void
0980: 63 61 69 72 6f 2d 73 65 74 2d 6c 69 6e 65 2d 63 cairo-set-line-c
0990: 61 70 20 28 28 63 72 20 28 2a 20 63 61 69 72 6f ap ((cr (* cairo
09a0: 2d 74 29 29 20 28 6c 69 6e 65 5f 63 61 70 20 63 -t)) (line_cap c
09b0: 61 69 72 6f 2d 6c 69 6e 65 2d 63 61 70 2d 74 29 airo-line-cap-t)
09c0: 29 20 22 63 61 69 72 6f 5f 73 65 74 5f 6c 69 6e ) "cairo_set_lin
09d0: 65 5f 63 61 70 22 29 0a 28 64 65 66 69 6e 65 2d e_cap").(define-
09e0: 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 cairo-func void
09f0: 63 61 69 72 6f 2d 73 65 74 2d 6c 69 6e 65 2d 6a cairo-set-line-j
0a00: 6f 69 6e 20 28 28 63 72 20 28 2a 20 63 61 69 72 oin ((cr (* cair
0a10: 6f 2d 74 29 29 20 28 6c 69 6e 65 5f 6a 6f 69 6e o-t)) (line_join
0a20: 20 63 61 69 72 6f 2d 6c 69 6e 65 2d 6a 6f 69 6e cairo-line-join
0a30: 2d 74 29 29 20 22 63 61 69 72 6f 5f 73 65 74 5f -t)) "cairo_set_
0a40: 6c 69 6e 65 5f 6a 6f 69 6e 22 29 0a 28 64 65 66 line_join").(def
0a50: 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 ine-cairo-func v
0a60: 6f 69 64 20 63 61 69 72 6f 2d 73 65 74 2d 64 61 oid cairo-set-da
0a70: 73 68 20 28 28 63 72 20 28 2a 20 63 61 69 72 6f sh ((cr (* cairo
0a80: 2d 74 29 29 20 28 64 61 73 68 65 73 20 28 2a 20 -t)) (dashes (*
0a90: 64 6f 75 62 6c 65 29 29 20 28 6e 75 6d 5f 64 61 double)) (num_da
0aa0: 73 68 65 73 20 69 6e 74 29 20 28 6f 66 66 73 65 shes int) (offse
0ab0: 74 20 64 6f 75 62 6c 65 29 29 20 22 63 61 69 72 t double)) "cair
0ac0: 6f 5f 73 65 74 5f 64 61 73 68 22 29 0a 28 64 65 o_set_dash").(de
0ad0: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
0ae0: 76 6f 69 64 20 63 61 69 72 6f 2d 73 65 74 2d 6d void cairo-set-m
0af0: 69 74 65 72 2d 6c 69 6d 69 74 20 28 28 63 72 20 iter-limit ((cr
0b00: 28 2a 20 63 61 69 72 6f 2d 74 29 29 20 28 6c 69 (* cairo-t)) (li
0b10: 6d 69 74 20 64 6f 75 62 6c 65 29 29 20 22 63 61 mit double)) "ca
0b20: 69 72 6f 5f 73 65 74 5f 6d 69 74 65 72 5f 6c 69 iro_set_miter_li
0b30: 6d 69 74 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 mit").(define-ca
0b40: 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 iro-func void ca
0b50: 69 72 6f 2d 74 72 61 6e 73 6c 61 74 65 20 28 28 iro-translate ((
0b60: 63 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 20 cr (* cairo-t))
0b70: 28 74 78 20 64 6f 75 62 6c 65 29 20 28 74 79 20 (tx double) (ty
0b80: 64 6f 75 62 6c 65 29 29 20 22 63 61 69 72 6f 5f double)) "cairo_
0b90: 74 72 61 6e 73 6c 61 74 65 22 29 0a 28 64 65 66 translate").(def
0ba0: 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 ine-cairo-func v
0bb0: 6f 69 64 20 63 61 69 72 6f 2d 73 63 61 6c 65 20 oid cairo-scale
0bc0: 28 28 63 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 ((cr (* cairo-t)
0bd0: 29 20 28 73 78 20 64 6f 75 62 6c 65 29 20 28 73 ) (sx double) (s
0be0: 79 20 64 6f 75 62 6c 65 29 29 20 22 63 61 69 72 y double)) "cair
0bf0: 6f 5f 73 63 61 6c 65 22 29 0a 28 64 65 66 69 6e o_scale").(defin
0c00: 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 e-cairo-func voi
0c10: 64 20 63 61 69 72 6f 2d 72 6f 74 61 74 65 20 28 d cairo-rotate (
0c20: 28 63 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 (cr (* cairo-t))
0c30: 20 28 61 6e 67 6c 65 20 64 6f 75 62 6c 65 29 29 (angle double))
0c40: 20 22 63 61 69 72 6f 5f 72 6f 74 61 74 65 22 29 "cairo_rotate")
0c50: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
0c60: 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 74 unc void cairo-t
0c70: 72 61 6e 73 66 6f 72 6d 20 28 28 63 72 20 28 2a ransform ((cr (*
0c80: 20 63 61 69 72 6f 2d 74 29 29 20 28 6d 61 74 72 cairo-t)) (matr
0c90: 69 78 20 28 2a 20 63 61 69 72 6f 2d 6d 61 74 72 ix (* cairo-matr
0ca0: 69 78 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 74 ix-t))) "cairo_t
0cb0: 72 61 6e 73 66 6f 72 6d 22 29 0a 28 64 65 66 69 ransform").(defi
0cc0: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f ne-cairo-func vo
0cd0: 69 64 20 63 61 69 72 6f 2d 73 65 74 2d 6d 61 74 id cairo-set-mat
0ce0: 72 69 78 20 28 28 63 72 20 28 2a 20 63 61 69 72 rix ((cr (* cair
0cf0: 6f 2d 74 29 29 20 28 6d 61 74 72 69 78 20 28 2a o-t)) (matrix (*
0d00: 20 63 61 69 72 6f 2d 6d 61 74 72 69 78 2d 74 29 cairo-matrix-t)
0d10: 29 29 20 22 63 61 69 72 6f 5f 73 65 74 5f 6d 61 )) "cairo_set_ma
0d20: 74 72 69 78 22 29 0a 28 64 65 66 69 6e 65 2d 63 trix").(define-c
0d30: 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 airo-func void c
0d40: 61 69 72 6f 2d 69 64 65 6e 74 69 74 79 2d 6d 61 airo-identity-ma
0d50: 74 72 69 78 20 28 28 63 72 20 28 2a 20 63 61 69 trix ((cr (* cai
0d60: 72 6f 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 69 ro-t))) "cairo_i
0d70: 64 65 6e 74 69 74 79 5f 6d 61 74 72 69 78 22 29 dentity_matrix")
0d80: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
0d90: 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 75 unc void cairo-u
0da0: 73 65 72 2d 74 6f 2d 64 65 76 69 63 65 20 28 28 ser-to-device ((
0db0: 63 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 20 cr (* cairo-t))
0dc0: 28 78 20 28 2a 20 64 6f 75 62 6c 65 29 29 20 28 (x (* double)) (
0dd0: 79 20 28 2a 20 64 6f 75 62 6c 65 29 29 29 20 22 y (* double))) "
0de0: 63 61 69 72 6f 5f 75 73 65 72 5f 74 6f 5f 64 65 cairo_user_to_de
0df0: 76 69 63 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 vice").(define-c
0e00: 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 airo-func void c
0e10: 61 69 72 6f 2d 75 73 65 72 2d 74 6f 2d 64 65 76 airo-user-to-dev
0e20: 69 63 65 2d 64 69 73 74 61 6e 63 65 20 28 28 63 ice-distance ((c
0e30: 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 20 28 r (* cairo-t)) (
0e40: 64 78 20 28 2a 20 64 6f 75 62 6c 65 29 29 20 28 dx (* double)) (
0e50: 64 79 20 28 2a 20 64 6f 75 62 6c 65 29 29 29 20 dy (* double)))
0e60: 22 63 61 69 72 6f 5f 75 73 65 72 5f 74 6f 5f 64 "cairo_user_to_d
0e70: 65 76 69 63 65 5f 64 69 73 74 61 6e 63 65 22 29 evice_distance")
0e80: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
0e90: 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 64 unc void cairo-d
0ea0: 65 76 69 63 65 2d 74 6f 2d 75 73 65 72 20 28 28 evice-to-user ((
0eb0: 63 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 20 cr (* cairo-t))
0ec0: 28 78 20 28 2a 20 64 6f 75 62 6c 65 29 29 20 28 (x (* double)) (
0ed0: 79 20 28 2a 20 64 6f 75 62 6c 65 29 29 29 20 22 y (* double))) "
0ee0: 63 61 69 72 6f 5f 64 65 76 69 63 65 5f 74 6f 5f cairo_device_to_
0ef0: 75 73 65 72 22 29 0a 28 64 65 66 69 6e 65 2d 63 user").(define-c
0f00: 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 airo-func void c
0f10: 61 69 72 6f 2d 64 65 76 69 63 65 2d 74 6f 2d 75 airo-device-to-u
0f20: 73 65 72 2d 64 69 73 74 61 6e 63 65 20 28 28 63 ser-distance ((c
0f30: 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 20 28 r (* cairo-t)) (
0f40: 64 78 20 28 2a 20 64 6f 75 62 6c 65 29 29 20 28 dx (* double)) (
0f50: 64 79 20 28 2a 20 64 6f 75 62 6c 65 29 29 29 20 dy (* double)))
0f60: 22 63 61 69 72 6f 5f 64 65 76 69 63 65 5f 74 6f "cairo_device_to
0f70: 5f 75 73 65 72 5f 64 69 73 74 61 6e 63 65 22 29 _user_distance")
0f80: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
0f90: 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 6e unc void cairo-n
0fa0: 65 77 2d 70 61 74 68 20 28 28 63 72 20 28 2a 20 ew-path ((cr (*
0fb0: 63 61 69 72 6f 2d 74 29 29 29 20 22 63 61 69 72 cairo-t))) "cair
0fc0: 6f 5f 6e 65 77 5f 70 61 74 68 22 29 0a 28 64 65 o_new_path").(de
0fd0: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
0fe0: 76 6f 69 64 20 63 61 69 72 6f 2d 6d 6f 76 65 2d void cairo-move-
0ff0: 74 6f 20 28 28 63 72 20 28 2a 20 63 61 69 72 6f to ((cr (* cairo
1000: 2d 74 29 29 20 28 78 20 64 6f 75 62 6c 65 29 20 -t)) (x double)
1010: 28 79 20 64 6f 75 62 6c 65 29 29 20 22 63 61 69 (y double)) "cai
1020: 72 6f 5f 6d 6f 76 65 5f 74 6f 22 29 0a 28 64 65 ro_move_to").(de
1030: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
1040: 76 6f 69 64 20 63 61 69 72 6f 2d 6e 65 77 2d 73 void cairo-new-s
1050: 75 62 2d 70 61 74 68 20 28 28 63 72 20 28 2a 20 ub-path ((cr (*
1060: 63 61 69 72 6f 2d 74 29 29 29 20 22 63 61 69 72 cairo-t))) "cair
1070: 6f 5f 6e 65 77 5f 73 75 62 5f 70 61 74 68 22 29 o_new_sub_path")
1080: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
1090: 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 6c unc void cairo-l
10a0: 69 6e 65 2d 74 6f 20 28 28 63 72 20 28 2a 20 63 ine-to ((cr (* c
10b0: 61 69 72 6f 2d 74 29 29 20 28 78 20 64 6f 75 62 airo-t)) (x doub
10c0: 6c 65 29 20 28 79 20 64 6f 75 62 6c 65 29 29 20 le) (y double))
10d0: 22 63 61 69 72 6f 5f 6c 69 6e 65 5f 74 6f 22 29 "cairo_line_to")
10e0: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
10f0: 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 63 unc void cairo-c
1100: 75 72 76 65 2d 74 6f 20 28 28 63 72 20 28 2a 20 urve-to ((cr (*
1110: 63 61 69 72 6f 2d 74 29 29 20 28 78 31 20 64 6f cairo-t)) (x1 do
1120: 75 62 6c 65 29 20 28 79 31 20 64 6f 75 62 6c 65 uble) (y1 double
1130: 29 20 28 78 32 20 64 6f 75 62 6c 65 29 20 28 79 ) (x2 double) (y
1140: 32 20 64 6f 75 62 6c 65 29 20 28 78 33 20 64 6f 2 double) (x3 do
1150: 75 62 6c 65 29 20 28 79 33 20 64 6f 75 62 6c 65 uble) (y3 double
1160: 29 29 20 22 63 61 69 72 6f 5f 63 75 72 76 65 5f )) "cairo_curve_
1170: 74 6f 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 to").(define-cai
1180: 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 ro-func void cai
1190: 72 6f 2d 61 72 63 20 28 28 63 72 20 28 2a 20 63 ro-arc ((cr (* c
11a0: 61 69 72 6f 2d 74 29 29 20 28 78 63 20 64 6f 75 airo-t)) (xc dou
11b0: 62 6c 65 29 20 28 79 63 20 64 6f 75 62 6c 65 29 ble) (yc double)
11c0: 20 28 72 61 64 69 75 73 20 64 6f 75 62 6c 65 29 (radius double)
11d0: 20 28 61 6e 67 6c 65 31 20 64 6f 75 62 6c 65 29 (angle1 double)
11e0: 20 28 61 6e 67 6c 65 32 20 64 6f 75 62 6c 65 29 (angle2 double)
11f0: 29 20 22 63 61 69 72 6f 5f 61 72 63 22 29 0a 28 ) "cairo_arc").(
1200: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
1210: 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 61 72 63 c void cairo-arc
1220: 2d 6e 65 67 61 74 69 76 65 20 28 28 63 72 20 28 -negative ((cr (
1230: 2a 20 63 61 69 72 6f 2d 74 29 29 20 28 78 63 20 * cairo-t)) (xc
1240: 64 6f 75 62 6c 65 29 20 28 79 63 20 64 6f 75 62 double) (yc doub
1250: 6c 65 29 20 28 72 61 64 69 75 73 20 64 6f 75 62 le) (radius doub
1260: 6c 65 29 20 28 61 6e 67 6c 65 31 20 64 6f 75 62 le) (angle1 doub
1270: 6c 65 29 20 28 61 6e 67 6c 65 32 20 64 6f 75 62 le) (angle2 doub
1280: 6c 65 29 29 20 22 63 61 69 72 6f 5f 61 72 63 5f le)) "cairo_arc_
1290: 6e 65 67 61 74 69 76 65 22 29 0a 28 64 65 66 69 negative").(defi
12a0: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f ne-cairo-func vo
12b0: 69 64 20 63 61 69 72 6f 2d 72 65 6c 2d 6d 6f 76 id cairo-rel-mov
12c0: 65 2d 74 6f 20 28 28 63 72 20 28 2a 20 63 61 69 e-to ((cr (* cai
12d0: 72 6f 2d 74 29 29 20 28 64 78 20 64 6f 75 62 6c ro-t)) (dx doubl
12e0: 65 29 20 28 64 79 20 64 6f 75 62 6c 65 29 29 20 e) (dy double))
12f0: 22 63 61 69 72 6f 5f 72 65 6c 5f 6d 6f 76 65 5f "cairo_rel_move_
1300: 74 6f 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 to").(define-cai
1310: 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 ro-func void cai
1320: 72 6f 2d 72 65 6c 2d 6c 69 6e 65 2d 74 6f 20 28 ro-rel-line-to (
1330: 28 63 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 (cr (* cairo-t))
1340: 20 28 64 78 20 64 6f 75 62 6c 65 29 20 28 64 79 (dx double) (dy
1350: 20 64 6f 75 62 6c 65 29 29 20 22 63 61 69 72 6f double)) "cairo
1360: 5f 72 65 6c 5f 6c 69 6e 65 5f 74 6f 22 29 0a 28 _rel_line_to").(
1370: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
1380: 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 72 65 6c c void cairo-rel
1390: 2d 63 75 72 76 65 2d 74 6f 20 28 28 63 72 20 28 -curve-to ((cr (
13a0: 2a 20 63 61 69 72 6f 2d 74 29 29 20 28 64 78 31 * cairo-t)) (dx1
13b0: 20 64 6f 75 62 6c 65 29 20 28 64 79 31 20 64 6f double) (dy1 do
13c0: 75 62 6c 65 29 20 28 64 78 32 20 64 6f 75 62 6c uble) (dx2 doubl
13d0: 65 29 20 28 64 79 32 20 64 6f 75 62 6c 65 29 20 e) (dy2 double)
13e0: 28 64 78 33 20 64 6f 75 62 6c 65 29 20 28 64 79 (dx3 double) (dy
13f0: 33 20 64 6f 75 62 6c 65 29 29 20 22 63 61 69 72 3 double)) "cair
1400: 6f 5f 72 65 6c 5f 63 75 72 76 65 5f 74 6f 22 29 o_rel_curve_to")
1410: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
1420: 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 72 unc void cairo-r
1430: 65 63 74 61 6e 67 6c 65 20 28 28 63 72 20 28 2a ectangle ((cr (*
1440: 20 63 61 69 72 6f 2d 74 29 29 20 28 78 20 64 6f cairo-t)) (x do
1450: 75 62 6c 65 29 20 28 79 20 64 6f 75 62 6c 65 29 uble) (y double)
1460: 20 28 77 69 64 74 68 20 64 6f 75 62 6c 65 29 20 (width double)
1470: 28 68 65 69 67 68 74 20 64 6f 75 62 6c 65 29 29 (height double))
1480: 20 22 63 61 69 72 6f 5f 72 65 63 74 61 6e 67 6c "cairo_rectangl
1490: 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 e").(define-cair
14a0: 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 o-func void cair
14b0: 6f 2d 63 6c 6f 73 65 2d 70 61 74 68 20 28 28 63 o-close-path ((c
14c0: 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 29 20 r (* cairo-t)))
14d0: 22 63 61 69 72 6f 5f 63 6c 6f 73 65 5f 70 61 74 "cairo_close_pat
14e0: 68 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 h").(define-cair
14f0: 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 o-func void cair
1500: 6f 2d 70 61 74 68 2d 65 78 74 65 6e 74 73 20 28 o-path-extents (
1510: 28 63 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 (cr (* cairo-t))
1520: 20 28 78 31 20 28 2a 20 64 6f 75 62 6c 65 29 29 (x1 (* double))
1530: 20 28 79 31 20 28 2a 20 64 6f 75 62 6c 65 29 29 (y1 (* double))
1540: 20 28 78 32 20 28 2a 20 64 6f 75 62 6c 65 29 29 (x2 (* double))
1550: 20 28 79 32 20 28 2a 20 64 6f 75 62 6c 65 29 29 (y2 (* double))
1560: 29 20 22 63 61 69 72 6f 5f 70 61 74 68 5f 65 78 ) "cairo_path_ex
1570: 74 65 6e 74 73 22 29 0a 28 64 65 66 69 6e 65 2d tents").(define-
1580: 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 cairo-func void
1590: 63 61 69 72 6f 2d 70 61 69 6e 74 20 28 28 63 72 cairo-paint ((cr
15a0: 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 29 20 22 (* cairo-t))) "
15b0: 63 61 69 72 6f 5f 70 61 69 6e 74 22 29 0a 28 64 cairo_paint").(d
15c0: 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 efine-cairo-func
15d0: 20 76 6f 69 64 20 63 61 69 72 6f 2d 70 61 69 6e void cairo-pain
15e0: 74 2d 77 69 74 68 2d 61 6c 70 68 61 20 28 28 63 t-with-alpha ((c
15f0: 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 20 28 r (* cairo-t)) (
1600: 61 6c 70 68 61 20 64 6f 75 62 6c 65 29 29 20 22 alpha double)) "
1610: 63 61 69 72 6f 5f 70 61 69 6e 74 5f 77 69 74 68 cairo_paint_with
1620: 5f 61 6c 70 68 61 22 29 0a 28 64 65 66 69 6e 65 _alpha").(define
1630: 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 -cairo-func void
1640: 20 63 61 69 72 6f 2d 6d 61 73 6b 20 28 28 63 72 cairo-mask ((cr
1650: 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 20 28 70 (* cairo-t)) (p
1660: 61 74 74 65 72 6e 20 28 2a 20 63 61 69 72 6f 2d attern (* cairo-
1670: 70 61 74 74 65 72 6e 2d 74 29 29 29 20 22 63 61 pattern-t))) "ca
1680: 69 72 6f 5f 6d 61 73 6b 22 29 0a 28 64 65 66 69 iro_mask").(defi
1690: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f ne-cairo-func vo
16a0: 69 64 20 63 61 69 72 6f 2d 6d 61 73 6b 2d 73 75 id cairo-mask-su
16b0: 72 66 61 63 65 20 28 28 63 72 20 28 2a 20 63 61 rface ((cr (* ca
16c0: 69 72 6f 2d 74 29 29 20 28 73 75 72 66 61 63 65 iro-t)) (surface
16d0: 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 63 (* cairo-surfac
16e0: 65 2d 74 29 29 20 28 73 75 72 66 61 63 65 5f 78 e-t)) (surface_x
16f0: 20 64 6f 75 62 6c 65 29 20 28 73 75 72 66 61 63 double) (surfac
1700: 65 5f 79 20 64 6f 75 62 6c 65 29 29 20 22 63 61 e_y double)) "ca
1710: 69 72 6f 5f 6d 61 73 6b 5f 73 75 72 66 61 63 65 iro_mask_surface
1720: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
1730: 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f -func void cairo
1740: 2d 73 74 72 6f 6b 65 20 28 28 63 72 20 28 2a 20 -stroke ((cr (*
1750: 63 61 69 72 6f 2d 74 29 29 29 20 22 63 61 69 72 cairo-t))) "cair
1760: 6f 5f 73 74 72 6f 6b 65 22 29 0a 28 64 65 66 69 o_stroke").(defi
1770: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f ne-cairo-func vo
1780: 69 64 20 63 61 69 72 6f 2d 73 74 72 6f 6b 65 2d id cairo-stroke-
1790: 70 72 65 73 65 72 76 65 20 28 28 63 72 20 28 2a preserve ((cr (*
17a0: 20 63 61 69 72 6f 2d 74 29 29 29 20 22 63 61 69 cairo-t))) "cai
17b0: 72 6f 5f 73 74 72 6f 6b 65 5f 70 72 65 73 65 72 ro_stroke_preser
17c0: 76 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 ve").(define-cai
17d0: 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 ro-func void cai
17e0: 72 6f 2d 66 69 6c 6c 20 28 28 63 72 20 28 2a 20 ro-fill ((cr (*
17f0: 63 61 69 72 6f 2d 74 29 29 29 20 22 63 61 69 72 cairo-t))) "cair
1800: 6f 5f 66 69 6c 6c 22 29 0a 28 64 65 66 69 6e 65 o_fill").(define
1810: 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 -cairo-func void
1820: 20 63 61 69 72 6f 2d 66 69 6c 6c 2d 70 72 65 73 cairo-fill-pres
1830: 65 72 76 65 20 28 28 63 72 20 28 2a 20 63 61 69 erve ((cr (* cai
1840: 72 6f 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 66 ro-t))) "cairo_f
1850: 69 6c 6c 5f 70 72 65 73 65 72 76 65 22 29 0a 28 ill_preserve").(
1860: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
1870: 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 63 6f 70 c void cairo-cop
1880: 79 2d 70 61 67 65 20 28 28 63 72 20 28 2a 20 63 y-page ((cr (* c
1890: 61 69 72 6f 2d 74 29 29 29 20 22 63 61 69 72 6f airo-t))) "cairo
18a0: 5f 63 6f 70 79 5f 70 61 67 65 22 29 0a 28 64 65 _copy_page").(de
18b0: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
18c0: 76 6f 69 64 20 63 61 69 72 6f 2d 73 68 6f 77 2d void cairo-show-
18d0: 70 61 67 65 20 28 28 63 72 20 28 2a 20 63 61 69 page ((cr (* cai
18e0: 72 6f 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 73 ro-t))) "cairo_s
18f0: 68 6f 77 5f 70 61 67 65 22 29 0a 28 64 65 66 69 how_page").(defi
1900: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 63 61 ne-cairo-func ca
1910: 69 72 6f 2d 62 6f 6f 6c 2d 74 20 63 61 69 72 6f iro-bool-t cairo
1920: 2d 69 6e 2d 73 74 72 6f 6b 65 20 28 28 63 72 20 -in-stroke ((cr
1930: 28 2a 20 63 61 69 72 6f 2d 74 29 29 20 28 78 20 (* cairo-t)) (x
1940: 64 6f 75 62 6c 65 29 20 28 79 20 64 6f 75 62 6c double) (y doubl
1950: 65 29 29 20 22 63 61 69 72 6f 5f 69 6e 5f 73 74 e)) "cairo_in_st
1960: 72 6f 6b 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 roke").(define-c
1970: 61 69 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d airo-func cairo-
1980: 62 6f 6f 6c 2d 74 20 63 61 69 72 6f 2d 69 6e 2d bool-t cairo-in-
1990: 66 69 6c 6c 20 28 28 63 72 20 28 2a 20 63 61 69 fill ((cr (* cai
19a0: 72 6f 2d 74 29 29 20 28 78 20 64 6f 75 62 6c 65 ro-t)) (x double
19b0: 29 20 28 79 20 64 6f 75 62 6c 65 29 29 20 22 63 ) (y double)) "c
19c0: 61 69 72 6f 5f 69 6e 5f 66 69 6c 6c 22 29 0a 28 airo_in_fill").(
19d0: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
19e0: 63 20 63 61 69 72 6f 2d 62 6f 6f 6c 2d 74 20 63 c cairo-bool-t c
19f0: 61 69 72 6f 2d 69 6e 2d 63 6c 69 70 20 28 28 63 airo-in-clip ((c
1a00: 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 20 28 r (* cairo-t)) (
1a10: 78 20 64 6f 75 62 6c 65 29 20 28 79 20 64 6f 75 x double) (y dou
1a20: 62 6c 65 29 29 20 22 63 61 69 72 6f 5f 69 6e 5f ble)) "cairo_in_
1a30: 63 6c 69 70 22 29 0a 28 64 65 66 69 6e 65 2d 63 clip").(define-c
1a40: 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 airo-func void c
1a50: 61 69 72 6f 2d 73 74 72 6f 6b 65 2d 65 78 74 65 airo-stroke-exte
1a60: 6e 74 73 20 28 28 63 72 20 28 2a 20 63 61 69 72 nts ((cr (* cair
1a70: 6f 2d 74 29 29 20 28 78 31 20 28 2a 20 64 6f 75 o-t)) (x1 (* dou
1a80: 62 6c 65 29 29 20 28 79 31 20 28 2a 20 64 6f 75 ble)) (y1 (* dou
1a90: 62 6c 65 29 29 20 28 78 32 20 28 2a 20 64 6f 75 ble)) (x2 (* dou
1aa0: 62 6c 65 29 29 20 28 79 32 20 28 2a 20 64 6f 75 ble)) (y2 (* dou
1ab0: 62 6c 65 29 29 29 20 22 63 61 69 72 6f 5f 73 74 ble))) "cairo_st
1ac0: 72 6f 6b 65 5f 65 78 74 65 6e 74 73 22 29 0a 28 roke_extents").(
1ad0: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
1ae0: 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 66 69 6c c void cairo-fil
1af0: 6c 2d 65 78 74 65 6e 74 73 20 28 28 63 72 20 28 l-extents ((cr (
1b00: 2a 20 63 61 69 72 6f 2d 74 29 29 20 28 78 31 20 * cairo-t)) (x1
1b10: 28 2a 20 64 6f 75 62 6c 65 29 29 20 28 79 31 20 (* double)) (y1
1b20: 28 2a 20 64 6f 75 62 6c 65 29 29 20 28 78 32 20 (* double)) (x2
1b30: 28 2a 20 64 6f 75 62 6c 65 29 29 20 28 79 32 20 (* double)) (y2
1b40: 28 2a 20 64 6f 75 62 6c 65 29 29 29 20 22 63 61 (* double))) "ca
1b50: 69 72 6f 5f 66 69 6c 6c 5f 65 78 74 65 6e 74 73 iro_fill_extents
1b60: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
1b70: 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f -func void cairo
1b80: 2d 72 65 73 65 74 2d 63 6c 69 70 20 28 28 63 72 -reset-clip ((cr
1b90: 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 29 20 22 (* cairo-t))) "
1ba0: 63 61 69 72 6f 5f 72 65 73 65 74 5f 63 6c 69 70 cairo_reset_clip
1bb0: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
1bc0: 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f -func void cairo
1bd0: 2d 63 6c 69 70 20 28 28 63 72 20 28 2a 20 63 61 -clip ((cr (* ca
1be0: 69 72 6f 2d 74 29 29 29 20 22 63 61 69 72 6f 5f iro-t))) "cairo_
1bf0: 63 6c 69 70 22 29 0a 28 64 65 66 69 6e 65 2d 63 clip").(define-c
1c00: 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 airo-func void c
1c10: 61 69 72 6f 2d 63 6c 69 70 2d 70 72 65 73 65 72 airo-clip-preser
1c20: 76 65 20 28 28 63 72 20 28 2a 20 63 61 69 72 6f ve ((cr (* cairo
1c30: 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 63 6c 69 -t))) "cairo_cli
1c40: 70 5f 70 72 65 73 65 72 76 65 22 29 0a 28 64 65 p_preserve").(de
1c50: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
1c60: 76 6f 69 64 20 63 61 69 72 6f 2d 63 6c 69 70 2d void cairo-clip-
1c70: 65 78 74 65 6e 74 73 20 28 28 63 72 20 28 2a 20 extents ((cr (*
1c80: 63 61 69 72 6f 2d 74 29 29 20 28 78 31 20 28 2a cairo-t)) (x1 (*
1c90: 20 64 6f 75 62 6c 65 29 29 20 28 79 31 20 28 2a double)) (y1 (*
1ca0: 20 64 6f 75 62 6c 65 29 29 20 28 78 32 20 28 2a double)) (x2 (*
1cb0: 20 64 6f 75 62 6c 65 29 29 20 28 79 32 20 28 2a double)) (y2 (*
1cc0: 20 64 6f 75 62 6c 65 29 29 29 20 22 63 61 69 72 double))) "cair
1cd0: 6f 5f 63 6c 69 70 5f 65 78 74 65 6e 74 73 22 29 o_clip_extents")
1ce0: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
1cf0: 75 6e 63 20 28 2a 20 63 61 69 72 6f 2d 72 65 63 unc (* cairo-rec
1d00: 74 61 6e 67 6c 65 2d 6c 69 73 74 2d 74 29 20 63 tangle-list-t) c
1d10: 61 69 72 6f 2d 63 6f 70 79 2d 63 6c 69 70 2d 72 airo-copy-clip-r
1d20: 65 63 74 61 6e 67 6c 65 2d 6c 69 73 74 20 28 28 ectangle-list ((
1d30: 63 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 29 cr (* cairo-t)))
1d40: 20 22 63 61 69 72 6f 5f 63 6f 70 79 5f 63 6c 69 "cairo_copy_cli
1d50: 70 5f 72 65 63 74 61 6e 67 6c 65 5f 6c 69 73 74 p_rectangle_list
1d60: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
1d70: 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f -func void cairo
1d80: 2d 72 65 63 74 61 6e 67 6c 65 2d 6c 69 73 74 2d -rectangle-list-
1d90: 64 65 73 74 72 6f 79 20 28 28 72 65 63 74 61 6e destroy ((rectan
1da0: 67 6c 65 5f 6c 69 73 74 20 28 2a 20 63 61 69 72 gle_list (* cair
1db0: 6f 2d 72 65 63 74 61 6e 67 6c 65 2d 6c 69 73 74 o-rectangle-list
1dc0: 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 72 65 63 -t))) "cairo_rec
1dd0: 74 61 6e 67 6c 65 5f 6c 69 73 74 5f 64 65 73 74 tangle_list_dest
1de0: 72 6f 79 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 roy").(define-ca
1df0: 69 72 6f 2d 66 75 6e 63 20 28 2a 20 63 61 69 72 iro-func (* cair
1e00: 6f 2d 67 6c 79 70 68 2d 74 29 20 63 61 69 72 6f o-glyph-t) cairo
1e10: 2d 67 6c 79 70 68 2d 61 6c 6c 6f 63 61 74 65 20 -glyph-allocate
1e20: 28 28 6e 75 6d 5f 67 6c 79 70 68 73 20 69 6e 74 ((num_glyphs int
1e30: 29 29 20 22 63 61 69 72 6f 5f 67 6c 79 70 68 5f )) "cairo_glyph_
1e40: 61 6c 6c 6f 63 61 74 65 22 29 0a 28 64 65 66 69 allocate").(defi
1e50: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f ne-cairo-func vo
1e60: 69 64 20 63 61 69 72 6f 2d 67 6c 79 70 68 2d 66 id cairo-glyph-f
1e70: 72 65 65 20 28 28 67 6c 79 70 68 73 20 28 2a 20 ree ((glyphs (*
1e80: 63 61 69 72 6f 2d 67 6c 79 70 68 2d 74 29 29 29 cairo-glyph-t)))
1e90: 20 22 63 61 69 72 6f 5f 67 6c 79 70 68 5f 66 72 "cairo_glyph_fr
1ea0: 65 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 ee").(define-cai
1eb0: 72 6f 2d 66 75 6e 63 20 28 2a 20 63 61 69 72 6f ro-func (* cairo
1ec0: 2d 74 65 78 74 2d 63 6c 75 73 74 65 72 2d 74 29 -text-cluster-t)
1ed0: 20 63 61 69 72 6f 2d 74 65 78 74 2d 63 6c 75 73 cairo-text-clus
1ee0: 74 65 72 2d 61 6c 6c 6f 63 61 74 65 20 28 28 6e ter-allocate ((n
1ef0: 75 6d 5f 63 6c 75 73 74 65 72 73 20 69 6e 74 29 um_clusters int)
1f00: 29 20 22 63 61 69 72 6f 5f 74 65 78 74 5f 63 6c ) "cairo_text_cl
1f10: 75 73 74 65 72 5f 61 6c 6c 6f 63 61 74 65 22 29 uster_allocate")
1f20: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
1f30: 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 74 unc void cairo-t
1f40: 65 78 74 2d 63 6c 75 73 74 65 72 2d 66 72 65 65 ext-cluster-free
1f50: 20 28 28 63 6c 75 73 74 65 72 73 20 28 2a 20 63 ((clusters (* c
1f60: 61 69 72 6f 2d 74 65 78 74 2d 63 6c 75 73 74 65 airo-text-cluste
1f70: 72 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 74 65 r-t))) "cairo_te
1f80: 78 74 5f 63 6c 75 73 74 65 72 5f 66 72 65 65 22 xt_cluster_free"
1f90: 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d ).(define-cairo-
1fa0: 66 75 6e 63 20 28 2a 20 63 61 69 72 6f 2d 66 6f func (* cairo-fo
1fb0: 6e 74 2d 6f 70 74 69 6f 6e 73 2d 74 29 20 63 61 nt-options-t) ca
1fc0: 69 72 6f 2d 66 6f 6e 74 2d 6f 70 74 69 6f 6e 73 iro-font-options
1fd0: 2d 63 72 65 61 74 65 20 28 29 20 22 63 61 69 72 -create () "cair
1fe0: 6f 5f 66 6f 6e 74 5f 6f 70 74 69 6f 6e 73 5f 63 o_font_options_c
1ff0: 72 65 61 74 65 22 29 0a 28 64 65 66 69 6e 65 2d reate").(define-
2000: 63 61 69 72 6f 2d 66 75 6e 63 20 28 2a 20 63 61 cairo-func (* ca
2010: 69 72 6f 2d 66 6f 6e 74 2d 6f 70 74 69 6f 6e 73 iro-font-options
2020: 2d 74 29 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 6f -t) cairo-font-o
2030: 70 74 69 6f 6e 73 2d 63 6f 70 79 20 28 28 6f 72 ptions-copy ((or
2040: 69 67 69 6e 61 6c 20 28 2a 20 63 61 69 72 6f 2d iginal (* cairo-
2050: 66 6f 6e 74 2d 6f 70 74 69 6f 6e 73 2d 74 29 29 font-options-t))
2060: 29 20 22 63 61 69 72 6f 5f 66 6f 6e 74 5f 6f 70 ) "cairo_font_op
2070: 74 69 6f 6e 73 5f 63 6f 70 79 22 29 0a 28 64 65 tions_copy").(de
2080: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
2090: 76 6f 69 64 20 63 61 69 72 6f 2d 66 6f 6e 74 2d void cairo-font-
20a0: 6f 70 74 69 6f 6e 73 2d 64 65 73 74 72 6f 79 20 options-destroy
20b0: 28 28 6f 70 74 69 6f 6e 73 20 28 2a 20 63 61 69 ((options (* cai
20c0: 72 6f 2d 66 6f 6e 74 2d 6f 70 74 69 6f 6e 73 2d ro-font-options-
20d0: 74 29 29 29 20 22 63 61 69 72 6f 5f 66 6f 6e 74 t))) "cairo_font
20e0: 5f 6f 70 74 69 6f 6e 73 5f 64 65 73 74 72 6f 79 _options_destroy
20f0: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
2100: 2d 66 75 6e 63 20 63 61 69 72 6f 2d 73 74 61 74 -func cairo-stat
2110: 75 73 2d 74 20 63 61 69 72 6f 2d 66 6f 6e 74 2d us-t cairo-font-
2120: 6f 70 74 69 6f 6e 73 2d 73 74 61 74 75 73 20 28 options-status (
2130: 28 6f 70 74 69 6f 6e 73 20 28 2a 20 63 61 69 72 (options (* cair
2140: 6f 2d 66 6f 6e 74 2d 6f 70 74 69 6f 6e 73 2d 74 o-font-options-t
2150: 29 29 29 20 22 63 61 69 72 6f 5f 66 6f 6e 74 5f ))) "cairo_font_
2160: 6f 70 74 69 6f 6e 73 5f 73 74 61 74 75 73 22 29 options_status")
2170: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
2180: 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 66 unc void cairo-f
2190: 6f 6e 74 2d 6f 70 74 69 6f 6e 73 2d 6d 65 72 67 ont-options-merg
21a0: 65 20 28 28 6f 70 74 69 6f 6e 73 20 28 2a 20 63 e ((options (* c
21b0: 61 69 72 6f 2d 66 6f 6e 74 2d 6f 70 74 69 6f 6e airo-font-option
21c0: 73 2d 74 29 29 20 28 6f 74 68 65 72 20 28 2a 20 s-t)) (other (*
21d0: 63 61 69 72 6f 2d 66 6f 6e 74 2d 6f 70 74 69 6f cairo-font-optio
21e0: 6e 73 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 66 ns-t))) "cairo_f
21f0: 6f 6e 74 5f 6f 70 74 69 6f 6e 73 5f 6d 65 72 67 ont_options_merg
2200: 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 e").(define-cair
2210: 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 62 6f 6f o-func cairo-boo
2220: 6c 2d 74 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 6f l-t cairo-font-o
2230: 70 74 69 6f 6e 73 2d 65 71 75 61 6c 20 28 28 6f ptions-equal ((o
2240: 70 74 69 6f 6e 73 20 28 2a 20 63 61 69 72 6f 2d ptions (* cairo-
2250: 66 6f 6e 74 2d 6f 70 74 69 6f 6e 73 2d 74 29 29 font-options-t))
2260: 20 28 6f 74 68 65 72 20 28 2a 20 63 61 69 72 6f (other (* cairo
2270: 2d 66 6f 6e 74 2d 6f 70 74 69 6f 6e 73 2d 74 29 -font-options-t)
2280: 29 29 20 22 63 61 69 72 6f 5f 66 6f 6e 74 5f 6f )) "cairo_font_o
2290: 70 74 69 6f 6e 73 5f 65 71 75 61 6c 22 29 0a 28 ptions_equal").(
22a0: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
22b0: 63 20 75 6e 73 69 67 6e 65 64 2d 6c 6f 6e 67 20 c unsigned-long
22c0: 63 61 69 72 6f 2d 66 6f 6e 74 2d 6f 70 74 69 6f cairo-font-optio
22d0: 6e 73 2d 68 61 73 68 20 28 28 6f 70 74 69 6f 6e ns-hash ((option
22e0: 73 20 28 2a 20 63 61 69 72 6f 2d 66 6f 6e 74 2d s (* cairo-font-
22f0: 6f 70 74 69 6f 6e 73 2d 74 29 29 29 20 22 63 61 options-t))) "ca
2300: 69 72 6f 5f 66 6f 6e 74 5f 6f 70 74 69 6f 6e 73 iro_font_options
2310: 5f 68 61 73 68 22 29 0a 28 64 65 66 69 6e 65 2d _hash").(define-
2320: 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 cairo-func void
2330: 63 61 69 72 6f 2d 66 6f 6e 74 2d 6f 70 74 69 6f cairo-font-optio
2340: 6e 73 2d 73 65 74 2d 61 6e 74 69 61 6c 69 61 73 ns-set-antialias
2350: 20 28 28 6f 70 74 69 6f 6e 73 20 28 2a 20 63 61 ((options (* ca
2360: 69 72 6f 2d 66 6f 6e 74 2d 6f 70 74 69 6f 6e 73 iro-font-options
2370: 2d 74 29 29 20 28 61 6e 74 69 61 6c 69 61 73 20 -t)) (antialias
2380: 63 61 69 72 6f 2d 61 6e 74 69 61 6c 69 61 73 2d cairo-antialias-
2390: 74 29 29 20 22 63 61 69 72 6f 5f 66 6f 6e 74 5f t)) "cairo_font_
23a0: 6f 70 74 69 6f 6e 73 5f 73 65 74 5f 61 6e 74 69 options_set_anti
23b0: 61 6c 69 61 73 22 29 0a 28 64 65 66 69 6e 65 2d alias").(define-
23c0: 63 61 69 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f cairo-func cairo
23d0: 2d 61 6e 74 69 61 6c 69 61 73 2d 74 20 63 61 69 -antialias-t cai
23e0: 72 6f 2d 66 6f 6e 74 2d 6f 70 74 69 6f 6e 73 2d ro-font-options-
23f0: 67 65 74 2d 61 6e 74 69 61 6c 69 61 73 20 28 28 get-antialias ((
2400: 6f 70 74 69 6f 6e 73 20 28 2a 20 63 61 69 72 6f options (* cairo
2410: 2d 66 6f 6e 74 2d 6f 70 74 69 6f 6e 73 2d 74 29 -font-options-t)
2420: 29 29 20 22 63 61 69 72 6f 5f 66 6f 6e 74 5f 6f )) "cairo_font_o
2430: 70 74 69 6f 6e 73 5f 67 65 74 5f 61 6e 74 69 61 ptions_get_antia
2440: 6c 69 61 73 22 29 0a 28 64 65 66 69 6e 65 2d 63 lias").(define-c
2450: 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 airo-func void c
2460: 61 69 72 6f 2d 66 6f 6e 74 2d 6f 70 74 69 6f 6e airo-font-option
2470: 73 2d 73 65 74 2d 73 75 62 70 69 78 65 6c 2d 6f s-set-subpixel-o
2480: 72 64 65 72 20 28 28 6f 70 74 69 6f 6e 73 20 28 rder ((options (
2490: 2a 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 6f 70 74 * cairo-font-opt
24a0: 69 6f 6e 73 2d 74 29 29 20 28 73 75 62 70 69 78 ions-t)) (subpix
24b0: 65 6c 5f 6f 72 64 65 72 20 63 61 69 72 6f 2d 73 el_order cairo-s
24c0: 75 62 70 69 78 65 6c 2d 6f 72 64 65 72 2d 74 29 ubpixel-order-t)
24d0: 29 20 22 63 61 69 72 6f 5f 66 6f 6e 74 5f 6f 70 ) "cairo_font_op
24e0: 74 69 6f 6e 73 5f 73 65 74 5f 73 75 62 70 69 78 tions_set_subpix
24f0: 65 6c 5f 6f 72 64 65 72 22 29 0a 28 64 65 66 69 el_order").(defi
2500: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 63 61 ne-cairo-func ca
2510: 69 72 6f 2d 73 75 62 70 69 78 65 6c 2d 6f 72 64 iro-subpixel-ord
2520: 65 72 2d 74 20 63 61 69 72 6f 2d 66 6f 6e 74 2d er-t cairo-font-
2530: 6f 70 74 69 6f 6e 73 2d 67 65 74 2d 73 75 62 70 options-get-subp
2540: 69 78 65 6c 2d 6f 72 64 65 72 20 28 28 6f 70 74 ixel-order ((opt
2550: 69 6f 6e 73 20 28 2a 20 63 61 69 72 6f 2d 66 6f ions (* cairo-fo
2560: 6e 74 2d 6f 70 74 69 6f 6e 73 2d 74 29 29 29 20 nt-options-t)))
2570: 22 63 61 69 72 6f 5f 66 6f 6e 74 5f 6f 70 74 69 "cairo_font_opti
2580: 6f 6e 73 5f 67 65 74 5f 73 75 62 70 69 78 65 6c ons_get_subpixel
2590: 5f 6f 72 64 65 72 22 29 0a 28 64 65 66 69 6e 65 _order").(define
25a0: 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 -cairo-func void
25b0: 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 6f 70 74 69 cairo-font-opti
25c0: 6f 6e 73 2d 73 65 74 2d 68 69 6e 74 2d 73 74 79 ons-set-hint-sty
25d0: 6c 65 20 28 28 6f 70 74 69 6f 6e 73 20 28 2a 20 le ((options (*
25e0: 63 61 69 72 6f 2d 66 6f 6e 74 2d 6f 70 74 69 6f cairo-font-optio
25f0: 6e 73 2d 74 29 29 20 28 68 69 6e 74 5f 73 74 79 ns-t)) (hint_sty
2600: 6c 65 20 63 61 69 72 6f 2d 68 69 6e 74 2d 73 74 le cairo-hint-st
2610: 79 6c 65 2d 74 29 29 20 22 63 61 69 72 6f 5f 66 yle-t)) "cairo_f
2620: 6f 6e 74 5f 6f 70 74 69 6f 6e 73 5f 73 65 74 5f ont_options_set_
2630: 68 69 6e 74 5f 73 74 79 6c 65 22 29 0a 28 64 65 hint_style").(de
2640: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
2650: 63 61 69 72 6f 2d 68 69 6e 74 2d 73 74 79 6c 65 cairo-hint-style
2660: 2d 74 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 6f 70 -t cairo-font-op
2670: 74 69 6f 6e 73 2d 67 65 74 2d 68 69 6e 74 2d 73 tions-get-hint-s
2680: 74 79 6c 65 20 28 28 6f 70 74 69 6f 6e 73 20 28 tyle ((options (
2690: 2a 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 6f 70 74 * cairo-font-opt
26a0: 69 6f 6e 73 2d 74 29 29 29 20 22 63 61 69 72 6f ions-t))) "cairo
26b0: 5f 66 6f 6e 74 5f 6f 70 74 69 6f 6e 73 5f 67 65 _font_options_ge
26c0: 74 5f 68 69 6e 74 5f 73 74 79 6c 65 22 29 0a 28 t_hint_style").(
26d0: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
26e0: 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 66 6f 6e c void cairo-fon
26f0: 74 2d 6f 70 74 69 6f 6e 73 2d 73 65 74 2d 68 69 t-options-set-hi
2700: 6e 74 2d 6d 65 74 72 69 63 73 20 28 28 6f 70 74 nt-metrics ((opt
2710: 69 6f 6e 73 20 28 2a 20 63 61 69 72 6f 2d 66 6f ions (* cairo-fo
2720: 6e 74 2d 6f 70 74 69 6f 6e 73 2d 74 29 29 20 28 nt-options-t)) (
2730: 68 69 6e 74 5f 6d 65 74 72 69 63 73 20 63 61 69 hint_metrics cai
2740: 72 6f 2d 68 69 6e 74 2d 6d 65 74 72 69 63 73 2d ro-hint-metrics-
2750: 74 29 29 20 22 63 61 69 72 6f 5f 66 6f 6e 74 5f t)) "cairo_font_
2760: 6f 70 74 69 6f 6e 73 5f 73 65 74 5f 68 69 6e 74 options_set_hint
2770: 5f 6d 65 74 72 69 63 73 22 29 0a 28 64 65 66 69 _metrics").(defi
2780: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 63 61 ne-cairo-func ca
2790: 69 72 6f 2d 68 69 6e 74 2d 6d 65 74 72 69 63 73 iro-hint-metrics
27a0: 2d 74 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 6f 70 -t cairo-font-op
27b0: 74 69 6f 6e 73 2d 67 65 74 2d 68 69 6e 74 2d 6d tions-get-hint-m
27c0: 65 74 72 69 63 73 20 28 28 6f 70 74 69 6f 6e 73 etrics ((options
27d0: 20 28 2a 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 6f (* cairo-font-o
27e0: 70 74 69 6f 6e 73 2d 74 29 29 29 20 22 63 61 69 ptions-t))) "cai
27f0: 72 6f 5f 66 6f 6e 74 5f 6f 70 74 69 6f 6e 73 5f ro_font_options_
2800: 67 65 74 5f 68 69 6e 74 5f 6d 65 74 72 69 63 73 get_hint_metrics
2810: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
2820: 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f -func void cairo
2830: 2d 73 65 6c 65 63 74 2d 66 6f 6e 74 2d 66 61 63 -select-font-fac
2840: 65 20 28 28 63 72 20 28 2a 20 63 61 69 72 6f 2d e ((cr (* cairo-
2850: 74 29 29 20 28 66 61 6d 69 6c 79 20 73 74 72 69 t)) (family stri
2860: 6e 67 29 20 28 73 6c 61 6e 74 20 63 61 69 72 6f ng) (slant cairo
2870: 2d 66 6f 6e 74 2d 73 6c 61 6e 74 2d 74 29 20 28 -font-slant-t) (
2880: 77 65 69 67 68 74 20 63 61 69 72 6f 2d 66 6f 6e weight cairo-fon
2890: 74 2d 77 65 69 67 68 74 2d 74 29 29 20 22 63 61 t-weight-t)) "ca
28a0: 69 72 6f 5f 73 65 6c 65 63 74 5f 66 6f 6e 74 5f iro_select_font_
28b0: 66 61 63 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 face").(define-c
28c0: 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 airo-func void c
28d0: 61 69 72 6f 2d 73 65 74 2d 66 6f 6e 74 2d 73 69 airo-set-font-si
28e0: 7a 65 20 28 28 63 72 20 28 2a 20 63 61 69 72 6f ze ((cr (* cairo
28f0: 2d 74 29 29 20 28 73 69 7a 65 20 64 6f 75 62 6c -t)) (size doubl
2900: 65 29 29 20 22 63 61 69 72 6f 5f 73 65 74 5f 66 e)) "cairo_set_f
2910: 6f 6e 74 5f 73 69 7a 65 22 29 0a 28 64 65 66 69 ont_size").(defi
2920: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f ne-cairo-func vo
2930: 69 64 20 63 61 69 72 6f 2d 73 65 74 2d 66 6f 6e id cairo-set-fon
2940: 74 2d 6d 61 74 72 69 78 20 28 28 63 72 20 28 2a t-matrix ((cr (*
2950: 20 63 61 69 72 6f 2d 74 29 29 20 28 6d 61 74 72 cairo-t)) (matr
2960: 69 78 20 28 2a 20 63 61 69 72 6f 2d 6d 61 74 72 ix (* cairo-matr
2970: 69 78 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 73 ix-t))) "cairo_s
2980: 65 74 5f 66 6f 6e 74 5f 6d 61 74 72 69 78 22 29 et_font_matrix")
2990: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
29a0: 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 67 unc void cairo-g
29b0: 65 74 2d 66 6f 6e 74 2d 6d 61 74 72 69 78 20 28 et-font-matrix (
29c0: 28 63 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 (cr (* cairo-t))
29d0: 20 28 6d 61 74 72 69 78 20 28 2a 20 63 61 69 72 (matrix (* cair
29e0: 6f 2d 6d 61 74 72 69 78 2d 74 29 29 29 20 22 63 o-matrix-t))) "c
29f0: 61 69 72 6f 5f 67 65 74 5f 66 6f 6e 74 5f 6d 61 airo_get_font_ma
2a00: 74 72 69 78 22 29 0a 28 64 65 66 69 6e 65 2d 63 trix").(define-c
2a10: 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 airo-func void c
2a20: 61 69 72 6f 2d 73 65 74 2d 66 6f 6e 74 2d 6f 70 airo-set-font-op
2a30: 74 69 6f 6e 73 20 28 28 63 72 20 28 2a 20 63 61 tions ((cr (* ca
2a40: 69 72 6f 2d 74 29 29 20 28 6f 70 74 69 6f 6e 73 iro-t)) (options
2a50: 20 28 2a 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 6f (* cairo-font-o
2a60: 70 74 69 6f 6e 73 2d 74 29 29 29 20 22 63 61 69 ptions-t))) "cai
2a70: 72 6f 5f 73 65 74 5f 66 6f 6e 74 5f 6f 70 74 69 ro_set_font_opti
2a80: 6f 6e 73 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 ons").(define-ca
2a90: 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 iro-func void ca
2aa0: 69 72 6f 2d 67 65 74 2d 66 6f 6e 74 2d 6f 70 74 iro-get-font-opt
2ab0: 69 6f 6e 73 20 28 28 63 72 20 28 2a 20 63 61 69 ions ((cr (* cai
2ac0: 72 6f 2d 74 29 29 20 28 6f 70 74 69 6f 6e 73 20 ro-t)) (options
2ad0: 28 2a 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 6f 70 (* cairo-font-op
2ae0: 74 69 6f 6e 73 2d 74 29 29 29 20 22 63 61 69 72 tions-t))) "cair
2af0: 6f 5f 67 65 74 5f 66 6f 6e 74 5f 6f 70 74 69 6f o_get_font_optio
2b00: 6e 73 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 ns").(define-cai
2b10: 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 ro-func void cai
2b20: 72 6f 2d 73 65 74 2d 66 6f 6e 74 2d 66 61 63 65 ro-set-font-face
2b30: 20 28 28 63 72 20 28 2a 20 63 61 69 72 6f 2d 74 ((cr (* cairo-t
2b40: 29 29 20 28 66 6f 6e 74 5f 66 61 63 65 20 28 2a )) (font_face (*
2b50: 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 66 61 63 65 cairo-font-face
2b60: 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 73 65 74 -t))) "cairo_set
2b70: 5f 66 6f 6e 74 5f 66 61 63 65 22 29 0a 28 64 65 _font_face").(de
2b80: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
2b90: 28 2a 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 66 61 (* cairo-font-fa
2ba0: 63 65 2d 74 29 20 63 61 69 72 6f 2d 67 65 74 2d ce-t) cairo-get-
2bb0: 66 6f 6e 74 2d 66 61 63 65 20 28 28 63 72 20 28 font-face ((cr (
2bc0: 2a 20 63 61 69 72 6f 2d 74 29 29 29 20 22 63 61 * cairo-t))) "ca
2bd0: 69 72 6f 5f 67 65 74 5f 66 6f 6e 74 5f 66 61 63 iro_get_font_fac
2be0: 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 e").(define-cair
2bf0: 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 o-func void cair
2c00: 6f 2d 73 65 74 2d 73 63 61 6c 65 64 2d 66 6f 6e o-set-scaled-fon
2c10: 74 20 28 28 63 72 20 28 2a 20 63 61 69 72 6f 2d t ((cr (* cairo-
2c20: 74 29 29 20 28 73 63 61 6c 65 64 5f 66 6f 6e 74 t)) (scaled_font
2c30: 20 28 2a 20 63 61 69 72 6f 2d 73 63 61 6c 65 64 (* cairo-scaled
2c40: 2d 66 6f 6e 74 2d 74 29 29 29 20 22 63 61 69 72 -font-t))) "cair
2c50: 6f 5f 73 65 74 5f 73 63 61 6c 65 64 5f 66 6f 6e o_set_scaled_fon
2c60: 74 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 t").(define-cair
2c70: 6f 2d 66 75 6e 63 20 28 2a 20 63 61 69 72 6f 2d o-func (* cairo-
2c80: 73 63 61 6c 65 64 2d 66 6f 6e 74 2d 74 29 20 63 scaled-font-t) c
2c90: 61 69 72 6f 2d 67 65 74 2d 73 63 61 6c 65 64 2d airo-get-scaled-
2ca0: 66 6f 6e 74 20 28 28 63 72 20 28 2a 20 63 61 69 font ((cr (* cai
2cb0: 72 6f 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 67 ro-t))) "cairo_g
2cc0: 65 74 5f 73 63 61 6c 65 64 5f 66 6f 6e 74 22 29 et_scaled_font")
2cd0: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
2ce0: 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 73 unc void cairo-s
2cf0: 68 6f 77 2d 74 65 78 74 20 28 28 63 72 20 28 2a how-text ((cr (*
2d00: 20 63 61 69 72 6f 2d 74 29 29 20 28 75 74 66 38 cairo-t)) (utf8
2d10: 20 73 74 72 69 6e 67 29 29 20 22 63 61 69 72 6f string)) "cairo
2d20: 5f 73 68 6f 77 5f 74 65 78 74 22 29 0a 28 64 65 _show_text").(de
2d30: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
2d40: 76 6f 69 64 20 63 61 69 72 6f 2d 73 68 6f 77 2d void cairo-show-
2d50: 67 6c 79 70 68 73 20 28 28 63 72 20 28 2a 20 63 glyphs ((cr (* c
2d60: 61 69 72 6f 2d 74 29 29 20 28 67 6c 79 70 68 73 airo-t)) (glyphs
2d70: 20 28 2a 20 63 61 69 72 6f 2d 67 6c 79 70 68 2d (* cairo-glyph-
2d80: 74 29 29 20 28 6e 75 6d 5f 67 6c 79 70 68 73 20 t)) (num_glyphs
2d90: 69 6e 74 29 29 20 22 63 61 69 72 6f 5f 73 68 6f int)) "cairo_sho
2da0: 77 5f 67 6c 79 70 68 73 22 29 0a 28 64 65 66 69 w_glyphs").(defi
2db0: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f ne-cairo-func vo
2dc0: 69 64 20 63 61 69 72 6f 2d 73 68 6f 77 2d 74 65 id cairo-show-te
2dd0: 78 74 2d 67 6c 79 70 68 73 20 28 28 63 72 20 28 xt-glyphs ((cr (
2de0: 2a 20 63 61 69 72 6f 2d 74 29 29 20 28 75 74 66 * cairo-t)) (utf
2df0: 38 20 73 74 72 69 6e 67 29 20 28 75 74 66 38 5f 8 string) (utf8_
2e00: 6c 65 6e 20 69 6e 74 29 20 28 67 6c 79 70 68 73 len int) (glyphs
2e10: 20 28 2a 20 63 61 69 72 6f 2d 67 6c 79 70 68 2d (* cairo-glyph-
2e20: 74 29 29 20 28 6e 75 6d 5f 67 6c 79 70 68 73 20 t)) (num_glyphs
2e30: 69 6e 74 29 20 28 63 6c 75 73 74 65 72 73 20 28 int) (clusters (
2e40: 2a 20 63 61 69 72 6f 2d 74 65 78 74 2d 63 6c 75 * cairo-text-clu
2e50: 73 74 65 72 2d 74 29 29 20 28 6e 75 6d 5f 63 6c ster-t)) (num_cl
2e60: 75 73 74 65 72 73 20 69 6e 74 29 20 28 63 6c 75 usters int) (clu
2e70: 73 74 65 72 5f 66 6c 61 67 73 20 63 61 69 72 6f ster_flags cairo
2e80: 2d 74 65 78 74 2d 63 6c 75 73 74 65 72 2d 66 6c -text-cluster-fl
2e90: 61 67 73 2d 74 29 29 20 22 63 61 69 72 6f 5f 73 ags-t)) "cairo_s
2ea0: 68 6f 77 5f 74 65 78 74 5f 67 6c 79 70 68 73 22 how_text_glyphs"
2eb0: 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d ).(define-cairo-
2ec0: 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d func void cairo-
2ed0: 74 65 78 74 2d 70 61 74 68 20 28 28 63 72 20 28 text-path ((cr (
2ee0: 2a 20 63 61 69 72 6f 2d 74 29 29 20 28 75 74 66 * cairo-t)) (utf
2ef0: 38 20 73 74 72 69 6e 67 29 29 20 22 63 61 69 72 8 string)) "cair
2f00: 6f 5f 74 65 78 74 5f 70 61 74 68 22 29 0a 28 64 o_text_path").(d
2f10: 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 efine-cairo-func
2f20: 20 76 6f 69 64 20 63 61 69 72 6f 2d 67 6c 79 70 void cairo-glyp
2f30: 68 2d 70 61 74 68 20 28 28 63 72 20 28 2a 20 63 h-path ((cr (* c
2f40: 61 69 72 6f 2d 74 29 29 20 28 67 6c 79 70 68 73 airo-t)) (glyphs
2f50: 20 28 2a 20 63 61 69 72 6f 2d 67 6c 79 70 68 2d (* cairo-glyph-
2f60: 74 29 29 20 28 6e 75 6d 5f 67 6c 79 70 68 73 20 t)) (num_glyphs
2f70: 69 6e 74 29 29 20 22 63 61 69 72 6f 5f 67 6c 79 int)) "cairo_gly
2f80: 70 68 5f 70 61 74 68 22 29 0a 28 64 65 66 69 6e ph_path").(defin
2f90: 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 e-cairo-func voi
2fa0: 64 20 63 61 69 72 6f 2d 74 65 78 74 2d 65 78 74 d cairo-text-ext
2fb0: 65 6e 74 73 20 28 28 63 72 20 28 2a 20 63 61 69 ents ((cr (* cai
2fc0: 72 6f 2d 74 29 29 20 28 75 74 66 38 20 73 74 72 ro-t)) (utf8 str
2fd0: 69 6e 67 29 20 28 65 78 74 65 6e 74 73 20 28 2a ing) (extents (*
2fe0: 20 63 61 69 72 6f 2d 74 65 78 74 2d 65 78 74 65 cairo-text-exte
2ff0: 6e 74 73 2d 74 29 29 29 20 22 63 61 69 72 6f 5f nts-t))) "cairo_
3000: 74 65 78 74 5f 65 78 74 65 6e 74 73 22 29 0a 28 text_extents").(
3010: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
3020: 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 67 6c 79 c void cairo-gly
3030: 70 68 2d 65 78 74 65 6e 74 73 20 28 28 63 72 20 ph-extents ((cr
3040: 28 2a 20 63 61 69 72 6f 2d 74 29 29 20 28 67 6c (* cairo-t)) (gl
3050: 79 70 68 73 20 28 2a 20 63 61 69 72 6f 2d 67 6c yphs (* cairo-gl
3060: 79 70 68 2d 74 29 29 20 28 6e 75 6d 5f 67 6c 79 yph-t)) (num_gly
3070: 70 68 73 20 69 6e 74 29 20 28 65 78 74 65 6e 74 phs int) (extent
3080: 73 20 28 2a 20 63 61 69 72 6f 2d 74 65 78 74 2d s (* cairo-text-
3090: 65 78 74 65 6e 74 73 2d 74 29 29 29 20 22 63 61 extents-t))) "ca
30a0: 69 72 6f 5f 67 6c 79 70 68 5f 65 78 74 65 6e 74 iro_glyph_extent
30b0: 73 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 s").(define-cair
30c0: 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 o-func void cair
30d0: 6f 2d 66 6f 6e 74 2d 65 78 74 65 6e 74 73 20 28 o-font-extents (
30e0: 28 63 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 (cr (* cairo-t))
30f0: 20 28 65 78 74 65 6e 74 73 20 28 2a 20 63 61 69 (extents (* cai
3100: 72 6f 2d 66 6f 6e 74 2d 65 78 74 65 6e 74 73 2d ro-font-extents-
3110: 74 29 29 29 20 22 63 61 69 72 6f 5f 66 6f 6e 74 t))) "cairo_font
3120: 5f 65 78 74 65 6e 74 73 22 29 0a 28 64 65 66 69 _extents").(defi
3130: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 28 2a ne-cairo-func (*
3140: 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 66 61 63 65 cairo-font-face
3150: 2d 74 29 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 66 -t) cairo-font-f
3160: 61 63 65 2d 72 65 66 65 72 65 6e 63 65 20 28 28 ace-reference ((
3170: 66 6f 6e 74 5f 66 61 63 65 20 28 2a 20 63 61 69 font_face (* cai
3180: 72 6f 2d 66 6f 6e 74 2d 66 61 63 65 2d 74 29 29 ro-font-face-t))
3190: 29 20 22 63 61 69 72 6f 5f 66 6f 6e 74 5f 66 61 ) "cairo_font_fa
31a0: 63 65 5f 72 65 66 65 72 65 6e 63 65 22 29 0a 28 ce_reference").(
31b0: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
31c0: 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 66 6f 6e c void cairo-fon
31d0: 74 2d 66 61 63 65 2d 64 65 73 74 72 6f 79 20 28 t-face-destroy (
31e0: 28 66 6f 6e 74 5f 66 61 63 65 20 28 2a 20 63 61 (font_face (* ca
31f0: 69 72 6f 2d 66 6f 6e 74 2d 66 61 63 65 2d 74 29 iro-font-face-t)
3200: 29 29 20 22 63 61 69 72 6f 5f 66 6f 6e 74 5f 66 )) "cairo_font_f
3210: 61 63 65 5f 64 65 73 74 72 6f 79 22 29 0a 28 64 ace_destroy").(d
3220: 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 efine-cairo-func
3230: 20 75 6e 73 69 67 6e 65 64 2d 69 6e 74 20 63 61 unsigned-int ca
3240: 69 72 6f 2d 66 6f 6e 74 2d 66 61 63 65 2d 67 65 iro-font-face-ge
3250: 74 2d 72 65 66 65 72 65 6e 63 65 2d 63 6f 75 6e t-reference-coun
3260: 74 20 28 28 66 6f 6e 74 5f 66 61 63 65 20 28 2a t ((font_face (*
3270: 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 66 61 63 65 cairo-font-face
3280: 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 66 6f 6e -t))) "cairo_fon
3290: 74 5f 66 61 63 65 5f 67 65 74 5f 72 65 66 65 72 t_face_get_refer
32a0: 65 6e 63 65 5f 63 6f 75 6e 74 22 29 0a 28 64 65 ence_count").(de
32b0: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
32c0: 63 61 69 72 6f 2d 73 74 61 74 75 73 2d 74 20 63 cairo-status-t c
32d0: 61 69 72 6f 2d 66 6f 6e 74 2d 66 61 63 65 2d 73 airo-font-face-s
32e0: 74 61 74 75 73 20 28 28 66 6f 6e 74 5f 66 61 63 tatus ((font_fac
32f0: 65 20 28 2a 20 63 61 69 72 6f 2d 66 6f 6e 74 2d e (* cairo-font-
3300: 66 61 63 65 2d 74 29 29 29 20 22 63 61 69 72 6f face-t))) "cairo
3310: 5f 66 6f 6e 74 5f 66 61 63 65 5f 73 74 61 74 75 _font_face_statu
3320: 73 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 s").(define-cair
3330: 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 66 6f 6e o-func cairo-fon
3340: 74 2d 74 79 70 65 2d 74 20 63 61 69 72 6f 2d 66 t-type-t cairo-f
3350: 6f 6e 74 2d 66 61 63 65 2d 67 65 74 2d 74 79 70 ont-face-get-typ
3360: 65 20 28 28 66 6f 6e 74 5f 66 61 63 65 20 28 2a e ((font_face (*
3370: 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 66 61 63 65 cairo-font-face
3380: 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 66 6f 6e -t))) "cairo_fon
3390: 74 5f 66 61 63 65 5f 67 65 74 5f 74 79 70 65 22 t_face_get_type"
33a0: 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d ).(define-cairo-
33b0: 66 75 6e 63 20 76 6f 69 64 2a 20 63 61 69 72 6f func void* cairo
33c0: 2d 66 6f 6e 74 2d 66 61 63 65 2d 67 65 74 2d 75 -font-face-get-u
33d0: 73 65 72 2d 64 61 74 61 20 28 28 66 6f 6e 74 5f ser-data ((font_
33e0: 66 61 63 65 20 28 2a 20 63 61 69 72 6f 2d 66 6f face (* cairo-fo
33f0: 6e 74 2d 66 61 63 65 2d 74 29 29 20 28 6b 65 79 nt-face-t)) (key
3400: 20 28 2a 20 63 61 69 72 6f 2d 75 73 65 72 2d 64 (* cairo-user-d
3410: 61 74 61 2d 6b 65 79 2d 74 29 29 29 20 22 63 61 ata-key-t))) "ca
3420: 69 72 6f 5f 66 6f 6e 74 5f 66 61 63 65 5f 67 65 iro_font_face_ge
3430: 74 5f 75 73 65 72 5f 64 61 74 61 22 29 0a 28 64 t_user_data").(d
3440: 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 efine-cairo-func
3450: 20 63 61 69 72 6f 2d 73 74 61 74 75 73 2d 74 20 cairo-status-t
3460: 63 61 69 72 6f 2d 66 6f 6e 74 2d 66 61 63 65 2d cairo-font-face-
3470: 73 65 74 2d 75 73 65 72 2d 64 61 74 61 20 28 28 set-user-data ((
3480: 66 6f 6e 74 5f 66 61 63 65 20 28 2a 20 63 61 69 font_face (* cai
3490: 72 6f 2d 66 6f 6e 74 2d 66 61 63 65 2d 74 29 29 ro-font-face-t))
34a0: 20 28 6b 65 79 20 28 2a 20 63 61 69 72 6f 2d 75 (key (* cairo-u
34b0: 73 65 72 2d 64 61 74 61 2d 6b 65 79 2d 74 29 29 ser-data-key-t))
34c0: 20 28 75 73 65 72 5f 64 61 74 61 20 76 6f 69 64 (user_data void
34d0: 2a 29 20 28 64 65 73 74 72 6f 79 20 63 61 69 72 *) (destroy cair
34e0: 6f 2d 64 65 73 74 72 6f 79 2d 66 75 6e 63 2d 74 o-destroy-func-t
34f0: 29 29 20 22 63 61 69 72 6f 5f 66 6f 6e 74 5f 66 )) "cairo_font_f
3500: 61 63 65 5f 73 65 74 5f 75 73 65 72 5f 64 61 74 ace_set_user_dat
3510: 61 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 a").(define-cair
3520: 6f 2d 66 75 6e 63 20 28 2a 20 63 61 69 72 6f 2d o-func (* cairo-
3530: 73 63 61 6c 65 64 2d 66 6f 6e 74 2d 74 29 20 63 scaled-font-t) c
3540: 61 69 72 6f 2d 73 63 61 6c 65 64 2d 66 6f 6e 74 airo-scaled-font
3550: 2d 63 72 65 61 74 65 20 28 28 66 6f 6e 74 5f 66 -create ((font_f
3560: 61 63 65 20 28 2a 20 63 61 69 72 6f 2d 66 6f 6e ace (* cairo-fon
3570: 74 2d 66 61 63 65 2d 74 29 29 20 28 66 6f 6e 74 t-face-t)) (font
3580: 5f 6d 61 74 72 69 78 20 28 2a 20 63 61 69 72 6f _matrix (* cairo
3590: 2d 6d 61 74 72 69 78 2d 74 29 29 20 28 63 74 6d -matrix-t)) (ctm
35a0: 20 28 2a 20 63 61 69 72 6f 2d 6d 61 74 72 69 78 (* cairo-matrix
35b0: 2d 74 29 29 20 28 6f 70 74 69 6f 6e 73 20 28 2a -t)) (options (*
35c0: 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 6f 70 74 69 cairo-font-opti
35d0: 6f 6e 73 2d 74 29 29 29 20 22 63 61 69 72 6f 5f ons-t))) "cairo_
35e0: 73 63 61 6c 65 64 5f 66 6f 6e 74 5f 63 72 65 61 scaled_font_crea
35f0: 74 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 te").(define-cai
3600: 72 6f 2d 66 75 6e 63 20 28 2a 20 63 61 69 72 6f ro-func (* cairo
3610: 2d 73 63 61 6c 65 64 2d 66 6f 6e 74 2d 74 29 20 -scaled-font-t)
3620: 63 61 69 72 6f 2d 73 63 61 6c 65 64 2d 66 6f 6e cairo-scaled-fon
3630: 74 2d 72 65 66 65 72 65 6e 63 65 20 28 28 73 63 t-reference ((sc
3640: 61 6c 65 64 5f 66 6f 6e 74 20 28 2a 20 63 61 69 aled_font (* cai
3650: 72 6f 2d 73 63 61 6c 65 64 2d 66 6f 6e 74 2d 74 ro-scaled-font-t
3660: 29 29 29 20 22 63 61 69 72 6f 5f 73 63 61 6c 65 ))) "cairo_scale
3670: 64 5f 66 6f 6e 74 5f 72 65 66 65 72 65 6e 63 65 d_font_reference
3680: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
3690: 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f -func void cairo
36a0: 2d 73 63 61 6c 65 64 2d 66 6f 6e 74 2d 64 65 73 -scaled-font-des
36b0: 74 72 6f 79 20 28 28 73 63 61 6c 65 64 5f 66 6f troy ((scaled_fo
36c0: 6e 74 20 28 2a 20 63 61 69 72 6f 2d 73 63 61 6c nt (* cairo-scal
36d0: 65 64 2d 66 6f 6e 74 2d 74 29 29 29 20 22 63 61 ed-font-t))) "ca
36e0: 69 72 6f 5f 73 63 61 6c 65 64 5f 66 6f 6e 74 5f iro_scaled_font_
36f0: 64 65 73 74 72 6f 79 22 29 0a 28 64 65 66 69 6e destroy").(defin
3700: 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 75 6e 73 e-cairo-func uns
3710: 69 67 6e 65 64 2d 69 6e 74 20 63 61 69 72 6f 2d igned-int cairo-
3720: 73 63 61 6c 65 64 2d 66 6f 6e 74 2d 67 65 74 2d scaled-font-get-
3730: 72 65 66 65 72 65 6e 63 65 2d 63 6f 75 6e 74 20 reference-count
3740: 28 28 73 63 61 6c 65 64 5f 66 6f 6e 74 20 28 2a ((scaled_font (*
3750: 20 63 61 69 72 6f 2d 73 63 61 6c 65 64 2d 66 6f cairo-scaled-fo
3760: 6e 74 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 73 nt-t))) "cairo_s
3770: 63 61 6c 65 64 5f 66 6f 6e 74 5f 67 65 74 5f 72 caled_font_get_r
3780: 65 66 65 72 65 6e 63 65 5f 63 6f 75 6e 74 22 29 eference_count")
3790: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
37a0: 75 6e 63 20 63 61 69 72 6f 2d 73 74 61 74 75 73 unc cairo-status
37b0: 2d 74 20 63 61 69 72 6f 2d 73 63 61 6c 65 64 2d -t cairo-scaled-
37c0: 66 6f 6e 74 2d 73 74 61 74 75 73 20 28 28 73 63 font-status ((sc
37d0: 61 6c 65 64 5f 66 6f 6e 74 20 28 2a 20 63 61 69 aled_font (* cai
37e0: 72 6f 2d 73 63 61 6c 65 64 2d 66 6f 6e 74 2d 74 ro-scaled-font-t
37f0: 29 29 29 20 22 63 61 69 72 6f 5f 73 63 61 6c 65 ))) "cairo_scale
3800: 64 5f 66 6f 6e 74 5f 73 74 61 74 75 73 22 29 0a d_font_status").
3810: 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 (define-cairo-fu
3820: 6e 63 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 74 79 nc cairo-font-ty
3830: 70 65 2d 74 20 63 61 69 72 6f 2d 73 63 61 6c 65 pe-t cairo-scale
3840: 64 2d 66 6f 6e 74 2d 67 65 74 2d 74 79 70 65 20 d-font-get-type
3850: 28 28 73 63 61 6c 65 64 5f 66 6f 6e 74 20 28 2a ((scaled_font (*
3860: 20 63 61 69 72 6f 2d 73 63 61 6c 65 64 2d 66 6f cairo-scaled-fo
3870: 6e 74 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 73 nt-t))) "cairo_s
3880: 63 61 6c 65 64 5f 66 6f 6e 74 5f 67 65 74 5f 74 caled_font_get_t
3890: 79 70 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 ype").(define-ca
38a0: 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 2a 20 63 iro-func void* c
38b0: 61 69 72 6f 2d 73 63 61 6c 65 64 2d 66 6f 6e 74 airo-scaled-font
38c0: 2d 67 65 74 2d 75 73 65 72 2d 64 61 74 61 20 28 -get-user-data (
38d0: 28 73 63 61 6c 65 64 5f 66 6f 6e 74 20 28 2a 20 (scaled_font (*
38e0: 63 61 69 72 6f 2d 73 63 61 6c 65 64 2d 66 6f 6e cairo-scaled-fon
38f0: 74 2d 74 29 29 20 28 6b 65 79 20 28 2a 20 63 61 t-t)) (key (* ca
3900: 69 72 6f 2d 75 73 65 72 2d 64 61 74 61 2d 6b 65 iro-user-data-ke
3910: 79 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 73 63 y-t))) "cairo_sc
3920: 61 6c 65 64 5f 66 6f 6e 74 5f 67 65 74 5f 75 73 aled_font_get_us
3930: 65 72 5f 64 61 74 61 22 29 0a 28 64 65 66 69 6e er_data").(defin
3940: 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 63 61 69 e-cairo-func cai
3950: 72 6f 2d 73 74 61 74 75 73 2d 74 20 63 61 69 72 ro-status-t cair
3960: 6f 2d 73 63 61 6c 65 64 2d 66 6f 6e 74 2d 73 65 o-scaled-font-se
3970: 74 2d 75 73 65 72 2d 64 61 74 61 20 28 28 73 63 t-user-data ((sc
3980: 61 6c 65 64 5f 66 6f 6e 74 20 28 2a 20 63 61 69 aled_font (* cai
3990: 72 6f 2d 73 63 61 6c 65 64 2d 66 6f 6e 74 2d 74 ro-scaled-font-t
39a0: 29 29 20 28 6b 65 79 20 28 2a 20 63 61 69 72 6f )) (key (* cairo
39b0: 2d 75 73 65 72 2d 64 61 74 61 2d 6b 65 79 2d 74 -user-data-key-t
39c0: 29 29 20 28 75 73 65 72 5f 64 61 74 61 20 76 6f )) (user_data vo
39d0: 69 64 2a 29 20 28 64 65 73 74 72 6f 79 20 63 61 id*) (destroy ca
39e0: 69 72 6f 2d 64 65 73 74 72 6f 79 2d 66 75 6e 63 iro-destroy-func
39f0: 2d 74 29 29 20 22 63 61 69 72 6f 5f 73 63 61 6c -t)) "cairo_scal
3a00: 65 64 5f 66 6f 6e 74 5f 73 65 74 5f 75 73 65 72 ed_font_set_user
3a10: 5f 64 61 74 61 22 29 0a 28 64 65 66 69 6e 65 2d _data").(define-
3a20: 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 cairo-func void
3a30: 63 61 69 72 6f 2d 73 63 61 6c 65 64 2d 66 6f 6e cairo-scaled-fon
3a40: 74 2d 65 78 74 65 6e 74 73 20 28 28 73 63 61 6c t-extents ((scal
3a50: 65 64 5f 66 6f 6e 74 20 28 2a 20 63 61 69 72 6f ed_font (* cairo
3a60: 2d 73 63 61 6c 65 64 2d 66 6f 6e 74 2d 74 29 29 -scaled-font-t))
3a70: 20 28 65 78 74 65 6e 74 73 20 28 2a 20 63 61 69 (extents (* cai
3a80: 72 6f 2d 66 6f 6e 74 2d 65 78 74 65 6e 74 73 2d ro-font-extents-
3a90: 74 29 29 29 20 22 63 61 69 72 6f 5f 73 63 61 6c t))) "cairo_scal
3aa0: 65 64 5f 66 6f 6e 74 5f 65 78 74 65 6e 74 73 22 ed_font_extents"
3ab0: 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d ).(define-cairo-
3ac0: 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d func void cairo-
3ad0: 73 63 61 6c 65 64 2d 66 6f 6e 74 2d 74 65 78 74 scaled-font-text
3ae0: 2d 65 78 74 65 6e 74 73 20 28 28 73 63 61 6c 65 -extents ((scale
3af0: 64 5f 66 6f 6e 74 20 28 2a 20 63 61 69 72 6f 2d d_font (* cairo-
3b00: 73 63 61 6c 65 64 2d 66 6f 6e 74 2d 74 29 29 20 scaled-font-t))
3b10: 28 75 74 66 38 20 73 74 72 69 6e 67 29 20 28 65 (utf8 string) (e
3b20: 78 74 65 6e 74 73 20 28 2a 20 63 61 69 72 6f 2d xtents (* cairo-
3b30: 74 65 78 74 2d 65 78 74 65 6e 74 73 2d 74 29 29 text-extents-t))
3b40: 29 20 22 63 61 69 72 6f 5f 73 63 61 6c 65 64 5f ) "cairo_scaled_
3b50: 66 6f 6e 74 5f 74 65 78 74 5f 65 78 74 65 6e 74 font_text_extent
3b60: 73 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 s").(define-cair
3b70: 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 o-func void cair
3b80: 6f 2d 73 63 61 6c 65 64 2d 66 6f 6e 74 2d 67 6c o-scaled-font-gl
3b90: 79 70 68 2d 65 78 74 65 6e 74 73 20 28 28 73 63 yph-extents ((sc
3ba0: 61 6c 65 64 5f 66 6f 6e 74 20 28 2a 20 63 61 69 aled_font (* cai
3bb0: 72 6f 2d 73 63 61 6c 65 64 2d 66 6f 6e 74 2d 74 ro-scaled-font-t
3bc0: 29 29 20 28 67 6c 79 70 68 73 20 28 2a 20 63 61 )) (glyphs (* ca
3bd0: 69 72 6f 2d 67 6c 79 70 68 2d 74 29 29 20 28 6e iro-glyph-t)) (n
3be0: 75 6d 5f 67 6c 79 70 68 73 20 69 6e 74 29 20 28 um_glyphs int) (
3bf0: 65 78 74 65 6e 74 73 20 28 2a 20 63 61 69 72 6f extents (* cairo
3c00: 2d 74 65 78 74 2d 65 78 74 65 6e 74 73 2d 74 29 -text-extents-t)
3c10: 29 29 20 22 63 61 69 72 6f 5f 73 63 61 6c 65 64 )) "cairo_scaled
3c20: 5f 66 6f 6e 74 5f 67 6c 79 70 68 5f 65 78 74 65 _font_glyph_exte
3c30: 6e 74 73 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 nts").(define-ca
3c40: 69 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 73 iro-func cairo-s
3c50: 74 61 74 75 73 2d 74 20 63 61 69 72 6f 2d 73 63 tatus-t cairo-sc
3c60: 61 6c 65 64 2d 66 6f 6e 74 2d 74 65 78 74 2d 74 aled-font-text-t
3c70: 6f 2d 67 6c 79 70 68 73 20 28 28 73 63 61 6c 65 o-glyphs ((scale
3c80: 64 5f 66 6f 6e 74 20 28 2a 20 63 61 69 72 6f 2d d_font (* cairo-
3c90: 73 63 61 6c 65 64 2d 66 6f 6e 74 2d 74 29 29 20 scaled-font-t))
3ca0: 28 78 20 64 6f 75 62 6c 65 29 20 28 79 20 64 6f (x double) (y do
3cb0: 75 62 6c 65 29 20 28 75 74 66 38 20 73 74 72 69 uble) (utf8 stri
3cc0: 6e 67 29 20 28 75 74 66 38 5f 6c 65 6e 20 69 6e ng) (utf8_len in
3cd0: 74 29 20 28 67 6c 79 70 68 73 20 28 2a 20 63 61 t) (glyphs (* ca
3ce0: 69 72 6f 2d 67 6c 79 70 68 2d 74 2a 29 29 20 28 iro-glyph-t*)) (
3cf0: 6e 75 6d 5f 67 6c 79 70 68 73 20 28 2a 20 69 6e num_glyphs (* in
3d00: 74 29 29 20 28 63 6c 75 73 74 65 72 73 20 28 2a t)) (clusters (*
3d10: 20 63 61 69 72 6f 2d 74 65 78 74 2d 63 6c 75 73 cairo-text-clus
3d20: 74 65 72 2d 74 2a 29 29 20 28 6e 75 6d 5f 63 6c ter-t*)) (num_cl
3d30: 75 73 74 65 72 73 20 28 2a 20 69 6e 74 29 29 20 usters (* int))
3d40: 28 63 6c 75 73 74 65 72 5f 66 6c 61 67 73 20 28 (cluster_flags (
3d50: 2a 20 63 61 69 72 6f 2d 74 65 78 74 2d 63 6c 75 * cairo-text-clu
3d60: 73 74 65 72 2d 66 6c 61 67 73 2d 74 29 29 29 20 ster-flags-t)))
3d70: 22 63 61 69 72 6f 5f 73 63 61 6c 65 64 5f 66 6f "cairo_scaled_fo
3d80: 6e 74 5f 74 65 78 74 5f 74 6f 5f 67 6c 79 70 68 nt_text_to_glyph
3d90: 73 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 s").(define-cair
3da0: 6f 2d 66 75 6e 63 20 28 2a 20 63 61 69 72 6f 2d o-func (* cairo-
3db0: 66 6f 6e 74 2d 66 61 63 65 2d 74 29 20 63 61 69 font-face-t) cai
3dc0: 72 6f 2d 73 63 61 6c 65 64 2d 66 6f 6e 74 2d 67 ro-scaled-font-g
3dd0: 65 74 2d 66 6f 6e 74 2d 66 61 63 65 20 28 28 73 et-font-face ((s
3de0: 63 61 6c 65 64 5f 66 6f 6e 74 20 28 2a 20 63 61 caled_font (* ca
3df0: 69 72 6f 2d 73 63 61 6c 65 64 2d 66 6f 6e 74 2d iro-scaled-font-
3e00: 74 29 29 29 20 22 63 61 69 72 6f 5f 73 63 61 6c t))) "cairo_scal
3e10: 65 64 5f 66 6f 6e 74 5f 67 65 74 5f 66 6f 6e 74 ed_font_get_font
3e20: 5f 66 61 63 65 22 29 0a 28 64 65 66 69 6e 65 2d _face").(define-
3e30: 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 cairo-func void
3e40: 63 61 69 72 6f 2d 73 63 61 6c 65 64 2d 66 6f 6e cairo-scaled-fon
3e50: 74 2d 67 65 74 2d 66 6f 6e 74 2d 6d 61 74 72 69 t-get-font-matri
3e60: 78 20 28 28 73 63 61 6c 65 64 5f 66 6f 6e 74 20 x ((scaled_font
3e70: 28 2a 20 63 61 69 72 6f 2d 73 63 61 6c 65 64 2d (* cairo-scaled-
3e80: 66 6f 6e 74 2d 74 29 29 20 28 66 6f 6e 74 5f 6d font-t)) (font_m
3e90: 61 74 72 69 78 20 28 2a 20 63 61 69 72 6f 2d 6d atrix (* cairo-m
3ea0: 61 74 72 69 78 2d 74 29 29 29 20 22 63 61 69 72 atrix-t))) "cair
3eb0: 6f 5f 73 63 61 6c 65 64 5f 66 6f 6e 74 5f 67 65 o_scaled_font_ge
3ec0: 74 5f 66 6f 6e 74 5f 6d 61 74 72 69 78 22 29 0a t_font_matrix").
3ed0: 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 (define-cairo-fu
3ee0: 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 73 63 nc void cairo-sc
3ef0: 61 6c 65 64 2d 66 6f 6e 74 2d 67 65 74 2d 63 74 aled-font-get-ct
3f00: 6d 20 28 28 73 63 61 6c 65 64 5f 66 6f 6e 74 20 m ((scaled_font
3f10: 28 2a 20 63 61 69 72 6f 2d 73 63 61 6c 65 64 2d (* cairo-scaled-
3f20: 66 6f 6e 74 2d 74 29 29 20 28 63 74 6d 20 28 2a font-t)) (ctm (*
3f30: 20 63 61 69 72 6f 2d 6d 61 74 72 69 78 2d 74 29 cairo-matrix-t)
3f40: 29 29 20 22 63 61 69 72 6f 5f 73 63 61 6c 65 64 )) "cairo_scaled
3f50: 5f 66 6f 6e 74 5f 67 65 74 5f 63 74 6d 22 29 0a _font_get_ctm").
3f60: 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 (define-cairo-fu
3f70: 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 73 63 nc void cairo-sc
3f80: 61 6c 65 64 2d 66 6f 6e 74 2d 67 65 74 2d 73 63 aled-font-get-sc
3f90: 61 6c 65 2d 6d 61 74 72 69 78 20 28 28 73 63 61 ale-matrix ((sca
3fa0: 6c 65 64 5f 66 6f 6e 74 20 28 2a 20 63 61 69 72 led_font (* cair
3fb0: 6f 2d 73 63 61 6c 65 64 2d 66 6f 6e 74 2d 74 29 o-scaled-font-t)
3fc0: 29 20 28 73 63 61 6c 65 5f 6d 61 74 72 69 78 20 ) (scale_matrix
3fd0: 28 2a 20 63 61 69 72 6f 2d 6d 61 74 72 69 78 2d (* cairo-matrix-
3fe0: 74 29 29 29 20 22 63 61 69 72 6f 5f 73 63 61 6c t))) "cairo_scal
3ff0: 65 64 5f 66 6f 6e 74 5f 67 65 74 5f 73 63 61 6c ed_font_get_scal
4000: 65 5f 6d 61 74 72 69 78 22 29 0a 28 64 65 66 69 e_matrix").(defi
4010: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f ne-cairo-func vo
4020: 69 64 20 63 61 69 72 6f 2d 73 63 61 6c 65 64 2d id cairo-scaled-
4030: 66 6f 6e 74 2d 67 65 74 2d 66 6f 6e 74 2d 6f 70 font-get-font-op
4040: 74 69 6f 6e 73 20 28 28 73 63 61 6c 65 64 5f 66 tions ((scaled_f
4050: 6f 6e 74 20 28 2a 20 63 61 69 72 6f 2d 73 63 61 ont (* cairo-sca
4060: 6c 65 64 2d 66 6f 6e 74 2d 74 29 29 20 28 6f 70 led-font-t)) (op
4070: 74 69 6f 6e 73 20 28 2a 20 63 61 69 72 6f 2d 66 tions (* cairo-f
4080: 6f 6e 74 2d 6f 70 74 69 6f 6e 73 2d 74 29 29 29 ont-options-t)))
4090: 20 22 63 61 69 72 6f 5f 73 63 61 6c 65 64 5f 66 "cairo_scaled_f
40a0: 6f 6e 74 5f 67 65 74 5f 66 6f 6e 74 5f 6f 70 74 ont_get_font_opt
40b0: 69 6f 6e 73 22 29 0a 28 64 65 66 69 6e 65 2d 63 ions").(define-c
40c0: 61 69 72 6f 2d 66 75 6e 63 20 28 2a 20 63 61 69 airo-func (* cai
40d0: 72 6f 2d 66 6f 6e 74 2d 66 61 63 65 2d 74 29 20 ro-font-face-t)
40e0: 63 61 69 72 6f 2d 74 6f 79 2d 66 6f 6e 74 2d 66 cairo-toy-font-f
40f0: 61 63 65 2d 63 72 65 61 74 65 20 28 28 66 61 6d ace-create ((fam
4100: 69 6c 79 20 73 74 72 69 6e 67 29 20 28 73 6c 61 ily string) (sla
4110: 6e 74 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 73 6c nt cairo-font-sl
4120: 61 6e 74 2d 74 29 20 28 77 65 69 67 68 74 20 63 ant-t) (weight c
4130: 61 69 72 6f 2d 66 6f 6e 74 2d 77 65 69 67 68 74 airo-font-weight
4140: 2d 74 29 29 20 22 63 61 69 72 6f 5f 74 6f 79 5f -t)) "cairo_toy_
4150: 66 6f 6e 74 5f 66 61 63 65 5f 63 72 65 61 74 65 font_face_create
4160: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
4170: 2d 66 75 6e 63 20 73 74 72 69 6e 67 20 63 61 69 -func string cai
4180: 72 6f 2d 74 6f 79 2d 66 6f 6e 74 2d 66 61 63 65 ro-toy-font-face
4190: 2d 67 65 74 2d 66 61 6d 69 6c 79 20 28 28 66 6f -get-family ((fo
41a0: 6e 74 5f 66 61 63 65 20 28 2a 20 63 61 69 72 6f nt_face (* cairo
41b0: 2d 66 6f 6e 74 2d 66 61 63 65 2d 74 29 29 29 20 -font-face-t)))
41c0: 22 63 61 69 72 6f 5f 74 6f 79 5f 66 6f 6e 74 5f "cairo_toy_font_
41d0: 66 61 63 65 5f 67 65 74 5f 66 61 6d 69 6c 79 22 face_get_family"
41e0: 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d ).(define-cairo-
41f0: 66 75 6e 63 20 63 61 69 72 6f 2d 66 6f 6e 74 2d func cairo-font-
4200: 73 6c 61 6e 74 2d 74 20 63 61 69 72 6f 2d 74 6f slant-t cairo-to
4210: 79 2d 66 6f 6e 74 2d 66 61 63 65 2d 67 65 74 2d y-font-face-get-
4220: 73 6c 61 6e 74 20 28 28 66 6f 6e 74 5f 66 61 63 slant ((font_fac
4230: 65 20 28 2a 20 63 61 69 72 6f 2d 66 6f 6e 74 2d e (* cairo-font-
4240: 66 61 63 65 2d 74 29 29 29 20 22 63 61 69 72 6f face-t))) "cairo
4250: 5f 74 6f 79 5f 66 6f 6e 74 5f 66 61 63 65 5f 67 _toy_font_face_g
4260: 65 74 5f 73 6c 61 6e 74 22 29 0a 28 64 65 66 69 et_slant").(defi
4270: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 63 61 ne-cairo-func ca
4280: 69 72 6f 2d 66 6f 6e 74 2d 77 65 69 67 68 74 2d iro-font-weight-
4290: 74 20 63 61 69 72 6f 2d 74 6f 79 2d 66 6f 6e 74 t cairo-toy-font
42a0: 2d 66 61 63 65 2d 67 65 74 2d 77 65 69 67 68 74 -face-get-weight
42b0: 20 28 28 66 6f 6e 74 5f 66 61 63 65 20 28 2a 20 ((font_face (*
42c0: 63 61 69 72 6f 2d 66 6f 6e 74 2d 66 61 63 65 2d cairo-font-face-
42d0: 74 29 29 29 20 22 63 61 69 72 6f 5f 74 6f 79 5f t))) "cairo_toy_
42e0: 66 6f 6e 74 5f 66 61 63 65 5f 67 65 74 5f 77 65 font_face_get_we
42f0: 69 67 68 74 22 29 0a 28 64 65 66 69 6e 65 2d 63 ight").(define-c
4300: 61 69 72 6f 2d 66 75 6e 63 20 28 2a 20 63 61 69 airo-func (* cai
4310: 72 6f 2d 66 6f 6e 74 2d 66 61 63 65 2d 74 29 20 ro-font-face-t)
4320: 63 61 69 72 6f 2d 75 73 65 72 2d 66 6f 6e 74 2d cairo-user-font-
4330: 66 61 63 65 2d 63 72 65 61 74 65 20 28 29 20 22 face-create () "
4340: 63 61 69 72 6f 5f 75 73 65 72 5f 66 6f 6e 74 5f cairo_user_font_
4350: 66 61 63 65 5f 63 72 65 61 74 65 22 29 0a 28 64 face_create").(d
4360: 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 efine-cairo-func
4370: 20 76 6f 69 64 20 63 61 69 72 6f 2d 75 73 65 72 void cairo-user
4380: 2d 66 6f 6e 74 2d 66 61 63 65 2d 73 65 74 2d 69 -font-face-set-i
4390: 6e 69 74 2d 66 75 6e 63 20 28 28 66 6f 6e 74 5f nit-func ((font_
43a0: 66 61 63 65 20 28 2a 20 63 61 69 72 6f 2d 66 6f face (* cairo-fo
43b0: 6e 74 2d 66 61 63 65 2d 74 29 29 20 28 69 6e 69 nt-face-t)) (ini
43c0: 74 5f 66 75 6e 63 20 28 2a 20 63 61 69 72 6f 2d t_func (* cairo-
43d0: 75 73 65 72 2d 73 63 61 6c 65 64 2d 66 6f 6e 74 user-scaled-font
43e0: 2d 69 6e 69 74 2d 66 75 6e 63 2d 74 29 29 29 20 -init-func-t)))
43f0: 22 63 61 69 72 6f 5f 75 73 65 72 5f 66 6f 6e 74 "cairo_user_font
4400: 5f 66 61 63 65 5f 73 65 74 5f 69 6e 69 74 5f 66 _face_set_init_f
4410: 75 6e 63 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 unc").(define-ca
4420: 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 iro-func void ca
4430: 69 72 6f 2d 75 73 65 72 2d 66 6f 6e 74 2d 66 61 iro-user-font-fa
4440: 63 65 2d 73 65 74 2d 72 65 6e 64 65 72 2d 67 6c ce-set-render-gl
4450: 79 70 68 2d 66 75 6e 63 20 28 28 66 6f 6e 74 5f yph-func ((font_
4460: 66 61 63 65 20 28 2a 20 63 61 69 72 6f 2d 66 6f face (* cairo-fo
4470: 6e 74 2d 66 61 63 65 2d 74 29 29 20 28 72 65 6e nt-face-t)) (ren
4480: 64 65 72 5f 67 6c 79 70 68 5f 66 75 6e 63 20 28 der_glyph_func (
4490: 2a 20 63 61 69 72 6f 2d 75 73 65 72 2d 73 63 61 * cairo-user-sca
44a0: 6c 65 64 2d 66 6f 6e 74 2d 72 65 6e 64 65 72 2d led-font-render-
44b0: 67 6c 79 70 68 2d 66 75 6e 63 2d 74 29 29 29 20 glyph-func-t)))
44c0: 22 63 61 69 72 6f 5f 75 73 65 72 5f 66 6f 6e 74 "cairo_user_font
44d0: 5f 66 61 63 65 5f 73 65 74 5f 72 65 6e 64 65 72 _face_set_render
44e0: 5f 67 6c 79 70 68 5f 66 75 6e 63 22 29 0a 28 64 _glyph_func").(d
44f0: 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 efine-cairo-func
4500: 20 76 6f 69 64 20 63 61 69 72 6f 2d 75 73 65 72 void cairo-user
4510: 2d 66 6f 6e 74 2d 66 61 63 65 2d 73 65 74 2d 74 -font-face-set-t
4520: 65 78 74 2d 74 6f 2d 67 6c 79 70 68 73 2d 66 75 ext-to-glyphs-fu
4530: 6e 63 20 28 28 66 6f 6e 74 5f 66 61 63 65 20 28 nc ((font_face (
4540: 2a 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 66 61 63 * cairo-font-fac
4550: 65 2d 74 29 29 20 28 74 65 78 74 5f 74 6f 5f 67 e-t)) (text_to_g
4560: 6c 79 70 68 73 5f 66 75 6e 63 20 28 2a 20 63 61 lyphs_func (* ca
4570: 69 72 6f 2d 75 73 65 72 2d 73 63 61 6c 65 64 2d iro-user-scaled-
4580: 66 6f 6e 74 2d 74 65 78 74 2d 74 6f 2d 67 6c 79 font-text-to-gly
4590: 70 68 73 2d 66 75 6e 63 2d 74 29 29 29 20 22 63 phs-func-t))) "c
45a0: 61 69 72 6f 5f 75 73 65 72 5f 66 6f 6e 74 5f 66 airo_user_font_f
45b0: 61 63 65 5f 73 65 74 5f 74 65 78 74 5f 74 6f 5f ace_set_text_to_
45c0: 67 6c 79 70 68 73 5f 66 75 6e 63 22 29 0a 28 64 glyphs_func").(d
45d0: 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 efine-cairo-func
45e0: 20 76 6f 69 64 20 63 61 69 72 6f 2d 75 73 65 72 void cairo-user
45f0: 2d 66 6f 6e 74 2d 66 61 63 65 2d 73 65 74 2d 75 -font-face-set-u
4600: 6e 69 63 6f 64 65 2d 74 6f 2d 67 6c 79 70 68 2d nicode-to-glyph-
4610: 66 75 6e 63 20 28 28 66 6f 6e 74 5f 66 61 63 65 func ((font_face
4620: 20 28 2a 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 66 (* cairo-font-f
4630: 61 63 65 2d 74 29 29 20 28 75 6e 69 63 6f 64 65 ace-t)) (unicode
4640: 5f 74 6f 5f 67 6c 79 70 68 5f 66 75 6e 63 20 28 _to_glyph_func (
4650: 2a 20 63 61 69 72 6f 2d 75 73 65 72 2d 73 63 61 * cairo-user-sca
4660: 6c 65 64 2d 66 6f 6e 74 2d 75 6e 69 63 6f 64 65 led-font-unicode
4670: 2d 74 6f 2d 67 6c 79 70 68 2d 66 75 6e 63 2d 74 -to-glyph-func-t
4680: 29 29 29 20 22 63 61 69 72 6f 5f 75 73 65 72 5f ))) "cairo_user_
4690: 66 6f 6e 74 5f 66 61 63 65 5f 73 65 74 5f 75 6e font_face_set_un
46a0: 69 63 6f 64 65 5f 74 6f 5f 67 6c 79 70 68 5f 66 icode_to_glyph_f
46b0: 75 6e 63 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 unc").(define-ca
46c0: 69 72 6f 2d 66 75 6e 63 20 28 2a 20 63 61 69 72 iro-func (* cair
46d0: 6f 2d 75 73 65 72 2d 73 63 61 6c 65 64 2d 66 6f o-user-scaled-fo
46e0: 6e 74 2d 69 6e 69 74 2d 66 75 6e 63 2d 74 29 20 nt-init-func-t)
46f0: 63 61 69 72 6f 2d 75 73 65 72 2d 66 6f 6e 74 2d cairo-user-font-
4700: 66 61 63 65 2d 67 65 74 2d 69 6e 69 74 2d 66 75 face-get-init-fu
4710: 6e 63 20 28 28 66 6f 6e 74 5f 66 61 63 65 20 28 nc ((font_face (
4720: 2a 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 66 61 63 * cairo-font-fac
4730: 65 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 75 73 e-t))) "cairo_us
4740: 65 72 5f 66 6f 6e 74 5f 66 61 63 65 5f 67 65 74 er_font_face_get
4750: 5f 69 6e 69 74 5f 66 75 6e 63 22 29 0a 28 64 65 _init_func").(de
4760: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
4770: 28 2a 20 63 61 69 72 6f 2d 75 73 65 72 2d 73 63 (* cairo-user-sc
4780: 61 6c 65 64 2d 66 6f 6e 74 2d 72 65 6e 64 65 72 aled-font-render
4790: 2d 67 6c 79 70 68 2d 66 75 6e 63 2d 74 29 20 63 -glyph-func-t) c
47a0: 61 69 72 6f 2d 75 73 65 72 2d 66 6f 6e 74 2d 66 airo-user-font-f
47b0: 61 63 65 2d 67 65 74 2d 72 65 6e 64 65 72 2d 67 ace-get-render-g
47c0: 6c 79 70 68 2d 66 75 6e 63 20 28 28 66 6f 6e 74 lyph-func ((font
47d0: 5f 66 61 63 65 20 28 2a 20 63 61 69 72 6f 2d 66 _face (* cairo-f
47e0: 6f 6e 74 2d 66 61 63 65 2d 74 29 29 29 20 22 63 ont-face-t))) "c
47f0: 61 69 72 6f 5f 75 73 65 72 5f 66 6f 6e 74 5f 66 airo_user_font_f
4800: 61 63 65 5f 67 65 74 5f 72 65 6e 64 65 72 5f 67 ace_get_render_g
4810: 6c 79 70 68 5f 66 75 6e 63 22 29 0a 28 64 65 66 lyph_func").(def
4820: 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 28 ine-cairo-func (
4830: 2a 20 63 61 69 72 6f 2d 75 73 65 72 2d 73 63 61 * cairo-user-sca
4840: 6c 65 64 2d 66 6f 6e 74 2d 74 65 78 74 2d 74 6f led-font-text-to
4850: 2d 67 6c 79 70 68 73 2d 66 75 6e 63 2d 74 29 20 -glyphs-func-t)
4860: 63 61 69 72 6f 2d 75 73 65 72 2d 66 6f 6e 74 2d cairo-user-font-
4870: 66 61 63 65 2d 67 65 74 2d 74 65 78 74 2d 74 6f face-get-text-to
4880: 2d 67 6c 79 70 68 73 2d 66 75 6e 63 20 28 28 66 -glyphs-func ((f
4890: 6f 6e 74 5f 66 61 63 65 20 28 2a 20 63 61 69 72 ont_face (* cair
48a0: 6f 2d 66 6f 6e 74 2d 66 61 63 65 2d 74 29 29 29 o-font-face-t)))
48b0: 20 22 63 61 69 72 6f 5f 75 73 65 72 5f 66 6f 6e "cairo_user_fon
48c0: 74 5f 66 61 63 65 5f 67 65 74 5f 74 65 78 74 5f t_face_get_text_
48d0: 74 6f 5f 67 6c 79 70 68 73 5f 66 75 6e 63 22 29 to_glyphs_func")
48e0: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
48f0: 75 6e 63 20 28 2a 20 63 61 69 72 6f 2d 75 73 65 unc (* cairo-use
4900: 72 2d 73 63 61 6c 65 64 2d 66 6f 6e 74 2d 75 6e r-scaled-font-un
4910: 69 63 6f 64 65 2d 74 6f 2d 67 6c 79 70 68 2d 66 icode-to-glyph-f
4920: 75 6e 63 2d 74 29 20 63 61 69 72 6f 2d 75 73 65 unc-t) cairo-use
4930: 72 2d 66 6f 6e 74 2d 66 61 63 65 2d 67 65 74 2d r-font-face-get-
4940: 75 6e 69 63 6f 64 65 2d 74 6f 2d 67 6c 79 70 68 unicode-to-glyph
4950: 2d 66 75 6e 63 20 28 28 66 6f 6e 74 5f 66 61 63 -func ((font_fac
4960: 65 20 28 2a 20 63 61 69 72 6f 2d 66 6f 6e 74 2d e (* cairo-font-
4970: 66 61 63 65 2d 74 29 29 29 20 22 63 61 69 72 6f face-t))) "cairo
4980: 5f 75 73 65 72 5f 66 6f 6e 74 5f 66 61 63 65 5f _user_font_face_
4990: 67 65 74 5f 75 6e 69 63 6f 64 65 5f 74 6f 5f 67 get_unicode_to_g
49a0: 6c 79 70 68 5f 66 75 6e 63 22 29 0a 28 64 65 66 lyph_func").(def
49b0: 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 63 ine-cairo-func c
49c0: 61 69 72 6f 2d 6f 70 65 72 61 74 6f 72 2d 74 20 airo-operator-t
49d0: 63 61 69 72 6f 2d 67 65 74 2d 6f 70 65 72 61 74 cairo-get-operat
49e0: 6f 72 20 28 28 63 72 20 28 2a 20 63 61 69 72 6f or ((cr (* cairo
49f0: 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 67 65 74 -t))) "cairo_get
4a00: 5f 6f 70 65 72 61 74 6f 72 22 29 0a 28 64 65 66 _operator").(def
4a10: 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 28 ine-cairo-func (
4a20: 2a 20 63 61 69 72 6f 2d 70 61 74 74 65 72 6e 2d * cairo-pattern-
4a30: 74 29 20 63 61 69 72 6f 2d 67 65 74 2d 73 6f 75 t) cairo-get-sou
4a40: 72 63 65 20 28 28 63 72 20 28 2a 20 63 61 69 72 rce ((cr (* cair
4a50: 6f 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 67 65 o-t))) "cairo_ge
4a60: 74 5f 73 6f 75 72 63 65 22 29 0a 28 64 65 66 69 t_source").(defi
4a70: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 64 6f ne-cairo-func do
4a80: 75 62 6c 65 20 63 61 69 72 6f 2d 67 65 74 2d 74 uble cairo-get-t
4a90: 6f 6c 65 72 61 6e 63 65 20 28 28 63 72 20 28 2a olerance ((cr (*
4aa0: 20 63 61 69 72 6f 2d 74 29 29 29 20 22 63 61 69 cairo-t))) "cai
4ab0: 72 6f 5f 67 65 74 5f 74 6f 6c 65 72 61 6e 63 65 ro_get_tolerance
4ac0: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
4ad0: 2d 66 75 6e 63 20 63 61 69 72 6f 2d 61 6e 74 69 -func cairo-anti
4ae0: 61 6c 69 61 73 2d 74 20 63 61 69 72 6f 2d 67 65 alias-t cairo-ge
4af0: 74 2d 61 6e 74 69 61 6c 69 61 73 20 28 28 63 72 t-antialias ((cr
4b00: 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 29 20 22 (* cairo-t))) "
4b10: 63 61 69 72 6f 5f 67 65 74 5f 61 6e 74 69 61 6c cairo_get_antial
4b20: 69 61 73 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 ias").(define-ca
4b30: 69 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 62 iro-func cairo-b
4b40: 6f 6f 6c 2d 74 20 63 61 69 72 6f 2d 68 61 73 2d ool-t cairo-has-
4b50: 63 75 72 72 65 6e 74 2d 70 6f 69 6e 74 20 28 28 current-point ((
4b60: 63 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 29 cr (* cairo-t)))
4b70: 20 22 63 61 69 72 6f 5f 68 61 73 5f 63 75 72 72 "cairo_has_curr
4b80: 65 6e 74 5f 70 6f 69 6e 74 22 29 0a 28 64 65 66 ent_point").(def
4b90: 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 ine-cairo-func v
4ba0: 6f 69 64 20 63 61 69 72 6f 2d 67 65 74 2d 63 75 oid cairo-get-cu
4bb0: 72 72 65 6e 74 2d 70 6f 69 6e 74 20 28 28 63 72 rrent-point ((cr
4bc0: 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 20 28 78 (* cairo-t)) (x
4bd0: 20 28 2a 20 64 6f 75 62 6c 65 29 29 20 28 79 20 (* double)) (y
4be0: 28 2a 20 64 6f 75 62 6c 65 29 29 29 20 22 63 61 (* double))) "ca
4bf0: 69 72 6f 5f 67 65 74 5f 63 75 72 72 65 6e 74 5f iro_get_current_
4c00: 70 6f 69 6e 74 22 29 0a 28 64 65 66 69 6e 65 2d point").(define-
4c10: 63 61 69 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f cairo-func cairo
4c20: 2d 66 69 6c 6c 2d 72 75 6c 65 2d 74 20 63 61 69 -fill-rule-t cai
4c30: 72 6f 2d 67 65 74 2d 66 69 6c 6c 2d 72 75 6c 65 ro-get-fill-rule
4c40: 20 28 28 63 72 20 28 2a 20 63 61 69 72 6f 2d 74 ((cr (* cairo-t
4c50: 29 29 29 20 22 63 61 69 72 6f 5f 67 65 74 5f 66 ))) "cairo_get_f
4c60: 69 6c 6c 5f 72 75 6c 65 22 29 0a 28 64 65 66 69 ill_rule").(defi
4c70: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 64 6f ne-cairo-func do
4c80: 75 62 6c 65 20 63 61 69 72 6f 2d 67 65 74 2d 6c uble cairo-get-l
4c90: 69 6e 65 2d 77 69 64 74 68 20 28 28 63 72 20 28 ine-width ((cr (
4ca0: 2a 20 63 61 69 72 6f 2d 74 29 29 29 20 22 63 61 * cairo-t))) "ca
4cb0: 69 72 6f 5f 67 65 74 5f 6c 69 6e 65 5f 77 69 64 iro_get_line_wid
4cc0: 74 68 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 th").(define-cai
4cd0: 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 6c 69 ro-func cairo-li
4ce0: 6e 65 2d 63 61 70 2d 74 20 63 61 69 72 6f 2d 67 ne-cap-t cairo-g
4cf0: 65 74 2d 6c 69 6e 65 2d 63 61 70 20 28 28 63 72 et-line-cap ((cr
4d00: 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 29 20 22 (* cairo-t))) "
4d10: 63 61 69 72 6f 5f 67 65 74 5f 6c 69 6e 65 5f 63 cairo_get_line_c
4d20: 61 70 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 ap").(define-cai
4d30: 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 6c 69 ro-func cairo-li
4d40: 6e 65 2d 6a 6f 69 6e 2d 74 20 63 61 69 72 6f 2d ne-join-t cairo-
4d50: 67 65 74 2d 6c 69 6e 65 2d 6a 6f 69 6e 20 28 28 get-line-join ((
4d60: 63 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 29 cr (* cairo-t)))
4d70: 20 22 63 61 69 72 6f 5f 67 65 74 5f 6c 69 6e 65 "cairo_get_line
4d80: 5f 6a 6f 69 6e 22 29 0a 28 64 65 66 69 6e 65 2d _join").(define-
4d90: 63 61 69 72 6f 2d 66 75 6e 63 20 64 6f 75 62 6c cairo-func doubl
4da0: 65 20 63 61 69 72 6f 2d 67 65 74 2d 6d 69 74 65 e cairo-get-mite
4db0: 72 2d 6c 69 6d 69 74 20 28 28 63 72 20 28 2a 20 r-limit ((cr (*
4dc0: 63 61 69 72 6f 2d 74 29 29 29 20 22 63 61 69 72 cairo-t))) "cair
4dd0: 6f 5f 67 65 74 5f 6d 69 74 65 72 5f 6c 69 6d 69 o_get_miter_limi
4de0: 74 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 t").(define-cair
4df0: 6f 2d 66 75 6e 63 20 69 6e 74 20 63 61 69 72 6f o-func int cairo
4e00: 2d 67 65 74 2d 64 61 73 68 2d 63 6f 75 6e 74 20 -get-dash-count
4e10: 28 28 63 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 ((cr (* cairo-t)
4e20: 29 29 20 22 63 61 69 72 6f 5f 67 65 74 5f 64 61 )) "cairo_get_da
4e30: 73 68 5f 63 6f 75 6e 74 22 29 0a 28 64 65 66 69 sh_count").(defi
4e40: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f ne-cairo-func vo
4e50: 69 64 20 63 61 69 72 6f 2d 67 65 74 2d 64 61 73 id cairo-get-das
4e60: 68 20 28 28 63 72 20 28 2a 20 63 61 69 72 6f 2d h ((cr (* cairo-
4e70: 74 29 29 20 28 64 61 73 68 65 73 20 28 2a 20 64 t)) (dashes (* d
4e80: 6f 75 62 6c 65 29 29 20 28 6f 66 66 73 65 74 20 ouble)) (offset
4e90: 28 2a 20 64 6f 75 62 6c 65 29 29 29 20 22 63 61 (* double))) "ca
4ea0: 69 72 6f 5f 67 65 74 5f 64 61 73 68 22 29 0a 28 iro_get_dash").(
4eb0: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
4ec0: 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 67 65 74 c void cairo-get
4ed0: 2d 6d 61 74 72 69 78 20 28 28 63 72 20 28 2a 20 -matrix ((cr (*
4ee0: 63 61 69 72 6f 2d 74 29 29 20 28 6d 61 74 72 69 cairo-t)) (matri
4ef0: 78 20 28 2a 20 63 61 69 72 6f 2d 6d 61 74 72 69 x (* cairo-matri
4f00: 78 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 67 65 x-t))) "cairo_ge
4f10: 74 5f 6d 61 74 72 69 78 22 29 0a 28 64 65 66 69 t_matrix").(defi
4f20: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 28 2a ne-cairo-func (*
4f30: 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 74 cairo-surface-t
4f40: 29 20 63 61 69 72 6f 2d 67 65 74 2d 74 61 72 67 ) cairo-get-targ
4f50: 65 74 20 28 28 63 72 20 28 2a 20 63 61 69 72 6f et ((cr (* cairo
4f60: 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 67 65 74 -t))) "cairo_get
4f70: 5f 74 61 72 67 65 74 22 29 0a 28 64 65 66 69 6e _target").(defin
4f80: 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 28 2a 20 e-cairo-func (*
4f90: 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 74 29 cairo-surface-t)
4fa0: 20 63 61 69 72 6f 2d 67 65 74 2d 67 72 6f 75 70 cairo-get-group
4fb0: 2d 74 61 72 67 65 74 20 28 28 63 72 20 28 2a 20 -target ((cr (*
4fc0: 63 61 69 72 6f 2d 74 29 29 29 20 22 63 61 69 72 cairo-t))) "cair
4fd0: 6f 5f 67 65 74 5f 67 72 6f 75 70 5f 74 61 72 67 o_get_group_targ
4fe0: 65 74 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 et").(define-cai
4ff0: 72 6f 2d 66 75 6e 63 20 28 2a 20 63 61 69 72 6f ro-func (* cairo
5000: 2d 70 61 74 68 2d 74 29 20 63 61 69 72 6f 2d 63 -path-t) cairo-c
5010: 6f 70 79 2d 70 61 74 68 20 28 28 63 72 20 28 2a opy-path ((cr (*
5020: 20 63 61 69 72 6f 2d 74 29 29 29 20 22 63 61 69 cairo-t))) "cai
5030: 72 6f 5f 63 6f 70 79 5f 70 61 74 68 22 29 0a 28 ro_copy_path").(
5040: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
5050: 63 20 28 2a 20 63 61 69 72 6f 2d 70 61 74 68 2d c (* cairo-path-
5060: 74 29 20 63 61 69 72 6f 2d 63 6f 70 79 2d 70 61 t) cairo-copy-pa
5070: 74 68 2d 66 6c 61 74 20 28 28 63 72 20 28 2a 20 th-flat ((cr (*
5080: 63 61 69 72 6f 2d 74 29 29 29 20 22 63 61 69 72 cairo-t))) "cair
5090: 6f 5f 63 6f 70 79 5f 70 61 74 68 5f 66 6c 61 74 o_copy_path_flat
50a0: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
50b0: 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f -func void cairo
50c0: 2d 61 70 70 65 6e 64 2d 70 61 74 68 20 28 28 63 -append-path ((c
50d0: 72 20 28 2a 20 63 61 69 72 6f 2d 74 29 29 20 28 r (* cairo-t)) (
50e0: 70 61 74 68 20 28 2a 20 63 61 69 72 6f 2d 70 61 path (* cairo-pa
50f0: 74 68 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 61 th-t))) "cairo_a
5100: 70 70 65 6e 64 5f 70 61 74 68 22 29 0a 28 64 65 ppend_path").(de
5110: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
5120: 76 6f 69 64 20 63 61 69 72 6f 2d 70 61 74 68 2d void cairo-path-
5130: 64 65 73 74 72 6f 79 20 28 28 70 61 74 68 20 28 destroy ((path (
5140: 2a 20 63 61 69 72 6f 2d 70 61 74 68 2d 74 29 29 * cairo-path-t))
5150: 29 20 22 63 61 69 72 6f 5f 70 61 74 68 5f 64 65 ) "cairo_path_de
5160: 73 74 72 6f 79 22 29 0a 28 64 65 66 69 6e 65 2d stroy").(define-
5170: 63 61 69 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f cairo-func cairo
5180: 2d 73 74 61 74 75 73 2d 74 20 63 61 69 72 6f 2d -status-t cairo-
5190: 73 74 61 74 75 73 20 28 28 63 72 20 28 2a 20 63 status ((cr (* c
51a0: 61 69 72 6f 2d 74 29 29 29 20 22 63 61 69 72 6f airo-t))) "cairo
51b0: 5f 73 74 61 74 75 73 22 29 0a 28 64 65 66 69 6e _status").(defin
51c0: 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 73 74 72 e-cairo-func str
51d0: 69 6e 67 20 63 61 69 72 6f 2d 73 74 61 74 75 73 ing cairo-status
51e0: 2d 74 6f 2d 73 74 72 69 6e 67 20 28 28 73 74 61 -to-string ((sta
51f0: 74 75 73 20 63 61 69 72 6f 2d 73 74 61 74 75 73 tus cairo-status
5200: 2d 74 29 29 20 22 63 61 69 72 6f 5f 73 74 61 74 -t)) "cairo_stat
5210: 75 73 5f 74 6f 5f 73 74 72 69 6e 67 22 29 0a 28 us_to_string").(
5220: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
5230: 63 20 28 2a 20 63 61 69 72 6f 2d 64 65 76 69 63 c (* cairo-devic
5240: 65 2d 74 29 20 63 61 69 72 6f 2d 64 65 76 69 63 e-t) cairo-devic
5250: 65 2d 72 65 66 65 72 65 6e 63 65 20 28 28 64 65 e-reference ((de
5260: 76 69 63 65 20 28 2a 20 63 61 69 72 6f 2d 64 65 vice (* cairo-de
5270: 76 69 63 65 2d 74 29 29 29 20 22 63 61 69 72 6f vice-t))) "cairo
5280: 5f 64 65 76 69 63 65 5f 72 65 66 65 72 65 6e 63 _device_referenc
5290: 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 e").(define-cair
52a0: 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 64 65 76 o-func cairo-dev
52b0: 69 63 65 2d 74 79 70 65 2d 74 20 63 61 69 72 6f ice-type-t cairo
52c0: 2d 64 65 76 69 63 65 2d 67 65 74 2d 74 79 70 65 -device-get-type
52d0: 20 28 28 64 65 76 69 63 65 20 28 2a 20 63 61 69 ((device (* cai
52e0: 72 6f 2d 64 65 76 69 63 65 2d 74 29 29 29 20 22 ro-device-t))) "
52f0: 63 61 69 72 6f 5f 64 65 76 69 63 65 5f 67 65 74 cairo_device_get
5300: 5f 74 79 70 65 22 29 0a 28 64 65 66 69 6e 65 2d _type").(define-
5310: 63 61 69 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f cairo-func cairo
5320: 2d 73 74 61 74 75 73 2d 74 20 63 61 69 72 6f 2d -status-t cairo-
5330: 64 65 76 69 63 65 2d 73 74 61 74 75 73 20 28 28 device-status ((
5340: 64 65 76 69 63 65 20 28 2a 20 63 61 69 72 6f 2d device (* cairo-
5350: 64 65 76 69 63 65 2d 74 29 29 29 20 22 63 61 69 device-t))) "cai
5360: 72 6f 5f 64 65 76 69 63 65 5f 73 74 61 74 75 73 ro_device_status
5370: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
5380: 2d 66 75 6e 63 20 63 61 69 72 6f 2d 73 74 61 74 -func cairo-stat
5390: 75 73 2d 74 20 63 61 69 72 6f 2d 64 65 76 69 63 us-t cairo-devic
53a0: 65 2d 61 63 71 75 69 72 65 20 28 28 64 65 76 69 e-acquire ((devi
53b0: 63 65 20 28 2a 20 63 61 69 72 6f 2d 64 65 76 69 ce (* cairo-devi
53c0: 63 65 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 64 ce-t))) "cairo_d
53d0: 65 76 69 63 65 5f 61 63 71 75 69 72 65 22 29 0a evice_acquire").
53e0: 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 (define-cairo-fu
53f0: 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 64 65 nc void cairo-de
5400: 76 69 63 65 2d 72 65 6c 65 61 73 65 20 28 28 64 vice-release ((d
5410: 65 76 69 63 65 20 28 2a 20 63 61 69 72 6f 2d 64 evice (* cairo-d
5420: 65 76 69 63 65 2d 74 29 29 29 20 22 63 61 69 72 evice-t))) "cair
5430: 6f 5f 64 65 76 69 63 65 5f 72 65 6c 65 61 73 65 o_device_release
5440: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
5450: 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f -func void cairo
5460: 2d 64 65 76 69 63 65 2d 66 6c 75 73 68 20 28 28 -device-flush ((
5470: 64 65 76 69 63 65 20 28 2a 20 63 61 69 72 6f 2d device (* cairo-
5480: 64 65 76 69 63 65 2d 74 29 29 29 20 22 63 61 69 device-t))) "cai
5490: 72 6f 5f 64 65 76 69 63 65 5f 66 6c 75 73 68 22 ro_device_flush"
54a0: 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d ).(define-cairo-
54b0: 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d func void cairo-
54c0: 64 65 76 69 63 65 2d 66 69 6e 69 73 68 20 28 28 device-finish ((
54d0: 64 65 76 69 63 65 20 28 2a 20 63 61 69 72 6f 2d device (* cairo-
54e0: 64 65 76 69 63 65 2d 74 29 29 29 20 22 63 61 69 device-t))) "cai
54f0: 72 6f 5f 64 65 76 69 63 65 5f 66 69 6e 69 73 68 ro_device_finish
5500: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
5510: 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f -func void cairo
5520: 2d 64 65 76 69 63 65 2d 64 65 73 74 72 6f 79 20 -device-destroy
5530: 28 28 64 65 76 69 63 65 20 28 2a 20 63 61 69 72 ((device (* cair
5540: 6f 2d 64 65 76 69 63 65 2d 74 29 29 29 20 22 63 o-device-t))) "c
5550: 61 69 72 6f 5f 64 65 76 69 63 65 5f 64 65 73 74 airo_device_dest
5560: 72 6f 79 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 roy").(define-ca
5570: 69 72 6f 2d 66 75 6e 63 20 75 6e 73 69 67 6e 65 iro-func unsigne
5580: 64 2d 69 6e 74 20 63 61 69 72 6f 2d 64 65 76 69 d-int cairo-devi
5590: 63 65 2d 67 65 74 2d 72 65 66 65 72 65 6e 63 65 ce-get-reference
55a0: 2d 63 6f 75 6e 74 20 28 28 64 65 76 69 63 65 20 -count ((device
55b0: 28 2a 20 63 61 69 72 6f 2d 64 65 76 69 63 65 2d (* cairo-device-
55c0: 74 29 29 29 20 22 63 61 69 72 6f 5f 64 65 76 69 t))) "cairo_devi
55d0: 63 65 5f 67 65 74 5f 72 65 66 65 72 65 6e 63 65 ce_get_reference
55e0: 5f 63 6f 75 6e 74 22 29 0a 28 64 65 66 69 6e 65 _count").(define
55f0: 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 -cairo-func void
5600: 2a 20 63 61 69 72 6f 2d 64 65 76 69 63 65 2d 67 * cairo-device-g
5610: 65 74 2d 75 73 65 72 2d 64 61 74 61 20 28 28 64 et-user-data ((d
5620: 65 76 69 63 65 20 28 2a 20 63 61 69 72 6f 2d 64 evice (* cairo-d
5630: 65 76 69 63 65 2d 74 29 29 20 28 6b 65 79 20 28 evice-t)) (key (
5640: 2a 20 63 61 69 72 6f 2d 75 73 65 72 2d 64 61 74 * cairo-user-dat
5650: 61 2d 6b 65 79 2d 74 29 29 29 20 22 63 61 69 72 a-key-t))) "cair
5660: 6f 5f 64 65 76 69 63 65 5f 67 65 74 5f 75 73 65 o_device_get_use
5670: 72 5f 64 61 74 61 22 29 0a 28 64 65 66 69 6e 65 r_data").(define
5680: 2d 63 61 69 72 6f 2d 66 75 6e 63 20 63 61 69 72 -cairo-func cair
5690: 6f 2d 73 74 61 74 75 73 2d 74 20 63 61 69 72 6f o-status-t cairo
56a0: 2d 64 65 76 69 63 65 2d 73 65 74 2d 75 73 65 72 -device-set-user
56b0: 2d 64 61 74 61 20 28 28 64 65 76 69 63 65 20 28 -data ((device (
56c0: 2a 20 63 61 69 72 6f 2d 64 65 76 69 63 65 2d 74 * cairo-device-t
56d0: 29 29 20 28 6b 65 79 20 28 2a 20 63 61 69 72 6f )) (key (* cairo
56e0: 2d 75 73 65 72 2d 64 61 74 61 2d 6b 65 79 2d 74 -user-data-key-t
56f0: 29 29 20 28 75 73 65 72 5f 64 61 74 61 20 76 6f )) (user_data vo
5700: 69 64 2a 29 20 28 64 65 73 74 72 6f 79 20 63 61 id*) (destroy ca
5710: 69 72 6f 2d 64 65 73 74 72 6f 79 2d 66 75 6e 63 iro-destroy-func
5720: 2d 74 29 29 20 22 63 61 69 72 6f 5f 64 65 76 69 -t)) "cairo_devi
5730: 63 65 5f 73 65 74 5f 75 73 65 72 5f 64 61 74 61 ce_set_user_data
5740: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
5750: 2d 66 75 6e 63 20 28 2a 20 63 61 69 72 6f 2d 73 -func (* cairo-s
5760: 75 72 66 61 63 65 2d 74 29 20 63 61 69 72 6f 2d urface-t) cairo-
5770: 73 75 72 66 61 63 65 2d 63 72 65 61 74 65 2d 73 surface-create-s
5780: 69 6d 69 6c 61 72 20 28 28 6f 74 68 65 72 20 28 imilar ((other (
5790: 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d * cairo-surface-
57a0: 74 29 29 20 28 63 6f 6e 74 65 6e 74 20 63 61 69 t)) (content cai
57b0: 72 6f 2d 63 6f 6e 74 65 6e 74 2d 74 29 20 28 77 ro-content-t) (w
57c0: 69 64 74 68 20 69 6e 74 29 20 28 68 65 69 67 68 idth int) (heigh
57d0: 74 20 69 6e 74 29 29 20 22 63 61 69 72 6f 5f 73 t int)) "cairo_s
57e0: 75 72 66 61 63 65 5f 63 72 65 61 74 65 5f 73 69 urface_create_si
57f0: 6d 69 6c 61 72 22 29 0a 28 64 65 66 69 6e 65 2d milar").(define-
5800: 63 61 69 72 6f 2d 66 75 6e 63 20 28 2a 20 63 61 cairo-func (* ca
5810: 69 72 6f 2d 73 75 72 66 61 63 65 2d 74 29 20 63 iro-surface-t) c
5820: 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 63 72 65 airo-surface-cre
5830: 61 74 65 2d 73 69 6d 69 6c 61 72 2d 69 6d 61 67 ate-similar-imag
5840: 65 20 28 28 6f 74 68 65 72 20 28 2a 20 63 61 69 e ((other (* cai
5850: 72 6f 2d 73 75 72 66 61 63 65 2d 74 29 29 20 28 ro-surface-t)) (
5860: 66 6f 72 6d 61 74 20 63 61 69 72 6f 2d 66 6f 72 format cairo-for
5870: 6d 61 74 2d 74 29 20 28 77 69 64 74 68 20 69 6e mat-t) (width in
5880: 74 29 20 28 68 65 69 67 68 74 20 69 6e 74 29 29 t) (height int))
5890: 20 22 63 61 69 72 6f 5f 73 75 72 66 61 63 65 5f "cairo_surface_
58a0: 63 72 65 61 74 65 5f 73 69 6d 69 6c 61 72 5f 69 create_similar_i
58b0: 6d 61 67 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 mage").(define-c
58c0: 61 69 72 6f 2d 66 75 6e 63 20 28 2a 20 63 61 69 airo-func (* cai
58d0: 72 6f 2d 73 75 72 66 61 63 65 2d 74 29 20 63 61 ro-surface-t) ca
58e0: 69 72 6f 2d 73 75 72 66 61 63 65 2d 6d 61 70 2d iro-surface-map-
58f0: 74 6f 2d 69 6d 61 67 65 20 28 28 73 75 72 66 61 to-image ((surfa
5900: 63 65 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 ce (* cairo-surf
5910: 61 63 65 2d 74 29 29 20 28 65 78 74 65 6e 74 73 ace-t)) (extents
5920: 20 28 2a 20 63 61 69 72 6f 2d 72 65 63 74 61 6e (* cairo-rectan
5930: 67 6c 65 2d 69 6e 74 2d 74 29 29 29 20 22 63 61 gle-int-t))) "ca
5940: 69 72 6f 5f 73 75 72 66 61 63 65 5f 6d 61 70 5f iro_surface_map_
5950: 74 6f 5f 69 6d 61 67 65 22 29 0a 28 64 65 66 69 to_image").(defi
5960: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f ne-cairo-func vo
5970: 69 64 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 id cairo-surface
5980: 2d 75 6e 6d 61 70 2d 69 6d 61 67 65 20 28 28 73 -unmap-image ((s
5990: 75 72 66 61 63 65 20 28 2a 20 63 61 69 72 6f 2d urface (* cairo-
59a0: 73 75 72 66 61 63 65 2d 74 29 29 20 28 69 6d 61 surface-t)) (ima
59b0: 67 65 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 ge (* cairo-surf
59c0: 61 63 65 2d 74 29 29 29 20 22 63 61 69 72 6f 5f ace-t))) "cairo_
59d0: 73 75 72 66 61 63 65 5f 75 6e 6d 61 70 5f 69 6d surface_unmap_im
59e0: 61 67 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 age").(define-ca
59f0: 69 72 6f 2d 66 75 6e 63 20 28 2a 20 63 61 69 72 iro-func (* cair
5a00: 6f 2d 73 75 72 66 61 63 65 2d 74 29 20 63 61 69 o-surface-t) cai
5a10: 72 6f 2d 73 75 72 66 61 63 65 2d 63 72 65 61 74 ro-surface-creat
5a20: 65 2d 66 6f 72 2d 72 65 63 74 61 6e 67 6c 65 20 e-for-rectangle
5a30: 28 28 74 61 72 67 65 74 20 28 2a 20 63 61 69 72 ((target (* cair
5a40: 6f 2d 73 75 72 66 61 63 65 2d 74 29 29 20 28 78 o-surface-t)) (x
5a50: 20 64 6f 75 62 6c 65 29 20 28 79 20 64 6f 75 62 double) (y doub
5a60: 6c 65 29 20 28 77 69 64 74 68 20 64 6f 75 62 6c le) (width doubl
5a70: 65 29 20 28 68 65 69 67 68 74 20 64 6f 75 62 6c e) (height doubl
5a80: 65 29 29 20 22 63 61 69 72 6f 5f 73 75 72 66 61 e)) "cairo_surfa
5a90: 63 65 5f 63 72 65 61 74 65 5f 66 6f 72 5f 72 65 ce_create_for_re
5aa0: 63 74 61 6e 67 6c 65 22 29 0a 28 64 65 66 69 6e ctangle").(defin
5ab0: 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 28 2a 20 e-cairo-func (*
5ac0: 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 74 29 cairo-surface-t)
5ad0: 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 63 cairo-surface-c
5ae0: 72 65 61 74 65 2d 6f 62 73 65 72 76 65 72 20 28 reate-observer (
5af0: 28 74 61 72 67 65 74 20 28 2a 20 63 61 69 72 6f (target (* cairo
5b00: 2d 73 75 72 66 61 63 65 2d 74 29 29 20 28 6d 6f -surface-t)) (mo
5b10: 64 65 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 de cairo-surface
5b20: 2d 6f 62 73 65 72 76 65 72 2d 6d 6f 64 65 2d 74 -observer-mode-t
5b30: 29 29 20 22 63 61 69 72 6f 5f 73 75 72 66 61 63 )) "cairo_surfac
5b40: 65 5f 63 72 65 61 74 65 5f 6f 62 73 65 72 76 65 e_create_observe
5b50: 72 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 r").(define-cair
5b60: 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 73 74 61 o-func cairo-sta
5b70: 74 75 73 2d 74 20 63 61 69 72 6f 2d 73 75 72 66 tus-t cairo-surf
5b80: 61 63 65 2d 6f 62 73 65 72 76 65 72 2d 61 64 64 ace-observer-add
5b90: 2d 70 61 69 6e 74 2d 63 61 6c 6c 62 61 63 6b 20 -paint-callback
5ba0: 28 28 61 62 73 74 72 61 63 74 5f 73 75 72 66 61 ((abstract_surfa
5bb0: 63 65 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 ce (* cairo-surf
5bc0: 61 63 65 2d 74 29 29 20 28 66 75 6e 63 20 28 2a ace-t)) (func (*
5bd0: 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 6f cairo-surface-o
5be0: 62 73 65 72 76 65 72 2d 63 61 6c 6c 62 61 63 6b bserver-callback
5bf0: 2d 74 29 29 20 28 64 61 74 61 20 76 6f 69 64 2a -t)) (data void*
5c00: 29 29 20 22 63 61 69 72 6f 5f 73 75 72 66 61 63 )) "cairo_surfac
5c10: 65 5f 6f 62 73 65 72 76 65 72 5f 61 64 64 5f 70 e_observer_add_p
5c20: 61 69 6e 74 5f 63 61 6c 6c 62 61 63 6b 22 29 0a aint_callback").
5c30: 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 (define-cairo-fu
5c40: 6e 63 20 63 61 69 72 6f 2d 73 74 61 74 75 73 2d nc cairo-status-
5c50: 74 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d t cairo-surface-
5c60: 6f 62 73 65 72 76 65 72 2d 61 64 64 2d 6d 61 73 observer-add-mas
5c70: 6b 2d 63 61 6c 6c 62 61 63 6b 20 28 28 61 62 73 k-callback ((abs
5c80: 74 72 61 63 74 5f 73 75 72 66 61 63 65 20 28 2a tract_surface (*
5c90: 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 74 cairo-surface-t
5ca0: 29 29 20 28 66 75 6e 63 20 28 2a 20 63 61 69 72 )) (func (* cair
5cb0: 6f 2d 73 75 72 66 61 63 65 2d 6f 62 73 65 72 76 o-surface-observ
5cc0: 65 72 2d 63 61 6c 6c 62 61 63 6b 2d 74 29 29 20 er-callback-t))
5cd0: 28 64 61 74 61 20 76 6f 69 64 2a 29 29 20 22 63 (data void*)) "c
5ce0: 61 69 72 6f 5f 73 75 72 66 61 63 65 5f 6f 62 73 airo_surface_obs
5cf0: 65 72 76 65 72 5f 61 64 64 5f 6d 61 73 6b 5f 63 erver_add_mask_c
5d00: 61 6c 6c 62 61 63 6b 22 29 0a 28 64 65 66 69 6e allback").(defin
5d10: 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 63 61 69 e-cairo-func cai
5d20: 72 6f 2d 73 74 61 74 75 73 2d 74 20 63 61 69 72 ro-status-t cair
5d30: 6f 2d 73 75 72 66 61 63 65 2d 6f 62 73 65 72 76 o-surface-observ
5d40: 65 72 2d 61 64 64 2d 66 69 6c 6c 2d 63 61 6c 6c er-add-fill-call
5d50: 62 61 63 6b 20 28 28 61 62 73 74 72 61 63 74 5f back ((abstract_
5d60: 73 75 72 66 61 63 65 20 28 2a 20 63 61 69 72 6f surface (* cairo
5d70: 2d 73 75 72 66 61 63 65 2d 74 29 29 20 28 66 75 -surface-t)) (fu
5d80: 6e 63 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 nc (* cairo-surf
5d90: 61 63 65 2d 6f 62 73 65 72 76 65 72 2d 63 61 6c ace-observer-cal
5da0: 6c 62 61 63 6b 2d 74 29 29 20 28 64 61 74 61 20 lback-t)) (data
5db0: 76 6f 69 64 2a 29 29 20 22 63 61 69 72 6f 5f 73 void*)) "cairo_s
5dc0: 75 72 66 61 63 65 5f 6f 62 73 65 72 76 65 72 5f urface_observer_
5dd0: 61 64 64 5f 66 69 6c 6c 5f 63 61 6c 6c 62 61 63 add_fill_callbac
5de0: 6b 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 k").(define-cair
5df0: 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 73 74 61 o-func cairo-sta
5e00: 74 75 73 2d 74 20 63 61 69 72 6f 2d 73 75 72 66 tus-t cairo-surf
5e10: 61 63 65 2d 6f 62 73 65 72 76 65 72 2d 61 64 64 ace-observer-add
5e20: 2d 73 74 72 6f 6b 65 2d 63 61 6c 6c 62 61 63 6b -stroke-callback
5e30: 20 28 28 61 62 73 74 72 61 63 74 5f 73 75 72 66 ((abstract_surf
5e40: 61 63 65 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 ace (* cairo-sur
5e50: 66 61 63 65 2d 74 29 29 20 28 66 75 6e 63 20 28 face-t)) (func (
5e60: 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d * cairo-surface-
5e70: 6f 62 73 65 72 76 65 72 2d 63 61 6c 6c 62 61 63 observer-callbac
5e80: 6b 2d 74 29 29 20 28 64 61 74 61 20 76 6f 69 64 k-t)) (data void
5e90: 2a 29 29 20 22 63 61 69 72 6f 5f 73 75 72 66 61 *)) "cairo_surfa
5ea0: 63 65 5f 6f 62 73 65 72 76 65 72 5f 61 64 64 5f ce_observer_add_
5eb0: 73 74 72 6f 6b 65 5f 63 61 6c 6c 62 61 63 6b 22 stroke_callback"
5ec0: 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d ).(define-cairo-
5ed0: 66 75 6e 63 20 63 61 69 72 6f 2d 73 74 61 74 75 func cairo-statu
5ee0: 73 2d 74 20 63 61 69 72 6f 2d 73 75 72 66 61 63 s-t cairo-surfac
5ef0: 65 2d 6f 62 73 65 72 76 65 72 2d 61 64 64 2d 67 e-observer-add-g
5f00: 6c 79 70 68 73 2d 63 61 6c 6c 62 61 63 6b 20 28 lyphs-callback (
5f10: 28 61 62 73 74 72 61 63 74 5f 73 75 72 66 61 63 (abstract_surfac
5f20: 65 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 e (* cairo-surfa
5f30: 63 65 2d 74 29 29 20 28 66 75 6e 63 20 28 2a 20 ce-t)) (func (*
5f40: 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 6f 62 cairo-surface-ob
5f50: 73 65 72 76 65 72 2d 63 61 6c 6c 62 61 63 6b 2d server-callback-
5f60: 74 29 29 20 28 64 61 74 61 20 76 6f 69 64 2a 29 t)) (data void*)
5f70: 29 20 22 63 61 69 72 6f 5f 73 75 72 66 61 63 65 ) "cairo_surface
5f80: 5f 6f 62 73 65 72 76 65 72 5f 61 64 64 5f 67 6c _observer_add_gl
5f90: 79 70 68 73 5f 63 61 6c 6c 62 61 63 6b 22 29 0a yphs_callback").
5fa0: 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 (define-cairo-fu
5fb0: 6e 63 20 63 61 69 72 6f 2d 73 74 61 74 75 73 2d nc cairo-status-
5fc0: 74 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d t cairo-surface-
5fd0: 6f 62 73 65 72 76 65 72 2d 61 64 64 2d 66 6c 75 observer-add-flu
5fe0: 73 68 2d 63 61 6c 6c 62 61 63 6b 20 28 28 61 62 sh-callback ((ab
5ff0: 73 74 72 61 63 74 5f 73 75 72 66 61 63 65 20 28 stract_surface (
6000: 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d * cairo-surface-
6010: 74 29 29 20 28 66 75 6e 63 20 28 2a 20 63 61 69 t)) (func (* cai
6020: 72 6f 2d 73 75 72 66 61 63 65 2d 6f 62 73 65 72 ro-surface-obser
6030: 76 65 72 2d 63 61 6c 6c 62 61 63 6b 2d 74 29 29 ver-callback-t))
6040: 20 28 64 61 74 61 20 76 6f 69 64 2a 29 29 20 22 (data void*)) "
6050: 63 61 69 72 6f 5f 73 75 72 66 61 63 65 5f 6f 62 cairo_surface_ob
6060: 73 65 72 76 65 72 5f 61 64 64 5f 66 6c 75 73 68 server_add_flush
6070: 5f 63 61 6c 6c 62 61 63 6b 22 29 0a 28 64 65 66 _callback").(def
6080: 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 63 ine-cairo-func c
6090: 61 69 72 6f 2d 73 74 61 74 75 73 2d 74 20 63 61 airo-status-t ca
60a0: 69 72 6f 2d 73 75 72 66 61 63 65 2d 6f 62 73 65 iro-surface-obse
60b0: 72 76 65 72 2d 61 64 64 2d 66 69 6e 69 73 68 2d rver-add-finish-
60c0: 63 61 6c 6c 62 61 63 6b 20 28 28 61 62 73 74 72 callback ((abstr
60d0: 61 63 74 5f 73 75 72 66 61 63 65 20 28 2a 20 63 act_surface (* c
60e0: 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 74 29 29 airo-surface-t))
60f0: 20 28 66 75 6e 63 20 28 2a 20 63 61 69 72 6f 2d (func (* cairo-
6100: 73 75 72 66 61 63 65 2d 6f 62 73 65 72 76 65 72 surface-observer
6110: 2d 63 61 6c 6c 62 61 63 6b 2d 74 29 29 20 28 64 -callback-t)) (d
6120: 61 74 61 20 76 6f 69 64 2a 29 29 20 22 63 61 69 ata void*)) "cai
6130: 72 6f 5f 73 75 72 66 61 63 65 5f 6f 62 73 65 72 ro_surface_obser
6140: 76 65 72 5f 61 64 64 5f 66 69 6e 69 73 68 5f 63 ver_add_finish_c
6150: 61 6c 6c 62 61 63 6b 22 29 0a 28 64 65 66 69 6e allback").(defin
6160: 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 63 61 69 e-cairo-func cai
6170: 72 6f 2d 73 74 61 74 75 73 2d 74 20 63 61 69 72 ro-status-t cair
6180: 6f 2d 73 75 72 66 61 63 65 2d 6f 62 73 65 72 76 o-surface-observ
6190: 65 72 2d 70 72 69 6e 74 20 28 28 73 75 72 66 61 er-print ((surfa
61a0: 63 65 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 ce (* cairo-surf
61b0: 61 63 65 2d 74 29 29 20 28 77 72 69 74 65 5f 66 ace-t)) (write_f
61c0: 75 6e 63 20 28 2a 20 63 61 69 72 6f 2d 77 72 69 unc (* cairo-wri
61d0: 74 65 2d 66 75 6e 63 2d 74 29 29 20 28 63 6c 6f te-func-t)) (clo
61e0: 73 75 72 65 20 76 6f 69 64 2a 29 29 20 22 63 61 sure void*)) "ca
61f0: 69 72 6f 5f 73 75 72 66 61 63 65 5f 6f 62 73 65 iro_surface_obse
6200: 72 76 65 72 5f 70 72 69 6e 74 22 29 0a 28 64 65 rver_print").(de
6210: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
6220: 64 6f 75 62 6c 65 20 63 61 69 72 6f 2d 73 75 72 double cairo-sur
6230: 66 61 63 65 2d 6f 62 73 65 72 76 65 72 2d 65 6c face-observer-el
6240: 61 70 73 65 64 20 28 28 73 75 72 66 61 63 65 20 apsed ((surface
6250: 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 (* cairo-surface
6260: 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 73 75 72 -t))) "cairo_sur
6270: 66 61 63 65 5f 6f 62 73 65 72 76 65 72 5f 65 6c face_observer_el
6280: 61 70 73 65 64 22 29 0a 28 64 65 66 69 6e 65 2d apsed").(define-
6290: 63 61 69 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f cairo-func cairo
62a0: 2d 73 74 61 74 75 73 2d 74 20 63 61 69 72 6f 2d -status-t cairo-
62b0: 64 65 76 69 63 65 2d 6f 62 73 65 72 76 65 72 2d device-observer-
62c0: 70 72 69 6e 74 20 28 28 64 65 76 69 63 65 20 28 print ((device (
62d0: 2a 20 63 61 69 72 6f 2d 64 65 76 69 63 65 2d 74 * cairo-device-t
62e0: 29 29 20 28 77 72 69 74 65 5f 66 75 6e 63 20 28 )) (write_func (
62f0: 2a 20 63 61 69 72 6f 2d 77 72 69 74 65 2d 66 75 * cairo-write-fu
6300: 6e 63 2d 74 29 29 20 28 63 6c 6f 73 75 72 65 20 nc-t)) (closure
6310: 76 6f 69 64 2a 29 29 20 22 63 61 69 72 6f 5f 64 void*)) "cairo_d
6320: 65 76 69 63 65 5f 6f 62 73 65 72 76 65 72 5f 70 evice_observer_p
6330: 72 69 6e 74 22 29 0a 28 64 65 66 69 6e 65 2d 63 rint").(define-c
6340: 61 69 72 6f 2d 66 75 6e 63 20 64 6f 75 62 6c 65 airo-func double
6350: 20 63 61 69 72 6f 2d 64 65 76 69 63 65 2d 6f 62 cairo-device-ob
6360: 73 65 72 76 65 72 2d 65 6c 61 70 73 65 64 20 28 server-elapsed (
6370: 28 64 65 76 69 63 65 20 28 2a 20 63 61 69 72 6f (device (* cairo
6380: 2d 64 65 76 69 63 65 2d 74 29 29 29 20 22 63 61 -device-t))) "ca
6390: 69 72 6f 5f 64 65 76 69 63 65 5f 6f 62 73 65 72 iro_device_obser
63a0: 76 65 72 5f 65 6c 61 70 73 65 64 22 29 0a 28 64 ver_elapsed").(d
63b0: 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 efine-cairo-func
63c0: 20 64 6f 75 62 6c 65 20 63 61 69 72 6f 2d 64 65 double cairo-de
63d0: 76 69 63 65 2d 6f 62 73 65 72 76 65 72 2d 70 61 vice-observer-pa
63e0: 69 6e 74 2d 65 6c 61 70 73 65 64 20 28 28 64 65 int-elapsed ((de
63f0: 76 69 63 65 20 28 2a 20 63 61 69 72 6f 2d 64 65 vice (* cairo-de
6400: 76 69 63 65 2d 74 29 29 29 20 22 63 61 69 72 6f vice-t))) "cairo
6410: 5f 64 65 76 69 63 65 5f 6f 62 73 65 72 76 65 72 _device_observer
6420: 5f 70 61 69 6e 74 5f 65 6c 61 70 73 65 64 22 29 _paint_elapsed")
6430: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
6440: 75 6e 63 20 64 6f 75 62 6c 65 20 63 61 69 72 6f unc double cairo
6450: 2d 64 65 76 69 63 65 2d 6f 62 73 65 72 76 65 72 -device-observer
6460: 2d 6d 61 73 6b 2d 65 6c 61 70 73 65 64 20 28 28 -mask-elapsed ((
6470: 64 65 76 69 63 65 20 28 2a 20 63 61 69 72 6f 2d device (* cairo-
6480: 64 65 76 69 63 65 2d 74 29 29 29 20 22 63 61 69 device-t))) "cai
6490: 72 6f 5f 64 65 76 69 63 65 5f 6f 62 73 65 72 76 ro_device_observ
64a0: 65 72 5f 6d 61 73 6b 5f 65 6c 61 70 73 65 64 22 er_mask_elapsed"
64b0: 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d ).(define-cairo-
64c0: 66 75 6e 63 20 64 6f 75 62 6c 65 20 63 61 69 72 func double cair
64d0: 6f 2d 64 65 76 69 63 65 2d 6f 62 73 65 72 76 65 o-device-observe
64e0: 72 2d 66 69 6c 6c 2d 65 6c 61 70 73 65 64 20 28 r-fill-elapsed (
64f0: 28 64 65 76 69 63 65 20 28 2a 20 63 61 69 72 6f (device (* cairo
6500: 2d 64 65 76 69 63 65 2d 74 29 29 29 20 22 63 61 -device-t))) "ca
6510: 69 72 6f 5f 64 65 76 69 63 65 5f 6f 62 73 65 72 iro_device_obser
6520: 76 65 72 5f 66 69 6c 6c 5f 65 6c 61 70 73 65 64 ver_fill_elapsed
6530: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
6540: 2d 66 75 6e 63 20 64 6f 75 62 6c 65 20 63 61 69 -func double cai
6550: 72 6f 2d 64 65 76 69 63 65 2d 6f 62 73 65 72 76 ro-device-observ
6560: 65 72 2d 73 74 72 6f 6b 65 2d 65 6c 61 70 73 65 er-stroke-elapse
6570: 64 20 28 28 64 65 76 69 63 65 20 28 2a 20 63 61 d ((device (* ca
6580: 69 72 6f 2d 64 65 76 69 63 65 2d 74 29 29 29 20 iro-device-t)))
6590: 22 63 61 69 72 6f 5f 64 65 76 69 63 65 5f 6f 62 "cairo_device_ob
65a0: 73 65 72 76 65 72 5f 73 74 72 6f 6b 65 5f 65 6c server_stroke_el
65b0: 61 70 73 65 64 22 29 0a 28 64 65 66 69 6e 65 2d apsed").(define-
65c0: 63 61 69 72 6f 2d 66 75 6e 63 20 64 6f 75 62 6c cairo-func doubl
65d0: 65 20 63 61 69 72 6f 2d 64 65 76 69 63 65 2d 6f e cairo-device-o
65e0: 62 73 65 72 76 65 72 2d 67 6c 79 70 68 73 2d 65 bserver-glyphs-e
65f0: 6c 61 70 73 65 64 20 28 28 64 65 76 69 63 65 20 lapsed ((device
6600: 28 2a 20 63 61 69 72 6f 2d 64 65 76 69 63 65 2d (* cairo-device-
6610: 74 29 29 29 20 22 63 61 69 72 6f 5f 64 65 76 69 t))) "cairo_devi
6620: 63 65 5f 6f 62 73 65 72 76 65 72 5f 67 6c 79 70 ce_observer_glyp
6630: 68 73 5f 65 6c 61 70 73 65 64 22 29 0a 28 64 65 hs_elapsed").(de
6640: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
6650: 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 (* cairo-surface
6660: 2d 74 29 20 63 61 69 72 6f 2d 73 75 72 66 61 63 -t) cairo-surfac
6670: 65 2d 72 65 66 65 72 65 6e 63 65 20 28 28 73 75 e-reference ((su
6680: 72 66 61 63 65 20 28 2a 20 63 61 69 72 6f 2d 73 rface (* cairo-s
6690: 75 72 66 61 63 65 2d 74 29 29 29 20 22 63 61 69 urface-t))) "cai
66a0: 72 6f 5f 73 75 72 66 61 63 65 5f 72 65 66 65 72 ro_surface_refer
66b0: 65 6e 63 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 ence").(define-c
66c0: 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 airo-func void c
66d0: 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 66 69 6e airo-surface-fin
66e0: 69 73 68 20 28 28 73 75 72 66 61 63 65 20 28 2a ish ((surface (*
66f0: 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 74 cairo-surface-t
6700: 29 29 29 20 22 63 61 69 72 6f 5f 73 75 72 66 61 ))) "cairo_surfa
6710: 63 65 5f 66 69 6e 69 73 68 22 29 0a 28 64 65 66 ce_finish").(def
6720: 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 ine-cairo-func v
6730: 6f 69 64 20 63 61 69 72 6f 2d 73 75 72 66 61 63 oid cairo-surfac
6740: 65 2d 64 65 73 74 72 6f 79 20 28 28 73 75 72 66 e-destroy ((surf
6750: 61 63 65 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 ace (* cairo-sur
6760: 66 61 63 65 2d 74 29 29 29 20 22 63 61 69 72 6f face-t))) "cairo
6770: 5f 73 75 72 66 61 63 65 5f 64 65 73 74 72 6f 79 _surface_destroy
6780: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
6790: 2d 66 75 6e 63 20 28 2a 20 63 61 69 72 6f 2d 64 -func (* cairo-d
67a0: 65 76 69 63 65 2d 74 29 20 63 61 69 72 6f 2d 73 evice-t) cairo-s
67b0: 75 72 66 61 63 65 2d 67 65 74 2d 64 65 76 69 63 urface-get-devic
67c0: 65 20 28 28 73 75 72 66 61 63 65 20 28 2a 20 63 e ((surface (* c
67d0: 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 74 29 29 airo-surface-t))
67e0: 29 20 22 63 61 69 72 6f 5f 73 75 72 66 61 63 65 ) "cairo_surface
67f0: 5f 67 65 74 5f 64 65 76 69 63 65 22 29 0a 28 64 _get_device").(d
6800: 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 efine-cairo-func
6810: 20 75 6e 73 69 67 6e 65 64 2d 69 6e 74 20 63 61 unsigned-int ca
6820: 69 72 6f 2d 73 75 72 66 61 63 65 2d 67 65 74 2d iro-surface-get-
6830: 72 65 66 65 72 65 6e 63 65 2d 63 6f 75 6e 74 20 reference-count
6840: 28 28 73 75 72 66 61 63 65 20 28 2a 20 63 61 69 ((surface (* cai
6850: 72 6f 2d 73 75 72 66 61 63 65 2d 74 29 29 29 20 ro-surface-t)))
6860: 22 63 61 69 72 6f 5f 73 75 72 66 61 63 65 5f 67 "cairo_surface_g
6870: 65 74 5f 72 65 66 65 72 65 6e 63 65 5f 63 6f 75 et_reference_cou
6880: 6e 74 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 nt").(define-cai
6890: 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 73 74 ro-func cairo-st
68a0: 61 74 75 73 2d 74 20 63 61 69 72 6f 2d 73 75 72 atus-t cairo-sur
68b0: 66 61 63 65 2d 73 74 61 74 75 73 20 28 28 73 75 face-status ((su
68c0: 72 66 61 63 65 20 28 2a 20 63 61 69 72 6f 2d 73 rface (* cairo-s
68d0: 75 72 66 61 63 65 2d 74 29 29 29 20 22 63 61 69 urface-t))) "cai
68e0: 72 6f 5f 73 75 72 66 61 63 65 5f 73 74 61 74 75 ro_surface_statu
68f0: 73 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 s").(define-cair
6900: 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 73 75 72 o-func cairo-sur
6910: 66 61 63 65 2d 74 79 70 65 2d 74 20 63 61 69 72 face-type-t cair
6920: 6f 2d 73 75 72 66 61 63 65 2d 67 65 74 2d 74 79 o-surface-get-ty
6930: 70 65 20 28 28 73 75 72 66 61 63 65 20 28 2a 20 pe ((surface (*
6940: 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 74 29 cairo-surface-t)
6950: 29 29 20 22 63 61 69 72 6f 5f 73 75 72 66 61 63 )) "cairo_surfac
6960: 65 5f 67 65 74 5f 74 79 70 65 22 29 0a 28 64 65 e_get_type").(de
6970: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
6980: 63 61 69 72 6f 2d 63 6f 6e 74 65 6e 74 2d 74 20 cairo-content-t
6990: 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 67 65 cairo-surface-ge
69a0: 74 2d 63 6f 6e 74 65 6e 74 20 28 28 73 75 72 66 t-content ((surf
69b0: 61 63 65 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 ace (* cairo-sur
69c0: 66 61 63 65 2d 74 29 29 29 20 22 63 61 69 72 6f face-t))) "cairo
69d0: 5f 73 75 72 66 61 63 65 5f 67 65 74 5f 63 6f 6e _surface_get_con
69e0: 74 65 6e 74 22 29 0a 28 64 65 66 69 6e 65 2d 63 tent").(define-c
69f0: 61 69 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d airo-func cairo-
6a00: 73 74 61 74 75 73 2d 74 20 63 61 69 72 6f 2d 73 status-t cairo-s
6a10: 75 72 66 61 63 65 2d 77 72 69 74 65 2d 74 6f 2d urface-write-to-
6a20: 70 6e 67 20 28 28 73 75 72 66 61 63 65 20 28 2a png ((surface (*
6a30: 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 74 cairo-surface-t
6a40: 29 29 20 28 66 69 6c 65 6e 61 6d 65 20 73 74 72 )) (filename str
6a50: 69 6e 67 29 29 20 22 63 61 69 72 6f 5f 73 75 72 ing)) "cairo_sur
6a60: 66 61 63 65 5f 77 72 69 74 65 5f 74 6f 5f 70 6e face_write_to_pn
6a70: 67 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 g").(define-cair
6a80: 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 73 74 61 o-func cairo-sta
6a90: 74 75 73 2d 74 20 63 61 69 72 6f 2d 73 75 72 66 tus-t cairo-surf
6aa0: 61 63 65 2d 77 72 69 74 65 2d 74 6f 2d 70 6e 67 ace-write-to-png
6ab0: 2d 73 74 72 65 61 6d 20 28 28 73 75 72 66 61 63 -stream ((surfac
6ac0: 65 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 e (* cairo-surfa
6ad0: 63 65 2d 74 29 29 20 28 77 72 69 74 65 5f 66 75 ce-t)) (write_fu
6ae0: 6e 63 20 28 2a 20 63 61 69 72 6f 2d 77 72 69 74 nc (* cairo-writ
6af0: 65 2d 66 75 6e 63 2d 74 29 29 20 28 63 6c 6f 73 e-func-t)) (clos
6b00: 75 72 65 20 76 6f 69 64 2a 29 29 20 22 63 61 69 ure void*)) "cai
6b10: 72 6f 5f 73 75 72 66 61 63 65 5f 77 72 69 74 65 ro_surface_write
6b20: 5f 74 6f 5f 70 6e 67 5f 73 74 72 65 61 6d 22 29 _to_png_stream")
6b30: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
6b40: 75 6e 63 20 76 6f 69 64 2a 20 63 61 69 72 6f 2d unc void* cairo-
6b50: 73 75 72 66 61 63 65 2d 67 65 74 2d 75 73 65 72 surface-get-user
6b60: 2d 64 61 74 61 20 28 28 73 75 72 66 61 63 65 20 -data ((surface
6b70: 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 (* cairo-surface
6b80: 2d 74 29 29 20 28 6b 65 79 20 28 2a 20 63 61 69 -t)) (key (* cai
6b90: 72 6f 2d 75 73 65 72 2d 64 61 74 61 2d 6b 65 79 ro-user-data-key
6ba0: 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 73 75 72 -t))) "cairo_sur
6bb0: 66 61 63 65 5f 67 65 74 5f 75 73 65 72 5f 64 61 face_get_user_da
6bc0: 74 61 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 ta").(define-cai
6bd0: 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 73 74 ro-func cairo-st
6be0: 61 74 75 73 2d 74 20 63 61 69 72 6f 2d 73 75 72 atus-t cairo-sur
6bf0: 66 61 63 65 2d 73 65 74 2d 75 73 65 72 2d 64 61 face-set-user-da
6c00: 74 61 20 28 28 73 75 72 66 61 63 65 20 28 2a 20 ta ((surface (*
6c10: 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 74 29 cairo-surface-t)
6c20: 29 20 28 6b 65 79 20 28 2a 20 63 61 69 72 6f 2d ) (key (* cairo-
6c30: 75 73 65 72 2d 64 61 74 61 2d 6b 65 79 2d 74 29 user-data-key-t)
6c40: 29 20 28 75 73 65 72 5f 64 61 74 61 20 76 6f 69 ) (user_data voi
6c50: 64 2a 29 20 28 64 65 73 74 72 6f 79 20 63 61 69 d*) (destroy cai
6c60: 72 6f 2d 64 65 73 74 72 6f 79 2d 66 75 6e 63 2d ro-destroy-func-
6c70: 74 29 29 20 22 63 61 69 72 6f 5f 73 75 72 66 61 t)) "cairo_surfa
6c80: 63 65 5f 73 65 74 5f 75 73 65 72 5f 64 61 74 61 ce_set_user_data
6c90: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
6ca0: 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f -func void cairo
6cb0: 2d 73 75 72 66 61 63 65 2d 67 65 74 2d 6d 69 6d -surface-get-mim
6cc0: 65 2d 64 61 74 61 20 28 28 73 75 72 66 61 63 65 e-data ((surface
6cd0: 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 63 (* cairo-surfac
6ce0: 65 2d 74 29 29 20 28 6d 69 6d 65 5f 74 79 70 65 e-t)) (mime_type
6cf0: 20 73 74 72 69 6e 67 29 20 28 64 61 74 61 20 28 string) (data (
6d00: 2a 20 75 6e 73 69 67 6e 65 64 2d 38 2a 29 29 20 * unsigned-8*))
6d10: 28 6c 65 6e 67 74 68 20 28 2a 20 75 6e 73 69 67 (length (* unsig
6d20: 6e 65 64 2d 6c 6f 6e 67 29 29 29 20 22 63 61 69 ned-long))) "cai
6d30: 72 6f 5f 73 75 72 66 61 63 65 5f 67 65 74 5f 6d ro_surface_get_m
6d40: 69 6d 65 5f 64 61 74 61 22 29 0a 28 64 65 66 69 ime_data").(defi
6d50: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 63 61 ne-cairo-func ca
6d60: 69 72 6f 2d 73 74 61 74 75 73 2d 74 20 63 61 69 iro-status-t cai
6d70: 72 6f 2d 73 75 72 66 61 63 65 2d 73 65 74 2d 6d ro-surface-set-m
6d80: 69 6d 65 2d 64 61 74 61 20 28 28 73 75 72 66 61 ime-data ((surfa
6d90: 63 65 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 ce (* cairo-surf
6da0: 61 63 65 2d 74 29 29 20 28 6d 69 6d 65 5f 74 79 ace-t)) (mime_ty
6db0: 70 65 20 73 74 72 69 6e 67 29 20 28 64 61 74 61 pe string) (data
6dc0: 20 28 2a 20 75 6e 73 69 67 6e 65 64 2d 38 29 29 (* unsigned-8))
6dd0: 20 28 6c 65 6e 67 74 68 20 75 6e 73 69 67 6e 65 (length unsigne
6de0: 64 2d 6c 6f 6e 67 29 20 28 64 65 73 74 72 6f 79 d-long) (destroy
6df0: 20 63 61 69 72 6f 2d 64 65 73 74 72 6f 79 2d 66 cairo-destroy-f
6e00: 75 6e 63 2d 74 29 20 28 63 6c 6f 73 75 72 65 20 unc-t) (closure
6e10: 76 6f 69 64 2a 29 29 20 22 63 61 69 72 6f 5f 73 void*)) "cairo_s
6e20: 75 72 66 61 63 65 5f 73 65 74 5f 6d 69 6d 65 5f urface_set_mime_
6e30: 64 61 74 61 22 29 0a 28 64 65 66 69 6e 65 2d 63 data").(define-c
6e40: 61 69 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d airo-func cairo-
6e50: 62 6f 6f 6c 2d 74 20 63 61 69 72 6f 2d 73 75 72 bool-t cairo-sur
6e60: 66 61 63 65 2d 73 75 70 70 6f 72 74 73 2d 6d 69 face-supports-mi
6e70: 6d 65 2d 74 79 70 65 20 28 28 73 75 72 66 61 63 me-type ((surfac
6e80: 65 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 e (* cairo-surfa
6e90: 63 65 2d 74 29 29 20 28 6d 69 6d 65 5f 74 79 70 ce-t)) (mime_typ
6ea0: 65 20 73 74 72 69 6e 67 29 29 20 22 63 61 69 72 e string)) "cair
6eb0: 6f 5f 73 75 72 66 61 63 65 5f 73 75 70 70 6f 72 o_surface_suppor
6ec0: 74 73 5f 6d 69 6d 65 5f 74 79 70 65 22 29 0a 28 ts_mime_type").(
6ed0: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
6ee0: 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 73 75 72 c void cairo-sur
6ef0: 66 61 63 65 2d 67 65 74 2d 66 6f 6e 74 2d 6f 70 face-get-font-op
6f00: 74 69 6f 6e 73 20 28 28 73 75 72 66 61 63 65 20 tions ((surface
6f10: 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 (* cairo-surface
6f20: 2d 74 29 29 20 28 6f 70 74 69 6f 6e 73 20 28 2a -t)) (options (*
6f30: 20 63 61 69 72 6f 2d 66 6f 6e 74 2d 6f 70 74 69 cairo-font-opti
6f40: 6f 6e 73 2d 74 29 29 29 20 22 63 61 69 72 6f 5f ons-t))) "cairo_
6f50: 73 75 72 66 61 63 65 5f 67 65 74 5f 66 6f 6e 74 surface_get_font
6f60: 5f 6f 70 74 69 6f 6e 73 22 29 0a 28 64 65 66 69 _options").(defi
6f70: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f ne-cairo-func vo
6f80: 69 64 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 id cairo-surface
6f90: 2d 66 6c 75 73 68 20 28 28 73 75 72 66 61 63 65 -flush ((surface
6fa0: 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 63 (* cairo-surfac
6fb0: 65 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 73 75 e-t))) "cairo_su
6fc0: 72 66 61 63 65 5f 66 6c 75 73 68 22 29 0a 28 64 rface_flush").(d
6fd0: 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 efine-cairo-func
6fe0: 20 76 6f 69 64 20 63 61 69 72 6f 2d 73 75 72 66 void cairo-surf
6ff0: 61 63 65 2d 6d 61 72 6b 2d 64 69 72 74 79 20 28 ace-mark-dirty (
7000: 28 73 75 72 66 61 63 65 20 28 2a 20 63 61 69 72 (surface (* cair
7010: 6f 2d 73 75 72 66 61 63 65 2d 74 29 29 29 20 22 o-surface-t))) "
7020: 63 61 69 72 6f 5f 73 75 72 66 61 63 65 5f 6d 61 cairo_surface_ma
7030: 72 6b 5f 64 69 72 74 79 22 29 0a 28 64 65 66 69 rk_dirty").(defi
7040: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f ne-cairo-func vo
7050: 69 64 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 id cairo-surface
7060: 2d 6d 61 72 6b 2d 64 69 72 74 79 2d 72 65 63 74 -mark-dirty-rect
7070: 61 6e 67 6c 65 20 28 28 73 75 72 66 61 63 65 20 angle ((surface
7080: 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 (* cairo-surface
7090: 2d 74 29 29 20 28 78 20 69 6e 74 29 20 28 79 20 -t)) (x int) (y
70a0: 69 6e 74 29 20 28 77 69 64 74 68 20 69 6e 74 29 int) (width int)
70b0: 20 28 68 65 69 67 68 74 20 69 6e 74 29 29 20 22 (height int)) "
70c0: 63 61 69 72 6f 5f 73 75 72 66 61 63 65 5f 6d 61 cairo_surface_ma
70d0: 72 6b 5f 64 69 72 74 79 5f 72 65 63 74 61 6e 67 rk_dirty_rectang
70e0: 6c 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 le").(define-cai
70f0: 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 ro-func void cai
7100: 72 6f 2d 73 75 72 66 61 63 65 2d 73 65 74 2d 64 ro-surface-set-d
7110: 65 76 69 63 65 2d 73 63 61 6c 65 20 28 28 73 75 evice-scale ((su
7120: 72 66 61 63 65 20 28 2a 20 63 61 69 72 6f 2d 73 rface (* cairo-s
7130: 75 72 66 61 63 65 2d 74 29 29 20 28 78 5f 73 63 urface-t)) (x_sc
7140: 61 6c 65 20 64 6f 75 62 6c 65 29 20 28 79 5f 73 ale double) (y_s
7150: 63 61 6c 65 20 64 6f 75 62 6c 65 29 29 20 22 63 cale double)) "c
7160: 61 69 72 6f 5f 73 75 72 66 61 63 65 5f 73 65 74 airo_surface_set
7170: 5f 64 65 76 69 63 65 5f 73 63 61 6c 65 22 29 0a _device_scale").
7180: 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 (define-cairo-fu
7190: 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 73 75 nc void cairo-su
71a0: 72 66 61 63 65 2d 67 65 74 2d 64 65 76 69 63 65 rface-get-device
71b0: 2d 73 63 61 6c 65 20 28 28 73 75 72 66 61 63 65 -scale ((surface
71c0: 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 63 (* cairo-surfac
71d0: 65 2d 74 29 29 20 28 78 5f 73 63 61 6c 65 20 28 e-t)) (x_scale (
71e0: 2a 20 64 6f 75 62 6c 65 29 29 20 28 79 5f 73 63 * double)) (y_sc
71f0: 61 6c 65 20 28 2a 20 64 6f 75 62 6c 65 29 29 29 ale (* double)))
7200: 20 22 63 61 69 72 6f 5f 73 75 72 66 61 63 65 5f "cairo_surface_
7210: 67 65 74 5f 64 65 76 69 63 65 5f 73 63 61 6c 65 get_device_scale
7220: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
7230: 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f -func void cairo
7240: 2d 73 75 72 66 61 63 65 2d 73 65 74 2d 64 65 76 -surface-set-dev
7250: 69 63 65 2d 6f 66 66 73 65 74 20 28 28 73 75 72 ice-offset ((sur
7260: 66 61 63 65 20 28 2a 20 63 61 69 72 6f 2d 73 75 face (* cairo-su
7270: 72 66 61 63 65 2d 74 29 29 20 28 78 5f 6f 66 66 rface-t)) (x_off
7280: 73 65 74 20 64 6f 75 62 6c 65 29 20 28 79 5f 6f set double) (y_o
7290: 66 66 73 65 74 20 64 6f 75 62 6c 65 29 29 20 22 ffset double)) "
72a0: 63 61 69 72 6f 5f 73 75 72 66 61 63 65 5f 73 65 cairo_surface_se
72b0: 74 5f 64 65 76 69 63 65 5f 6f 66 66 73 65 74 22 t_device_offset"
72c0: 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d ).(define-cairo-
72d0: 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d func void cairo-
72e0: 73 75 72 66 61 63 65 2d 67 65 74 2d 64 65 76 69 surface-get-devi
72f0: 63 65 2d 6f 66 66 73 65 74 20 28 28 73 75 72 66 ce-offset ((surf
7300: 61 63 65 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 ace (* cairo-sur
7310: 66 61 63 65 2d 74 29 29 20 28 78 5f 6f 66 66 73 face-t)) (x_offs
7320: 65 74 20 28 2a 20 64 6f 75 62 6c 65 29 29 20 28 et (* double)) (
7330: 79 5f 6f 66 66 73 65 74 20 28 2a 20 64 6f 75 62 y_offset (* doub
7340: 6c 65 29 29 29 20 22 63 61 69 72 6f 5f 73 75 72 le))) "cairo_sur
7350: 66 61 63 65 5f 67 65 74 5f 64 65 76 69 63 65 5f face_get_device_
7360: 6f 66 66 73 65 74 22 29 0a 28 64 65 66 69 6e 65 offset").(define
7370: 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 -cairo-func void
7380: 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 73 cairo-surface-s
7390: 65 74 2d 66 61 6c 6c 62 61 63 6b 2d 72 65 73 6f et-fallback-reso
73a0: 6c 75 74 69 6f 6e 20 28 28 73 75 72 66 61 63 65 lution ((surface
73b0: 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 63 (* cairo-surfac
73c0: 65 2d 74 29 29 20 28 78 5f 70 69 78 65 6c 73 5f e-t)) (x_pixels_
73d0: 70 65 72 5f 69 6e 63 68 20 64 6f 75 62 6c 65 29 per_inch double)
73e0: 20 28 79 5f 70 69 78 65 6c 73 5f 70 65 72 5f 69 (y_pixels_per_i
73f0: 6e 63 68 20 64 6f 75 62 6c 65 29 29 20 22 63 61 nch double)) "ca
7400: 69 72 6f 5f 73 75 72 66 61 63 65 5f 73 65 74 5f iro_surface_set_
7410: 66 61 6c 6c 62 61 63 6b 5f 72 65 73 6f 6c 75 74 fallback_resolut
7420: 69 6f 6e 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 ion").(define-ca
7430: 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 iro-func void ca
7440: 69 72 6f 2d 73 75 72 66 61 63 65 2d 67 65 74 2d iro-surface-get-
7450: 66 61 6c 6c 62 61 63 6b 2d 72 65 73 6f 6c 75 74 fallback-resolut
7460: 69 6f 6e 20 28 28 73 75 72 66 61 63 65 20 28 2a ion ((surface (*
7470: 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 74 cairo-surface-t
7480: 29 29 20 28 78 5f 70 69 78 65 6c 73 5f 70 65 72 )) (x_pixels_per
7490: 5f 69 6e 63 68 20 28 2a 20 64 6f 75 62 6c 65 29 _inch (* double)
74a0: 29 20 28 79 5f 70 69 78 65 6c 73 5f 70 65 72 5f ) (y_pixels_per_
74b0: 69 6e 63 68 20 28 2a 20 64 6f 75 62 6c 65 29 29 inch (* double))
74c0: 29 20 22 63 61 69 72 6f 5f 73 75 72 66 61 63 65 ) "cairo_surface
74d0: 5f 67 65 74 5f 66 61 6c 6c 62 61 63 6b 5f 72 65 _get_fallback_re
74e0: 73 6f 6c 75 74 69 6f 6e 22 29 0a 28 64 65 66 69 solution").(defi
74f0: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f ne-cairo-func vo
7500: 69 64 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 id cairo-surface
7510: 2d 63 6f 70 79 2d 70 61 67 65 20 28 28 73 75 72 -copy-page ((sur
7520: 66 61 63 65 20 28 2a 20 63 61 69 72 6f 2d 73 75 face (* cairo-su
7530: 72 66 61 63 65 2d 74 29 29 29 20 22 63 61 69 72 rface-t))) "cair
7540: 6f 5f 73 75 72 66 61 63 65 5f 63 6f 70 79 5f 70 o_surface_copy_p
7550: 61 67 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 age").(define-ca
7560: 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 iro-func void ca
7570: 69 72 6f 2d 73 75 72 66 61 63 65 2d 73 68 6f 77 iro-surface-show
7580: 2d 70 61 67 65 20 28 28 73 75 72 66 61 63 65 20 -page ((surface
7590: 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 (* cairo-surface
75a0: 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 73 75 72 -t))) "cairo_sur
75b0: 66 61 63 65 5f 73 68 6f 77 5f 70 61 67 65 22 29 face_show_page")
75c0: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
75d0: 75 6e 63 20 63 61 69 72 6f 2d 62 6f 6f 6c 2d 74 unc cairo-bool-t
75e0: 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 68 cairo-surface-h
75f0: 61 73 2d 73 68 6f 77 2d 74 65 78 74 2d 67 6c 79 as-show-text-gly
7600: 70 68 73 20 28 28 73 75 72 66 61 63 65 20 28 2a phs ((surface (*
7610: 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 74 cairo-surface-t
7620: 29 29 29 20 22 63 61 69 72 6f 5f 73 75 72 66 61 ))) "cairo_surfa
7630: 63 65 5f 68 61 73 5f 73 68 6f 77 5f 74 65 78 74 ce_has_show_text
7640: 5f 67 6c 79 70 68 73 22 29 0a 28 64 65 66 69 6e _glyphs").(defin
7650: 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 28 2a 20 e-cairo-func (*
7660: 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 74 29 cairo-surface-t)
7670: 20 63 61 69 72 6f 2d 69 6d 61 67 65 2d 73 75 72 cairo-image-sur
7680: 66 61 63 65 2d 63 72 65 61 74 65 20 28 28 66 6f face-create ((fo
7690: 72 6d 61 74 20 63 61 69 72 6f 2d 66 6f 72 6d 61 rmat cairo-forma
76a0: 74 2d 74 29 20 28 77 69 64 74 68 20 69 6e 74 29 t-t) (width int)
76b0: 20 28 68 65 69 67 68 74 20 69 6e 74 29 29 20 22 (height int)) "
76c0: 63 61 69 72 6f 5f 69 6d 61 67 65 5f 73 75 72 66 cairo_image_surf
76d0: 61 63 65 5f 63 72 65 61 74 65 22 29 0a 28 64 65 ace_create").(de
76e0: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
76f0: 69 6e 74 20 63 61 69 72 6f 2d 66 6f 72 6d 61 74 int cairo-format
7700: 2d 73 74 72 69 64 65 2d 66 6f 72 2d 77 69 64 74 -stride-for-widt
7710: 68 20 28 28 66 6f 72 6d 61 74 20 63 61 69 72 6f h ((format cairo
7720: 2d 66 6f 72 6d 61 74 2d 74 29 20 28 77 69 64 74 -format-t) (widt
7730: 68 20 69 6e 74 29 29 20 22 63 61 69 72 6f 5f 66 h int)) "cairo_f
7740: 6f 72 6d 61 74 5f 73 74 72 69 64 65 5f 66 6f 72 ormat_stride_for
7750: 5f 77 69 64 74 68 22 29 0a 28 64 65 66 69 6e 65 _width").(define
7760: 2d 63 61 69 72 6f 2d 66 75 6e 63 20 28 2a 20 63 -cairo-func (* c
7770: 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 74 29 20 airo-surface-t)
7780: 63 61 69 72 6f 2d 69 6d 61 67 65 2d 73 75 72 66 cairo-image-surf
7790: 61 63 65 2d 63 72 65 61 74 65 2d 66 6f 72 2d 64 ace-create-for-d
77a0: 61 74 61 20 28 28 64 61 74 61 20 28 2a 20 75 6e ata ((data (* un
77b0: 73 69 67 6e 65 64 2d 38 29 29 20 28 66 6f 72 6d signed-8)) (form
77c0: 61 74 20 63 61 69 72 6f 2d 66 6f 72 6d 61 74 2d at cairo-format-
77d0: 74 29 20 28 77 69 64 74 68 20 69 6e 74 29 20 28 t) (width int) (
77e0: 68 65 69 67 68 74 20 69 6e 74 29 20 28 73 74 72 height int) (str
77f0: 69 64 65 20 69 6e 74 29 29 20 22 63 61 69 72 6f ide int)) "cairo
7800: 5f 69 6d 61 67 65 5f 73 75 72 66 61 63 65 5f 63 _image_surface_c
7810: 72 65 61 74 65 5f 66 6f 72 5f 64 61 74 61 22 29 reate_for_data")
7820: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
7830: 75 6e 63 20 28 2a 20 75 6e 73 69 67 6e 65 64 2d unc (* unsigned-
7840: 38 29 20 63 61 69 72 6f 2d 69 6d 61 67 65 2d 73 8) cairo-image-s
7850: 75 72 66 61 63 65 2d 67 65 74 2d 64 61 74 61 20 urface-get-data
7860: 28 28 73 75 72 66 61 63 65 20 28 2a 20 63 61 69 ((surface (* cai
7870: 72 6f 2d 73 75 72 66 61 63 65 2d 74 29 29 29 20 ro-surface-t)))
7880: 22 63 61 69 72 6f 5f 69 6d 61 67 65 5f 73 75 72 "cairo_image_sur
7890: 66 61 63 65 5f 67 65 74 5f 64 61 74 61 22 29 0a face_get_data").
78a0: 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 (define-cairo-fu
78b0: 6e 63 20 63 61 69 72 6f 2d 66 6f 72 6d 61 74 2d nc cairo-format-
78c0: 74 20 63 61 69 72 6f 2d 69 6d 61 67 65 2d 73 75 t cairo-image-su
78d0: 72 66 61 63 65 2d 67 65 74 2d 66 6f 72 6d 61 74 rface-get-format
78e0: 20 28 28 73 75 72 66 61 63 65 20 28 2a 20 63 61 ((surface (* ca
78f0: 69 72 6f 2d 73 75 72 66 61 63 65 2d 74 29 29 29 iro-surface-t)))
7900: 20 22 63 61 69 72 6f 5f 69 6d 61 67 65 5f 73 75 "cairo_image_su
7910: 72 66 61 63 65 5f 67 65 74 5f 66 6f 72 6d 61 74 rface_get_format
7920: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
7930: 2d 66 75 6e 63 20 69 6e 74 20 63 61 69 72 6f 2d -func int cairo-
7940: 69 6d 61 67 65 2d 73 75 72 66 61 63 65 2d 67 65 image-surface-ge
7950: 74 2d 77 69 64 74 68 20 28 28 73 75 72 66 61 63 t-width ((surfac
7960: 65 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 e (* cairo-surfa
7970: 63 65 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 69 ce-t))) "cairo_i
7980: 6d 61 67 65 5f 73 75 72 66 61 63 65 5f 67 65 74 mage_surface_get
7990: 5f 77 69 64 74 68 22 29 0a 28 64 65 66 69 6e 65 _width").(define
79a0: 2d 63 61 69 72 6f 2d 66 75 6e 63 20 69 6e 74 20 -cairo-func int
79b0: 63 61 69 72 6f 2d 69 6d 61 67 65 2d 73 75 72 66 cairo-image-surf
79c0: 61 63 65 2d 67 65 74 2d 68 65 69 67 68 74 20 28 ace-get-height (
79d0: 28 73 75 72 66 61 63 65 20 28 2a 20 63 61 69 72 (surface (* cair
79e0: 6f 2d 73 75 72 66 61 63 65 2d 74 29 29 29 20 22 o-surface-t))) "
79f0: 63 61 69 72 6f 5f 69 6d 61 67 65 5f 73 75 72 66 cairo_image_surf
7a00: 61 63 65 5f 67 65 74 5f 68 65 69 67 68 74 22 29 ace_get_height")
7a10: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
7a20: 75 6e 63 20 69 6e 74 20 63 61 69 72 6f 2d 69 6d unc int cairo-im
7a30: 61 67 65 2d 73 75 72 66 61 63 65 2d 67 65 74 2d age-surface-get-
7a40: 73 74 72 69 64 65 20 28 28 73 75 72 66 61 63 65 stride ((surface
7a50: 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 63 (* cairo-surfac
7a60: 65 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 69 6d e-t))) "cairo_im
7a70: 61 67 65 5f 73 75 72 66 61 63 65 5f 67 65 74 5f age_surface_get_
7a80: 73 74 72 69 64 65 22 29 0a 28 64 65 66 69 6e 65 stride").(define
7a90: 2d 63 61 69 72 6f 2d 66 75 6e 63 20 28 2a 20 63 -cairo-func (* c
7aa0: 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 74 29 20 airo-surface-t)
7ab0: 63 61 69 72 6f 2d 69 6d 61 67 65 2d 73 75 72 66 cairo-image-surf
7ac0: 61 63 65 2d 63 72 65 61 74 65 2d 66 72 6f 6d 2d ace-create-from-
7ad0: 70 6e 67 20 28 28 66 69 6c 65 6e 61 6d 65 20 73 png ((filename s
7ae0: 74 72 69 6e 67 29 29 20 22 63 61 69 72 6f 5f 69 tring)) "cairo_i
7af0: 6d 61 67 65 5f 73 75 72 66 61 63 65 5f 63 72 65 mage_surface_cre
7b00: 61 74 65 5f 66 72 6f 6d 5f 70 6e 67 22 29 0a 28 ate_from_png").(
7b10: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
7b20: 63 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 c (* cairo-surfa
7b30: 63 65 2d 74 29 20 63 61 69 72 6f 2d 69 6d 61 67 ce-t) cairo-imag
7b40: 65 2d 73 75 72 66 61 63 65 2d 63 72 65 61 74 65 e-surface-create
7b50: 2d 66 72 6f 6d 2d 70 6e 67 2d 73 74 72 65 61 6d -from-png-stream
7b60: 20 28 28 72 65 61 64 5f 66 75 6e 63 20 28 2a 20 ((read_func (*
7b70: 63 61 69 72 6f 2d 72 65 61 64 2d 66 75 6e 63 2d cairo-read-func-
7b80: 74 29 29 20 28 63 6c 6f 73 75 72 65 20 76 6f 69 t)) (closure voi
7b90: 64 2a 29 29 20 22 63 61 69 72 6f 5f 69 6d 61 67 d*)) "cairo_imag
7ba0: 65 5f 73 75 72 66 61 63 65 5f 63 72 65 61 74 65 e_surface_create
7bb0: 5f 66 72 6f 6d 5f 70 6e 67 5f 73 74 72 65 61 6d _from_png_stream
7bc0: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
7bd0: 2d 66 75 6e 63 20 28 2a 20 63 61 69 72 6f 2d 73 -func (* cairo-s
7be0: 75 72 66 61 63 65 2d 74 29 20 63 61 69 72 6f 2d urface-t) cairo-
7bf0: 72 65 63 6f 72 64 69 6e 67 2d 73 75 72 66 61 63 recording-surfac
7c00: 65 2d 63 72 65 61 74 65 20 28 28 63 6f 6e 74 65 e-create ((conte
7c10: 6e 74 20 63 61 69 72 6f 2d 63 6f 6e 74 65 6e 74 nt cairo-content
7c20: 2d 74 29 20 28 65 78 74 65 6e 74 73 20 28 2a 20 -t) (extents (*
7c30: 63 61 69 72 6f 2d 72 65 63 74 61 6e 67 6c 65 2d cairo-rectangle-
7c40: 74 29 29 29 20 22 63 61 69 72 6f 5f 72 65 63 6f t))) "cairo_reco
7c50: 72 64 69 6e 67 5f 73 75 72 66 61 63 65 5f 63 72 rding_surface_cr
7c60: 65 61 74 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 eate").(define-c
7c70: 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 airo-func void c
7c80: 61 69 72 6f 2d 72 65 63 6f 72 64 69 6e 67 2d 73 airo-recording-s
7c90: 75 72 66 61 63 65 2d 69 6e 6b 2d 65 78 74 65 6e urface-ink-exten
7ca0: 74 73 20 28 28 73 75 72 66 61 63 65 20 28 2a 20 ts ((surface (*
7cb0: 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d 74 29 cairo-surface-t)
7cc0: 29 20 28 78 30 20 28 2a 20 64 6f 75 62 6c 65 29 ) (x0 (* double)
7cd0: 29 20 28 79 30 20 28 2a 20 64 6f 75 62 6c 65 29 ) (y0 (* double)
7ce0: 29 20 28 77 69 64 74 68 20 28 2a 20 64 6f 75 62 ) (width (* doub
7cf0: 6c 65 29 29 20 28 68 65 69 67 68 74 20 28 2a 20 le)) (height (*
7d00: 64 6f 75 62 6c 65 29 29 29 20 22 63 61 69 72 6f double))) "cairo
7d10: 5f 72 65 63 6f 72 64 69 6e 67 5f 73 75 72 66 61 _recording_surfa
7d20: 63 65 5f 69 6e 6b 5f 65 78 74 65 6e 74 73 22 29 ce_ink_extents")
7d30: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
7d40: 75 6e 63 20 63 61 69 72 6f 2d 62 6f 6f 6c 2d 74 unc cairo-bool-t
7d50: 20 63 61 69 72 6f 2d 72 65 63 6f 72 64 69 6e 67 cairo-recording
7d60: 2d 73 75 72 66 61 63 65 2d 67 65 74 2d 65 78 74 -surface-get-ext
7d70: 65 6e 74 73 20 28 28 73 75 72 66 61 63 65 20 28 ents ((surface (
7d80: 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 63 65 2d * cairo-surface-
7d90: 74 29 29 20 28 65 78 74 65 6e 74 73 20 28 2a 20 t)) (extents (*
7da0: 63 61 69 72 6f 2d 72 65 63 74 61 6e 67 6c 65 2d cairo-rectangle-
7db0: 74 29 29 29 20 22 63 61 69 72 6f 5f 72 65 63 6f t))) "cairo_reco
7dc0: 72 64 69 6e 67 5f 73 75 72 66 61 63 65 5f 67 65 rding_surface_ge
7dd0: 74 5f 65 78 74 65 6e 74 73 22 29 0a 28 64 65 66 t_extents").(def
7de0: 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 28 ine-cairo-func (
7df0: 2a 20 63 61 69 72 6f 2d 70 61 74 74 65 72 6e 2d * cairo-pattern-
7e00: 74 29 20 63 61 69 72 6f 2d 70 61 74 74 65 72 6e t) cairo-pattern
7e10: 2d 63 72 65 61 74 65 2d 72 61 73 74 65 72 2d 73 -create-raster-s
7e20: 6f 75 72 63 65 20 28 28 75 73 65 72 5f 64 61 74 ource ((user_dat
7e30: 61 20 76 6f 69 64 2a 29 20 28 63 6f 6e 74 65 6e a void*) (conten
7e40: 74 20 63 61 69 72 6f 2d 63 6f 6e 74 65 6e 74 2d t cairo-content-
7e50: 74 29 20 28 77 69 64 74 68 20 69 6e 74 29 20 28 t) (width int) (
7e60: 68 65 69 67 68 74 20 69 6e 74 29 29 20 22 63 61 height int)) "ca
7e70: 69 72 6f 5f 70 61 74 74 65 72 6e 5f 63 72 65 61 iro_pattern_crea
7e80: 74 65 5f 72 61 73 74 65 72 5f 73 6f 75 72 63 65 te_raster_source
7e90: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
7ea0: 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f -func void cairo
7eb0: 2d 72 61 73 74 65 72 2d 73 6f 75 72 63 65 2d 70 -raster-source-p
7ec0: 61 74 74 65 72 6e 2d 73 65 74 2d 63 61 6c 6c 62 attern-set-callb
7ed0: 61 63 6b 2d 64 61 74 61 20 28 28 70 61 74 74 65 ack-data ((patte
7ee0: 72 6e 20 28 2a 20 63 61 69 72 6f 2d 70 61 74 74 rn (* cairo-patt
7ef0: 65 72 6e 2d 74 29 29 20 28 64 61 74 61 20 76 6f ern-t)) (data vo
7f00: 69 64 2a 29 29 20 22 63 61 69 72 6f 5f 72 61 73 id*)) "cairo_ras
7f10: 74 65 72 5f 73 6f 75 72 63 65 5f 70 61 74 74 65 ter_source_patte
7f20: 72 6e 5f 73 65 74 5f 63 61 6c 6c 62 61 63 6b 5f rn_set_callback_
7f30: 64 61 74 61 22 29 0a 28 64 65 66 69 6e 65 2d 63 data").(define-c
7f40: 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 2a 20 airo-func void*
7f50: 63 61 69 72 6f 2d 72 61 73 74 65 72 2d 73 6f 75 cairo-raster-sou
7f60: 72 63 65 2d 70 61 74 74 65 72 6e 2d 67 65 74 2d rce-pattern-get-
7f70: 63 61 6c 6c 62 61 63 6b 2d 64 61 74 61 20 28 28 callback-data ((
7f80: 70 61 74 74 65 72 6e 20 28 2a 20 63 61 69 72 6f pattern (* cairo
7f90: 2d 70 61 74 74 65 72 6e 2d 74 29 29 29 20 22 63 -pattern-t))) "c
7fa0: 61 69 72 6f 5f 72 61 73 74 65 72 5f 73 6f 75 72 airo_raster_sour
7fb0: 63 65 5f 70 61 74 74 65 72 6e 5f 67 65 74 5f 63 ce_pattern_get_c
7fc0: 61 6c 6c 62 61 63 6b 5f 64 61 74 61 22 29 0a 28 allback_data").(
7fd0: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
7fe0: 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 72 61 73 c void cairo-ras
7ff0: 74 65 72 2d 73 6f 75 72 63 65 2d 70 61 74 74 65 ter-source-patte
8000: 72 6e 2d 73 65 74 2d 61 63 71 75 69 72 65 20 28 rn-set-acquire (
8010: 28 70 61 74 74 65 72 6e 20 28 2a 20 63 61 69 72 (pattern (* cair
8020: 6f 2d 70 61 74 74 65 72 6e 2d 74 29 29 20 28 61 o-pattern-t)) (a
8030: 63 71 75 69 72 65 20 28 2a 20 63 61 69 72 6f 2d cquire (* cairo-
8040: 72 61 73 74 65 72 2d 73 6f 75 72 63 65 2d 61 63 raster-source-ac
8050: 71 75 69 72 65 2d 66 75 6e 63 2d 74 29 29 20 28 quire-func-t)) (
8060: 72 65 6c 65 61 73 65 20 28 2a 20 63 61 69 72 6f release (* cairo
8070: 2d 72 61 73 74 65 72 2d 73 6f 75 72 63 65 2d 72 -raster-source-r
8080: 65 6c 65 61 73 65 2d 66 75 6e 63 2d 74 29 29 29 elease-func-t)))
8090: 20 22 63 61 69 72 6f 5f 72 61 73 74 65 72 5f 73 "cairo_raster_s
80a0: 6f 75 72 63 65 5f 70 61 74 74 65 72 6e 5f 73 65 ource_pattern_se
80b0: 74 5f 61 63 71 75 69 72 65 22 29 0a 28 64 65 66 t_acquire").(def
80c0: 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 ine-cairo-func v
80d0: 6f 69 64 20 63 61 69 72 6f 2d 72 61 73 74 65 72 oid cairo-raster
80e0: 2d 73 6f 75 72 63 65 2d 70 61 74 74 65 72 6e 2d -source-pattern-
80f0: 67 65 74 2d 61 63 71 75 69 72 65 20 28 28 70 61 get-acquire ((pa
8100: 74 74 65 72 6e 20 28 2a 20 63 61 69 72 6f 2d 70 ttern (* cairo-p
8110: 61 74 74 65 72 6e 2d 74 29 29 20 28 61 63 71 75 attern-t)) (acqu
8120: 69 72 65 20 28 2a 20 63 61 69 72 6f 2d 72 61 73 ire (* cairo-ras
8130: 74 65 72 2d 73 6f 75 72 63 65 2d 61 63 71 75 69 ter-source-acqui
8140: 72 65 2d 66 75 6e 63 2d 74 2a 29 29 20 28 72 65 re-func-t*)) (re
8150: 6c 65 61 73 65 20 28 2a 20 63 61 69 72 6f 2d 72 lease (* cairo-r
8160: 61 73 74 65 72 2d 73 6f 75 72 63 65 2d 72 65 6c aster-source-rel
8170: 65 61 73 65 2d 66 75 6e 63 2d 74 2a 29 29 29 20 ease-func-t*)))
8180: 22 63 61 69 72 6f 5f 72 61 73 74 65 72 5f 73 6f "cairo_raster_so
8190: 75 72 63 65 5f 70 61 74 74 65 72 6e 5f 67 65 74 urce_pattern_get
81a0: 5f 61 63 71 75 69 72 65 22 29 0a 28 64 65 66 69 _acquire").(defi
81b0: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f ne-cairo-func vo
81c0: 69 64 20 63 61 69 72 6f 2d 72 61 73 74 65 72 2d id cairo-raster-
81d0: 73 6f 75 72 63 65 2d 70 61 74 74 65 72 6e 2d 73 source-pattern-s
81e0: 65 74 2d 73 6e 61 70 73 68 6f 74 20 28 28 70 61 et-snapshot ((pa
81f0: 74 74 65 72 6e 20 28 2a 20 63 61 69 72 6f 2d 70 ttern (* cairo-p
8200: 61 74 74 65 72 6e 2d 74 29 29 20 28 73 6e 61 70 attern-t)) (snap
8210: 73 68 6f 74 20 28 2a 20 63 61 69 72 6f 2d 72 61 shot (* cairo-ra
8220: 73 74 65 72 2d 73 6f 75 72 63 65 2d 73 6e 61 70 ster-source-snap
8230: 73 68 6f 74 2d 66 75 6e 63 2d 74 29 29 29 20 22 shot-func-t))) "
8240: 63 61 69 72 6f 5f 72 61 73 74 65 72 5f 73 6f 75 cairo_raster_sou
8250: 72 63 65 5f 70 61 74 74 65 72 6e 5f 73 65 74 5f rce_pattern_set_
8260: 73 6e 61 70 73 68 6f 74 22 29 0a 28 64 65 66 69 snapshot").(defi
8270: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 28 2a ne-cairo-func (*
8280: 20 63 61 69 72 6f 2d 72 61 73 74 65 72 2d 73 6f cairo-raster-so
8290: 75 72 63 65 2d 73 6e 61 70 73 68 6f 74 2d 66 75 urce-snapshot-fu
82a0: 6e 63 2d 74 29 20 63 61 69 72 6f 2d 72 61 73 74 nc-t) cairo-rast
82b0: 65 72 2d 73 6f 75 72 63 65 2d 70 61 74 74 65 72 er-source-patter
82c0: 6e 2d 67 65 74 2d 73 6e 61 70 73 68 6f 74 20 28 n-get-snapshot (
82d0: 28 70 61 74 74 65 72 6e 20 28 2a 20 63 61 69 72 (pattern (* cair
82e0: 6f 2d 70 61 74 74 65 72 6e 2d 74 29 29 29 20 22 o-pattern-t))) "
82f0: 63 61 69 72 6f 5f 72 61 73 74 65 72 5f 73 6f 75 cairo_raster_sou
8300: 72 63 65 5f 70 61 74 74 65 72 6e 5f 67 65 74 5f rce_pattern_get_
8310: 73 6e 61 70 73 68 6f 74 22 29 0a 28 64 65 66 69 snapshot").(defi
8320: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f ne-cairo-func vo
8330: 69 64 20 63 61 69 72 6f 2d 72 61 73 74 65 72 2d id cairo-raster-
8340: 73 6f 75 72 63 65 2d 70 61 74 74 65 72 6e 2d 73 source-pattern-s
8350: 65 74 2d 63 6f 70 79 20 28 28 70 61 74 74 65 72 et-copy ((patter
8360: 6e 20 28 2a 20 63 61 69 72 6f 2d 70 61 74 74 65 n (* cairo-patte
8370: 72 6e 2d 74 29 29 20 28 63 6f 70 79 20 28 2a 20 rn-t)) (copy (*
8380: 63 61 69 72 6f 2d 72 61 73 74 65 72 2d 73 6f 75 cairo-raster-sou
8390: 72 63 65 2d 63 6f 70 79 2d 66 75 6e 63 2d 74 29 rce-copy-func-t)
83a0: 29 29 20 22 63 61 69 72 6f 5f 72 61 73 74 65 72 )) "cairo_raster
83b0: 5f 73 6f 75 72 63 65 5f 70 61 74 74 65 72 6e 5f _source_pattern_
83c0: 73 65 74 5f 63 6f 70 79 22 29 0a 28 64 65 66 69 set_copy").(defi
83d0: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 28 2a ne-cairo-func (*
83e0: 20 63 61 69 72 6f 2d 72 61 73 74 65 72 2d 73 6f cairo-raster-so
83f0: 75 72 63 65 2d 63 6f 70 79 2d 66 75 6e 63 2d 74 urce-copy-func-t
8400: 29 20 63 61 69 72 6f 2d 72 61 73 74 65 72 2d 73 ) cairo-raster-s
8410: 6f 75 72 63 65 2d 70 61 74 74 65 72 6e 2d 67 65 ource-pattern-ge
8420: 74 2d 63 6f 70 79 20 28 28 70 61 74 74 65 72 6e t-copy ((pattern
8430: 20 28 2a 20 63 61 69 72 6f 2d 70 61 74 74 65 72 (* cairo-patter
8440: 6e 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 72 61 n-t))) "cairo_ra
8450: 73 74 65 72 5f 73 6f 75 72 63 65 5f 70 61 74 74 ster_source_patt
8460: 65 72 6e 5f 67 65 74 5f 63 6f 70 79 22 29 0a 28 ern_get_copy").(
8470: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
8480: 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 72 61 73 c void cairo-ras
8490: 74 65 72 2d 73 6f 75 72 63 65 2d 70 61 74 74 65 ter-source-patte
84a0: 72 6e 2d 73 65 74 2d 66 69 6e 69 73 68 20 28 28 rn-set-finish ((
84b0: 70 61 74 74 65 72 6e 20 28 2a 20 63 61 69 72 6f pattern (* cairo
84c0: 2d 70 61 74 74 65 72 6e 2d 74 29 29 20 28 66 69 -pattern-t)) (fi
84d0: 6e 69 73 68 20 28 2a 20 63 61 69 72 6f 2d 72 61 nish (* cairo-ra
84e0: 73 74 65 72 2d 73 6f 75 72 63 65 2d 66 69 6e 69 ster-source-fini
84f0: 73 68 2d 66 75 6e 63 2d 74 29 29 29 20 22 63 61 sh-func-t))) "ca
8500: 69 72 6f 5f 72 61 73 74 65 72 5f 73 6f 75 72 63 iro_raster_sourc
8510: 65 5f 70 61 74 74 65 72 6e 5f 73 65 74 5f 66 69 e_pattern_set_fi
8520: 6e 69 73 68 22 29 0a 28 64 65 66 69 6e 65 2d 63 nish").(define-c
8530: 61 69 72 6f 2d 66 75 6e 63 20 28 2a 20 63 61 69 airo-func (* cai
8540: 72 6f 2d 72 61 73 74 65 72 2d 73 6f 75 72 63 65 ro-raster-source
8550: 2d 66 69 6e 69 73 68 2d 66 75 6e 63 2d 74 29 20 -finish-func-t)
8560: 63 61 69 72 6f 2d 72 61 73 74 65 72 2d 73 6f 75 cairo-raster-sou
8570: 72 63 65 2d 70 61 74 74 65 72 6e 2d 67 65 74 2d rce-pattern-get-
8580: 66 69 6e 69 73 68 20 28 28 70 61 74 74 65 72 6e finish ((pattern
8590: 20 28 2a 20 63 61 69 72 6f 2d 70 61 74 74 65 72 (* cairo-patter
85a0: 6e 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 72 61 n-t))) "cairo_ra
85b0: 73 74 65 72 5f 73 6f 75 72 63 65 5f 70 61 74 74 ster_source_patt
85c0: 65 72 6e 5f 67 65 74 5f 66 69 6e 69 73 68 22 29 ern_get_finish")
85d0: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
85e0: 75 6e 63 20 28 2a 20 63 61 69 72 6f 2d 70 61 74 unc (* cairo-pat
85f0: 74 65 72 6e 2d 74 29 20 63 61 69 72 6f 2d 70 61 tern-t) cairo-pa
8600: 74 74 65 72 6e 2d 63 72 65 61 74 65 2d 72 67 62 ttern-create-rgb
8610: 20 28 28 72 65 64 20 64 6f 75 62 6c 65 29 20 28 ((red double) (
8620: 67 72 65 65 6e 20 64 6f 75 62 6c 65 29 20 28 62 green double) (b
8630: 6c 75 65 20 64 6f 75 62 6c 65 29 29 20 22 63 61 lue double)) "ca
8640: 69 72 6f 5f 70 61 74 74 65 72 6e 5f 63 72 65 61 iro_pattern_crea
8650: 74 65 5f 72 67 62 22 29 0a 28 64 65 66 69 6e 65 te_rgb").(define
8660: 2d 63 61 69 72 6f 2d 66 75 6e 63 20 28 2a 20 63 -cairo-func (* c
8670: 61 69 72 6f 2d 70 61 74 74 65 72 6e 2d 74 29 20 airo-pattern-t)
8680: 63 61 69 72 6f 2d 70 61 74 74 65 72 6e 2d 63 72 cairo-pattern-cr
8690: 65 61 74 65 2d 72 67 62 61 20 28 28 72 65 64 20 eate-rgba ((red
86a0: 64 6f 75 62 6c 65 29 20 28 67 72 65 65 6e 20 64 double) (green d
86b0: 6f 75 62 6c 65 29 20 28 62 6c 75 65 20 64 6f 75 ouble) (blue dou
86c0: 62 6c 65 29 20 28 61 6c 70 68 61 20 64 6f 75 62 ble) (alpha doub
86d0: 6c 65 29 29 20 22 63 61 69 72 6f 5f 70 61 74 74 le)) "cairo_patt
86e0: 65 72 6e 5f 63 72 65 61 74 65 5f 72 67 62 61 22 ern_create_rgba"
86f0: 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d ).(define-cairo-
8700: 66 75 6e 63 20 28 2a 20 63 61 69 72 6f 2d 70 61 func (* cairo-pa
8710: 74 74 65 72 6e 2d 74 29 20 63 61 69 72 6f 2d 70 ttern-t) cairo-p
8720: 61 74 74 65 72 6e 2d 63 72 65 61 74 65 2d 66 6f attern-create-fo
8730: 72 2d 73 75 72 66 61 63 65 20 28 28 73 75 72 66 r-surface ((surf
8740: 61 63 65 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 ace (* cairo-sur
8750: 66 61 63 65 2d 74 29 29 29 20 22 63 61 69 72 6f face-t))) "cairo
8760: 5f 70 61 74 74 65 72 6e 5f 63 72 65 61 74 65 5f _pattern_create_
8770: 66 6f 72 5f 73 75 72 66 61 63 65 22 29 0a 28 64 for_surface").(d
8780: 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 efine-cairo-func
8790: 20 28 2a 20 63 61 69 72 6f 2d 70 61 74 74 65 72 (* cairo-patter
87a0: 6e 2d 74 29 20 63 61 69 72 6f 2d 70 61 74 74 65 n-t) cairo-patte
87b0: 72 6e 2d 63 72 65 61 74 65 2d 6c 69 6e 65 61 72 rn-create-linear
87c0: 20 28 28 78 30 20 64 6f 75 62 6c 65 29 20 28 79 ((x0 double) (y
87d0: 30 20 64 6f 75 62 6c 65 29 20 28 78 31 20 64 6f 0 double) (x1 do
87e0: 75 62 6c 65 29 20 28 79 31 20 64 6f 75 62 6c 65 uble) (y1 double
87f0: 29 29 20 22 63 61 69 72 6f 5f 70 61 74 74 65 72 )) "cairo_patter
8800: 6e 5f 63 72 65 61 74 65 5f 6c 69 6e 65 61 72 22 n_create_linear"
8810: 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d ).(define-cairo-
8820: 66 75 6e 63 20 28 2a 20 63 61 69 72 6f 2d 70 61 func (* cairo-pa
8830: 74 74 65 72 6e 2d 74 29 20 63 61 69 72 6f 2d 70 ttern-t) cairo-p
8840: 61 74 74 65 72 6e 2d 63 72 65 61 74 65 2d 72 61 attern-create-ra
8850: 64 69 61 6c 20 28 28 63 78 30 20 64 6f 75 62 6c dial ((cx0 doubl
8860: 65 29 20 28 63 79 30 20 64 6f 75 62 6c 65 29 20 e) (cy0 double)
8870: 28 72 61 64 69 75 73 30 20 64 6f 75 62 6c 65 29 (radius0 double)
8880: 20 28 63 78 31 20 64 6f 75 62 6c 65 29 20 28 63 (cx1 double) (c
8890: 79 31 20 64 6f 75 62 6c 65 29 20 28 72 61 64 69 y1 double) (radi
88a0: 75 73 31 20 64 6f 75 62 6c 65 29 29 20 22 63 61 us1 double)) "ca
88b0: 69 72 6f 5f 70 61 74 74 65 72 6e 5f 63 72 65 61 iro_pattern_crea
88c0: 74 65 5f 72 61 64 69 61 6c 22 29 0a 28 64 65 66 te_radial").(def
88d0: 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 28 ine-cairo-func (
88e0: 2a 20 63 61 69 72 6f 2d 70 61 74 74 65 72 6e 2d * cairo-pattern-
88f0: 74 29 20 63 61 69 72 6f 2d 70 61 74 74 65 72 6e t) cairo-pattern
8900: 2d 63 72 65 61 74 65 2d 6d 65 73 68 20 28 29 20 -create-mesh ()
8910: 22 63 61 69 72 6f 5f 70 61 74 74 65 72 6e 5f 63 "cairo_pattern_c
8920: 72 65 61 74 65 5f 6d 65 73 68 22 29 0a 28 64 65 reate_mesh").(de
8930: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
8940: 28 2a 20 63 61 69 72 6f 2d 70 61 74 74 65 72 6e (* cairo-pattern
8950: 2d 74 29 20 63 61 69 72 6f 2d 70 61 74 74 65 72 -t) cairo-patter
8960: 6e 2d 72 65 66 65 72 65 6e 63 65 20 28 28 70 61 n-reference ((pa
8970: 74 74 65 72 6e 20 28 2a 20 63 61 69 72 6f 2d 70 ttern (* cairo-p
8980: 61 74 74 65 72 6e 2d 74 29 29 29 20 22 63 61 69 attern-t))) "cai
8990: 72 6f 5f 70 61 74 74 65 72 6e 5f 72 65 66 65 72 ro_pattern_refer
89a0: 65 6e 63 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 ence").(define-c
89b0: 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 airo-func void c
89c0: 61 69 72 6f 2d 70 61 74 74 65 72 6e 2d 64 65 73 airo-pattern-des
89d0: 74 72 6f 79 20 28 28 70 61 74 74 65 72 6e 20 28 troy ((pattern (
89e0: 2a 20 63 61 69 72 6f 2d 70 61 74 74 65 72 6e 2d * cairo-pattern-
89f0: 74 29 29 29 20 22 63 61 69 72 6f 5f 70 61 74 74 t))) "cairo_patt
8a00: 65 72 6e 5f 64 65 73 74 72 6f 79 22 29 0a 28 64 ern_destroy").(d
8a10: 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 efine-cairo-func
8a20: 20 75 6e 73 69 67 6e 65 64 2d 69 6e 74 20 63 61 unsigned-int ca
8a30: 69 72 6f 2d 70 61 74 74 65 72 6e 2d 67 65 74 2d iro-pattern-get-
8a40: 72 65 66 65 72 65 6e 63 65 2d 63 6f 75 6e 74 20 reference-count
8a50: 28 28 70 61 74 74 65 72 6e 20 28 2a 20 63 61 69 ((pattern (* cai
8a60: 72 6f 2d 70 61 74 74 65 72 6e 2d 74 29 29 29 20 ro-pattern-t)))
8a70: 22 63 61 69 72 6f 5f 70 61 74 74 65 72 6e 5f 67 "cairo_pattern_g
8a80: 65 74 5f 72 65 66 65 72 65 6e 63 65 5f 63 6f 75 et_reference_cou
8a90: 6e 74 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 nt").(define-cai
8aa0: 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 73 74 ro-func cairo-st
8ab0: 61 74 75 73 2d 74 20 63 61 69 72 6f 2d 70 61 74 atus-t cairo-pat
8ac0: 74 65 72 6e 2d 73 74 61 74 75 73 20 28 28 70 61 tern-status ((pa
8ad0: 74 74 65 72 6e 20 28 2a 20 63 61 69 72 6f 2d 70 ttern (* cairo-p
8ae0: 61 74 74 65 72 6e 2d 74 29 29 29 20 22 63 61 69 attern-t))) "cai
8af0: 72 6f 5f 70 61 74 74 65 72 6e 5f 73 74 61 74 75 ro_pattern_statu
8b00: 73 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 s").(define-cair
8b10: 6f 2d 66 75 6e 63 20 76 6f 69 64 2a 20 63 61 69 o-func void* cai
8b20: 72 6f 2d 70 61 74 74 65 72 6e 2d 67 65 74 2d 75 ro-pattern-get-u
8b30: 73 65 72 2d 64 61 74 61 20 28 28 70 61 74 74 65 ser-data ((patte
8b40: 72 6e 20 28 2a 20 63 61 69 72 6f 2d 70 61 74 74 rn (* cairo-patt
8b50: 65 72 6e 2d 74 29 29 20 28 6b 65 79 20 28 2a 20 ern-t)) (key (*
8b60: 63 61 69 72 6f 2d 75 73 65 72 2d 64 61 74 61 2d cairo-user-data-
8b70: 6b 65 79 2d 74 29 29 29 20 22 63 61 69 72 6f 5f key-t))) "cairo_
8b80: 70 61 74 74 65 72 6e 5f 67 65 74 5f 75 73 65 72 pattern_get_user
8b90: 5f 64 61 74 61 22 29 0a 28 64 65 66 69 6e 65 2d _data").(define-
8ba0: 63 61 69 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f cairo-func cairo
8bb0: 2d 73 74 61 74 75 73 2d 74 20 63 61 69 72 6f 2d -status-t cairo-
8bc0: 70 61 74 74 65 72 6e 2d 73 65 74 2d 75 73 65 72 pattern-set-user
8bd0: 2d 64 61 74 61 20 28 28 70 61 74 74 65 72 6e 20 -data ((pattern
8be0: 28 2a 20 63 61 69 72 6f 2d 70 61 74 74 65 72 6e (* cairo-pattern
8bf0: 2d 74 29 29 20 28 6b 65 79 20 28 2a 20 63 61 69 -t)) (key (* cai
8c00: 72 6f 2d 75 73 65 72 2d 64 61 74 61 2d 6b 65 79 ro-user-data-key
8c10: 2d 74 29 29 20 28 75 73 65 72 5f 64 61 74 61 20 -t)) (user_data
8c20: 76 6f 69 64 2a 29 20 28 64 65 73 74 72 6f 79 20 void*) (destroy
8c30: 63 61 69 72 6f 2d 64 65 73 74 72 6f 79 2d 66 75 cairo-destroy-fu
8c40: 6e 63 2d 74 29 29 20 22 63 61 69 72 6f 5f 70 61 nc-t)) "cairo_pa
8c50: 74 74 65 72 6e 5f 73 65 74 5f 75 73 65 72 5f 64 ttern_set_user_d
8c60: 61 74 61 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 ata").(define-ca
8c70: 69 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 70 iro-func cairo-p
8c80: 61 74 74 65 72 6e 2d 74 79 70 65 2d 74 20 63 61 attern-type-t ca
8c90: 69 72 6f 2d 70 61 74 74 65 72 6e 2d 67 65 74 2d iro-pattern-get-
8ca0: 74 79 70 65 20 28 28 70 61 74 74 65 72 6e 20 28 type ((pattern (
8cb0: 2a 20 63 61 69 72 6f 2d 70 61 74 74 65 72 6e 2d * cairo-pattern-
8cc0: 74 29 29 29 20 22 63 61 69 72 6f 5f 70 61 74 74 t))) "cairo_patt
8cd0: 65 72 6e 5f 67 65 74 5f 74 79 70 65 22 29 0a 28 ern_get_type").(
8ce0: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
8cf0: 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 70 61 74 c void cairo-pat
8d00: 74 65 72 6e 2d 61 64 64 2d 63 6f 6c 6f 72 2d 73 tern-add-color-s
8d10: 74 6f 70 2d 72 67 62 20 28 28 70 61 74 74 65 72 top-rgb ((patter
8d20: 6e 20 28 2a 20 63 61 69 72 6f 2d 70 61 74 74 65 n (* cairo-patte
8d30: 72 6e 2d 74 29 29 20 28 6f 66 66 73 65 74 20 64 rn-t)) (offset d
8d40: 6f 75 62 6c 65 29 20 28 72 65 64 20 64 6f 75 62 ouble) (red doub
8d50: 6c 65 29 20 28 67 72 65 65 6e 20 64 6f 75 62 6c le) (green doubl
8d60: 65 29 20 28 62 6c 75 65 20 64 6f 75 62 6c 65 29 e) (blue double)
8d70: 29 20 22 63 61 69 72 6f 5f 70 61 74 74 65 72 6e ) "cairo_pattern
8d80: 5f 61 64 64 5f 63 6f 6c 6f 72 5f 73 74 6f 70 5f _add_color_stop_
8d90: 72 67 62 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 rgb").(define-ca
8da0: 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 iro-func void ca
8db0: 69 72 6f 2d 70 61 74 74 65 72 6e 2d 61 64 64 2d iro-pattern-add-
8dc0: 63 6f 6c 6f 72 2d 73 74 6f 70 2d 72 67 62 61 20 color-stop-rgba
8dd0: 28 28 70 61 74 74 65 72 6e 20 28 2a 20 63 61 69 ((pattern (* cai
8de0: 72 6f 2d 70 61 74 74 65 72 6e 2d 74 29 29 20 28 ro-pattern-t)) (
8df0: 6f 66 66 73 65 74 20 64 6f 75 62 6c 65 29 20 28 offset double) (
8e00: 72 65 64 20 64 6f 75 62 6c 65 29 20 28 67 72 65 red double) (gre
8e10: 65 6e 20 64 6f 75 62 6c 65 29 20 28 62 6c 75 65 en double) (blue
8e20: 20 64 6f 75 62 6c 65 29 20 28 61 6c 70 68 61 20 double) (alpha
8e30: 64 6f 75 62 6c 65 29 29 20 22 63 61 69 72 6f 5f double)) "cairo_
8e40: 70 61 74 74 65 72 6e 5f 61 64 64 5f 63 6f 6c 6f pattern_add_colo
8e50: 72 5f 73 74 6f 70 5f 72 67 62 61 22 29 0a 28 64 r_stop_rgba").(d
8e60: 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 efine-cairo-func
8e70: 20 76 6f 69 64 20 63 61 69 72 6f 2d 6d 65 73 68 void cairo-mesh
8e80: 2d 70 61 74 74 65 72 6e 2d 62 65 67 69 6e 2d 70 -pattern-begin-p
8e90: 61 74 63 68 20 28 28 70 61 74 74 65 72 6e 20 28 atch ((pattern (
8ea0: 2a 20 63 61 69 72 6f 2d 70 61 74 74 65 72 6e 2d * cairo-pattern-
8eb0: 74 29 29 29 20 22 63 61 69 72 6f 5f 6d 65 73 68 t))) "cairo_mesh
8ec0: 5f 70 61 74 74 65 72 6e 5f 62 65 67 69 6e 5f 70 _pattern_begin_p
8ed0: 61 74 63 68 22 29 0a 28 64 65 66 69 6e 65 2d 63 atch").(define-c
8ee0: 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 airo-func void c
8ef0: 61 69 72 6f 2d 6d 65 73 68 2d 70 61 74 74 65 72 airo-mesh-patter
8f00: 6e 2d 65 6e 64 2d 70 61 74 63 68 20 28 28 70 61 n-end-patch ((pa
8f10: 74 74 65 72 6e 20 28 2a 20 63 61 69 72 6f 2d 70 ttern (* cairo-p
8f20: 61 74 74 65 72 6e 2d 74 29 29 29 20 22 63 61 69 attern-t))) "cai
8f30: 72 6f 5f 6d 65 73 68 5f 70 61 74 74 65 72 6e 5f ro_mesh_pattern_
8f40: 65 6e 64 5f 70 61 74 63 68 22 29 0a 28 64 65 66 end_patch").(def
8f50: 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 ine-cairo-func v
8f60: 6f 69 64 20 63 61 69 72 6f 2d 6d 65 73 68 2d 70 oid cairo-mesh-p
8f70: 61 74 74 65 72 6e 2d 63 75 72 76 65 2d 74 6f 20 attern-curve-to
8f80: 28 28 70 61 74 74 65 72 6e 20 28 2a 20 63 61 69 ((pattern (* cai
8f90: 72 6f 2d 70 61 74 74 65 72 6e 2d 74 29 29 20 28 ro-pattern-t)) (
8fa0: 78 31 20 64 6f 75 62 6c 65 29 20 28 79 31 20 64 x1 double) (y1 d
8fb0: 6f 75 62 6c 65 29 20 28 78 32 20 64 6f 75 62 6c ouble) (x2 doubl
8fc0: 65 29 20 28 79 32 20 64 6f 75 62 6c 65 29 20 28 e) (y2 double) (
8fd0: 78 33 20 64 6f 75 62 6c 65 29 20 28 79 33 20 64 x3 double) (y3 d
8fe0: 6f 75 62 6c 65 29 29 20 22 63 61 69 72 6f 5f 6d ouble)) "cairo_m
8ff0: 65 73 68 5f 70 61 74 74 65 72 6e 5f 63 75 72 76 esh_pattern_curv
9000: 65 5f 74 6f 22 29 0a 28 64 65 66 69 6e 65 2d 63 e_to").(define-c
9010: 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 airo-func void c
9020: 61 69 72 6f 2d 6d 65 73 68 2d 70 61 74 74 65 72 airo-mesh-patter
9030: 6e 2d 6c 69 6e 65 2d 74 6f 20 28 28 70 61 74 74 n-line-to ((patt
9040: 65 72 6e 20 28 2a 20 63 61 69 72 6f 2d 70 61 74 ern (* cairo-pat
9050: 74 65 72 6e 2d 74 29 29 20 28 78 20 64 6f 75 62 tern-t)) (x doub
9060: 6c 65 29 20 28 79 20 64 6f 75 62 6c 65 29 29 20 le) (y double))
9070: 22 63 61 69 72 6f 5f 6d 65 73 68 5f 70 61 74 74 "cairo_mesh_patt
9080: 65 72 6e 5f 6c 69 6e 65 5f 74 6f 22 29 0a 28 64 ern_line_to").(d
9090: 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 efine-cairo-func
90a0: 20 76 6f 69 64 20 63 61 69 72 6f 2d 6d 65 73 68 void cairo-mesh
90b0: 2d 70 61 74 74 65 72 6e 2d 6d 6f 76 65 2d 74 6f -pattern-move-to
90c0: 20 28 28 70 61 74 74 65 72 6e 20 28 2a 20 63 61 ((pattern (* ca
90d0: 69 72 6f 2d 70 61 74 74 65 72 6e 2d 74 29 29 20 iro-pattern-t))
90e0: 28 78 20 64 6f 75 62 6c 65 29 20 28 79 20 64 6f (x double) (y do
90f0: 75 62 6c 65 29 29 20 22 63 61 69 72 6f 5f 6d 65 uble)) "cairo_me
9100: 73 68 5f 70 61 74 74 65 72 6e 5f 6d 6f 76 65 5f sh_pattern_move_
9110: 74 6f 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 to").(define-cai
9120: 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 69 ro-func void cai
9130: 72 6f 2d 6d 65 73 68 2d 70 61 74 74 65 72 6e 2d ro-mesh-pattern-
9140: 73 65 74 2d 63 6f 6e 74 72 6f 6c 2d 70 6f 69 6e set-control-poin
9150: 74 20 28 28 70 61 74 74 65 72 6e 20 28 2a 20 63 t ((pattern (* c
9160: 61 69 72 6f 2d 70 61 74 74 65 72 6e 2d 74 29 29 airo-pattern-t))
9170: 20 28 70 6f 69 6e 74 5f 6e 75 6d 20 75 6e 73 69 (point_num unsi
9180: 67 6e 65 64 2d 69 6e 74 29 20 28 78 20 64 6f 75 gned-int) (x dou
9190: 62 6c 65 29 20 28 79 20 64 6f 75 62 6c 65 29 29 ble) (y double))
91a0: 20 22 63 61 69 72 6f 5f 6d 65 73 68 5f 70 61 74 "cairo_mesh_pat
91b0: 74 65 72 6e 5f 73 65 74 5f 63 6f 6e 74 72 6f 6c tern_set_control
91c0: 5f 70 6f 69 6e 74 22 29 0a 28 64 65 66 69 6e 65 _point").(define
91d0: 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 -cairo-func void
91e0: 20 63 61 69 72 6f 2d 6d 65 73 68 2d 70 61 74 74 cairo-mesh-patt
91f0: 65 72 6e 2d 73 65 74 2d 63 6f 72 6e 65 72 2d 63 ern-set-corner-c
9200: 6f 6c 6f 72 2d 72 67 62 20 28 28 70 61 74 74 65 olor-rgb ((patte
9210: 72 6e 20 28 2a 20 63 61 69 72 6f 2d 70 61 74 74 rn (* cairo-patt
9220: 65 72 6e 2d 74 29 29 20 28 63 6f 72 6e 65 72 5f ern-t)) (corner_
9230: 6e 75 6d 20 75 6e 73 69 67 6e 65 64 2d 69 6e 74 num unsigned-int
9240: 29 20 28 72 65 64 20 64 6f 75 62 6c 65 29 20 28 ) (red double) (
9250: 67 72 65 65 6e 20 64 6f 75 62 6c 65 29 20 28 62 green double) (b
9260: 6c 75 65 20 64 6f 75 62 6c 65 29 29 20 22 63 61 lue double)) "ca
9270: 69 72 6f 5f 6d 65 73 68 5f 70 61 74 74 65 72 6e iro_mesh_pattern
9280: 5f 73 65 74 5f 63 6f 72 6e 65 72 5f 63 6f 6c 6f _set_corner_colo
9290: 72 5f 72 67 62 22 29 0a 28 64 65 66 69 6e 65 2d r_rgb").(define-
92a0: 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 cairo-func void
92b0: 63 61 69 72 6f 2d 6d 65 73 68 2d 70 61 74 74 65 cairo-mesh-patte
92c0: 72 6e 2d 73 65 74 2d 63 6f 72 6e 65 72 2d 63 6f rn-set-corner-co
92d0: 6c 6f 72 2d 72 67 62 61 20 28 28 70 61 74 74 65 lor-rgba ((patte
92e0: 72 6e 20 28 2a 20 63 61 69 72 6f 2d 70 61 74 74 rn (* cairo-patt
92f0: 65 72 6e 2d 74 29 29 20 28 63 6f 72 6e 65 72 5f ern-t)) (corner_
9300: 6e 75 6d 20 75 6e 73 69 67 6e 65 64 2d 69 6e 74 num unsigned-int
9310: 29 20 28 72 65 64 20 64 6f 75 62 6c 65 29 20 28 ) (red double) (
9320: 67 72 65 65 6e 20 64 6f 75 62 6c 65 29 20 28 62 green double) (b
9330: 6c 75 65 20 64 6f 75 62 6c 65 29 20 28 61 6c 70 lue double) (alp
9340: 68 61 20 64 6f 75 62 6c 65 29 29 20 22 63 61 69 ha double)) "cai
9350: 72 6f 5f 6d 65 73 68 5f 70 61 74 74 65 72 6e 5f ro_mesh_pattern_
9360: 73 65 74 5f 63 6f 72 6e 65 72 5f 63 6f 6c 6f 72 set_corner_color
9370: 5f 72 67 62 61 22 29 0a 28 64 65 66 69 6e 65 2d _rgba").(define-
9380: 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 cairo-func void
9390: 63 61 69 72 6f 2d 70 61 74 74 65 72 6e 2d 73 65 cairo-pattern-se
93a0: 74 2d 6d 61 74 72 69 78 20 28 28 70 61 74 74 65 t-matrix ((patte
93b0: 72 6e 20 28 2a 20 63 61 69 72 6f 2d 70 61 74 74 rn (* cairo-patt
93c0: 65 72 6e 2d 74 29 29 20 28 6d 61 74 72 69 78 20 ern-t)) (matrix
93d0: 28 2a 20 63 61 69 72 6f 2d 6d 61 74 72 69 78 2d (* cairo-matrix-
93e0: 74 29 29 29 20 22 63 61 69 72 6f 5f 70 61 74 74 t))) "cairo_patt
93f0: 65 72 6e 5f 73 65 74 5f 6d 61 74 72 69 78 22 29 ern_set_matrix")
9400: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
9410: 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 70 unc void cairo-p
9420: 61 74 74 65 72 6e 2d 67 65 74 2d 6d 61 74 72 69 attern-get-matri
9430: 78 20 28 28 70 61 74 74 65 72 6e 20 28 2a 20 63 x ((pattern (* c
9440: 61 69 72 6f 2d 70 61 74 74 65 72 6e 2d 74 29 29 airo-pattern-t))
9450: 20 28 6d 61 74 72 69 78 20 28 2a 20 63 61 69 72 (matrix (* cair
9460: 6f 2d 6d 61 74 72 69 78 2d 74 29 29 29 20 22 63 o-matrix-t))) "c
9470: 61 69 72 6f 5f 70 61 74 74 65 72 6e 5f 67 65 74 airo_pattern_get
9480: 5f 6d 61 74 72 69 78 22 29 0a 28 64 65 66 69 6e _matrix").(defin
9490: 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 e-cairo-func voi
94a0: 64 20 63 61 69 72 6f 2d 70 61 74 74 65 72 6e 2d d cairo-pattern-
94b0: 73 65 74 2d 65 78 74 65 6e 64 20 28 28 70 61 74 set-extend ((pat
94c0: 74 65 72 6e 20 28 2a 20 63 61 69 72 6f 2d 70 61 tern (* cairo-pa
94d0: 74 74 65 72 6e 2d 74 29 29 20 28 65 78 74 65 6e ttern-t)) (exten
94e0: 64 20 63 61 69 72 6f 2d 65 78 74 65 6e 64 2d 74 d cairo-extend-t
94f0: 29 29 20 22 63 61 69 72 6f 5f 70 61 74 74 65 72 )) "cairo_patter
9500: 6e 5f 73 65 74 5f 65 78 74 65 6e 64 22 29 0a 28 n_set_extend").(
9510: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
9520: 63 20 63 61 69 72 6f 2d 65 78 74 65 6e 64 2d 74 c cairo-extend-t
9530: 20 63 61 69 72 6f 2d 70 61 74 74 65 72 6e 2d 67 cairo-pattern-g
9540: 65 74 2d 65 78 74 65 6e 64 20 28 28 70 61 74 74 et-extend ((patt
9550: 65 72 6e 20 28 2a 20 63 61 69 72 6f 2d 70 61 74 ern (* cairo-pat
9560: 74 65 72 6e 2d 74 29 29 29 20 22 63 61 69 72 6f tern-t))) "cairo
9570: 5f 70 61 74 74 65 72 6e 5f 67 65 74 5f 65 78 74 _pattern_get_ext
9580: 65 6e 64 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 end").(define-ca
9590: 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 iro-func void ca
95a0: 69 72 6f 2d 70 61 74 74 65 72 6e 2d 73 65 74 2d iro-pattern-set-
95b0: 66 69 6c 74 65 72 20 28 28 70 61 74 74 65 72 6e filter ((pattern
95c0: 20 28 2a 20 63 61 69 72 6f 2d 70 61 74 74 65 72 (* cairo-patter
95d0: 6e 2d 74 29 29 20 28 66 69 6c 74 65 72 20 63 61 n-t)) (filter ca
95e0: 69 72 6f 2d 66 69 6c 74 65 72 2d 74 29 29 20 22 iro-filter-t)) "
95f0: 63 61 69 72 6f 5f 70 61 74 74 65 72 6e 5f 73 65 cairo_pattern_se
9600: 74 5f 66 69 6c 74 65 72 22 29 0a 28 64 65 66 69 t_filter").(defi
9610: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 63 61 ne-cairo-func ca
9620: 69 72 6f 2d 66 69 6c 74 65 72 2d 74 20 63 61 69 iro-filter-t cai
9630: 72 6f 2d 70 61 74 74 65 72 6e 2d 67 65 74 2d 66 ro-pattern-get-f
9640: 69 6c 74 65 72 20 28 28 70 61 74 74 65 72 6e 20 ilter ((pattern
9650: 28 2a 20 63 61 69 72 6f 2d 70 61 74 74 65 72 6e (* cairo-pattern
9660: 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 70 61 74 -t))) "cairo_pat
9670: 74 65 72 6e 5f 67 65 74 5f 66 69 6c 74 65 72 22 tern_get_filter"
9680: 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d ).(define-cairo-
9690: 66 75 6e 63 20 63 61 69 72 6f 2d 73 74 61 74 75 func cairo-statu
96a0: 73 2d 74 20 63 61 69 72 6f 2d 70 61 74 74 65 72 s-t cairo-patter
96b0: 6e 2d 67 65 74 2d 72 67 62 61 20 28 28 70 61 74 n-get-rgba ((pat
96c0: 74 65 72 6e 20 28 2a 20 63 61 69 72 6f 2d 70 61 tern (* cairo-pa
96d0: 74 74 65 72 6e 2d 74 29 29 20 28 72 65 64 20 28 ttern-t)) (red (
96e0: 2a 20 64 6f 75 62 6c 65 29 29 20 28 67 72 65 65 * double)) (gree
96f0: 6e 20 28 2a 20 64 6f 75 62 6c 65 29 29 20 28 62 n (* double)) (b
9700: 6c 75 65 20 28 2a 20 64 6f 75 62 6c 65 29 29 20 lue (* double))
9710: 28 61 6c 70 68 61 20 28 2a 20 64 6f 75 62 6c 65 (alpha (* double
9720: 29 29 29 20 22 63 61 69 72 6f 5f 70 61 74 74 65 ))) "cairo_patte
9730: 72 6e 5f 67 65 74 5f 72 67 62 61 22 29 0a 28 64 rn_get_rgba").(d
9740: 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 efine-cairo-func
9750: 20 63 61 69 72 6f 2d 73 74 61 74 75 73 2d 74 20 cairo-status-t
9760: 63 61 69 72 6f 2d 70 61 74 74 65 72 6e 2d 67 65 cairo-pattern-ge
9770: 74 2d 73 75 72 66 61 63 65 20 28 28 70 61 74 74 t-surface ((patt
9780: 65 72 6e 20 28 2a 20 63 61 69 72 6f 2d 70 61 74 ern (* cairo-pat
9790: 74 65 72 6e 2d 74 29 29 20 28 73 75 72 66 61 63 tern-t)) (surfac
97a0: 65 20 28 2a 20 63 61 69 72 6f 2d 73 75 72 66 61 e (* cairo-surfa
97b0: 63 65 2d 74 2a 29 29 29 20 22 63 61 69 72 6f 5f ce-t*))) "cairo_
97c0: 70 61 74 74 65 72 6e 5f 67 65 74 5f 73 75 72 66 pattern_get_surf
97d0: 61 63 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 ace").(define-ca
97e0: 69 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 73 iro-func cairo-s
97f0: 74 61 74 75 73 2d 74 20 63 61 69 72 6f 2d 70 61 tatus-t cairo-pa
9800: 74 74 65 72 6e 2d 67 65 74 2d 63 6f 6c 6f 72 2d ttern-get-color-
9810: 73 74 6f 70 2d 72 67 62 61 20 28 28 70 61 74 74 stop-rgba ((patt
9820: 65 72 6e 20 28 2a 20 63 61 69 72 6f 2d 70 61 74 ern (* cairo-pat
9830: 74 65 72 6e 2d 74 29 29 20 28 69 6e 64 65 78 20 tern-t)) (index
9840: 69 6e 74 29 20 28 6f 66 66 73 65 74 20 28 2a 20 int) (offset (*
9850: 64 6f 75 62 6c 65 29 29 20 28 72 65 64 20 28 2a double)) (red (*
9860: 20 64 6f 75 62 6c 65 29 29 20 28 67 72 65 65 6e double)) (green
9870: 20 28 2a 20 64 6f 75 62 6c 65 29 29 20 28 62 6c (* double)) (bl
9880: 75 65 20 28 2a 20 64 6f 75 62 6c 65 29 29 20 28 ue (* double)) (
9890: 61 6c 70 68 61 20 28 2a 20 64 6f 75 62 6c 65 29 alpha (* double)
98a0: 29 29 20 22 63 61 69 72 6f 5f 70 61 74 74 65 72 )) "cairo_patter
98b0: 6e 5f 67 65 74 5f 63 6f 6c 6f 72 5f 73 74 6f 70 n_get_color_stop
98c0: 5f 72 67 62 61 22 29 0a 28 64 65 66 69 6e 65 2d _rgba").(define-
98d0: 63 61 69 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f cairo-func cairo
98e0: 2d 73 74 61 74 75 73 2d 74 20 63 61 69 72 6f 2d -status-t cairo-
98f0: 70 61 74 74 65 72 6e 2d 67 65 74 2d 63 6f 6c 6f pattern-get-colo
9900: 72 2d 73 74 6f 70 2d 63 6f 75 6e 74 20 28 28 70 r-stop-count ((p
9910: 61 74 74 65 72 6e 20 28 2a 20 63 61 69 72 6f 2d attern (* cairo-
9920: 70 61 74 74 65 72 6e 2d 74 29 29 20 28 63 6f 75 pattern-t)) (cou
9930: 6e 74 20 28 2a 20 69 6e 74 29 29 29 20 22 63 61 nt (* int))) "ca
9940: 69 72 6f 5f 70 61 74 74 65 72 6e 5f 67 65 74 5f iro_pattern_get_
9950: 63 6f 6c 6f 72 5f 73 74 6f 70 5f 63 6f 75 6e 74 color_stop_count
9960: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
9970: 2d 66 75 6e 63 20 63 61 69 72 6f 2d 73 74 61 74 -func cairo-stat
9980: 75 73 2d 74 20 63 61 69 72 6f 2d 70 61 74 74 65 us-t cairo-patte
9990: 72 6e 2d 67 65 74 2d 6c 69 6e 65 61 72 2d 70 6f rn-get-linear-po
99a0: 69 6e 74 73 20 28 28 70 61 74 74 65 72 6e 20 28 ints ((pattern (
99b0: 2a 20 63 61 69 72 6f 2d 70 61 74 74 65 72 6e 2d * cairo-pattern-
99c0: 74 29 29 20 28 78 30 20 28 2a 20 64 6f 75 62 6c t)) (x0 (* doubl
99d0: 65 29 29 20 28 79 30 20 28 2a 20 64 6f 75 62 6c e)) (y0 (* doubl
99e0: 65 29 29 20 28 78 31 20 28 2a 20 64 6f 75 62 6c e)) (x1 (* doubl
99f0: 65 29 29 20 28 79 31 20 28 2a 20 64 6f 75 62 6c e)) (y1 (* doubl
9a00: 65 29 29 29 20 22 63 61 69 72 6f 5f 70 61 74 74 e))) "cairo_patt
9a10: 65 72 6e 5f 67 65 74 5f 6c 69 6e 65 61 72 5f 70 ern_get_linear_p
9a20: 6f 69 6e 74 73 22 29 0a 28 64 65 66 69 6e 65 2d oints").(define-
9a30: 63 61 69 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f cairo-func cairo
9a40: 2d 73 74 61 74 75 73 2d 74 20 63 61 69 72 6f 2d -status-t cairo-
9a50: 70 61 74 74 65 72 6e 2d 67 65 74 2d 72 61 64 69 pattern-get-radi
9a60: 61 6c 2d 63 69 72 63 6c 65 73 20 28 28 70 61 74 al-circles ((pat
9a70: 74 65 72 6e 20 28 2a 20 63 61 69 72 6f 2d 70 61 tern (* cairo-pa
9a80: 74 74 65 72 6e 2d 74 29 29 20 28 78 30 20 28 2a ttern-t)) (x0 (*
9a90: 20 64 6f 75 62 6c 65 29 29 20 28 79 30 20 28 2a double)) (y0 (*
9aa0: 20 64 6f 75 62 6c 65 29 29 20 28 72 30 20 28 2a double)) (r0 (*
9ab0: 20 64 6f 75 62 6c 65 29 29 20 28 78 31 20 28 2a double)) (x1 (*
9ac0: 20 64 6f 75 62 6c 65 29 29 20 28 79 31 20 28 2a double)) (y1 (*
9ad0: 20 64 6f 75 62 6c 65 29 29 20 28 72 31 20 28 2a double)) (r1 (*
9ae0: 20 64 6f 75 62 6c 65 29 29 29 20 22 63 61 69 72 double))) "cair
9af0: 6f 5f 70 61 74 74 65 72 6e 5f 67 65 74 5f 72 61 o_pattern_get_ra
9b00: 64 69 61 6c 5f 63 69 72 63 6c 65 73 22 29 0a 28 dial_circles").(
9b10: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
9b20: 63 20 63 61 69 72 6f 2d 73 74 61 74 75 73 2d 74 c cairo-status-t
9b30: 20 63 61 69 72 6f 2d 6d 65 73 68 2d 70 61 74 74 cairo-mesh-patt
9b40: 65 72 6e 2d 67 65 74 2d 70 61 74 63 68 2d 63 6f ern-get-patch-co
9b50: 75 6e 74 20 28 28 70 61 74 74 65 72 6e 20 28 2a unt ((pattern (*
9b60: 20 63 61 69 72 6f 2d 70 61 74 74 65 72 6e 2d 74 cairo-pattern-t
9b70: 29 29 20 28 63 6f 75 6e 74 20 28 2a 20 75 6e 73 )) (count (* uns
9b80: 69 67 6e 65 64 2d 69 6e 74 29 29 29 20 22 63 61 igned-int))) "ca
9b90: 69 72 6f 5f 6d 65 73 68 5f 70 61 74 74 65 72 6e iro_mesh_pattern
9ba0: 5f 67 65 74 5f 70 61 74 63 68 5f 63 6f 75 6e 74 _get_patch_count
9bb0: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
9bc0: 2d 66 75 6e 63 20 28 2a 20 63 61 69 72 6f 2d 70 -func (* cairo-p
9bd0: 61 74 68 2d 74 29 20 63 61 69 72 6f 2d 6d 65 73 ath-t) cairo-mes
9be0: 68 2d 70 61 74 74 65 72 6e 2d 67 65 74 2d 70 61 h-pattern-get-pa
9bf0: 74 68 20 28 28 70 61 74 74 65 72 6e 20 28 2a 20 th ((pattern (*
9c00: 63 61 69 72 6f 2d 70 61 74 74 65 72 6e 2d 74 29 cairo-pattern-t)
9c10: 29 20 28 70 61 74 63 68 5f 6e 75 6d 20 75 6e 73 ) (patch_num uns
9c20: 69 67 6e 65 64 2d 69 6e 74 29 29 20 22 63 61 69 igned-int)) "cai
9c30: 72 6f 5f 6d 65 73 68 5f 70 61 74 74 65 72 6e 5f ro_mesh_pattern_
9c40: 67 65 74 5f 70 61 74 68 22 29 0a 28 64 65 66 69 get_path").(defi
9c50: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 63 61 ne-cairo-func ca
9c60: 69 72 6f 2d 73 74 61 74 75 73 2d 74 20 63 61 69 iro-status-t cai
9c70: 72 6f 2d 6d 65 73 68 2d 70 61 74 74 65 72 6e 2d ro-mesh-pattern-
9c80: 67 65 74 2d 63 6f 72 6e 65 72 2d 63 6f 6c 6f 72 get-corner-color
9c90: 2d 72 67 62 61 20 28 28 70 61 74 74 65 72 6e 20 -rgba ((pattern
9ca0: 28 2a 20 63 61 69 72 6f 2d 70 61 74 74 65 72 6e (* cairo-pattern
9cb0: 2d 74 29 29 20 28 70 61 74 63 68 5f 6e 75 6d 20 -t)) (patch_num
9cc0: 75 6e 73 69 67 6e 65 64 2d 69 6e 74 29 20 28 63 unsigned-int) (c
9cd0: 6f 72 6e 65 72 5f 6e 75 6d 20 75 6e 73 69 67 6e orner_num unsign
9ce0: 65 64 2d 69 6e 74 29 20 28 72 65 64 20 28 2a 20 ed-int) (red (*
9cf0: 64 6f 75 62 6c 65 29 29 20 28 67 72 65 65 6e 20 double)) (green
9d00: 28 2a 20 64 6f 75 62 6c 65 29 29 20 28 62 6c 75 (* double)) (blu
9d10: 65 20 28 2a 20 64 6f 75 62 6c 65 29 29 20 28 61 e (* double)) (a
9d20: 6c 70 68 61 20 28 2a 20 64 6f 75 62 6c 65 29 29 lpha (* double))
9d30: 29 20 22 63 61 69 72 6f 5f 6d 65 73 68 5f 70 61 ) "cairo_mesh_pa
9d40: 74 74 65 72 6e 5f 67 65 74 5f 63 6f 72 6e 65 72 ttern_get_corner
9d50: 5f 63 6f 6c 6f 72 5f 72 67 62 61 22 29 0a 28 64 _color_rgba").(d
9d60: 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 efine-cairo-func
9d70: 20 63 61 69 72 6f 2d 73 74 61 74 75 73 2d 74 20 cairo-status-t
9d80: 63 61 69 72 6f 2d 6d 65 73 68 2d 70 61 74 74 65 cairo-mesh-patte
9d90: 72 6e 2d 67 65 74 2d 63 6f 6e 74 72 6f 6c 2d 70 rn-get-control-p
9da0: 6f 69 6e 74 20 28 28 70 61 74 74 65 72 6e 20 28 oint ((pattern (
9db0: 2a 20 63 61 69 72 6f 2d 70 61 74 74 65 72 6e 2d * cairo-pattern-
9dc0: 74 29 29 20 28 70 61 74 63 68 5f 6e 75 6d 20 75 t)) (patch_num u
9dd0: 6e 73 69 67 6e 65 64 2d 69 6e 74 29 20 28 70 6f nsigned-int) (po
9de0: 69 6e 74 5f 6e 75 6d 20 75 6e 73 69 67 6e 65 64 int_num unsigned
9df0: 2d 69 6e 74 29 20 28 78 20 28 2a 20 64 6f 75 62 -int) (x (* doub
9e00: 6c 65 29 29 20 28 79 20 28 2a 20 64 6f 75 62 6c le)) (y (* doubl
9e10: 65 29 29 29 20 22 63 61 69 72 6f 5f 6d 65 73 68 e))) "cairo_mesh
9e20: 5f 70 61 74 74 65 72 6e 5f 67 65 74 5f 63 6f 6e _pattern_get_con
9e30: 74 72 6f 6c 5f 70 6f 69 6e 74 22 29 0a 28 64 65 trol_point").(de
9e40: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
9e50: 76 6f 69 64 20 63 61 69 72 6f 2d 6d 61 74 72 69 void cairo-matri
9e60: 78 2d 69 6e 69 74 20 28 28 6d 61 74 72 69 78 20 x-init ((matrix
9e70: 28 2a 20 63 61 69 72 6f 2d 6d 61 74 72 69 78 2d (* cairo-matrix-
9e80: 74 29 29 20 28 78 78 20 64 6f 75 62 6c 65 29 20 t)) (xx double)
9e90: 28 79 78 20 64 6f 75 62 6c 65 29 20 28 78 79 20 (yx double) (xy
9ea0: 64 6f 75 62 6c 65 29 20 28 79 79 20 64 6f 75 62 double) (yy doub
9eb0: 6c 65 29 20 28 78 30 20 64 6f 75 62 6c 65 29 20 le) (x0 double)
9ec0: 28 79 30 20 64 6f 75 62 6c 65 29 29 20 22 63 61 (y0 double)) "ca
9ed0: 69 72 6f 5f 6d 61 74 72 69 78 5f 69 6e 69 74 22 iro_matrix_init"
9ee0: 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d ).(define-cairo-
9ef0: 66 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d func void cairo-
9f00: 6d 61 74 72 69 78 2d 69 6e 69 74 2d 69 64 65 6e matrix-init-iden
9f10: 74 69 74 79 20 28 28 6d 61 74 72 69 78 20 28 2a tity ((matrix (*
9f20: 20 63 61 69 72 6f 2d 6d 61 74 72 69 78 2d 74 29 cairo-matrix-t)
9f30: 29 29 20 22 63 61 69 72 6f 5f 6d 61 74 72 69 78 )) "cairo_matrix
9f40: 5f 69 6e 69 74 5f 69 64 65 6e 74 69 74 79 22 29 _init_identity")
9f50: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
9f60: 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 6d unc void cairo-m
9f70: 61 74 72 69 78 2d 69 6e 69 74 2d 74 72 61 6e 73 atrix-init-trans
9f80: 6c 61 74 65 20 28 28 6d 61 74 72 69 78 20 28 2a late ((matrix (*
9f90: 20 63 61 69 72 6f 2d 6d 61 74 72 69 78 2d 74 29 cairo-matrix-t)
9fa0: 29 20 28 74 78 20 64 6f 75 62 6c 65 29 20 28 74 ) (tx double) (t
9fb0: 79 20 64 6f 75 62 6c 65 29 29 20 22 63 61 69 72 y double)) "cair
9fc0: 6f 5f 6d 61 74 72 69 78 5f 69 6e 69 74 5f 74 72 o_matrix_init_tr
9fd0: 61 6e 73 6c 61 74 65 22 29 0a 28 64 65 66 69 6e anslate").(defin
9fe0: 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 e-cairo-func voi
9ff0: 64 20 63 61 69 72 6f 2d 6d 61 74 72 69 78 2d 69 d cairo-matrix-i
a000: 6e 69 74 2d 73 63 61 6c 65 20 28 28 6d 61 74 72 nit-scale ((matr
a010: 69 78 20 28 2a 20 63 61 69 72 6f 2d 6d 61 74 72 ix (* cairo-matr
a020: 69 78 2d 74 29 29 20 28 73 78 20 64 6f 75 62 6c ix-t)) (sx doubl
a030: 65 29 20 28 73 79 20 64 6f 75 62 6c 65 29 29 20 e) (sy double))
a040: 22 63 61 69 72 6f 5f 6d 61 74 72 69 78 5f 69 6e "cairo_matrix_in
a050: 69 74 5f 73 63 61 6c 65 22 29 0a 28 64 65 66 69 it_scale").(defi
a060: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f ne-cairo-func vo
a070: 69 64 20 63 61 69 72 6f 2d 6d 61 74 72 69 78 2d id cairo-matrix-
a080: 69 6e 69 74 2d 72 6f 74 61 74 65 20 28 28 6d 61 init-rotate ((ma
a090: 74 72 69 78 20 28 2a 20 63 61 69 72 6f 2d 6d 61 trix (* cairo-ma
a0a0: 74 72 69 78 2d 74 29 29 20 28 72 61 64 69 61 6e trix-t)) (radian
a0b0: 73 20 64 6f 75 62 6c 65 29 29 20 22 63 61 69 72 s double)) "cair
a0c0: 6f 5f 6d 61 74 72 69 78 5f 69 6e 69 74 5f 72 6f o_matrix_init_ro
a0d0: 74 61 74 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 tate").(define-c
a0e0: 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 airo-func void c
a0f0: 61 69 72 6f 2d 6d 61 74 72 69 78 2d 74 72 61 6e airo-matrix-tran
a100: 73 6c 61 74 65 20 28 28 6d 61 74 72 69 78 20 28 slate ((matrix (
a110: 2a 20 63 61 69 72 6f 2d 6d 61 74 72 69 78 2d 74 * cairo-matrix-t
a120: 29 29 20 28 74 78 20 64 6f 75 62 6c 65 29 20 28 )) (tx double) (
a130: 74 79 20 64 6f 75 62 6c 65 29 29 20 22 63 61 69 ty double)) "cai
a140: 72 6f 5f 6d 61 74 72 69 78 5f 74 72 61 6e 73 6c ro_matrix_transl
a150: 61 74 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 ate").(define-ca
a160: 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 iro-func void ca
a170: 69 72 6f 2d 6d 61 74 72 69 78 2d 73 63 61 6c 65 iro-matrix-scale
a180: 20 28 28 6d 61 74 72 69 78 20 28 2a 20 63 61 69 ((matrix (* cai
a190: 72 6f 2d 6d 61 74 72 69 78 2d 74 29 29 20 28 73 ro-matrix-t)) (s
a1a0: 78 20 64 6f 75 62 6c 65 29 20 28 73 79 20 64 6f x double) (sy do
a1b0: 75 62 6c 65 29 29 20 22 63 61 69 72 6f 5f 6d 61 uble)) "cairo_ma
a1c0: 74 72 69 78 5f 73 63 61 6c 65 22 29 0a 28 64 65 trix_scale").(de
a1d0: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
a1e0: 76 6f 69 64 20 63 61 69 72 6f 2d 6d 61 74 72 69 void cairo-matri
a1f0: 78 2d 72 6f 74 61 74 65 20 28 28 6d 61 74 72 69 x-rotate ((matri
a200: 78 20 28 2a 20 63 61 69 72 6f 2d 6d 61 74 72 69 x (* cairo-matri
a210: 78 2d 74 29 29 20 28 72 61 64 69 61 6e 73 20 64 x-t)) (radians d
a220: 6f 75 62 6c 65 29 29 20 22 63 61 69 72 6f 5f 6d ouble)) "cairo_m
a230: 61 74 72 69 78 5f 72 6f 74 61 74 65 22 29 0a 28 atrix_rotate").(
a240: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
a250: 63 20 63 61 69 72 6f 2d 73 74 61 74 75 73 2d 74 c cairo-status-t
a260: 20 63 61 69 72 6f 2d 6d 61 74 72 69 78 2d 69 6e cairo-matrix-in
a270: 76 65 72 74 20 28 28 6d 61 74 72 69 78 20 28 2a vert ((matrix (*
a280: 20 63 61 69 72 6f 2d 6d 61 74 72 69 78 2d 74 29 cairo-matrix-t)
a290: 29 29 20 22 63 61 69 72 6f 5f 6d 61 74 72 69 78 )) "cairo_matrix
a2a0: 5f 69 6e 76 65 72 74 22 29 0a 28 64 65 66 69 6e _invert").(defin
a2b0: 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 e-cairo-func voi
a2c0: 64 20 63 61 69 72 6f 2d 6d 61 74 72 69 78 2d 6d d cairo-matrix-m
a2d0: 75 6c 74 69 70 6c 79 20 28 28 72 65 73 75 6c 74 ultiply ((result
a2e0: 20 28 2a 20 63 61 69 72 6f 2d 6d 61 74 72 69 78 (* cairo-matrix
a2f0: 2d 74 29 29 20 28 61 20 28 2a 20 63 61 69 72 6f -t)) (a (* cairo
a300: 2d 6d 61 74 72 69 78 2d 74 29 29 20 28 62 20 28 -matrix-t)) (b (
a310: 2a 20 63 61 69 72 6f 2d 6d 61 74 72 69 78 2d 74 * cairo-matrix-t
a320: 29 29 29 20 22 63 61 69 72 6f 5f 6d 61 74 72 69 ))) "cairo_matri
a330: 78 5f 6d 75 6c 74 69 70 6c 79 22 29 0a 28 64 65 x_multiply").(de
a340: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
a350: 76 6f 69 64 20 63 61 69 72 6f 2d 6d 61 74 72 69 void cairo-matri
a360: 78 2d 74 72 61 6e 73 66 6f 72 6d 2d 64 69 73 74 x-transform-dist
a370: 61 6e 63 65 20 28 28 6d 61 74 72 69 78 20 28 2a ance ((matrix (*
a380: 20 63 61 69 72 6f 2d 6d 61 74 72 69 78 2d 74 29 cairo-matrix-t)
a390: 29 20 28 64 78 20 28 2a 20 64 6f 75 62 6c 65 29 ) (dx (* double)
a3a0: 29 20 28 64 79 20 28 2a 20 64 6f 75 62 6c 65 29 ) (dy (* double)
a3b0: 29 29 20 22 63 61 69 72 6f 5f 6d 61 74 72 69 78 )) "cairo_matrix
a3c0: 5f 74 72 61 6e 73 66 6f 72 6d 5f 64 69 73 74 61 _transform_dista
a3d0: 6e 63 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 nce").(define-ca
a3e0: 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 61 iro-func void ca
a3f0: 69 72 6f 2d 6d 61 74 72 69 78 2d 74 72 61 6e 73 iro-matrix-trans
a400: 66 6f 72 6d 2d 70 6f 69 6e 74 20 28 28 6d 61 74 form-point ((mat
a410: 72 69 78 20 28 2a 20 63 61 69 72 6f 2d 6d 61 74 rix (* cairo-mat
a420: 72 69 78 2d 74 29 29 20 28 78 20 28 2a 20 64 6f rix-t)) (x (* do
a430: 75 62 6c 65 29 29 20 28 79 20 28 2a 20 64 6f 75 uble)) (y (* dou
a440: 62 6c 65 29 29 29 20 22 63 61 69 72 6f 5f 6d 61 ble))) "cairo_ma
a450: 74 72 69 78 5f 74 72 61 6e 73 66 6f 72 6d 5f 70 trix_transform_p
a460: 6f 69 6e 74 22 29 0a 28 64 65 66 69 6e 65 2d 63 oint").(define-c
a470: 61 69 72 6f 2d 66 75 6e 63 20 28 2a 20 63 61 69 airo-func (* cai
a480: 72 6f 2d 72 65 67 69 6f 6e 2d 74 29 20 63 61 69 ro-region-t) cai
a490: 72 6f 2d 72 65 67 69 6f 6e 2d 63 72 65 61 74 65 ro-region-create
a4a0: 20 28 29 20 22 63 61 69 72 6f 5f 72 65 67 69 6f () "cairo_regio
a4b0: 6e 5f 63 72 65 61 74 65 22 29 0a 28 64 65 66 69 n_create").(defi
a4c0: 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 28 2a ne-cairo-func (*
a4d0: 20 63 61 69 72 6f 2d 72 65 67 69 6f 6e 2d 74 29 cairo-region-t)
a4e0: 20 63 61 69 72 6f 2d 72 65 67 69 6f 6e 2d 63 72 cairo-region-cr
a4f0: 65 61 74 65 2d 72 65 63 74 61 6e 67 6c 65 20 28 eate-rectangle (
a500: 28 72 65 63 74 61 6e 67 6c 65 20 28 2a 20 63 61 (rectangle (* ca
a510: 69 72 6f 2d 72 65 63 74 61 6e 67 6c 65 2d 69 6e iro-rectangle-in
a520: 74 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 72 65 t-t))) "cairo_re
a530: 67 69 6f 6e 5f 63 72 65 61 74 65 5f 72 65 63 74 gion_create_rect
a540: 61 6e 67 6c 65 22 29 0a 28 64 65 66 69 6e 65 2d angle").(define-
a550: 63 61 69 72 6f 2d 66 75 6e 63 20 28 2a 20 63 61 cairo-func (* ca
a560: 69 72 6f 2d 72 65 67 69 6f 6e 2d 74 29 20 63 61 iro-region-t) ca
a570: 69 72 6f 2d 72 65 67 69 6f 6e 2d 63 72 65 61 74 iro-region-creat
a580: 65 2d 72 65 63 74 61 6e 67 6c 65 73 20 28 28 72 e-rectangles ((r
a590: 65 63 74 73 20 28 2a 20 63 61 69 72 6f 2d 72 65 ects (* cairo-re
a5a0: 63 74 61 6e 67 6c 65 2d 69 6e 74 2d 74 29 29 20 ctangle-int-t))
a5b0: 28 63 6f 75 6e 74 20 69 6e 74 29 29 20 22 63 61 (count int)) "ca
a5c0: 69 72 6f 5f 72 65 67 69 6f 6e 5f 63 72 65 61 74 iro_region_creat
a5d0: 65 5f 72 65 63 74 61 6e 67 6c 65 73 22 29 0a 28 e_rectangles").(
a5e0: 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e define-cairo-fun
a5f0: 63 20 28 2a 20 63 61 69 72 6f 2d 72 65 67 69 6f c (* cairo-regio
a600: 6e 2d 74 29 20 63 61 69 72 6f 2d 72 65 67 69 6f n-t) cairo-regio
a610: 6e 2d 63 6f 70 79 20 28 28 6f 72 69 67 69 6e 61 n-copy ((origina
a620: 6c 20 28 2a 20 63 61 69 72 6f 2d 72 65 67 69 6f l (* cairo-regio
a630: 6e 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 72 65 n-t))) "cairo_re
a640: 67 69 6f 6e 5f 63 6f 70 79 22 29 0a 28 64 65 66 gion_copy").(def
a650: 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 28 ine-cairo-func (
a660: 2a 20 63 61 69 72 6f 2d 72 65 67 69 6f 6e 2d 74 * cairo-region-t
a670: 29 20 63 61 69 72 6f 2d 72 65 67 69 6f 6e 2d 72 ) cairo-region-r
a680: 65 66 65 72 65 6e 63 65 20 28 28 72 65 67 69 6f eference ((regio
a690: 6e 20 28 2a 20 63 61 69 72 6f 2d 72 65 67 69 6f n (* cairo-regio
a6a0: 6e 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 72 65 n-t))) "cairo_re
a6b0: 67 69 6f 6e 5f 72 65 66 65 72 65 6e 63 65 22 29 gion_reference")
a6c0: 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 .(define-cairo-f
a6d0: 75 6e 63 20 76 6f 69 64 20 63 61 69 72 6f 2d 72 unc void cairo-r
a6e0: 65 67 69 6f 6e 2d 64 65 73 74 72 6f 79 20 28 28 egion-destroy ((
a6f0: 72 65 67 69 6f 6e 20 28 2a 20 63 61 69 72 6f 2d region (* cairo-
a700: 72 65 67 69 6f 6e 2d 74 29 29 29 20 22 63 61 69 region-t))) "cai
a710: 72 6f 5f 72 65 67 69 6f 6e 5f 64 65 73 74 72 6f ro_region_destro
a720: 79 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 y").(define-cair
a730: 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 62 6f 6f o-func cairo-boo
a740: 6c 2d 74 20 63 61 69 72 6f 2d 72 65 67 69 6f 6e l-t cairo-region
a750: 2d 65 71 75 61 6c 20 28 28 61 20 28 2a 20 63 61 -equal ((a (* ca
a760: 69 72 6f 2d 72 65 67 69 6f 6e 2d 74 29 29 20 28 iro-region-t)) (
a770: 62 20 28 2a 20 63 61 69 72 6f 2d 72 65 67 69 6f b (* cairo-regio
a780: 6e 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 72 65 n-t))) "cairo_re
a790: 67 69 6f 6e 5f 65 71 75 61 6c 22 29 0a 28 64 65 gion_equal").(de
a7a0: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
a7b0: 63 61 69 72 6f 2d 73 74 61 74 75 73 2d 74 20 63 cairo-status-t c
a7c0: 61 69 72 6f 2d 72 65 67 69 6f 6e 2d 73 74 61 74 airo-region-stat
a7d0: 75 73 20 28 28 72 65 67 69 6f 6e 20 28 2a 20 63 us ((region (* c
a7e0: 61 69 72 6f 2d 72 65 67 69 6f 6e 2d 74 29 29 29 airo-region-t)))
a7f0: 20 22 63 61 69 72 6f 5f 72 65 67 69 6f 6e 5f 73 "cairo_region_s
a800: 74 61 74 75 73 22 29 0a 28 64 65 66 69 6e 65 2d tatus").(define-
a810: 63 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 cairo-func void
a820: 63 61 69 72 6f 2d 72 65 67 69 6f 6e 2d 67 65 74 cairo-region-get
a830: 2d 65 78 74 65 6e 74 73 20 28 28 72 65 67 69 6f -extents ((regio
a840: 6e 20 28 2a 20 63 61 69 72 6f 2d 72 65 67 69 6f n (* cairo-regio
a850: 6e 2d 74 29 29 20 28 65 78 74 65 6e 74 73 20 28 n-t)) (extents (
a860: 2a 20 63 61 69 72 6f 2d 72 65 63 74 61 6e 67 6c * cairo-rectangl
a870: 65 2d 69 6e 74 2d 74 29 29 29 20 22 63 61 69 72 e-int-t))) "cair
a880: 6f 5f 72 65 67 69 6f 6e 5f 67 65 74 5f 65 78 74 o_region_get_ext
a890: 65 6e 74 73 22 29 0a 28 64 65 66 69 6e 65 2d 63 ents").(define-c
a8a0: 61 69 72 6f 2d 66 75 6e 63 20 69 6e 74 20 63 61 airo-func int ca
a8b0: 69 72 6f 2d 72 65 67 69 6f 6e 2d 6e 75 6d 2d 72 iro-region-num-r
a8c0: 65 63 74 61 6e 67 6c 65 73 20 28 28 72 65 67 69 ectangles ((regi
a8d0: 6f 6e 20 28 2a 20 63 61 69 72 6f 2d 72 65 67 69 on (* cairo-regi
a8e0: 6f 6e 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 72 on-t))) "cairo_r
a8f0: 65 67 69 6f 6e 5f 6e 75 6d 5f 72 65 63 74 61 6e egion_num_rectan
a900: 67 6c 65 73 22 29 0a 28 64 65 66 69 6e 65 2d 63 gles").(define-c
a910: 61 69 72 6f 2d 66 75 6e 63 20 76 6f 69 64 20 63 airo-func void c
a920: 61 69 72 6f 2d 72 65 67 69 6f 6e 2d 67 65 74 2d airo-region-get-
a930: 72 65 63 74 61 6e 67 6c 65 20 28 28 72 65 67 69 rectangle ((regi
a940: 6f 6e 20 28 2a 20 63 61 69 72 6f 2d 72 65 67 69 on (* cairo-regi
a950: 6f 6e 2d 74 29 29 20 28 6e 74 68 20 69 6e 74 29 on-t)) (nth int)
a960: 20 28 72 65 63 74 61 6e 67 6c 65 20 28 2a 20 63 (rectangle (* c
a970: 61 69 72 6f 2d 72 65 63 74 61 6e 67 6c 65 2d 69 airo-rectangle-i
a980: 6e 74 2d 74 29 29 29 20 22 63 61 69 72 6f 5f 72 nt-t))) "cairo_r
a990: 65 67 69 6f 6e 5f 67 65 74 5f 72 65 63 74 61 6e egion_get_rectan
a9a0: 67 6c 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 gle").(define-ca
a9b0: 69 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 62 iro-func cairo-b
a9c0: 6f 6f 6c 2d 74 20 63 61 69 72 6f 2d 72 65 67 69 ool-t cairo-regi
a9d0: 6f 6e 2d 69 73 2d 65 6d 70 74 79 20 28 28 72 65 on-is-empty ((re
a9e0: 67 69 6f 6e 20 28 2a 20 63 61 69 72 6f 2d 72 65 gion (* cairo-re
a9f0: 67 69 6f 6e 2d 74 29 29 29 20 22 63 61 69 72 6f gion-t))) "cairo
aa00: 5f 72 65 67 69 6f 6e 5f 69 73 5f 65 6d 70 74 79 _region_is_empty
aa10: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
aa20: 2d 66 75 6e 63 20 63 61 69 72 6f 2d 72 65 67 69 -func cairo-regi
aa30: 6f 6e 2d 6f 76 65 72 6c 61 70 2d 74 20 63 61 69 on-overlap-t cai
aa40: 72 6f 2d 72 65 67 69 6f 6e 2d 63 6f 6e 74 61 69 ro-region-contai
aa50: 6e 73 2d 72 65 63 74 61 6e 67 6c 65 20 28 28 72 ns-rectangle ((r
aa60: 65 67 69 6f 6e 20 28 2a 20 63 61 69 72 6f 2d 72 egion (* cairo-r
aa70: 65 67 69 6f 6e 2d 74 29 29 20 28 72 65 63 74 61 egion-t)) (recta
aa80: 6e 67 6c 65 20 28 2a 20 63 61 69 72 6f 2d 72 65 ngle (* cairo-re
aa90: 63 74 61 6e 67 6c 65 2d 69 6e 74 2d 74 29 29 29 ctangle-int-t)))
aaa0: 20 22 63 61 69 72 6f 5f 72 65 67 69 6f 6e 5f 63 "cairo_region_c
aab0: 6f 6e 74 61 69 6e 73 5f 72 65 63 74 61 6e 67 6c ontains_rectangl
aac0: 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 e").(define-cair
aad0: 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 62 6f 6f o-func cairo-boo
aae0: 6c 2d 74 20 63 61 69 72 6f 2d 72 65 67 69 6f 6e l-t cairo-region
aaf0: 2d 63 6f 6e 74 61 69 6e 73 2d 70 6f 69 6e 74 20 -contains-point
ab00: 28 28 72 65 67 69 6f 6e 20 28 2a 20 63 61 69 72 ((region (* cair
ab10: 6f 2d 72 65 67 69 6f 6e 2d 74 29 29 20 28 78 20 o-region-t)) (x
ab20: 69 6e 74 29 20 28 79 20 69 6e 74 29 29 20 22 63 int) (y int)) "c
ab30: 61 69 72 6f 5f 72 65 67 69 6f 6e 5f 63 6f 6e 74 airo_region_cont
ab40: 61 69 6e 73 5f 70 6f 69 6e 74 22 29 0a 28 64 65 ains_point").(de
ab50: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
ab60: 76 6f 69 64 20 63 61 69 72 6f 2d 72 65 67 69 6f void cairo-regio
ab70: 6e 2d 74 72 61 6e 73 6c 61 74 65 20 28 28 72 65 n-translate ((re
ab80: 67 69 6f 6e 20 28 2a 20 63 61 69 72 6f 2d 72 65 gion (* cairo-re
ab90: 67 69 6f 6e 2d 74 29 29 20 28 64 78 20 69 6e 74 gion-t)) (dx int
aba0: 29 20 28 64 79 20 69 6e 74 29 29 20 22 63 61 69 ) (dy int)) "cai
abb0: 72 6f 5f 72 65 67 69 6f 6e 5f 74 72 61 6e 73 6c ro_region_transl
abc0: 61 74 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 ate").(define-ca
abd0: 69 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 73 iro-func cairo-s
abe0: 74 61 74 75 73 2d 74 20 63 61 69 72 6f 2d 72 65 tatus-t cairo-re
abf0: 67 69 6f 6e 2d 73 75 62 74 72 61 63 74 20 28 28 gion-subtract ((
ac00: 64 73 74 20 28 2a 20 63 61 69 72 6f 2d 72 65 67 dst (* cairo-reg
ac10: 69 6f 6e 2d 74 29 29 20 28 6f 74 68 65 72 20 28 ion-t)) (other (
ac20: 2a 20 63 61 69 72 6f 2d 72 65 67 69 6f 6e 2d 74 * cairo-region-t
ac30: 29 29 29 20 22 63 61 69 72 6f 5f 72 65 67 69 6f ))) "cairo_regio
ac40: 6e 5f 73 75 62 74 72 61 63 74 22 29 0a 28 64 65 n_subtract").(de
ac50: 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 fine-cairo-func
ac60: 63 61 69 72 6f 2d 73 74 61 74 75 73 2d 74 20 63 cairo-status-t c
ac70: 61 69 72 6f 2d 72 65 67 69 6f 6e 2d 73 75 62 74 airo-region-subt
ac80: 72 61 63 74 2d 72 65 63 74 61 6e 67 6c 65 20 28 ract-rectangle (
ac90: 28 64 73 74 20 28 2a 20 63 61 69 72 6f 2d 72 65 (dst (* cairo-re
aca0: 67 69 6f 6e 2d 74 29 29 20 28 72 65 63 74 61 6e gion-t)) (rectan
acb0: 67 6c 65 20 28 2a 20 63 61 69 72 6f 2d 72 65 63 gle (* cairo-rec
acc0: 74 61 6e 67 6c 65 2d 69 6e 74 2d 74 29 29 29 20 tangle-int-t)))
acd0: 22 63 61 69 72 6f 5f 72 65 67 69 6f 6e 5f 73 75 "cairo_region_su
ace0: 62 74 72 61 63 74 5f 72 65 63 74 61 6e 67 6c 65 btract_rectangle
acf0: 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f ").(define-cairo
ad00: 2d 66 75 6e 63 20 63 61 69 72 6f 2d 73 74 61 74 -func cairo-stat
ad10: 75 73 2d 74 20 63 61 69 72 6f 2d 72 65 67 69 6f us-t cairo-regio
ad20: 6e 2d 69 6e 74 65 72 73 65 63 74 20 28 28 64 73 n-intersect ((ds
ad30: 74 20 28 2a 20 63 61 69 72 6f 2d 72 65 67 69 6f t (* cairo-regio
ad40: 6e 2d 74 29 29 20 28 6f 74 68 65 72 20 28 2a 20 n-t)) (other (*
ad50: 63 61 69 72 6f 2d 72 65 67 69 6f 6e 2d 74 29 29 cairo-region-t))
ad60: 29 20 22 63 61 69 72 6f 5f 72 65 67 69 6f 6e 5f ) "cairo_region_
ad70: 69 6e 74 65 72 73 65 63 74 22 29 0a 28 64 65 66 intersect").(def
ad80: 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 20 63 ine-cairo-func c
ad90: 61 69 72 6f 2d 73 74 61 74 75 73 2d 74 20 63 61 airo-status-t ca
ada0: 69 72 6f 2d 72 65 67 69 6f 6e 2d 69 6e 74 65 72 iro-region-inter
adb0: 73 65 63 74 2d 72 65 63 74 61 6e 67 6c 65 20 28 sect-rectangle (
adc0: 28 64 73 74 20 28 2a 20 63 61 69 72 6f 2d 72 65 (dst (* cairo-re
add0: 67 69 6f 6e 2d 74 29 29 20 28 72 65 63 74 61 6e gion-t)) (rectan
ade0: 67 6c 65 20 28 2a 20 63 61 69 72 6f 2d 72 65 63 gle (* cairo-rec
adf0: 74 61 6e 67 6c 65 2d 69 6e 74 2d 74 29 29 29 20 tangle-int-t)))
ae00: 22 63 61 69 72 6f 5f 72 65 67 69 6f 6e 5f 69 6e "cairo_region_in
ae10: 74 65 72 73 65 63 74 5f 72 65 63 74 61 6e 67 6c tersect_rectangl
ae20: 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 e").(define-cair
ae30: 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 73 74 61 o-func cairo-sta
ae40: 74 75 73 2d 74 20 63 61 69 72 6f 2d 72 65 67 69 tus-t cairo-regi
ae50: 6f 6e 2d 75 6e 69 6f 6e 20 28 28 64 73 74 20 28 on-union ((dst (
ae60: 2a 20 63 61 69 72 6f 2d 72 65 67 69 6f 6e 2d 74 * cairo-region-t
ae70: 29 29 20 28 6f 74 68 65 72 20 28 2a 20 63 61 69 )) (other (* cai
ae80: 72 6f 2d 72 65 67 69 6f 6e 2d 74 29 29 29 20 22 ro-region-t))) "
ae90: 63 61 69 72 6f 5f 72 65 67 69 6f 6e 5f 75 6e 69 cairo_region_uni
aea0: 6f 6e 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 on").(define-cai
aeb0: 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 73 74 ro-func cairo-st
aec0: 61 74 75 73 2d 74 20 63 61 69 72 6f 2d 72 65 67 atus-t cairo-reg
aed0: 69 6f 6e 2d 75 6e 69 6f 6e 2d 72 65 63 74 61 6e ion-union-rectan
aee0: 67 6c 65 20 28 28 64 73 74 20 28 2a 20 63 61 69 gle ((dst (* cai
aef0: 72 6f 2d 72 65 67 69 6f 6e 2d 74 29 29 20 28 72 ro-region-t)) (r
af00: 65 63 74 61 6e 67 6c 65 20 28 2a 20 63 61 69 72 ectangle (* cair
af10: 6f 2d 72 65 63 74 61 6e 67 6c 65 2d 69 6e 74 2d o-rectangle-int-
af20: 74 29 29 29 20 22 63 61 69 72 6f 5f 72 65 67 69 t))) "cairo_regi
af30: 6f 6e 5f 75 6e 69 6f 6e 5f 72 65 63 74 61 6e 67 on_union_rectang
af40: 6c 65 22 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 le").(define-cai
af50: 72 6f 2d 66 75 6e 63 20 63 61 69 72 6f 2d 73 74 ro-func cairo-st
af60: 61 74 75 73 2d 74 20 63 61 69 72 6f 2d 72 65 67 atus-t cairo-reg
af70: 69 6f 6e 2d 78 6f 72 20 28 28 64 73 74 20 28 2a ion-xor ((dst (*
af80: 20 63 61 69 72 6f 2d 72 65 67 69 6f 6e 2d 74 29 cairo-region-t)
af90: 29 20 28 6f 74 68 65 72 20 28 2a 20 63 61 69 72 ) (other (* cair
afa0: 6f 2d 72 65 67 69 6f 6e 2d 74 29 29 29 20 22 63 o-region-t))) "c
afb0: 61 69 72 6f 5f 72 65 67 69 6f 6e 5f 78 6f 72 22 airo_region_xor"
afc0: 29 0a 28 64 65 66 69 6e 65 2d 63 61 69 72 6f 2d ).(define-cairo-
afd0: 66 75 6e 63 20 63 61 69 72 6f 2d 73 74 61 74 75 func cairo-statu
afe0: 73 2d 74 20 63 61 69 72 6f 2d 72 65 67 69 6f 6e s-t cairo-region
aff0: 2d 78 6f 72 2d 72 65 63 74 61 6e 67 6c 65 20 28 -xor-rectangle (
b000: 28 64 73 74 20 28 2a 20 63 61 69 72 6f 2d 72 65 (dst (* cairo-re
b010: 67 69 6f 6e 2d 74 29 29 20 28 72 65 63 74 61 6e gion-t)) (rectan
b020: 67 6c 65 20 28 2a 20 63 61 69 72 6f 2d 72 65 63 gle (* cairo-rec
b030: 74 61 6e 67 6c 65 2d 69 6e 74 2d 74 29 29 29 20 tangle-int-t)))
b040: 22 63 61 69 72 6f 5f 72 65 67 69 6f 6e 5f 78 6f "cairo_region_xo
b050: 72 5f 72 65 63 74 61 6e 67 6c 65 22 29 0a 28 64 r_rectangle").(d
b060: 65 66 69 6e 65 2d 63 61 69 72 6f 2d 66 75 6e 63 efine-cairo-func
b070: 20 76 6f 69 64 20 63 61 69 72 6f 2d 64 65 62 75 void cairo-debu
b080: 67 2d 72 65 73 65 74 2d 73 74 61 74 69 63 2d 64 g-reset-static-d
b090: 61 74 61 20 28 29 20 22 63 61 69 72 6f 5f 64 65 ata () "cairo_de
b0a0: 62 75 67 5f 72 65 73 65 74 5f 73 74 61 74 69 63 bug_reset_static
b0b0: 5f 64 61 74 61 22 29 0a _data").