diff --git a/binding/HarfBuzzSharp/Buffer.cs b/binding/HarfBuzzSharp/Buffer.cs index f34c24b1392..9d990638c80 100644 --- a/binding/HarfBuzzSharp/Buffer.cs +++ b/binding/HarfBuzzSharp/Buffer.cs @@ -21,6 +21,19 @@ public Buffer () { } + /// + /// Creates a new buffer with the same Unicode functions, content type, flags, + /// cluster level, direction, language, and script as the source buffer. + /// + /// The source buffer to copy settings from + /// A new buffer with the same settings + public static Buffer CreateSimilar (Buffer source) + { + if (source == null) + throw new ArgumentNullException (nameof (source)); + return new Buffer (HarfBuzzApi.hb_buffer_create_similar (source.Handle)); + } + public ContentType ContentType { get => HarfBuzzApi.hb_buffer_get_content_type (Handle); set => HarfBuzzApi.hb_buffer_set_content_type (Handle, value); diff --git a/binding/HarfBuzzSharp/Definitions.cs b/binding/HarfBuzzSharp/Definitions.cs index a1d61ba642b..d7ca49b7c20 100644 --- a/binding/HarfBuzzSharp/Definitions.cs +++ b/binding/HarfBuzzSharp/Definitions.cs @@ -15,6 +15,53 @@ public GlyphFlags GlyphFlags { } } + /// + /// OpenType layout table tags. + /// + public enum OpenTypeLayoutTableTag : uint + { + /// + /// The Glyph Substitution (GSUB) table. + /// + Gsub = ('G' << 24) | ('S' << 16) | ('U' << 8) | 'B', + + /// + /// The Glyph Positioning (GPOS) table. + /// + Gpos = ('G' << 24) | ('P' << 16) | ('O' << 8) | 'S', + } + + /// + /// Information about an OpenType layout feature's names. + /// + public struct OpenTypeFeatureNameIds + { + /// + /// The name ID for the feature's label (user-visible name). + /// + public OpenTypeNameId LabelId { get; set; } + + /// + /// The name ID for the feature's tooltip. + /// + public OpenTypeNameId TooltipId { get; set; } + + /// + /// The name ID for sample text demonstrating the feature. + /// + public OpenTypeNameId SampleId { get; set; } + + /// + /// The number of named parameters for this feature. + /// + public int NumNamedParameters { get; set; } + + /// + /// The name ID of the first named parameter. + /// + public OpenTypeNameId FirstParamId { get; set; } + } + public enum OpenTypeNameId { Copyright = 0, diff --git a/binding/HarfBuzzSharp/Face.cs b/binding/HarfBuzzSharp/Face.cs index d91e1fc9ba6..373f8a2ebe0 100644 --- a/binding/HarfBuzzSharp/Face.cs +++ b/binding/HarfBuzzSharp/Face.cs @@ -85,6 +85,177 @@ public Blob ReferenceTable (Tag table) => public void MakeImmutable () => HarfBuzzApi.hb_face_make_immutable (Handle); + /// + /// Gets the name string from the face's OpenType 'name' table. + /// + /// The name ID to retrieve. + /// The name string, or an empty string if not found. + public string GetName (OpenTypeNameId nameId) => + GetName (nameId, Language.Default); + + /// + /// Gets the name string from the face's OpenType 'name' table. + /// + /// The name ID to retrieve. + /// The language for the name. + /// The name string, or an empty string if not found. + public string GetName (OpenTypeNameId nameId, Language language) + { + if (language == null) + throw new ArgumentNullException (nameof (language)); + + // First call to get the length + uint length = 0; + HarfBuzzApi.hb_ot_name_get_utf16 (Handle, nameId, language.Handle, &length, null); + + if (length == 0) + return string.Empty; + + // Allocate buffer and get the string + length++; // Add space for null terminator + var buffer = stackalloc ushort[(int)length]; + HarfBuzzApi.hb_ot_name_get_utf16 (Handle, nameId, language.Handle, &length, buffer); + + return new string ((char*)buffer, 0, (int)length); + } + + /// + /// Tries to get the name string from the face's OpenType 'name' table. + /// + /// The name ID to retrieve. + /// The name string, or null if not found. + /// True if the name was found, false otherwise. + public bool TryGetName (OpenTypeNameId nameId, out string name) => + TryGetName (nameId, Language.Default, out name); + + /// + /// Tries to get the name string from the face's OpenType 'name' table. + /// + /// The name ID to retrieve. + /// The language for the name. + /// The name string, or null if not found. + /// True if the name was found, false otherwise. + public bool TryGetName (OpenTypeNameId nameId, Language language, out string name) + { + if (language == null) + throw new ArgumentNullException (nameof (language)); + + // First call to get the length + uint length = 0; + HarfBuzzApi.hb_ot_name_get_utf16 (Handle, nameId, language.Handle, &length, null); + + if (length == 0) { + name = null; + return false; + } + + // Allocate buffer and get the string + length++; // Add space for null terminator + var buffer = stackalloc ushort[(int)length]; + HarfBuzzApi.hb_ot_name_get_utf16 (Handle, nameId, language.Handle, &length, buffer); + + name = new string ((char*)buffer, 0, (int)length); + return true; + } + + /// + /// Gets all name entries from the face's OpenType 'name' table. + /// + /// An array of name entries. + public OpenTypeNameEntry[] GetAllNameEntries () + { + uint count = 0; + var entries = HarfBuzzApi.hb_ot_name_list_names (Handle, &count); + + if (count == 0 || entries == null) + return Array.Empty (); + + var result = new OpenTypeNameEntry[count]; + for (int i = 0; i < count; i++) + result[i] = entries[i]; + + return result; + } + + /// + /// Gets all script tags supported by the specified OpenType layout table. + /// + /// The layout table to query (GSUB or GPOS). + /// An array of script tags. + public Tag[] GetOpenTypeLayoutScriptTags (OpenTypeLayoutTableTag tableTag) + { + // First call to get the count + uint count = 0; + var total = HarfBuzzApi.hb_ot_layout_table_get_script_tags (Handle, (uint)tableTag, 0, &count, null); + + if (total == 0) + return Array.Empty (); + + // Allocate and get all tags + var buffer = new Tag[total]; + count = total; + fixed (Tag* ptr = buffer) { + HarfBuzzApi.hb_ot_layout_table_get_script_tags (Handle, (uint)tableTag, 0, &count, (uint*)ptr); + } + + return buffer; + } + + /// + /// Gets all feature tags supported by the specified OpenType layout table. + /// + /// The layout table to query (GSUB or GPOS). + /// An array of feature tags. + public Tag[] GetOpenTypeLayoutFeatureTags (OpenTypeLayoutTableTag tableTag) + { + // First call to get the count + uint count = 0; + var total = HarfBuzzApi.hb_ot_layout_table_get_feature_tags (Handle, (uint)tableTag, 0, &count, null); + + if (total == 0) + return Array.Empty (); + + // Allocate and get all tags + var buffer = new Tag[total]; + count = total; + fixed (Tag* ptr = buffer) { + HarfBuzzApi.hb_ot_layout_table_get_feature_tags (Handle, (uint)tableTag, 0, &count, (uint*)ptr); + } + + return buffer; + } + + /// + /// Tries to get the name IDs for an OpenType layout feature. + /// + /// The layout table (GSUB or GPOS). + /// The index of the feature in the table. + /// The name IDs for the feature if found. + /// True if the feature has name IDs, false otherwise. + public bool TryGetOpenTypeLayoutFeatureNameIds (OpenTypeLayoutTableTag tableTag, int featureIndex, out OpenTypeFeatureNameIds nameIds) + { + OpenTypeNameId labelId, tooltipId, sampleId, firstParamId; + uint numParams; + + var result = HarfBuzzApi.hb_ot_layout_feature_get_name_ids ( + Handle, (uint)tableTag, (uint)featureIndex, + &labelId, &tooltipId, &sampleId, &numParams, &firstParamId); + + if (!result) { + nameIds = default; + return false; + } + + nameIds = new OpenTypeFeatureNameIds { + LabelId = labelId, + TooltipId = tooltipId, + SampleId = sampleId, + NumNamedParameters = (int)numParams, + FirstParamId = firstParamId + }; + return true; + } + protected override void Dispose (bool disposing) => base.Dispose (disposing); diff --git a/binding/HarfBuzzSharp/Font.cs b/binding/HarfBuzzSharp/Font.cs index 13b6676aa38..b58389faf97 100644 --- a/binding/HarfBuzzSharp/Font.cs +++ b/binding/HarfBuzzSharp/Font.cs @@ -68,6 +68,166 @@ public void GetScale (out int xScale, out int yScale) public void SetScale (int xScale, int yScale) => HarfBuzzApi.hb_font_set_scale (Handle, xScale, yScale); + /// + /// Gets the horizontal and vertical pixels-per-em (ppem) of the font. + /// + /// The horizontal ppem value. + /// The vertical ppem value. + public void GetPpem (out int xPpem, out int yPpem) + { + uint x, y; + HarfBuzzApi.hb_font_get_ppem (Handle, &x, &y); + xPpem = (int)x; + yPpem = (int)y; + } + + /// + /// Sets the horizontal and vertical pixels-per-em (ppem) of the font. + /// + /// + /// The ppem values are used by HarfBuzz for pixel rounding and hinting. + /// + /// The horizontal ppem value. + /// The vertical ppem value. + public void SetPpem (int xPpem, int yPpem) => + HarfBuzzApi.hb_font_set_ppem (Handle, (uint)xPpem, (uint)yPpem); + + /// + /// Gets or sets the "point size" of the font in typographic points (1/72 inch). + /// + /// + /// This is used for optical sizing in variable fonts. Fonts with an 'opsz' axis + /// will use this value to select the appropriate optical size. A value of 0 + /// means "not set" and disables automatic optical sizing. + /// + public float Ptem + { + get => HarfBuzzApi.hb_font_get_ptem (Handle); + set => HarfBuzzApi.hb_font_set_ptem (Handle, value); + } + + /// + /// Gets or sets the synthetic slant of the font. + /// + /// + /// The synthetic slant is in "run" units to achieve a "rise" of 1. + /// The typical slant value for an idealized oblique font is 0.2 (about 12°). + /// HarfBuzz needs to know this value to adjust shaping results, such as offsets. + /// + public float SyntheticSlant + { + get => HarfBuzzApi.hb_font_get_synthetic_slant (Handle); + set => HarfBuzzApi.hb_font_set_synthetic_slant (Handle, value); + } + + /// + /// Sets synthetic bold parameters for the font. + /// + /// + /// Positive values for emboldening in X and Y directions. Typical value + /// is 2% of UPEM for X, and Y embolden of 0. Setting both to 0 removes + /// the synthetic bold. If inPlace is true, glyphs are widened in-place + /// rather than adding side-bearing. + /// + /// Horizontal emboldening amount + /// Vertical emboldening amount + /// Whether to embolden in-place + public void SetSyntheticBold (float xEmbolden, float yEmbolden, bool inPlace = false) => + HarfBuzzApi.hb_font_set_synthetic_bold (Handle, xEmbolden, yEmbolden, inPlace); + + /// + /// Gets the synthetic bold parameters of the font. + /// + /// Horizontal emboldening amount + /// Vertical emboldening amount + /// Whether emboldening is in-place + public void GetSyntheticBold (out float xEmbolden, out float yEmbolden, out bool inPlace) + { + fixed (float* x = &xEmbolden) + fixed (float* y = &yEmbolden) + fixed (bool* ip = &inPlace) { + HarfBuzzApi.hb_font_get_synthetic_bold (Handle, x, y, ip); + } + } + + /// + /// Sets a single variation axis value. + /// + /// + /// This is useful for setting a single axis on a variable font. + /// For multiple axes, use SetVariations instead. + /// + /// The axis tag (e.g., "wght" for weight) + /// The axis value in design space + public void SetVariation (uint tag, float value) => + HarfBuzzApi.hb_font_set_variation (Handle, tag, value); + + /// + /// Sets a single variation axis value using a string tag. + /// + /// + /// Common tags are "wght" for weight, "wdth" for width, + /// "slnt" for slant, "ital" for italic. + /// + /// The axis tag string (e.g., "wght") + /// The axis value in design space + public void SetVariation (string tag, float value) + { + if (tag == null) + throw new ArgumentNullException (nameof (tag)); + if (tag.Length != 4) + throw new ArgumentException ("Tag must be exactly 4 characters", nameof (tag)); + + var tagValue = Tag.Parse (tag); + HarfBuzzApi.hb_font_set_variation (Handle, tagValue, value); + } + + /// + /// Gets or sets the named instance index for the font. + /// + /// + /// A value of HB_FONT_NO_VAR_NAMED_INSTANCE (0xFFFFFFFF) means + /// no named instance is set. + /// + public uint NamedInstance + { + get => HarfBuzzApi.hb_font_get_var_named_instance (Handle); + set => HarfBuzzApi.hb_font_set_var_named_instance (Handle, value); + } + + /// + /// Sets design-space coordinates for variable font axes. + /// + /// + /// Note that this is in design-space coordinates, not normalized. + /// This is the primary API for working with variable fonts. + /// + /// An array of variation settings + public void SetVariations (Variation[] variations) + { + if (variations == null) + throw new ArgumentNullException (nameof (variations)); + + fixed (Variation* v = variations) { + HarfBuzzApi.hb_font_set_variations (Handle, v, (uint)variations.Length); + } + } + + /// + /// Sets design-space coordinates for variable font axes. + /// + /// + /// Note that this is in design-space coordinates, not normalized. + /// This is the primary API for working with variable fonts. + /// + /// A span of variation settings + public void SetVariations (ReadOnlySpan variations) + { + fixed (Variation* v = variations) { + HarfBuzzApi.hb_font_set_variations (Handle, v, (uint)variations.Length); + } + } + public bool TryGetHorizontalFontExtents (out FontExtents extents) { fixed (FontExtents* e = &extents) { diff --git a/binding/HarfBuzzSharp/HarfBuzzApi.generated.cs b/binding/HarfBuzzSharp/HarfBuzzApi.generated.cs index 871ebbf2314..33aee8a2cbf 100644 --- a/binding/HarfBuzzSharp/HarfBuzzApi.generated.cs +++ b/binding/HarfBuzzSharp/HarfBuzzApi.generated.cs @@ -11,11 +11,13 @@ using hb_blob_t = System.IntPtr; using hb_buffer_t = System.IntPtr; +using hb_draw_funcs_t = System.IntPtr; using hb_face_t = System.IntPtr; using hb_font_funcs_t = System.IntPtr; using hb_font_t = System.IntPtr; using hb_language_impl_t = System.IntPtr; using hb_map_t = System.IntPtr; +using hb_paint_funcs_t = System.IntPtr; using hb_set_t = System.IntPtr; using hb_shape_plan_t = System.IntPtr; using hb_unicode_funcs_t = System.IntPtr; @@ -30,7 +32,7 @@ internal unsafe partial class HarfBuzzApi { #region hb-blob.h - // extern hb_blob_t* hb_blob_copy_writable_or_fail(hb_blob_t* blob) + // extern hb_blob_t * hb_blob_copy_writable_or_fail(hb_blob_t * blob) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -49,7 +51,7 @@ internal static hb_blob_t hb_blob_copy_writable_or_fail (hb_blob_t blob) => (hb_blob_copy_writable_or_fail_delegate ??= GetSymbol ("hb_blob_copy_writable_or_fail")).Invoke (blob); #endif - // extern hb_blob_t* hb_blob_create(const char* data, unsigned int length, hb_memory_mode_t mode, void* user_data, hb_destroy_func_t destroy) + // extern hb_blob_t * hb_blob_create(char const * data, unsigned int length, hb_memory_mode_t mode, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -68,7 +70,7 @@ internal static hb_blob_t hb_blob_create (/* char */ void* data, UInt32 length, (hb_blob_create_delegate ??= GetSymbol ("hb_blob_create")).Invoke (data, length, mode, user_data, destroy); #endif - // extern hb_blob_t* hb_blob_create_from_file(const char* file_name) + // extern hb_blob_t * hb_blob_create_from_file(char const * file_name) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -87,7 +89,7 @@ internal static hb_blob_t hb_blob_create_from_file ([MarshalAs (UnmanagedType.LP (hb_blob_create_from_file_delegate ??= GetSymbol ("hb_blob_create_from_file")).Invoke (file_name); #endif - // extern hb_blob_t* hb_blob_create_from_file_or_fail(const char* file_name) + // extern hb_blob_t * hb_blob_create_from_file_or_fail(char const * file_name) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -106,7 +108,7 @@ internal static hb_blob_t hb_blob_create_from_file_or_fail (/* char */ void* fil (hb_blob_create_from_file_or_fail_delegate ??= GetSymbol ("hb_blob_create_from_file_or_fail")).Invoke (file_name); #endif - // extern hb_blob_t* hb_blob_create_or_fail(const char* data, unsigned int length, hb_memory_mode_t mode, void* user_data, hb_destroy_func_t destroy) + // extern hb_blob_t * hb_blob_create_or_fail(char const * data, unsigned int length, hb_memory_mode_t mode, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -125,7 +127,7 @@ internal static hb_blob_t hb_blob_create_or_fail (/* char */ void* data, UInt32 (hb_blob_create_or_fail_delegate ??= GetSymbol ("hb_blob_create_or_fail")).Invoke (data, length, mode, user_data, destroy); #endif - // extern hb_blob_t* hb_blob_create_sub_blob(hb_blob_t* parent, unsigned int offset, unsigned int length) + // extern hb_blob_t * hb_blob_create_sub_blob(hb_blob_t * parent, unsigned int offset, unsigned int length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -144,7 +146,7 @@ internal static hb_blob_t hb_blob_create_sub_blob (hb_blob_t parent, UInt32 offs (hb_blob_create_sub_blob_delegate ??= GetSymbol ("hb_blob_create_sub_blob")).Invoke (parent, offset, length); #endif - // extern void hb_blob_destroy(hb_blob_t* blob) + // extern void hb_blob_destroy(hb_blob_t * blob) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -163,7 +165,7 @@ internal static void hb_blob_destroy (hb_blob_t blob) => (hb_blob_destroy_delegate ??= GetSymbol ("hb_blob_destroy")).Invoke (blob); #endif - // extern const char* hb_blob_get_data(hb_blob_t* blob, unsigned int* length) + // extern char const * hb_blob_get_data(hb_blob_t * blob, unsigned int * length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -182,7 +184,7 @@ private partial class Delegates { (hb_blob_get_data_delegate ??= GetSymbol ("hb_blob_get_data")).Invoke (blob, length); #endif - // extern char* hb_blob_get_data_writable(hb_blob_t* blob, unsigned int* length) + // extern char * hb_blob_get_data_writable(hb_blob_t * blob, unsigned int * length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -201,7 +203,7 @@ private partial class Delegates { (hb_blob_get_data_writable_delegate ??= GetSymbol ("hb_blob_get_data_writable")).Invoke (blob, length); #endif - // extern hb_blob_t* hb_blob_get_empty() + // extern hb_blob_t * hb_blob_get_empty() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -220,7 +222,7 @@ internal static hb_blob_t hb_blob_get_empty () => (hb_blob_get_empty_delegate ??= GetSymbol ("hb_blob_get_empty")).Invoke (); #endif - // extern unsigned int hb_blob_get_length(hb_blob_t* blob) + // extern unsigned int hb_blob_get_length(hb_blob_t * blob) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -239,7 +241,7 @@ internal static UInt32 hb_blob_get_length (hb_blob_t blob) => (hb_blob_get_length_delegate ??= GetSymbol ("hb_blob_get_length")).Invoke (blob); #endif - // extern hb_bool_t hb_blob_is_immutable(hb_blob_t* blob) + // extern hb_bool_t hb_blob_is_immutable(hb_blob_t * blob) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -261,7 +263,7 @@ internal static bool hb_blob_is_immutable (hb_blob_t blob) => (hb_blob_is_immutable_delegate ??= GetSymbol ("hb_blob_is_immutable")).Invoke (blob); #endif - // extern void hb_blob_make_immutable(hb_blob_t* blob) + // extern void hb_blob_make_immutable(hb_blob_t * blob) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -280,7 +282,7 @@ internal static void hb_blob_make_immutable (hb_blob_t blob) => (hb_blob_make_immutable_delegate ??= GetSymbol ("hb_blob_make_immutable")).Invoke (blob); #endif - // extern hb_blob_t* hb_blob_reference(hb_blob_t* blob) + // extern hb_blob_t * hb_blob_reference(hb_blob_t * blob) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -303,7 +305,7 @@ internal static hb_blob_t hb_blob_reference (hb_blob_t blob) => #region hb-buffer.h - // extern void hb_buffer_add(hb_buffer_t* buffer, hb_codepoint_t codepoint, unsigned int cluster) + // extern void hb_buffer_add(hb_buffer_t * buffer, hb_codepoint_t codepoint, unsigned int cluster) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -322,7 +324,7 @@ internal static void hb_buffer_add (hb_buffer_t buffer, UInt32 codepoint, UInt32 (hb_buffer_add_delegate ??= GetSymbol ("hb_buffer_add")).Invoke (buffer, codepoint, cluster); #endif - // extern void hb_buffer_add_codepoints(hb_buffer_t* buffer, const hb_codepoint_t* text, int text_length, unsigned int item_offset, int item_length) + // extern void hb_buffer_add_codepoints(hb_buffer_t * buffer, hb_codepoint_t const * text, int text_length, unsigned int item_offset, int item_length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -341,7 +343,7 @@ internal static void hb_buffer_add_codepoints (hb_buffer_t buffer, UInt32* text, (hb_buffer_add_codepoints_delegate ??= GetSymbol ("hb_buffer_add_codepoints")).Invoke (buffer, text, text_length, item_offset, item_length); #endif - // extern void hb_buffer_add_latin1(hb_buffer_t* buffer, const uint8_t* text, int text_length, unsigned int item_offset, int item_length) + // extern void hb_buffer_add_latin1(hb_buffer_t * buffer, unsigned char const * text, int text_length, unsigned int item_offset, int item_length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -360,7 +362,7 @@ internal static void hb_buffer_add_latin1 (hb_buffer_t buffer, Byte* text, Int32 (hb_buffer_add_latin1_delegate ??= GetSymbol ("hb_buffer_add_latin1")).Invoke (buffer, text, text_length, item_offset, item_length); #endif - // extern void hb_buffer_add_utf16(hb_buffer_t* buffer, const uint16_t* text, int text_length, unsigned int item_offset, int item_length) + // extern void hb_buffer_add_utf16(hb_buffer_t * buffer, unsigned short const * text, int text_length, unsigned int item_offset, int item_length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -379,7 +381,7 @@ internal static void hb_buffer_add_utf16 (hb_buffer_t buffer, UInt16* text, Int3 (hb_buffer_add_utf16_delegate ??= GetSymbol ("hb_buffer_add_utf16")).Invoke (buffer, text, text_length, item_offset, item_length); #endif - // extern void hb_buffer_add_utf32(hb_buffer_t* buffer, const uint32_t* text, int text_length, unsigned int item_offset, int item_length) + // extern void hb_buffer_add_utf32(hb_buffer_t * buffer, unsigned int const * text, int text_length, unsigned int item_offset, int item_length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -398,7 +400,7 @@ internal static void hb_buffer_add_utf32 (hb_buffer_t buffer, UInt32* text, Int3 (hb_buffer_add_utf32_delegate ??= GetSymbol ("hb_buffer_add_utf32")).Invoke (buffer, text, text_length, item_offset, item_length); #endif - // extern void hb_buffer_add_utf8(hb_buffer_t* buffer, const char* text, int text_length, unsigned int item_offset, int item_length) + // extern void hb_buffer_add_utf8(hb_buffer_t * buffer, char const * text, int text_length, unsigned int item_offset, int item_length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -417,7 +419,7 @@ internal static void hb_buffer_add_utf8 (hb_buffer_t buffer, /* char */ void* te (hb_buffer_add_utf8_delegate ??= GetSymbol ("hb_buffer_add_utf8")).Invoke (buffer, text, text_length, item_offset, item_length); #endif - // extern hb_bool_t hb_buffer_allocation_successful(hb_buffer_t* buffer) + // extern hb_bool_t hb_buffer_allocation_successful(hb_buffer_t * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -439,7 +441,7 @@ internal static bool hb_buffer_allocation_successful (hb_buffer_t buffer) => (hb_buffer_allocation_successful_delegate ??= GetSymbol ("hb_buffer_allocation_successful")).Invoke (buffer); #endif - // extern void hb_buffer_append(hb_buffer_t* buffer, hb_buffer_t* source, unsigned int start, unsigned int end) + // extern void hb_buffer_append(hb_buffer_t * buffer, hb_buffer_t const * source, unsigned int start, unsigned int end) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -458,7 +460,7 @@ internal static void hb_buffer_append (hb_buffer_t buffer, hb_buffer_t source, U (hb_buffer_append_delegate ??= GetSymbol ("hb_buffer_append")).Invoke (buffer, source, start, end); #endif - // extern void hb_buffer_clear_contents(hb_buffer_t* buffer) + // extern void hb_buffer_clear_contents(hb_buffer_t * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -477,7 +479,7 @@ internal static void hb_buffer_clear_contents (hb_buffer_t buffer) => (hb_buffer_clear_contents_delegate ??= GetSymbol ("hb_buffer_clear_contents")).Invoke (buffer); #endif - // extern hb_buffer_t* hb_buffer_create() + // extern hb_buffer_t * hb_buffer_create() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -496,7 +498,26 @@ internal static hb_buffer_t hb_buffer_create () => (hb_buffer_create_delegate ??= GetSymbol ("hb_buffer_create")).Invoke (); #endif - // extern hb_bool_t hb_buffer_deserialize_glyphs(hb_buffer_t* buffer, const char* buf, int buf_len, const char** end_ptr, hb_font_t* font, hb_buffer_serialize_format_t format) + // extern hb_buffer_t * hb_buffer_create_similar(hb_buffer_t const * src) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial hb_buffer_t hb_buffer_create_similar (hb_buffer_t src); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern hb_buffer_t hb_buffer_create_similar (hb_buffer_t src); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate hb_buffer_t hb_buffer_create_similar (hb_buffer_t src); + } + private static Delegates.hb_buffer_create_similar hb_buffer_create_similar_delegate; + internal static hb_buffer_t hb_buffer_create_similar (hb_buffer_t src) => + (hb_buffer_create_similar_delegate ??= GetSymbol ("hb_buffer_create_similar")).Invoke (src); + #endif + + // extern hb_bool_t hb_buffer_deserialize_glyphs(hb_buffer_t * buffer, char const * buf, int buf_len, char const * * end_ptr, hb_font_t * font, hb_buffer_serialize_format_t format) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -518,7 +539,7 @@ internal static bool hb_buffer_deserialize_glyphs (hb_buffer_t buffer, [MarshalA (hb_buffer_deserialize_glyphs_delegate ??= GetSymbol ("hb_buffer_deserialize_glyphs")).Invoke (buffer, buf, buf_len, end_ptr, font, format); #endif - // extern hb_bool_t hb_buffer_deserialize_unicode(hb_buffer_t* buffer, const char* buf, int buf_len, const char** end_ptr, hb_buffer_serialize_format_t format) + // extern hb_bool_t hb_buffer_deserialize_unicode(hb_buffer_t * buffer, char const * buf, int buf_len, char const * * end_ptr, hb_buffer_serialize_format_t format) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -540,7 +561,7 @@ internal static bool hb_buffer_deserialize_unicode (hb_buffer_t buffer, /* char (hb_buffer_deserialize_unicode_delegate ??= GetSymbol ("hb_buffer_deserialize_unicode")).Invoke (buffer, buf, buf_len, end_ptr, format); #endif - // extern void hb_buffer_destroy(hb_buffer_t* buffer) + // extern void hb_buffer_destroy(hb_buffer_t * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -559,7 +580,7 @@ internal static void hb_buffer_destroy (hb_buffer_t buffer) => (hb_buffer_destroy_delegate ??= GetSymbol ("hb_buffer_destroy")).Invoke (buffer); #endif - // extern hb_buffer_diff_flags_t hb_buffer_diff(hb_buffer_t* buffer, hb_buffer_t* reference, hb_codepoint_t dottedcircle_glyph, unsigned int position_fuzz) + // extern hb_buffer_diff_flags_t hb_buffer_diff(hb_buffer_t * buffer, hb_buffer_t * reference, hb_codepoint_t dottedcircle_glyph, unsigned int position_fuzz) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -578,7 +599,7 @@ internal static BufferDiffFlags hb_buffer_diff (hb_buffer_t buffer, hb_buffer_t (hb_buffer_diff_delegate ??= GetSymbol ("hb_buffer_diff")).Invoke (buffer, reference, dottedcircle_glyph, position_fuzz); #endif - // extern hb_buffer_cluster_level_t hb_buffer_get_cluster_level(hb_buffer_t* buffer) + // extern hb_buffer_cluster_level_t hb_buffer_get_cluster_level(hb_buffer_t const * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -597,7 +618,7 @@ internal static ClusterLevel hb_buffer_get_cluster_level (hb_buffer_t buffer) => (hb_buffer_get_cluster_level_delegate ??= GetSymbol ("hb_buffer_get_cluster_level")).Invoke (buffer); #endif - // extern hb_buffer_content_type_t hb_buffer_get_content_type(hb_buffer_t* buffer) + // extern hb_buffer_content_type_t hb_buffer_get_content_type(hb_buffer_t const * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -616,7 +637,7 @@ internal static ContentType hb_buffer_get_content_type (hb_buffer_t buffer) => (hb_buffer_get_content_type_delegate ??= GetSymbol ("hb_buffer_get_content_type")).Invoke (buffer); #endif - // extern hb_direction_t hb_buffer_get_direction(hb_buffer_t* buffer) + // extern hb_direction_t hb_buffer_get_direction(hb_buffer_t const * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -635,7 +656,7 @@ internal static Direction hb_buffer_get_direction (hb_buffer_t buffer) => (hb_buffer_get_direction_delegate ??= GetSymbol ("hb_buffer_get_direction")).Invoke (buffer); #endif - // extern hb_buffer_t* hb_buffer_get_empty() + // extern hb_buffer_t * hb_buffer_get_empty() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -654,7 +675,7 @@ internal static hb_buffer_t hb_buffer_get_empty () => (hb_buffer_get_empty_delegate ??= GetSymbol ("hb_buffer_get_empty")).Invoke (); #endif - // extern hb_buffer_flags_t hb_buffer_get_flags(hb_buffer_t* buffer) + // extern hb_buffer_flags_t hb_buffer_get_flags(hb_buffer_t const * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -673,7 +694,7 @@ internal static BufferFlags hb_buffer_get_flags (hb_buffer_t buffer) => (hb_buffer_get_flags_delegate ??= GetSymbol ("hb_buffer_get_flags")).Invoke (buffer); #endif - // extern hb_glyph_info_t* hb_buffer_get_glyph_infos(hb_buffer_t* buffer, unsigned int* length) + // extern hb_glyph_info_t * hb_buffer_get_glyph_infos(hb_buffer_t * buffer, unsigned int * length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -692,7 +713,7 @@ private partial class Delegates { (hb_buffer_get_glyph_infos_delegate ??= GetSymbol ("hb_buffer_get_glyph_infos")).Invoke (buffer, length); #endif - // extern hb_glyph_position_t* hb_buffer_get_glyph_positions(hb_buffer_t* buffer, unsigned int* length) + // extern hb_glyph_position_t * hb_buffer_get_glyph_positions(hb_buffer_t * buffer, unsigned int * length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -711,7 +732,7 @@ private partial class Delegates { (hb_buffer_get_glyph_positions_delegate ??= GetSymbol ("hb_buffer_get_glyph_positions")).Invoke (buffer, length); #endif - // extern hb_codepoint_t hb_buffer_get_invisible_glyph(hb_buffer_t* buffer) + // extern hb_codepoint_t hb_buffer_get_invisible_glyph(hb_buffer_t const * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -730,7 +751,7 @@ internal static UInt32 hb_buffer_get_invisible_glyph (hb_buffer_t buffer) => (hb_buffer_get_invisible_glyph_delegate ??= GetSymbol ("hb_buffer_get_invisible_glyph")).Invoke (buffer); #endif - // extern hb_language_t hb_buffer_get_language(hb_buffer_t* buffer) + // extern hb_language_t hb_buffer_get_language(hb_buffer_t const * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -749,7 +770,7 @@ internal static IntPtr hb_buffer_get_language (hb_buffer_t buffer) => (hb_buffer_get_language_delegate ??= GetSymbol ("hb_buffer_get_language")).Invoke (buffer); #endif - // extern unsigned int hb_buffer_get_length(hb_buffer_t* buffer) + // extern unsigned int hb_buffer_get_length(hb_buffer_t const * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -768,7 +789,26 @@ internal static UInt32 hb_buffer_get_length (hb_buffer_t buffer) => (hb_buffer_get_length_delegate ??= GetSymbol ("hb_buffer_get_length")).Invoke (buffer); #endif - // extern hb_codepoint_t hb_buffer_get_replacement_codepoint(hb_buffer_t* buffer) + // extern hb_codepoint_t hb_buffer_get_not_found_glyph(hb_buffer_t const * buffer) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial UInt32 hb_buffer_get_not_found_glyph (hb_buffer_t buffer); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern UInt32 hb_buffer_get_not_found_glyph (hb_buffer_t buffer); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate UInt32 hb_buffer_get_not_found_glyph (hb_buffer_t buffer); + } + private static Delegates.hb_buffer_get_not_found_glyph hb_buffer_get_not_found_glyph_delegate; + internal static UInt32 hb_buffer_get_not_found_glyph (hb_buffer_t buffer) => + (hb_buffer_get_not_found_glyph_delegate ??= GetSymbol ("hb_buffer_get_not_found_glyph")).Invoke (buffer); + #endif + + // extern hb_codepoint_t hb_buffer_get_replacement_codepoint(hb_buffer_t const * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -787,7 +827,7 @@ internal static UInt32 hb_buffer_get_replacement_codepoint (hb_buffer_t buffer) (hb_buffer_get_replacement_codepoint_delegate ??= GetSymbol ("hb_buffer_get_replacement_codepoint")).Invoke (buffer); #endif - // extern hb_script_t hb_buffer_get_script(hb_buffer_t* buffer) + // extern hb_script_t hb_buffer_get_script(hb_buffer_t const * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -806,7 +846,7 @@ internal static UInt32 hb_buffer_get_script (hb_buffer_t buffer) => (hb_buffer_get_script_delegate ??= GetSymbol ("hb_buffer_get_script")).Invoke (buffer); #endif - // extern hb_unicode_funcs_t* hb_buffer_get_unicode_funcs(hb_buffer_t* buffer) + // extern hb_unicode_funcs_t * hb_buffer_get_unicode_funcs(hb_buffer_t const * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -825,7 +865,7 @@ internal static hb_unicode_funcs_t hb_buffer_get_unicode_funcs (hb_buffer_t buff (hb_buffer_get_unicode_funcs_delegate ??= GetSymbol ("hb_buffer_get_unicode_funcs")).Invoke (buffer); #endif - // extern void hb_buffer_guess_segment_properties(hb_buffer_t* buffer) + // extern void hb_buffer_guess_segment_properties(hb_buffer_t * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -844,7 +884,7 @@ internal static void hb_buffer_guess_segment_properties (hb_buffer_t buffer) => (hb_buffer_guess_segment_properties_delegate ??= GetSymbol ("hb_buffer_guess_segment_properties")).Invoke (buffer); #endif - // extern hb_bool_t hb_buffer_has_positions(hb_buffer_t* buffer) + // extern hb_bool_t hb_buffer_has_positions(hb_buffer_t * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -866,7 +906,7 @@ internal static bool hb_buffer_has_positions (hb_buffer_t buffer) => (hb_buffer_has_positions_delegate ??= GetSymbol ("hb_buffer_has_positions")).Invoke (buffer); #endif - // extern void hb_buffer_normalize_glyphs(hb_buffer_t* buffer) + // extern void hb_buffer_normalize_glyphs(hb_buffer_t * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -885,7 +925,7 @@ internal static void hb_buffer_normalize_glyphs (hb_buffer_t buffer) => (hb_buffer_normalize_glyphs_delegate ??= GetSymbol ("hb_buffer_normalize_glyphs")).Invoke (buffer); #endif - // extern hb_bool_t hb_buffer_pre_allocate(hb_buffer_t* buffer, unsigned int size) + // extern hb_bool_t hb_buffer_pre_allocate(hb_buffer_t * buffer, unsigned int size) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -907,7 +947,7 @@ internal static bool hb_buffer_pre_allocate (hb_buffer_t buffer, UInt32 size) => (hb_buffer_pre_allocate_delegate ??= GetSymbol ("hb_buffer_pre_allocate")).Invoke (buffer, size); #endif - // extern hb_buffer_t* hb_buffer_reference(hb_buffer_t* buffer) + // extern hb_buffer_t * hb_buffer_reference(hb_buffer_t * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -926,7 +966,7 @@ internal static hb_buffer_t hb_buffer_reference (hb_buffer_t buffer) => (hb_buffer_reference_delegate ??= GetSymbol ("hb_buffer_reference")).Invoke (buffer); #endif - // extern void hb_buffer_reset(hb_buffer_t* buffer) + // extern void hb_buffer_reset(hb_buffer_t * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -945,7 +985,7 @@ internal static void hb_buffer_reset (hb_buffer_t buffer) => (hb_buffer_reset_delegate ??= GetSymbol ("hb_buffer_reset")).Invoke (buffer); #endif - // extern void hb_buffer_reverse(hb_buffer_t* buffer) + // extern void hb_buffer_reverse(hb_buffer_t * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -964,7 +1004,7 @@ internal static void hb_buffer_reverse (hb_buffer_t buffer) => (hb_buffer_reverse_delegate ??= GetSymbol ("hb_buffer_reverse")).Invoke (buffer); #endif - // extern void hb_buffer_reverse_clusters(hb_buffer_t* buffer) + // extern void hb_buffer_reverse_clusters(hb_buffer_t * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -983,7 +1023,7 @@ internal static void hb_buffer_reverse_clusters (hb_buffer_t buffer) => (hb_buffer_reverse_clusters_delegate ??= GetSymbol ("hb_buffer_reverse_clusters")).Invoke (buffer); #endif - // extern void hb_buffer_reverse_range(hb_buffer_t* buffer, unsigned int start, unsigned int end) + // extern void hb_buffer_reverse_range(hb_buffer_t * buffer, unsigned int start, unsigned int end) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1002,7 +1042,7 @@ internal static void hb_buffer_reverse_range (hb_buffer_t buffer, UInt32 start, (hb_buffer_reverse_range_delegate ??= GetSymbol ("hb_buffer_reverse_range")).Invoke (buffer, start, end); #endif - // extern unsigned int hb_buffer_serialize(hb_buffer_t* buffer, unsigned int start, unsigned int end, char* buf, unsigned int buf_size, unsigned int* buf_consumed, hb_font_t* font, hb_buffer_serialize_format_t format, hb_buffer_serialize_flags_t flags) + // extern unsigned int hb_buffer_serialize(hb_buffer_t * buffer, unsigned int start, unsigned int end, char * buf, unsigned int buf_size, unsigned int * buf_consumed, hb_font_t * font, hb_buffer_serialize_format_t format, hb_buffer_serialize_flags_t flags) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1021,7 +1061,7 @@ internal static UInt32 hb_buffer_serialize (hb_buffer_t buffer, UInt32 start, UI (hb_buffer_serialize_delegate ??= GetSymbol ("hb_buffer_serialize")).Invoke (buffer, start, end, buf, buf_size, buf_consumed, font, format, flags); #endif - // extern hb_buffer_serialize_format_t hb_buffer_serialize_format_from_string(const char* str, int len) + // extern hb_buffer_serialize_format_t hb_buffer_serialize_format_from_string(char const * str, int len) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1040,7 +1080,7 @@ internal static SerializeFormat hb_buffer_serialize_format_from_string (/* char (hb_buffer_serialize_format_from_string_delegate ??= GetSymbol ("hb_buffer_serialize_format_from_string")).Invoke (str, len); #endif - // extern const char* hb_buffer_serialize_format_to_string(hb_buffer_serialize_format_t format) + // extern char const * hb_buffer_serialize_format_to_string(hb_buffer_serialize_format_t format) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1059,7 +1099,7 @@ private partial class Delegates { (hb_buffer_serialize_format_to_string_delegate ??= GetSymbol ("hb_buffer_serialize_format_to_string")).Invoke (format); #endif - // extern unsigned int hb_buffer_serialize_glyphs(hb_buffer_t* buffer, unsigned int start, unsigned int end, char* buf, unsigned int buf_size, unsigned int* buf_consumed, hb_font_t* font, hb_buffer_serialize_format_t format, hb_buffer_serialize_flags_t flags) + // extern unsigned int hb_buffer_serialize_glyphs(hb_buffer_t * buffer, unsigned int start, unsigned int end, char * buf, unsigned int buf_size, unsigned int * buf_consumed, hb_font_t * font, hb_buffer_serialize_format_t format, hb_buffer_serialize_flags_t flags) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1078,7 +1118,7 @@ internal static UInt32 hb_buffer_serialize_glyphs (hb_buffer_t buffer, UInt32 st (hb_buffer_serialize_glyphs_delegate ??= GetSymbol ("hb_buffer_serialize_glyphs")).Invoke (buffer, start, end, buf, buf_size, buf_consumed, font, format, flags); #endif - // extern const char** hb_buffer_serialize_list_formats() + // extern char const * * hb_buffer_serialize_list_formats() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1097,7 +1137,7 @@ private partial class Delegates { (hb_buffer_serialize_list_formats_delegate ??= GetSymbol ("hb_buffer_serialize_list_formats")).Invoke (); #endif - // extern unsigned int hb_buffer_serialize_unicode(hb_buffer_t* buffer, unsigned int start, unsigned int end, char* buf, unsigned int buf_size, unsigned int* buf_consumed, hb_buffer_serialize_format_t format, hb_buffer_serialize_flags_t flags) + // extern unsigned int hb_buffer_serialize_unicode(hb_buffer_t * buffer, unsigned int start, unsigned int end, char * buf, unsigned int buf_size, unsigned int * buf_consumed, hb_buffer_serialize_format_t format, hb_buffer_serialize_flags_t flags) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1116,7 +1156,7 @@ internal static UInt32 hb_buffer_serialize_unicode (hb_buffer_t buffer, UInt32 s (hb_buffer_serialize_unicode_delegate ??= GetSymbol ("hb_buffer_serialize_unicode")).Invoke (buffer, start, end, buf, buf_size, buf_consumed, format, flags); #endif - // extern void hb_buffer_set_cluster_level(hb_buffer_t* buffer, hb_buffer_cluster_level_t cluster_level) + // extern void hb_buffer_set_cluster_level(hb_buffer_t * buffer, hb_buffer_cluster_level_t cluster_level) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1135,7 +1175,7 @@ internal static void hb_buffer_set_cluster_level (hb_buffer_t buffer, ClusterLev (hb_buffer_set_cluster_level_delegate ??= GetSymbol ("hb_buffer_set_cluster_level")).Invoke (buffer, cluster_level); #endif - // extern void hb_buffer_set_content_type(hb_buffer_t* buffer, hb_buffer_content_type_t content_type) + // extern void hb_buffer_set_content_type(hb_buffer_t * buffer, hb_buffer_content_type_t content_type) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1154,7 +1194,7 @@ internal static void hb_buffer_set_content_type (hb_buffer_t buffer, ContentType (hb_buffer_set_content_type_delegate ??= GetSymbol ("hb_buffer_set_content_type")).Invoke (buffer, content_type); #endif - // extern void hb_buffer_set_direction(hb_buffer_t* buffer, hb_direction_t direction) + // extern void hb_buffer_set_direction(hb_buffer_t * buffer, hb_direction_t direction) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1173,7 +1213,7 @@ internal static void hb_buffer_set_direction (hb_buffer_t buffer, Direction dire (hb_buffer_set_direction_delegate ??= GetSymbol ("hb_buffer_set_direction")).Invoke (buffer, direction); #endif - // extern void hb_buffer_set_flags(hb_buffer_t* buffer, hb_buffer_flags_t flags) + // extern void hb_buffer_set_flags(hb_buffer_t * buffer, hb_buffer_flags_t flags) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1192,7 +1232,7 @@ internal static void hb_buffer_set_flags (hb_buffer_t buffer, BufferFlags flags) (hb_buffer_set_flags_delegate ??= GetSymbol ("hb_buffer_set_flags")).Invoke (buffer, flags); #endif - // extern void hb_buffer_set_invisible_glyph(hb_buffer_t* buffer, hb_codepoint_t invisible) + // extern void hb_buffer_set_invisible_glyph(hb_buffer_t * buffer, hb_codepoint_t invisible) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1211,7 +1251,7 @@ internal static void hb_buffer_set_invisible_glyph (hb_buffer_t buffer, UInt32 i (hb_buffer_set_invisible_glyph_delegate ??= GetSymbol ("hb_buffer_set_invisible_glyph")).Invoke (buffer, invisible); #endif - // extern void hb_buffer_set_language(hb_buffer_t* buffer, hb_language_t language) + // extern void hb_buffer_set_language(hb_buffer_t * buffer, hb_language_t language) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1230,7 +1270,7 @@ internal static void hb_buffer_set_language (hb_buffer_t buffer, IntPtr language (hb_buffer_set_language_delegate ??= GetSymbol ("hb_buffer_set_language")).Invoke (buffer, language); #endif - // extern hb_bool_t hb_buffer_set_length(hb_buffer_t* buffer, unsigned int length) + // extern hb_bool_t hb_buffer_set_length(hb_buffer_t * buffer, unsigned int length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1252,7 +1292,7 @@ internal static bool hb_buffer_set_length (hb_buffer_t buffer, UInt32 length) => (hb_buffer_set_length_delegate ??= GetSymbol ("hb_buffer_set_length")).Invoke (buffer, length); #endif - // extern void hb_buffer_set_message_func(hb_buffer_t* buffer, hb_buffer_message_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_buffer_set_message_func(hb_buffer_t * buffer, hb_buffer_message_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1271,7 +1311,26 @@ internal static void hb_buffer_set_message_func (hb_buffer_t buffer, BufferMessa (hb_buffer_set_message_func_delegate ??= GetSymbol ("hb_buffer_set_message_func")).Invoke (buffer, func, user_data, destroy); #endif - // extern void hb_buffer_set_replacement_codepoint(hb_buffer_t* buffer, hb_codepoint_t replacement) + // extern void hb_buffer_set_not_found_glyph(hb_buffer_t * buffer, hb_codepoint_t not_found) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_buffer_set_not_found_glyph (hb_buffer_t buffer, UInt32 not_found); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_buffer_set_not_found_glyph (hb_buffer_t buffer, UInt32 not_found); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_buffer_set_not_found_glyph (hb_buffer_t buffer, UInt32 not_found); + } + private static Delegates.hb_buffer_set_not_found_glyph hb_buffer_set_not_found_glyph_delegate; + internal static void hb_buffer_set_not_found_glyph (hb_buffer_t buffer, UInt32 not_found) => + (hb_buffer_set_not_found_glyph_delegate ??= GetSymbol ("hb_buffer_set_not_found_glyph")).Invoke (buffer, not_found); + #endif + + // extern void hb_buffer_set_replacement_codepoint(hb_buffer_t * buffer, hb_codepoint_t replacement) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1290,7 +1349,7 @@ internal static void hb_buffer_set_replacement_codepoint (hb_buffer_t buffer, UI (hb_buffer_set_replacement_codepoint_delegate ??= GetSymbol ("hb_buffer_set_replacement_codepoint")).Invoke (buffer, replacement); #endif - // extern void hb_buffer_set_script(hb_buffer_t* buffer, hb_script_t script) + // extern void hb_buffer_set_script(hb_buffer_t * buffer, hb_script_t script) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1309,7 +1368,7 @@ internal static void hb_buffer_set_script (hb_buffer_t buffer, UInt32 script) => (hb_buffer_set_script_delegate ??= GetSymbol ("hb_buffer_set_script")).Invoke (buffer, script); #endif - // extern void hb_buffer_set_unicode_funcs(hb_buffer_t* buffer, hb_unicode_funcs_t* unicode_funcs) + // extern void hb_buffer_set_unicode_funcs(hb_buffer_t * buffer, hb_unicode_funcs_t * unicode_funcs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1328,7 +1387,7 @@ internal static void hb_buffer_set_unicode_funcs (hb_buffer_t buffer, hb_unicode (hb_buffer_set_unicode_funcs_delegate ??= GetSymbol ("hb_buffer_set_unicode_funcs")).Invoke (buffer, unicode_funcs); #endif - // extern hb_glyph_flags_t hb_glyph_info_get_glyph_flags(const hb_glyph_info_t* info) + // extern hb_glyph_flags_t hb_glyph_info_get_glyph_flags(hb_glyph_info_t const * info) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1351,7 +1410,7 @@ internal static GlyphFlags hb_glyph_info_get_glyph_flags (GlyphInfo* info) => #region hb-common.h - // extern uint8_t hb_color_get_alpha(hb_color_t color) + // extern unsigned char hb_color_get_alpha(hb_color_t color) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1370,7 +1429,7 @@ internal static Byte hb_color_get_alpha (UInt32 color) => (hb_color_get_alpha_delegate ??= GetSymbol ("hb_color_get_alpha")).Invoke (color); #endif - // extern uint8_t hb_color_get_blue(hb_color_t color) + // extern unsigned char hb_color_get_blue(hb_color_t color) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1389,7 +1448,7 @@ internal static Byte hb_color_get_blue (UInt32 color) => (hb_color_get_blue_delegate ??= GetSymbol ("hb_color_get_blue")).Invoke (color); #endif - // extern uint8_t hb_color_get_green(hb_color_t color) + // extern unsigned char hb_color_get_green(hb_color_t color) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1408,7 +1467,7 @@ internal static Byte hb_color_get_green (UInt32 color) => (hb_color_get_green_delegate ??= GetSymbol ("hb_color_get_green")).Invoke (color); #endif - // extern uint8_t hb_color_get_red(hb_color_t color) + // extern unsigned char hb_color_get_red(hb_color_t color) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1427,7 +1486,7 @@ internal static Byte hb_color_get_red (UInt32 color) => (hb_color_get_red_delegate ??= GetSymbol ("hb_color_get_red")).Invoke (color); #endif - // extern hb_direction_t hb_direction_from_string(const char* str, int len) + // extern hb_direction_t hb_direction_from_string(char const * str, int len) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1446,7 +1505,7 @@ internal static Direction hb_direction_from_string (/* char */ void* str, Int32 (hb_direction_from_string_delegate ??= GetSymbol ("hb_direction_from_string")).Invoke (str, len); #endif - // extern const char* hb_direction_to_string(hb_direction_t direction) + // extern char const * hb_direction_to_string(hb_direction_t direction) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1465,7 +1524,7 @@ private partial class Delegates { (hb_direction_to_string_delegate ??= GetSymbol ("hb_direction_to_string")).Invoke (direction); #endif - // extern hb_bool_t hb_feature_from_string(const char* str, int len, hb_feature_t* feature) + // extern hb_bool_t hb_feature_from_string(char const * str, int len, hb_feature_t * feature) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1487,7 +1546,7 @@ internal static bool hb_feature_from_string ([MarshalAs (UnmanagedType.LPStr)] S (hb_feature_from_string_delegate ??= GetSymbol ("hb_feature_from_string")).Invoke (str, len, feature); #endif - // extern void hb_feature_to_string(hb_feature_t* feature, char* buf, unsigned int size) + // extern void hb_feature_to_string(hb_feature_t * feature, char * buf, unsigned int size) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1506,7 +1565,7 @@ internal static void hb_feature_to_string (Feature* feature, /* char */ void* bu (hb_feature_to_string_delegate ??= GetSymbol ("hb_feature_to_string")).Invoke (feature, buf, size); #endif - // extern hb_language_t hb_language_from_string(const char* str, int len) + // extern hb_language_t hb_language_from_string(char const * str, int len) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1544,7 +1603,29 @@ internal static IntPtr hb_language_get_default () => (hb_language_get_default_delegate ??= GetSymbol ("hb_language_get_default")).Invoke (); #endif - // extern const char* hb_language_to_string(hb_language_t language) + // extern hb_bool_t hb_language_matches(hb_language_t language, hb_language_t specific) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + [return: MarshalAs (UnmanagedType.I1)] + internal static partial bool hb_language_matches (IntPtr language, IntPtr specific); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal static extern bool hb_language_matches (IntPtr language, IntPtr specific); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal delegate bool hb_language_matches (IntPtr language, IntPtr specific); + } + private static Delegates.hb_language_matches hb_language_matches_delegate; + internal static bool hb_language_matches (IntPtr language, IntPtr specific) => + (hb_language_matches_delegate ??= GetSymbol ("hb_language_matches")).Invoke (language, specific); + #endif + + // extern char const * hb_language_to_string(hb_language_t language) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1582,7 +1663,7 @@ internal static UInt32 hb_script_from_iso15924_tag (UInt32 tag) => (hb_script_from_iso15924_tag_delegate ??= GetSymbol ("hb_script_from_iso15924_tag")).Invoke (tag); #endif - // extern hb_script_t hb_script_from_string(const char* str, int len) + // extern hb_script_t hb_script_from_string(char const * str, int len) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1639,7 +1720,7 @@ internal static UInt32 hb_script_to_iso15924_tag (UInt32 script) => (hb_script_to_iso15924_tag_delegate ??= GetSymbol ("hb_script_to_iso15924_tag")).Invoke (script); #endif - // extern hb_tag_t hb_tag_from_string(const char* str, int len) + // extern hb_tag_t hb_tag_from_string(char const * str, int len) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1658,7 +1739,7 @@ internal static UInt32 hb_tag_from_string (/* char */ void* str, Int32 len) => (hb_tag_from_string_delegate ??= GetSymbol ("hb_tag_from_string")).Invoke (str, len); #endif - // extern void hb_tag_to_string(hb_tag_t tag, char* buf) + // extern void hb_tag_to_string(hb_tag_t tag, char * buf) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1677,7 +1758,7 @@ internal static void hb_tag_to_string (UInt32 tag, /* char */ void* buf) => (hb_tag_to_string_delegate ??= GetSymbol ("hb_tag_to_string")).Invoke (tag, buf); #endif - // extern hb_bool_t hb_variation_from_string(const char* str, int len, hb_variation_t* variation) + // extern hb_bool_t hb_variation_from_string(char const * str, int len, hb_variation_t * variation) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1699,7 +1780,7 @@ internal static bool hb_variation_from_string (/* char */ void* str, Int32 len, (hb_variation_from_string_delegate ??= GetSymbol ("hb_variation_from_string")).Invoke (str, len, variation); #endif - // extern void hb_variation_to_string(hb_variation_t* variation, char* buf, unsigned int size) + // extern void hb_variation_to_string(hb_variation_t * variation, char * buf, unsigned int size) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -1720,482 +1801,850 @@ internal static void hb_variation_to_string (Variation* variation, /* char */ vo #endregion - #region hb-face.h + #region hb-draw.h - // extern hb_bool_t hb_face_builder_add_table(hb_face_t* face, hb_tag_t tag, hb_blob_t* blob) + // extern void hb_draw_close_path(hb_draw_funcs_t * dfuncs, void * draw_data, hb_draw_state_t * st) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - [return: MarshalAs (UnmanagedType.I1)] - internal static partial bool hb_face_builder_add_table (hb_face_t face, UInt32 tag, hb_blob_t blob); + internal static partial void hb_draw_close_path (hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs (UnmanagedType.I1)] - internal static extern bool hb_face_builder_add_table (hb_face_t face, UInt32 tag, hb_blob_t blob); + internal static extern void hb_draw_close_path (hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - [return: MarshalAs (UnmanagedType.I1)] - internal delegate bool hb_face_builder_add_table (hb_face_t face, UInt32 tag, hb_blob_t blob); + internal delegate void hb_draw_close_path (hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st); } - private static Delegates.hb_face_builder_add_table hb_face_builder_add_table_delegate; - internal static bool hb_face_builder_add_table (hb_face_t face, UInt32 tag, hb_blob_t blob) => - (hb_face_builder_add_table_delegate ??= GetSymbol ("hb_face_builder_add_table")).Invoke (face, tag, blob); + private static Delegates.hb_draw_close_path hb_draw_close_path_delegate; + internal static void hb_draw_close_path (hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st) => + (hb_draw_close_path_delegate ??= GetSymbol ("hb_draw_close_path")).Invoke (dfuncs, draw_data, st); #endif - // extern hb_face_t* hb_face_builder_create() + // extern void hb_draw_cubic_to(hb_draw_funcs_t * dfuncs, void * draw_data, hb_draw_state_t * st, float control1_x, float control1_y, float control2_x, float control2_y, float to_x, float to_y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial hb_face_t hb_face_builder_create (); + internal static partial void hb_draw_cubic_to (hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st, Single control1_x, Single control1_y, Single control2_x, Single control2_y, Single to_x, Single to_y); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern hb_face_t hb_face_builder_create (); + internal static extern void hb_draw_cubic_to (hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st, Single control1_x, Single control1_y, Single control2_x, Single control2_y, Single to_x, Single to_y); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate hb_face_t hb_face_builder_create (); + internal delegate void hb_draw_cubic_to (hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st, Single control1_x, Single control1_y, Single control2_x, Single control2_y, Single to_x, Single to_y); } - private static Delegates.hb_face_builder_create hb_face_builder_create_delegate; - internal static hb_face_t hb_face_builder_create () => - (hb_face_builder_create_delegate ??= GetSymbol ("hb_face_builder_create")).Invoke (); + private static Delegates.hb_draw_cubic_to hb_draw_cubic_to_delegate; + internal static void hb_draw_cubic_to (hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st, Single control1_x, Single control1_y, Single control2_x, Single control2_y, Single to_x, Single to_y) => + (hb_draw_cubic_to_delegate ??= GetSymbol ("hb_draw_cubic_to")).Invoke (dfuncs, draw_data, st, control1_x, control1_y, control2_x, control2_y, to_x, to_y); #endif - // extern void hb_face_collect_unicodes(hb_face_t* face, hb_set_t* out) + // extern hb_draw_funcs_t * hb_draw_funcs_create() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial void hb_face_collect_unicodes (hb_face_t face, hb_set_t @out); + internal static partial hb_draw_funcs_t hb_draw_funcs_create (); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern void hb_face_collect_unicodes (hb_face_t face, hb_set_t @out); + internal static extern hb_draw_funcs_t hb_draw_funcs_create (); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate void hb_face_collect_unicodes (hb_face_t face, hb_set_t @out); + internal delegate hb_draw_funcs_t hb_draw_funcs_create (); } - private static Delegates.hb_face_collect_unicodes hb_face_collect_unicodes_delegate; - internal static void hb_face_collect_unicodes (hb_face_t face, hb_set_t @out) => - (hb_face_collect_unicodes_delegate ??= GetSymbol ("hb_face_collect_unicodes")).Invoke (face, @out); + private static Delegates.hb_draw_funcs_create hb_draw_funcs_create_delegate; + internal static hb_draw_funcs_t hb_draw_funcs_create () => + (hb_draw_funcs_create_delegate ??= GetSymbol ("hb_draw_funcs_create")).Invoke (); #endif - // extern void hb_face_collect_variation_selectors(hb_face_t* face, hb_set_t* out) + // extern void hb_draw_funcs_destroy(hb_draw_funcs_t * dfuncs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial void hb_face_collect_variation_selectors (hb_face_t face, hb_set_t @out); + internal static partial void hb_draw_funcs_destroy (hb_draw_funcs_t dfuncs); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern void hb_face_collect_variation_selectors (hb_face_t face, hb_set_t @out); + internal static extern void hb_draw_funcs_destroy (hb_draw_funcs_t dfuncs); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate void hb_face_collect_variation_selectors (hb_face_t face, hb_set_t @out); + internal delegate void hb_draw_funcs_destroy (hb_draw_funcs_t dfuncs); } - private static Delegates.hb_face_collect_variation_selectors hb_face_collect_variation_selectors_delegate; - internal static void hb_face_collect_variation_selectors (hb_face_t face, hb_set_t @out) => - (hb_face_collect_variation_selectors_delegate ??= GetSymbol ("hb_face_collect_variation_selectors")).Invoke (face, @out); + private static Delegates.hb_draw_funcs_destroy hb_draw_funcs_destroy_delegate; + internal static void hb_draw_funcs_destroy (hb_draw_funcs_t dfuncs) => + (hb_draw_funcs_destroy_delegate ??= GetSymbol ("hb_draw_funcs_destroy")).Invoke (dfuncs); #endif - // extern void hb_face_collect_variation_unicodes(hb_face_t* face, hb_codepoint_t variation_selector, hb_set_t* out) + // extern hb_draw_funcs_t * hb_draw_funcs_get_empty() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial void hb_face_collect_variation_unicodes (hb_face_t face, UInt32 variation_selector, hb_set_t @out); + internal static partial hb_draw_funcs_t hb_draw_funcs_get_empty (); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern void hb_face_collect_variation_unicodes (hb_face_t face, UInt32 variation_selector, hb_set_t @out); + internal static extern hb_draw_funcs_t hb_draw_funcs_get_empty (); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate void hb_face_collect_variation_unicodes (hb_face_t face, UInt32 variation_selector, hb_set_t @out); + internal delegate hb_draw_funcs_t hb_draw_funcs_get_empty (); } - private static Delegates.hb_face_collect_variation_unicodes hb_face_collect_variation_unicodes_delegate; - internal static void hb_face_collect_variation_unicodes (hb_face_t face, UInt32 variation_selector, hb_set_t @out) => - (hb_face_collect_variation_unicodes_delegate ??= GetSymbol ("hb_face_collect_variation_unicodes")).Invoke (face, variation_selector, @out); + private static Delegates.hb_draw_funcs_get_empty hb_draw_funcs_get_empty_delegate; + internal static hb_draw_funcs_t hb_draw_funcs_get_empty () => + (hb_draw_funcs_get_empty_delegate ??= GetSymbol ("hb_draw_funcs_get_empty")).Invoke (); #endif - // extern unsigned int hb_face_count(hb_blob_t* blob) + // extern hb_bool_t hb_draw_funcs_is_immutable(hb_draw_funcs_t * dfuncs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial UInt32 hb_face_count (hb_blob_t blob); + [return: MarshalAs (UnmanagedType.I1)] + internal static partial bool hb_draw_funcs_is_immutable (hb_draw_funcs_t dfuncs); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern UInt32 hb_face_count (hb_blob_t blob); + [return: MarshalAs (UnmanagedType.I1)] + internal static extern bool hb_draw_funcs_is_immutable (hb_draw_funcs_t dfuncs); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate UInt32 hb_face_count (hb_blob_t blob); + [return: MarshalAs (UnmanagedType.I1)] + internal delegate bool hb_draw_funcs_is_immutable (hb_draw_funcs_t dfuncs); } - private static Delegates.hb_face_count hb_face_count_delegate; - internal static UInt32 hb_face_count (hb_blob_t blob) => - (hb_face_count_delegate ??= GetSymbol ("hb_face_count")).Invoke (blob); + private static Delegates.hb_draw_funcs_is_immutable hb_draw_funcs_is_immutable_delegate; + internal static bool hb_draw_funcs_is_immutable (hb_draw_funcs_t dfuncs) => + (hb_draw_funcs_is_immutable_delegate ??= GetSymbol ("hb_draw_funcs_is_immutable")).Invoke (dfuncs); #endif - // extern hb_face_t* hb_face_create(hb_blob_t* blob, unsigned int index) + // extern void hb_draw_funcs_make_immutable(hb_draw_funcs_t * dfuncs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial hb_face_t hb_face_create (hb_blob_t blob, UInt32 index); + internal static partial void hb_draw_funcs_make_immutable (hb_draw_funcs_t dfuncs); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern hb_face_t hb_face_create (hb_blob_t blob, UInt32 index); + internal static extern void hb_draw_funcs_make_immutable (hb_draw_funcs_t dfuncs); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate hb_face_t hb_face_create (hb_blob_t blob, UInt32 index); + internal delegate void hb_draw_funcs_make_immutable (hb_draw_funcs_t dfuncs); } - private static Delegates.hb_face_create hb_face_create_delegate; - internal static hb_face_t hb_face_create (hb_blob_t blob, UInt32 index) => - (hb_face_create_delegate ??= GetSymbol ("hb_face_create")).Invoke (blob, index); + private static Delegates.hb_draw_funcs_make_immutable hb_draw_funcs_make_immutable_delegate; + internal static void hb_draw_funcs_make_immutable (hb_draw_funcs_t dfuncs) => + (hb_draw_funcs_make_immutable_delegate ??= GetSymbol ("hb_draw_funcs_make_immutable")).Invoke (dfuncs); #endif - // extern hb_face_t* hb_face_create_for_tables(hb_reference_table_func_t reference_table_func, void* user_data, hb_destroy_func_t destroy) + // extern hb_draw_funcs_t * hb_draw_funcs_reference(hb_draw_funcs_t * dfuncs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial hb_face_t hb_face_create_for_tables (void* reference_table_func, void* user_data, void* destroy); + internal static partial hb_draw_funcs_t hb_draw_funcs_reference (hb_draw_funcs_t dfuncs); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern hb_face_t hb_face_create_for_tables (ReferenceTableProxyDelegate reference_table_func, void* user_data, DestroyProxyDelegate destroy); + internal static extern hb_draw_funcs_t hb_draw_funcs_reference (hb_draw_funcs_t dfuncs); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate hb_face_t hb_face_create_for_tables (ReferenceTableProxyDelegate reference_table_func, void* user_data, DestroyProxyDelegate destroy); + internal delegate hb_draw_funcs_t hb_draw_funcs_reference (hb_draw_funcs_t dfuncs); } - private static Delegates.hb_face_create_for_tables hb_face_create_for_tables_delegate; - internal static hb_face_t hb_face_create_for_tables (ReferenceTableProxyDelegate reference_table_func, void* user_data, DestroyProxyDelegate destroy) => - (hb_face_create_for_tables_delegate ??= GetSymbol ("hb_face_create_for_tables")).Invoke (reference_table_func, user_data, destroy); + private static Delegates.hb_draw_funcs_reference hb_draw_funcs_reference_delegate; + internal static hb_draw_funcs_t hb_draw_funcs_reference (hb_draw_funcs_t dfuncs) => + (hb_draw_funcs_reference_delegate ??= GetSymbol ("hb_draw_funcs_reference")).Invoke (dfuncs); #endif - // extern void hb_face_destroy(hb_face_t* face) + // extern void hb_draw_funcs_set_close_path_func(hb_draw_funcs_t * dfuncs, hb_draw_close_path_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial void hb_face_destroy (hb_face_t face); + internal static partial void hb_draw_funcs_set_close_path_func (hb_draw_funcs_t dfuncs, void* func, void* user_data, void* destroy); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern void hb_face_destroy (hb_face_t face); + internal static extern void hb_draw_funcs_set_close_path_func (hb_draw_funcs_t dfuncs, DrawClosePathProxyDelegate func, void* user_data, DestroyProxyDelegate destroy); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate void hb_face_destroy (hb_face_t face); + internal delegate void hb_draw_funcs_set_close_path_func (hb_draw_funcs_t dfuncs, DrawClosePathProxyDelegate func, void* user_data, DestroyProxyDelegate destroy); } - private static Delegates.hb_face_destroy hb_face_destroy_delegate; - internal static void hb_face_destroy (hb_face_t face) => - (hb_face_destroy_delegate ??= GetSymbol ("hb_face_destroy")).Invoke (face); + private static Delegates.hb_draw_funcs_set_close_path_func hb_draw_funcs_set_close_path_func_delegate; + internal static void hb_draw_funcs_set_close_path_func (hb_draw_funcs_t dfuncs, DrawClosePathProxyDelegate func, void* user_data, DestroyProxyDelegate destroy) => + (hb_draw_funcs_set_close_path_func_delegate ??= GetSymbol ("hb_draw_funcs_set_close_path_func")).Invoke (dfuncs, func, user_data, destroy); #endif - // extern hb_face_t* hb_face_get_empty() + // extern void hb_draw_funcs_set_cubic_to_func(hb_draw_funcs_t * dfuncs, hb_draw_cubic_to_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial hb_face_t hb_face_get_empty (); + internal static partial void hb_draw_funcs_set_cubic_to_func (hb_draw_funcs_t dfuncs, void* func, void* user_data, void* destroy); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern hb_face_t hb_face_get_empty (); + internal static extern void hb_draw_funcs_set_cubic_to_func (hb_draw_funcs_t dfuncs, DrawCubicToProxyDelegate func, void* user_data, DestroyProxyDelegate destroy); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate hb_face_t hb_face_get_empty (); + internal delegate void hb_draw_funcs_set_cubic_to_func (hb_draw_funcs_t dfuncs, DrawCubicToProxyDelegate func, void* user_data, DestroyProxyDelegate destroy); } - private static Delegates.hb_face_get_empty hb_face_get_empty_delegate; - internal static hb_face_t hb_face_get_empty () => - (hb_face_get_empty_delegate ??= GetSymbol ("hb_face_get_empty")).Invoke (); + private static Delegates.hb_draw_funcs_set_cubic_to_func hb_draw_funcs_set_cubic_to_func_delegate; + internal static void hb_draw_funcs_set_cubic_to_func (hb_draw_funcs_t dfuncs, DrawCubicToProxyDelegate func, void* user_data, DestroyProxyDelegate destroy) => + (hb_draw_funcs_set_cubic_to_func_delegate ??= GetSymbol ("hb_draw_funcs_set_cubic_to_func")).Invoke (dfuncs, func, user_data, destroy); #endif - // extern unsigned int hb_face_get_glyph_count(const hb_face_t* face) + // extern void hb_draw_funcs_set_line_to_func(hb_draw_funcs_t * dfuncs, hb_draw_line_to_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial UInt32 hb_face_get_glyph_count (hb_face_t face); + internal static partial void hb_draw_funcs_set_line_to_func (hb_draw_funcs_t dfuncs, void* func, void* user_data, void* destroy); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern UInt32 hb_face_get_glyph_count (hb_face_t face); + internal static extern void hb_draw_funcs_set_line_to_func (hb_draw_funcs_t dfuncs, DrawLineToProxyDelegate func, void* user_data, DestroyProxyDelegate destroy); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate UInt32 hb_face_get_glyph_count (hb_face_t face); + internal delegate void hb_draw_funcs_set_line_to_func (hb_draw_funcs_t dfuncs, DrawLineToProxyDelegate func, void* user_data, DestroyProxyDelegate destroy); } - private static Delegates.hb_face_get_glyph_count hb_face_get_glyph_count_delegate; - internal static UInt32 hb_face_get_glyph_count (hb_face_t face) => - (hb_face_get_glyph_count_delegate ??= GetSymbol ("hb_face_get_glyph_count")).Invoke (face); + private static Delegates.hb_draw_funcs_set_line_to_func hb_draw_funcs_set_line_to_func_delegate; + internal static void hb_draw_funcs_set_line_to_func (hb_draw_funcs_t dfuncs, DrawLineToProxyDelegate func, void* user_data, DestroyProxyDelegate destroy) => + (hb_draw_funcs_set_line_to_func_delegate ??= GetSymbol ("hb_draw_funcs_set_line_to_func")).Invoke (dfuncs, func, user_data, destroy); #endif - // extern unsigned int hb_face_get_index(const hb_face_t* face) + // extern void hb_draw_funcs_set_move_to_func(hb_draw_funcs_t * dfuncs, hb_draw_move_to_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial UInt32 hb_face_get_index (hb_face_t face); + internal static partial void hb_draw_funcs_set_move_to_func (hb_draw_funcs_t dfuncs, void* func, void* user_data, void* destroy); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern UInt32 hb_face_get_index (hb_face_t face); + internal static extern void hb_draw_funcs_set_move_to_func (hb_draw_funcs_t dfuncs, DrawMoveToProxyDelegate func, void* user_data, DestroyProxyDelegate destroy); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate UInt32 hb_face_get_index (hb_face_t face); + internal delegate void hb_draw_funcs_set_move_to_func (hb_draw_funcs_t dfuncs, DrawMoveToProxyDelegate func, void* user_data, DestroyProxyDelegate destroy); } - private static Delegates.hb_face_get_index hb_face_get_index_delegate; - internal static UInt32 hb_face_get_index (hb_face_t face) => - (hb_face_get_index_delegate ??= GetSymbol ("hb_face_get_index")).Invoke (face); + private static Delegates.hb_draw_funcs_set_move_to_func hb_draw_funcs_set_move_to_func_delegate; + internal static void hb_draw_funcs_set_move_to_func (hb_draw_funcs_t dfuncs, DrawMoveToProxyDelegate func, void* user_data, DestroyProxyDelegate destroy) => + (hb_draw_funcs_set_move_to_func_delegate ??= GetSymbol ("hb_draw_funcs_set_move_to_func")).Invoke (dfuncs, func, user_data, destroy); #endif - // extern unsigned int hb_face_get_table_tags(const hb_face_t* face, unsigned int start_offset, unsigned int* table_count, hb_tag_t* table_tags) + // extern void hb_draw_funcs_set_quadratic_to_func(hb_draw_funcs_t * dfuncs, hb_draw_quadratic_to_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial UInt32 hb_face_get_table_tags (hb_face_t face, UInt32 start_offset, UInt32* table_count, UInt32* table_tags); + internal static partial void hb_draw_funcs_set_quadratic_to_func (hb_draw_funcs_t dfuncs, void* func, void* user_data, void* destroy); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern UInt32 hb_face_get_table_tags (hb_face_t face, UInt32 start_offset, UInt32* table_count, UInt32* table_tags); + internal static extern void hb_draw_funcs_set_quadratic_to_func (hb_draw_funcs_t dfuncs, DrawQuadraticToProxyDelegate func, void* user_data, DestroyProxyDelegate destroy); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate UInt32 hb_face_get_table_tags (hb_face_t face, UInt32 start_offset, UInt32* table_count, UInt32* table_tags); + internal delegate void hb_draw_funcs_set_quadratic_to_func (hb_draw_funcs_t dfuncs, DrawQuadraticToProxyDelegate func, void* user_data, DestroyProxyDelegate destroy); } - private static Delegates.hb_face_get_table_tags hb_face_get_table_tags_delegate; - internal static UInt32 hb_face_get_table_tags (hb_face_t face, UInt32 start_offset, UInt32* table_count, UInt32* table_tags) => - (hb_face_get_table_tags_delegate ??= GetSymbol ("hb_face_get_table_tags")).Invoke (face, start_offset, table_count, table_tags); + private static Delegates.hb_draw_funcs_set_quadratic_to_func hb_draw_funcs_set_quadratic_to_func_delegate; + internal static void hb_draw_funcs_set_quadratic_to_func (hb_draw_funcs_t dfuncs, DrawQuadraticToProxyDelegate func, void* user_data, DestroyProxyDelegate destroy) => + (hb_draw_funcs_set_quadratic_to_func_delegate ??= GetSymbol ("hb_draw_funcs_set_quadratic_to_func")).Invoke (dfuncs, func, user_data, destroy); #endif - // extern unsigned int hb_face_get_upem(const hb_face_t* face) + // extern void hb_draw_line_to(hb_draw_funcs_t * dfuncs, void * draw_data, hb_draw_state_t * st, float to_x, float to_y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial UInt32 hb_face_get_upem (hb_face_t face); + internal static partial void hb_draw_line_to (hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st, Single to_x, Single to_y); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern UInt32 hb_face_get_upem (hb_face_t face); + internal static extern void hb_draw_line_to (hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st, Single to_x, Single to_y); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate UInt32 hb_face_get_upem (hb_face_t face); + internal delegate void hb_draw_line_to (hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st, Single to_x, Single to_y); } - private static Delegates.hb_face_get_upem hb_face_get_upem_delegate; - internal static UInt32 hb_face_get_upem (hb_face_t face) => - (hb_face_get_upem_delegate ??= GetSymbol ("hb_face_get_upem")).Invoke (face); + private static Delegates.hb_draw_line_to hb_draw_line_to_delegate; + internal static void hb_draw_line_to (hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st, Single to_x, Single to_y) => + (hb_draw_line_to_delegate ??= GetSymbol ("hb_draw_line_to")).Invoke (dfuncs, draw_data, st, to_x, to_y); #endif - // extern hb_bool_t hb_face_is_immutable(const hb_face_t* face) + // extern void hb_draw_move_to(hb_draw_funcs_t * dfuncs, void * draw_data, hb_draw_state_t * st, float to_x, float to_y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - [return: MarshalAs (UnmanagedType.I1)] - internal static partial bool hb_face_is_immutable (hb_face_t face); + internal static partial void hb_draw_move_to (hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st, Single to_x, Single to_y); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - [return: MarshalAs (UnmanagedType.I1)] - internal static extern bool hb_face_is_immutable (hb_face_t face); + internal static extern void hb_draw_move_to (hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st, Single to_x, Single to_y); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - [return: MarshalAs (UnmanagedType.I1)] - internal delegate bool hb_face_is_immutable (hb_face_t face); + internal delegate void hb_draw_move_to (hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st, Single to_x, Single to_y); } - private static Delegates.hb_face_is_immutable hb_face_is_immutable_delegate; - internal static bool hb_face_is_immutable (hb_face_t face) => - (hb_face_is_immutable_delegate ??= GetSymbol ("hb_face_is_immutable")).Invoke (face); + private static Delegates.hb_draw_move_to hb_draw_move_to_delegate; + internal static void hb_draw_move_to (hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st, Single to_x, Single to_y) => + (hb_draw_move_to_delegate ??= GetSymbol ("hb_draw_move_to")).Invoke (dfuncs, draw_data, st, to_x, to_y); #endif - // extern void hb_face_make_immutable(hb_face_t* face) + // extern void hb_draw_quadratic_to(hb_draw_funcs_t * dfuncs, void * draw_data, hb_draw_state_t * st, float control_x, float control_y, float to_x, float to_y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial void hb_face_make_immutable (hb_face_t face); + internal static partial void hb_draw_quadratic_to (hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st, Single control_x, Single control_y, Single to_x, Single to_y); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern void hb_face_make_immutable (hb_face_t face); + internal static extern void hb_draw_quadratic_to (hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st, Single control_x, Single control_y, Single to_x, Single to_y); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate void hb_face_make_immutable (hb_face_t face); + internal delegate void hb_draw_quadratic_to (hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st, Single control_x, Single control_y, Single to_x, Single to_y); } - private static Delegates.hb_face_make_immutable hb_face_make_immutable_delegate; - internal static void hb_face_make_immutable (hb_face_t face) => - (hb_face_make_immutable_delegate ??= GetSymbol ("hb_face_make_immutable")).Invoke (face); + private static Delegates.hb_draw_quadratic_to hb_draw_quadratic_to_delegate; + internal static void hb_draw_quadratic_to (hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st, Single control_x, Single control_y, Single to_x, Single to_y) => + (hb_draw_quadratic_to_delegate ??= GetSymbol ("hb_draw_quadratic_to")).Invoke (dfuncs, draw_data, st, control_x, control_y, to_x, to_y); #endif - // extern hb_face_t* hb_face_reference(hb_face_t* face) + #endregion + + #region hb-face.h + + // extern hb_bool_t hb_face_builder_add_table(hb_face_t * face, hb_tag_t tag, hb_blob_t * blob) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial hb_face_t hb_face_reference (hb_face_t face); + [return: MarshalAs (UnmanagedType.I1)] + internal static partial bool hb_face_builder_add_table (hb_face_t face, UInt32 tag, hb_blob_t blob); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern hb_face_t hb_face_reference (hb_face_t face); + [return: MarshalAs (UnmanagedType.I1)] + internal static extern bool hb_face_builder_add_table (hb_face_t face, UInt32 tag, hb_blob_t blob); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate hb_face_t hb_face_reference (hb_face_t face); + [return: MarshalAs (UnmanagedType.I1)] + internal delegate bool hb_face_builder_add_table (hb_face_t face, UInt32 tag, hb_blob_t blob); } - private static Delegates.hb_face_reference hb_face_reference_delegate; - internal static hb_face_t hb_face_reference (hb_face_t face) => - (hb_face_reference_delegate ??= GetSymbol ("hb_face_reference")).Invoke (face); + private static Delegates.hb_face_builder_add_table hb_face_builder_add_table_delegate; + internal static bool hb_face_builder_add_table (hb_face_t face, UInt32 tag, hb_blob_t blob) => + (hb_face_builder_add_table_delegate ??= GetSymbol ("hb_face_builder_add_table")).Invoke (face, tag, blob); #endif - // extern hb_blob_t* hb_face_reference_blob(hb_face_t* face) + // extern hb_face_t * hb_face_builder_create() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial hb_blob_t hb_face_reference_blob (hb_face_t face); + internal static partial hb_face_t hb_face_builder_create (); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern hb_blob_t hb_face_reference_blob (hb_face_t face); + internal static extern hb_face_t hb_face_builder_create (); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate hb_blob_t hb_face_reference_blob (hb_face_t face); + internal delegate hb_face_t hb_face_builder_create (); } - private static Delegates.hb_face_reference_blob hb_face_reference_blob_delegate; - internal static hb_blob_t hb_face_reference_blob (hb_face_t face) => - (hb_face_reference_blob_delegate ??= GetSymbol ("hb_face_reference_blob")).Invoke (face); + private static Delegates.hb_face_builder_create hb_face_builder_create_delegate; + internal static hb_face_t hb_face_builder_create () => + (hb_face_builder_create_delegate ??= GetSymbol ("hb_face_builder_create")).Invoke (); #endif - // extern hb_blob_t* hb_face_reference_table(const hb_face_t* face, hb_tag_t tag) + // extern void hb_face_builder_sort_tables(hb_face_t * face, hb_tag_t const * tags) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial hb_blob_t hb_face_reference_table (hb_face_t face, UInt32 tag); + internal static partial void hb_face_builder_sort_tables (hb_face_t face, UInt32* tags); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern hb_blob_t hb_face_reference_table (hb_face_t face, UInt32 tag); + internal static extern void hb_face_builder_sort_tables (hb_face_t face, UInt32* tags); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate hb_blob_t hb_face_reference_table (hb_face_t face, UInt32 tag); + internal delegate void hb_face_builder_sort_tables (hb_face_t face, UInt32* tags); } - private static Delegates.hb_face_reference_table hb_face_reference_table_delegate; - internal static hb_blob_t hb_face_reference_table (hb_face_t face, UInt32 tag) => - (hb_face_reference_table_delegate ??= GetSymbol ("hb_face_reference_table")).Invoke (face, tag); + private static Delegates.hb_face_builder_sort_tables hb_face_builder_sort_tables_delegate; + internal static void hb_face_builder_sort_tables (hb_face_t face, UInt32* tags) => + (hb_face_builder_sort_tables_delegate ??= GetSymbol ("hb_face_builder_sort_tables")).Invoke (face, tags); #endif - // extern void hb_face_set_glyph_count(hb_face_t* face, unsigned int glyph_count) + // extern void hb_face_collect_nominal_glyph_mapping(hb_face_t * face, hb_map_t * mapping, hb_set_t * unicodes) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial void hb_face_set_glyph_count (hb_face_t face, UInt32 glyph_count); + internal static partial void hb_face_collect_nominal_glyph_mapping (hb_face_t face, hb_map_t mapping, hb_set_t unicodes); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern void hb_face_set_glyph_count (hb_face_t face, UInt32 glyph_count); + internal static extern void hb_face_collect_nominal_glyph_mapping (hb_face_t face, hb_map_t mapping, hb_set_t unicodes); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate void hb_face_set_glyph_count (hb_face_t face, UInt32 glyph_count); + internal delegate void hb_face_collect_nominal_glyph_mapping (hb_face_t face, hb_map_t mapping, hb_set_t unicodes); } - private static Delegates.hb_face_set_glyph_count hb_face_set_glyph_count_delegate; - internal static void hb_face_set_glyph_count (hb_face_t face, UInt32 glyph_count) => - (hb_face_set_glyph_count_delegate ??= GetSymbol ("hb_face_set_glyph_count")).Invoke (face, glyph_count); + private static Delegates.hb_face_collect_nominal_glyph_mapping hb_face_collect_nominal_glyph_mapping_delegate; + internal static void hb_face_collect_nominal_glyph_mapping (hb_face_t face, hb_map_t mapping, hb_set_t unicodes) => + (hb_face_collect_nominal_glyph_mapping_delegate ??= GetSymbol ("hb_face_collect_nominal_glyph_mapping")).Invoke (face, mapping, unicodes); #endif - // extern void hb_face_set_index(hb_face_t* face, unsigned int index) + // extern void hb_face_collect_unicodes(hb_face_t * face, hb_set_t * out) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial void hb_face_set_index (hb_face_t face, UInt32 index); + internal static partial void hb_face_collect_unicodes (hb_face_t face, hb_set_t @out); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern void hb_face_set_index (hb_face_t face, UInt32 index); + internal static extern void hb_face_collect_unicodes (hb_face_t face, hb_set_t @out); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate void hb_face_set_index (hb_face_t face, UInt32 index); + internal delegate void hb_face_collect_unicodes (hb_face_t face, hb_set_t @out); } - private static Delegates.hb_face_set_index hb_face_set_index_delegate; - internal static void hb_face_set_index (hb_face_t face, UInt32 index) => - (hb_face_set_index_delegate ??= GetSymbol ("hb_face_set_index")).Invoke (face, index); + private static Delegates.hb_face_collect_unicodes hb_face_collect_unicodes_delegate; + internal static void hb_face_collect_unicodes (hb_face_t face, hb_set_t @out) => + (hb_face_collect_unicodes_delegate ??= GetSymbol ("hb_face_collect_unicodes")).Invoke (face, @out); #endif - // extern void hb_face_set_upem(hb_face_t* face, unsigned int upem) + // extern void hb_face_collect_variation_selectors(hb_face_t * face, hb_set_t * out) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial void hb_face_set_upem (hb_face_t face, UInt32 upem); + internal static partial void hb_face_collect_variation_selectors (hb_face_t face, hb_set_t @out); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern void hb_face_set_upem (hb_face_t face, UInt32 upem); + internal static extern void hb_face_collect_variation_selectors (hb_face_t face, hb_set_t @out); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate void hb_face_set_upem (hb_face_t face, UInt32 upem); + internal delegate void hb_face_collect_variation_selectors (hb_face_t face, hb_set_t @out); } - private static Delegates.hb_face_set_upem hb_face_set_upem_delegate; - internal static void hb_face_set_upem (hb_face_t face, UInt32 upem) => - (hb_face_set_upem_delegate ??= GetSymbol ("hb_face_set_upem")).Invoke (face, upem); + private static Delegates.hb_face_collect_variation_selectors hb_face_collect_variation_selectors_delegate; + internal static void hb_face_collect_variation_selectors (hb_face_t face, hb_set_t @out) => + (hb_face_collect_variation_selectors_delegate ??= GetSymbol ("hb_face_collect_variation_selectors")).Invoke (face, @out); #endif - #endregion - - #region hb-font.h - - // extern void hb_font_add_glyph_origin_for_direction(hb_font_t* font, hb_codepoint_t glyph, hb_direction_t direction, hb_position_t* x, hb_position_t* y) + // extern void hb_face_collect_variation_unicodes(hb_face_t * face, hb_codepoint_t variation_selector, hb_set_t * out) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial void hb_font_add_glyph_origin_for_direction (hb_font_t font, UInt32 glyph, Direction direction, Int32* x, Int32* y); + internal static partial void hb_face_collect_variation_unicodes (hb_face_t face, UInt32 variation_selector, hb_set_t @out); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern void hb_font_add_glyph_origin_for_direction (hb_font_t font, UInt32 glyph, Direction direction, Int32* x, Int32* y); + internal static extern void hb_face_collect_variation_unicodes (hb_face_t face, UInt32 variation_selector, hb_set_t @out); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate void hb_font_add_glyph_origin_for_direction (hb_font_t font, UInt32 glyph, Direction direction, Int32* x, Int32* y); + internal delegate void hb_face_collect_variation_unicodes (hb_face_t face, UInt32 variation_selector, hb_set_t @out); } - private static Delegates.hb_font_add_glyph_origin_for_direction hb_font_add_glyph_origin_for_direction_delegate; - internal static void hb_font_add_glyph_origin_for_direction (hb_font_t font, UInt32 glyph, Direction direction, Int32* x, Int32* y) => - (hb_font_add_glyph_origin_for_direction_delegate ??= GetSymbol ("hb_font_add_glyph_origin_for_direction")).Invoke (font, glyph, direction, x, y); + private static Delegates.hb_face_collect_variation_unicodes hb_face_collect_variation_unicodes_delegate; + internal static void hb_face_collect_variation_unicodes (hb_face_t face, UInt32 variation_selector, hb_set_t @out) => + (hb_face_collect_variation_unicodes_delegate ??= GetSymbol ("hb_face_collect_variation_unicodes")).Invoke (face, variation_selector, @out); #endif - // extern hb_font_t* hb_font_create(hb_face_t* face) + // extern unsigned int hb_face_count(hb_blob_t * blob) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial hb_font_t hb_font_create (hb_face_t face); + internal static partial UInt32 hb_face_count (hb_blob_t blob); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern hb_font_t hb_font_create (hb_face_t face); + internal static extern UInt32 hb_face_count (hb_blob_t blob); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate hb_font_t hb_font_create (hb_face_t face); + internal delegate UInt32 hb_face_count (hb_blob_t blob); } - private static Delegates.hb_font_create hb_font_create_delegate; - internal static hb_font_t hb_font_create (hb_face_t face) => - (hb_font_create_delegate ??= GetSymbol ("hb_font_create")).Invoke (face); + private static Delegates.hb_face_count hb_face_count_delegate; + internal static UInt32 hb_face_count (hb_blob_t blob) => + (hb_face_count_delegate ??= GetSymbol ("hb_face_count")).Invoke (blob); #endif - // extern hb_font_t* hb_font_create_sub_font(hb_font_t* parent) + // extern hb_face_t * hb_face_create(hb_blob_t * blob, unsigned int index) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial hb_font_t hb_font_create_sub_font (hb_font_t parent); + internal static partial hb_face_t hb_face_create (hb_blob_t blob, UInt32 index); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern hb_font_t hb_font_create_sub_font (hb_font_t parent); + internal static extern hb_face_t hb_face_create (hb_blob_t blob, UInt32 index); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate hb_face_t hb_face_create (hb_blob_t blob, UInt32 index); + } + private static Delegates.hb_face_create hb_face_create_delegate; + internal static hb_face_t hb_face_create (hb_blob_t blob, UInt32 index) => + (hb_face_create_delegate ??= GetSymbol ("hb_face_create")).Invoke (blob, index); + #endif + + // extern hb_face_t * hb_face_create_for_tables(hb_reference_table_func_t reference_table_func, void * user_data, hb_destroy_func_t destroy) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial hb_face_t hb_face_create_for_tables (void* reference_table_func, void* user_data, void* destroy); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern hb_face_t hb_face_create_for_tables (ReferenceTableProxyDelegate reference_table_func, void* user_data, DestroyProxyDelegate destroy); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate hb_face_t hb_face_create_for_tables (ReferenceTableProxyDelegate reference_table_func, void* user_data, DestroyProxyDelegate destroy); + } + private static Delegates.hb_face_create_for_tables hb_face_create_for_tables_delegate; + internal static hb_face_t hb_face_create_for_tables (ReferenceTableProxyDelegate reference_table_func, void* user_data, DestroyProxyDelegate destroy) => + (hb_face_create_for_tables_delegate ??= GetSymbol ("hb_face_create_for_tables")).Invoke (reference_table_func, user_data, destroy); + #endif + + // extern void hb_face_destroy(hb_face_t * face) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_face_destroy (hb_face_t face); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_face_destroy (hb_face_t face); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_face_destroy (hb_face_t face); + } + private static Delegates.hb_face_destroy hb_face_destroy_delegate; + internal static void hb_face_destroy (hb_face_t face) => + (hb_face_destroy_delegate ??= GetSymbol ("hb_face_destroy")).Invoke (face); + #endif + + // extern hb_face_t * hb_face_get_empty() + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial hb_face_t hb_face_get_empty (); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern hb_face_t hb_face_get_empty (); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate hb_face_t hb_face_get_empty (); + } + private static Delegates.hb_face_get_empty hb_face_get_empty_delegate; + internal static hb_face_t hb_face_get_empty () => + (hb_face_get_empty_delegate ??= GetSymbol ("hb_face_get_empty")).Invoke (); + #endif + + // extern unsigned int hb_face_get_glyph_count(hb_face_t const * face) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial UInt32 hb_face_get_glyph_count (hb_face_t face); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern UInt32 hb_face_get_glyph_count (hb_face_t face); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate UInt32 hb_face_get_glyph_count (hb_face_t face); + } + private static Delegates.hb_face_get_glyph_count hb_face_get_glyph_count_delegate; + internal static UInt32 hb_face_get_glyph_count (hb_face_t face) => + (hb_face_get_glyph_count_delegate ??= GetSymbol ("hb_face_get_glyph_count")).Invoke (face); + #endif + + // extern unsigned int hb_face_get_index(hb_face_t const * face) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial UInt32 hb_face_get_index (hb_face_t face); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern UInt32 hb_face_get_index (hb_face_t face); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate UInt32 hb_face_get_index (hb_face_t face); + } + private static Delegates.hb_face_get_index hb_face_get_index_delegate; + internal static UInt32 hb_face_get_index (hb_face_t face) => + (hb_face_get_index_delegate ??= GetSymbol ("hb_face_get_index")).Invoke (face); + #endif + + // extern unsigned int hb_face_get_table_tags(hb_face_t const * face, unsigned int start_offset, unsigned int * table_count, hb_tag_t * table_tags) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial UInt32 hb_face_get_table_tags (hb_face_t face, UInt32 start_offset, UInt32* table_count, UInt32* table_tags); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern UInt32 hb_face_get_table_tags (hb_face_t face, UInt32 start_offset, UInt32* table_count, UInt32* table_tags); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate UInt32 hb_face_get_table_tags (hb_face_t face, UInt32 start_offset, UInt32* table_count, UInt32* table_tags); + } + private static Delegates.hb_face_get_table_tags hb_face_get_table_tags_delegate; + internal static UInt32 hb_face_get_table_tags (hb_face_t face, UInt32 start_offset, UInt32* table_count, UInt32* table_tags) => + (hb_face_get_table_tags_delegate ??= GetSymbol ("hb_face_get_table_tags")).Invoke (face, start_offset, table_count, table_tags); + #endif + + // extern unsigned int hb_face_get_upem(hb_face_t const * face) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial UInt32 hb_face_get_upem (hb_face_t face); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern UInt32 hb_face_get_upem (hb_face_t face); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate UInt32 hb_face_get_upem (hb_face_t face); + } + private static Delegates.hb_face_get_upem hb_face_get_upem_delegate; + internal static UInt32 hb_face_get_upem (hb_face_t face) => + (hb_face_get_upem_delegate ??= GetSymbol ("hb_face_get_upem")).Invoke (face); + #endif + + // extern hb_bool_t hb_face_is_immutable(hb_face_t const * face) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + [return: MarshalAs (UnmanagedType.I1)] + internal static partial bool hb_face_is_immutable (hb_face_t face); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal static extern bool hb_face_is_immutable (hb_face_t face); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal delegate bool hb_face_is_immutable (hb_face_t face); + } + private static Delegates.hb_face_is_immutable hb_face_is_immutable_delegate; + internal static bool hb_face_is_immutable (hb_face_t face) => + (hb_face_is_immutable_delegate ??= GetSymbol ("hb_face_is_immutable")).Invoke (face); + #endif + + // extern void hb_face_make_immutable(hb_face_t * face) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_face_make_immutable (hb_face_t face); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_face_make_immutable (hb_face_t face); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_face_make_immutable (hb_face_t face); + } + private static Delegates.hb_face_make_immutable hb_face_make_immutable_delegate; + internal static void hb_face_make_immutable (hb_face_t face) => + (hb_face_make_immutable_delegate ??= GetSymbol ("hb_face_make_immutable")).Invoke (face); + #endif + + // extern hb_face_t * hb_face_reference(hb_face_t * face) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial hb_face_t hb_face_reference (hb_face_t face); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern hb_face_t hb_face_reference (hb_face_t face); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate hb_face_t hb_face_reference (hb_face_t face); + } + private static Delegates.hb_face_reference hb_face_reference_delegate; + internal static hb_face_t hb_face_reference (hb_face_t face) => + (hb_face_reference_delegate ??= GetSymbol ("hb_face_reference")).Invoke (face); + #endif + + // extern hb_blob_t * hb_face_reference_blob(hb_face_t * face) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial hb_blob_t hb_face_reference_blob (hb_face_t face); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern hb_blob_t hb_face_reference_blob (hb_face_t face); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate hb_blob_t hb_face_reference_blob (hb_face_t face); + } + private static Delegates.hb_face_reference_blob hb_face_reference_blob_delegate; + internal static hb_blob_t hb_face_reference_blob (hb_face_t face) => + (hb_face_reference_blob_delegate ??= GetSymbol ("hb_face_reference_blob")).Invoke (face); + #endif + + // extern hb_blob_t * hb_face_reference_table(hb_face_t const * face, hb_tag_t tag) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial hb_blob_t hb_face_reference_table (hb_face_t face, UInt32 tag); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern hb_blob_t hb_face_reference_table (hb_face_t face, UInt32 tag); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate hb_blob_t hb_face_reference_table (hb_face_t face, UInt32 tag); + } + private static Delegates.hb_face_reference_table hb_face_reference_table_delegate; + internal static hb_blob_t hb_face_reference_table (hb_face_t face, UInt32 tag) => + (hb_face_reference_table_delegate ??= GetSymbol ("hb_face_reference_table")).Invoke (face, tag); + #endif + + // extern void hb_face_set_glyph_count(hb_face_t * face, unsigned int glyph_count) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_face_set_glyph_count (hb_face_t face, UInt32 glyph_count); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_face_set_glyph_count (hb_face_t face, UInt32 glyph_count); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_face_set_glyph_count (hb_face_t face, UInt32 glyph_count); + } + private static Delegates.hb_face_set_glyph_count hb_face_set_glyph_count_delegate; + internal static void hb_face_set_glyph_count (hb_face_t face, UInt32 glyph_count) => + (hb_face_set_glyph_count_delegate ??= GetSymbol ("hb_face_set_glyph_count")).Invoke (face, glyph_count); + #endif + + // extern void hb_face_set_index(hb_face_t * face, unsigned int index) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_face_set_index (hb_face_t face, UInt32 index); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_face_set_index (hb_face_t face, UInt32 index); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_face_set_index (hb_face_t face, UInt32 index); + } + private static Delegates.hb_face_set_index hb_face_set_index_delegate; + internal static void hb_face_set_index (hb_face_t face, UInt32 index) => + (hb_face_set_index_delegate ??= GetSymbol ("hb_face_set_index")).Invoke (face, index); + #endif + + // extern void hb_face_set_upem(hb_face_t * face, unsigned int upem) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_face_set_upem (hb_face_t face, UInt32 upem); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_face_set_upem (hb_face_t face, UInt32 upem); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_face_set_upem (hb_face_t face, UInt32 upem); + } + private static Delegates.hb_face_set_upem hb_face_set_upem_delegate; + internal static void hb_face_set_upem (hb_face_t face, UInt32 upem) => + (hb_face_set_upem_delegate ??= GetSymbol ("hb_face_set_upem")).Invoke (face, upem); + #endif + + #endregion + + #region hb-font.h + + // extern void hb_font_add_glyph_origin_for_direction(hb_font_t * font, hb_codepoint_t glyph, hb_direction_t direction, hb_position_t * x, hb_position_t * y) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_font_add_glyph_origin_for_direction (hb_font_t font, UInt32 glyph, Direction direction, Int32* x, Int32* y); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_font_add_glyph_origin_for_direction (hb_font_t font, UInt32 glyph, Direction direction, Int32* x, Int32* y); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_font_add_glyph_origin_for_direction (hb_font_t font, UInt32 glyph, Direction direction, Int32* x, Int32* y); + } + private static Delegates.hb_font_add_glyph_origin_for_direction hb_font_add_glyph_origin_for_direction_delegate; + internal static void hb_font_add_glyph_origin_for_direction (hb_font_t font, UInt32 glyph, Direction direction, Int32* x, Int32* y) => + (hb_font_add_glyph_origin_for_direction_delegate ??= GetSymbol ("hb_font_add_glyph_origin_for_direction")).Invoke (font, glyph, direction, x, y); + #endif + + // extern void hb_font_changed(hb_font_t * font) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_font_changed (hb_font_t font); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_font_changed (hb_font_t font); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_font_changed (hb_font_t font); + } + private static Delegates.hb_font_changed hb_font_changed_delegate; + internal static void hb_font_changed (hb_font_t font) => + (hb_font_changed_delegate ??= GetSymbol ("hb_font_changed")).Invoke (font); + #endif + + // extern hb_font_t * hb_font_create(hb_face_t * face) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial hb_font_t hb_font_create (hb_face_t face); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern hb_font_t hb_font_create (hb_face_t face); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate hb_font_t hb_font_create (hb_face_t face); + } + private static Delegates.hb_font_create hb_font_create_delegate; + internal static hb_font_t hb_font_create (hb_face_t face) => + (hb_font_create_delegate ??= GetSymbol ("hb_font_create")).Invoke (face); + #endif + + // extern hb_font_t * hb_font_create_sub_font(hb_font_t * parent) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial hb_font_t hb_font_create_sub_font (hb_font_t parent); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern hb_font_t hb_font_create_sub_font (hb_font_t parent); #endif #else private partial class Delegates { @@ -2207,7 +2656,7 @@ internal static hb_font_t hb_font_create_sub_font (hb_font_t parent) => (hb_font_create_sub_font_delegate ??= GetSymbol ("hb_font_create_sub_font")).Invoke (parent); #endif - // extern void hb_font_destroy(hb_font_t* font) + // extern void hb_font_destroy(hb_font_t * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2226,7 +2675,26 @@ internal static void hb_font_destroy (hb_font_t font) => (hb_font_destroy_delegate ??= GetSymbol ("hb_font_destroy")).Invoke (font); #endif - // extern hb_font_funcs_t* hb_font_funcs_create() + // extern void hb_font_draw_glyph(hb_font_t * font, hb_codepoint_t glyph, hb_draw_funcs_t * dfuncs, void * draw_data) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_font_draw_glyph (hb_font_t font, UInt32 glyph, hb_draw_funcs_t dfuncs, void* draw_data); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_font_draw_glyph (hb_font_t font, UInt32 glyph, hb_draw_funcs_t dfuncs, void* draw_data); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_font_draw_glyph (hb_font_t font, UInt32 glyph, hb_draw_funcs_t dfuncs, void* draw_data); + } + private static Delegates.hb_font_draw_glyph hb_font_draw_glyph_delegate; + internal static void hb_font_draw_glyph (hb_font_t font, UInt32 glyph, hb_draw_funcs_t dfuncs, void* draw_data) => + (hb_font_draw_glyph_delegate ??= GetSymbol ("hb_font_draw_glyph")).Invoke (font, glyph, dfuncs, draw_data); + #endif + + // extern hb_font_funcs_t * hb_font_funcs_create() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2245,7 +2713,7 @@ internal static hb_font_funcs_t hb_font_funcs_create () => (hb_font_funcs_create_delegate ??= GetSymbol ("hb_font_funcs_create")).Invoke (); #endif - // extern void hb_font_funcs_destroy(hb_font_funcs_t* ffuncs) + // extern void hb_font_funcs_destroy(hb_font_funcs_t * ffuncs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2264,7 +2732,7 @@ internal static void hb_font_funcs_destroy (hb_font_funcs_t ffuncs) => (hb_font_funcs_destroy_delegate ??= GetSymbol ("hb_font_funcs_destroy")).Invoke (ffuncs); #endif - // extern hb_font_funcs_t* hb_font_funcs_get_empty() + // extern hb_font_funcs_t * hb_font_funcs_get_empty() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2283,7 +2751,7 @@ internal static hb_font_funcs_t hb_font_funcs_get_empty () => (hb_font_funcs_get_empty_delegate ??= GetSymbol ("hb_font_funcs_get_empty")).Invoke (); #endif - // extern hb_bool_t hb_font_funcs_is_immutable(hb_font_funcs_t* ffuncs) + // extern hb_bool_t hb_font_funcs_is_immutable(hb_font_funcs_t * ffuncs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2305,7 +2773,7 @@ internal static bool hb_font_funcs_is_immutable (hb_font_funcs_t ffuncs) => (hb_font_funcs_is_immutable_delegate ??= GetSymbol ("hb_font_funcs_is_immutable")).Invoke (ffuncs); #endif - // extern void hb_font_funcs_make_immutable(hb_font_funcs_t* ffuncs) + // extern void hb_font_funcs_make_immutable(hb_font_funcs_t * ffuncs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2324,7 +2792,7 @@ internal static void hb_font_funcs_make_immutable (hb_font_funcs_t ffuncs) => (hb_font_funcs_make_immutable_delegate ??= GetSymbol ("hb_font_funcs_make_immutable")).Invoke (ffuncs); #endif - // extern hb_font_funcs_t* hb_font_funcs_reference(hb_font_funcs_t* ffuncs) + // extern hb_font_funcs_t * hb_font_funcs_reference(hb_font_funcs_t * ffuncs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2343,7 +2811,26 @@ internal static hb_font_funcs_t hb_font_funcs_reference (hb_font_funcs_t ffuncs) (hb_font_funcs_reference_delegate ??= GetSymbol ("hb_font_funcs_reference")).Invoke (ffuncs); #endif - // extern void hb_font_funcs_set_font_h_extents_func(hb_font_funcs_t* ffuncs, hb_font_get_font_h_extents_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_font_funcs_set_draw_glyph_func(hb_font_funcs_t * ffuncs, hb_font_draw_glyph_func_t func, void * user_data, hb_destroy_func_t destroy) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_font_funcs_set_draw_glyph_func (hb_font_funcs_t ffuncs, void* func, void* user_data, void* destroy); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_font_funcs_set_draw_glyph_func (hb_font_funcs_t ffuncs, FontDrawGlyphProxyDelegate func, void* user_data, DestroyProxyDelegate destroy); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_font_funcs_set_draw_glyph_func (hb_font_funcs_t ffuncs, FontDrawGlyphProxyDelegate func, void* user_data, DestroyProxyDelegate destroy); + } + private static Delegates.hb_font_funcs_set_draw_glyph_func hb_font_funcs_set_draw_glyph_func_delegate; + internal static void hb_font_funcs_set_draw_glyph_func (hb_font_funcs_t ffuncs, FontDrawGlyphProxyDelegate func, void* user_data, DestroyProxyDelegate destroy) => + (hb_font_funcs_set_draw_glyph_func_delegate ??= GetSymbol ("hb_font_funcs_set_draw_glyph_func")).Invoke (ffuncs, func, user_data, destroy); + #endif + + // extern void hb_font_funcs_set_font_h_extents_func(hb_font_funcs_t * ffuncs, hb_font_get_font_h_extents_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2362,7 +2849,7 @@ internal static void hb_font_funcs_set_font_h_extents_func (hb_font_funcs_t ffun (hb_font_funcs_set_font_h_extents_func_delegate ??= GetSymbol ("hb_font_funcs_set_font_h_extents_func")).Invoke (ffuncs, func, user_data, destroy); #endif - // extern void hb_font_funcs_set_font_v_extents_func(hb_font_funcs_t* ffuncs, hb_font_get_font_v_extents_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_font_funcs_set_font_v_extents_func(hb_font_funcs_t * ffuncs, hb_font_get_font_v_extents_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2381,7 +2868,7 @@ internal static void hb_font_funcs_set_font_v_extents_func (hb_font_funcs_t ffun (hb_font_funcs_set_font_v_extents_func_delegate ??= GetSymbol ("hb_font_funcs_set_font_v_extents_func")).Invoke (ffuncs, func, user_data, destroy); #endif - // extern void hb_font_funcs_set_glyph_contour_point_func(hb_font_funcs_t* ffuncs, hb_font_get_glyph_contour_point_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_font_funcs_set_glyph_contour_point_func(hb_font_funcs_t * ffuncs, hb_font_get_glyph_contour_point_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2400,7 +2887,7 @@ internal static void hb_font_funcs_set_glyph_contour_point_func (hb_font_funcs_t (hb_font_funcs_set_glyph_contour_point_func_delegate ??= GetSymbol ("hb_font_funcs_set_glyph_contour_point_func")).Invoke (ffuncs, func, user_data, destroy); #endif - // extern void hb_font_funcs_set_glyph_extents_func(hb_font_funcs_t* ffuncs, hb_font_get_glyph_extents_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_font_funcs_set_glyph_extents_func(hb_font_funcs_t * ffuncs, hb_font_get_glyph_extents_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2419,7 +2906,7 @@ internal static void hb_font_funcs_set_glyph_extents_func (hb_font_funcs_t ffunc (hb_font_funcs_set_glyph_extents_func_delegate ??= GetSymbol ("hb_font_funcs_set_glyph_extents_func")).Invoke (ffuncs, func, user_data, destroy); #endif - // extern void hb_font_funcs_set_glyph_from_name_func(hb_font_funcs_t* ffuncs, hb_font_get_glyph_from_name_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_font_funcs_set_glyph_from_name_func(hb_font_funcs_t * ffuncs, hb_font_get_glyph_from_name_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2438,7 +2925,7 @@ internal static void hb_font_funcs_set_glyph_from_name_func (hb_font_funcs_t ffu (hb_font_funcs_set_glyph_from_name_func_delegate ??= GetSymbol ("hb_font_funcs_set_glyph_from_name_func")).Invoke (ffuncs, func, user_data, destroy); #endif - // extern void hb_font_funcs_set_glyph_h_advance_func(hb_font_funcs_t* ffuncs, hb_font_get_glyph_h_advance_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_font_funcs_set_glyph_h_advance_func(hb_font_funcs_t * ffuncs, hb_font_get_glyph_h_advance_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2457,7 +2944,7 @@ internal static void hb_font_funcs_set_glyph_h_advance_func (hb_font_funcs_t ffu (hb_font_funcs_set_glyph_h_advance_func_delegate ??= GetSymbol ("hb_font_funcs_set_glyph_h_advance_func")).Invoke (ffuncs, func, user_data, destroy); #endif - // extern void hb_font_funcs_set_glyph_h_advances_func(hb_font_funcs_t* ffuncs, hb_font_get_glyph_h_advances_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_font_funcs_set_glyph_h_advances_func(hb_font_funcs_t * ffuncs, hb_font_get_glyph_h_advances_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2476,7 +2963,7 @@ internal static void hb_font_funcs_set_glyph_h_advances_func (hb_font_funcs_t ff (hb_font_funcs_set_glyph_h_advances_func_delegate ??= GetSymbol ("hb_font_funcs_set_glyph_h_advances_func")).Invoke (ffuncs, func, user_data, destroy); #endif - // extern void hb_font_funcs_set_glyph_h_kerning_func(hb_font_funcs_t* ffuncs, hb_font_get_glyph_h_kerning_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_font_funcs_set_glyph_h_kerning_func(hb_font_funcs_t * ffuncs, hb_font_get_glyph_h_kerning_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2495,7 +2982,7 @@ internal static void hb_font_funcs_set_glyph_h_kerning_func (hb_font_funcs_t ffu (hb_font_funcs_set_glyph_h_kerning_func_delegate ??= GetSymbol ("hb_font_funcs_set_glyph_h_kerning_func")).Invoke (ffuncs, func, user_data, destroy); #endif - // extern void hb_font_funcs_set_glyph_h_origin_func(hb_font_funcs_t* ffuncs, hb_font_get_glyph_h_origin_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_font_funcs_set_glyph_h_origin_func(hb_font_funcs_t * ffuncs, hb_font_get_glyph_h_origin_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2514,7 +3001,7 @@ internal static void hb_font_funcs_set_glyph_h_origin_func (hb_font_funcs_t ffun (hb_font_funcs_set_glyph_h_origin_func_delegate ??= GetSymbol ("hb_font_funcs_set_glyph_h_origin_func")).Invoke (ffuncs, func, user_data, destroy); #endif - // extern void hb_font_funcs_set_glyph_name_func(hb_font_funcs_t* ffuncs, hb_font_get_glyph_name_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_font_funcs_set_glyph_name_func(hb_font_funcs_t * ffuncs, hb_font_get_glyph_name_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2533,7 +3020,7 @@ internal static void hb_font_funcs_set_glyph_name_func (hb_font_funcs_t ffuncs, (hb_font_funcs_set_glyph_name_func_delegate ??= GetSymbol ("hb_font_funcs_set_glyph_name_func")).Invoke (ffuncs, func, user_data, destroy); #endif - // extern void hb_font_funcs_set_glyph_v_advance_func(hb_font_funcs_t* ffuncs, hb_font_get_glyph_v_advance_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_font_funcs_set_glyph_v_advance_func(hb_font_funcs_t * ffuncs, hb_font_get_glyph_v_advance_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2552,7 +3039,7 @@ internal static void hb_font_funcs_set_glyph_v_advance_func (hb_font_funcs_t ffu (hb_font_funcs_set_glyph_v_advance_func_delegate ??= GetSymbol ("hb_font_funcs_set_glyph_v_advance_func")).Invoke (ffuncs, func, user_data, destroy); #endif - // extern void hb_font_funcs_set_glyph_v_advances_func(hb_font_funcs_t* ffuncs, hb_font_get_glyph_v_advances_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_font_funcs_set_glyph_v_advances_func(hb_font_funcs_t * ffuncs, hb_font_get_glyph_v_advances_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2571,7 +3058,7 @@ internal static void hb_font_funcs_set_glyph_v_advances_func (hb_font_funcs_t ff (hb_font_funcs_set_glyph_v_advances_func_delegate ??= GetSymbol ("hb_font_funcs_set_glyph_v_advances_func")).Invoke (ffuncs, func, user_data, destroy); #endif - // extern void hb_font_funcs_set_glyph_v_origin_func(hb_font_funcs_t* ffuncs, hb_font_get_glyph_v_origin_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_font_funcs_set_glyph_v_origin_func(hb_font_funcs_t * ffuncs, hb_font_get_glyph_v_origin_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2590,7 +3077,7 @@ internal static void hb_font_funcs_set_glyph_v_origin_func (hb_font_funcs_t ffun (hb_font_funcs_set_glyph_v_origin_func_delegate ??= GetSymbol ("hb_font_funcs_set_glyph_v_origin_func")).Invoke (ffuncs, func, user_data, destroy); #endif - // extern void hb_font_funcs_set_nominal_glyph_func(hb_font_funcs_t* ffuncs, hb_font_get_nominal_glyph_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_font_funcs_set_nominal_glyph_func(hb_font_funcs_t * ffuncs, hb_font_get_nominal_glyph_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2609,7 +3096,7 @@ internal static void hb_font_funcs_set_nominal_glyph_func (hb_font_funcs_t ffunc (hb_font_funcs_set_nominal_glyph_func_delegate ??= GetSymbol ("hb_font_funcs_set_nominal_glyph_func")).Invoke (ffuncs, func, user_data, destroy); #endif - // extern void hb_font_funcs_set_nominal_glyphs_func(hb_font_funcs_t* ffuncs, hb_font_get_nominal_glyphs_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_font_funcs_set_nominal_glyphs_func(hb_font_funcs_t * ffuncs, hb_font_get_nominal_glyphs_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2628,7 +3115,26 @@ internal static void hb_font_funcs_set_nominal_glyphs_func (hb_font_funcs_t ffun (hb_font_funcs_set_nominal_glyphs_func_delegate ??= GetSymbol ("hb_font_funcs_set_nominal_glyphs_func")).Invoke (ffuncs, func, user_data, destroy); #endif - // extern void hb_font_funcs_set_variation_glyph_func(hb_font_funcs_t* ffuncs, hb_font_get_variation_glyph_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_font_funcs_set_paint_glyph_func(hb_font_funcs_t * ffuncs, hb_font_paint_glyph_func_t func, void * user_data, hb_destroy_func_t destroy) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_font_funcs_set_paint_glyph_func (hb_font_funcs_t ffuncs, void* func, void* user_data, void* destroy); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_font_funcs_set_paint_glyph_func (hb_font_funcs_t ffuncs, FontPaintGlyphProxyDelegate func, void* user_data, DestroyProxyDelegate destroy); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_font_funcs_set_paint_glyph_func (hb_font_funcs_t ffuncs, FontPaintGlyphProxyDelegate func, void* user_data, DestroyProxyDelegate destroy); + } + private static Delegates.hb_font_funcs_set_paint_glyph_func hb_font_funcs_set_paint_glyph_func_delegate; + internal static void hb_font_funcs_set_paint_glyph_func (hb_font_funcs_t ffuncs, FontPaintGlyphProxyDelegate func, void* user_data, DestroyProxyDelegate destroy) => + (hb_font_funcs_set_paint_glyph_func_delegate ??= GetSymbol ("hb_font_funcs_set_paint_glyph_func")).Invoke (ffuncs, func, user_data, destroy); + #endif + + // extern void hb_font_funcs_set_variation_glyph_func(hb_font_funcs_t * ffuncs, hb_font_get_variation_glyph_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2647,7 +3153,7 @@ internal static void hb_font_funcs_set_variation_glyph_func (hb_font_funcs_t ffu (hb_font_funcs_set_variation_glyph_func_delegate ??= GetSymbol ("hb_font_funcs_set_variation_glyph_func")).Invoke (ffuncs, func, user_data, destroy); #endif - // extern hb_font_t* hb_font_get_empty() + // extern hb_font_t * hb_font_get_empty() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2666,7 +3172,7 @@ internal static hb_font_t hb_font_get_empty () => (hb_font_get_empty_delegate ??= GetSymbol ("hb_font_get_empty")).Invoke (); #endif - // extern void hb_font_get_extents_for_direction(hb_font_t* font, hb_direction_t direction, hb_font_extents_t* extents) + // extern void hb_font_get_extents_for_direction(hb_font_t * font, hb_direction_t direction, hb_font_extents_t * extents) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2685,7 +3191,7 @@ internal static void hb_font_get_extents_for_direction (hb_font_t font, Directio (hb_font_get_extents_for_direction_delegate ??= GetSymbol ("hb_font_get_extents_for_direction")).Invoke (font, direction, extents); #endif - // extern hb_face_t* hb_font_get_face(hb_font_t* font) + // extern hb_face_t * hb_font_get_face(hb_font_t * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2704,7 +3210,7 @@ internal static hb_face_t hb_font_get_face (hb_font_t font) => (hb_font_get_face_delegate ??= GetSymbol ("hb_font_get_face")).Invoke (font); #endif - // extern hb_bool_t hb_font_get_glyph(hb_font_t* font, hb_codepoint_t unicode, hb_codepoint_t variation_selector, hb_codepoint_t* glyph) + // extern hb_bool_t hb_font_get_glyph(hb_font_t * font, hb_codepoint_t unicode, hb_codepoint_t variation_selector, hb_codepoint_t * glyph) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2726,7 +3232,7 @@ internal static bool hb_font_get_glyph (hb_font_t font, UInt32 unicode, UInt32 v (hb_font_get_glyph_delegate ??= GetSymbol ("hb_font_get_glyph")).Invoke (font, unicode, variation_selector, glyph); #endif - // extern void hb_font_get_glyph_advance_for_direction(hb_font_t* font, hb_codepoint_t glyph, hb_direction_t direction, hb_position_t* x, hb_position_t* y) + // extern void hb_font_get_glyph_advance_for_direction(hb_font_t * font, hb_codepoint_t glyph, hb_direction_t direction, hb_position_t * x, hb_position_t * y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2745,7 +3251,7 @@ internal static void hb_font_get_glyph_advance_for_direction (hb_font_t font, UI (hb_font_get_glyph_advance_for_direction_delegate ??= GetSymbol ("hb_font_get_glyph_advance_for_direction")).Invoke (font, glyph, direction, x, y); #endif - // extern void hb_font_get_glyph_advances_for_direction(hb_font_t* font, hb_direction_t direction, unsigned int count, const hb_codepoint_t* first_glyph, unsigned int glyph_stride, hb_position_t* first_advance, unsigned int advance_stride) + // extern void hb_font_get_glyph_advances_for_direction(hb_font_t * font, hb_direction_t direction, unsigned int count, hb_codepoint_t const * first_glyph, unsigned int glyph_stride, hb_position_t * first_advance, unsigned int advance_stride) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2764,7 +3270,7 @@ internal static void hb_font_get_glyph_advances_for_direction (hb_font_t font, D (hb_font_get_glyph_advances_for_direction_delegate ??= GetSymbol ("hb_font_get_glyph_advances_for_direction")).Invoke (font, direction, count, first_glyph, glyph_stride, first_advance, advance_stride); #endif - // extern hb_bool_t hb_font_get_glyph_contour_point(hb_font_t* font, hb_codepoint_t glyph, unsigned int point_index, hb_position_t* x, hb_position_t* y) + // extern hb_bool_t hb_font_get_glyph_contour_point(hb_font_t * font, hb_codepoint_t glyph, unsigned int point_index, hb_position_t * x, hb_position_t * y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2786,7 +3292,7 @@ internal static bool hb_font_get_glyph_contour_point (hb_font_t font, UInt32 gly (hb_font_get_glyph_contour_point_delegate ??= GetSymbol ("hb_font_get_glyph_contour_point")).Invoke (font, glyph, point_index, x, y); #endif - // extern hb_bool_t hb_font_get_glyph_contour_point_for_origin(hb_font_t* font, hb_codepoint_t glyph, unsigned int point_index, hb_direction_t direction, hb_position_t* x, hb_position_t* y) + // extern hb_bool_t hb_font_get_glyph_contour_point_for_origin(hb_font_t * font, hb_codepoint_t glyph, unsigned int point_index, hb_direction_t direction, hb_position_t * x, hb_position_t * y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2808,7 +3314,7 @@ internal static bool hb_font_get_glyph_contour_point_for_origin (hb_font_t font, (hb_font_get_glyph_contour_point_for_origin_delegate ??= GetSymbol ("hb_font_get_glyph_contour_point_for_origin")).Invoke (font, glyph, point_index, direction, x, y); #endif - // extern hb_bool_t hb_font_get_glyph_extents(hb_font_t* font, hb_codepoint_t glyph, hb_glyph_extents_t* extents) + // extern hb_bool_t hb_font_get_glyph_extents(hb_font_t * font, hb_codepoint_t glyph, hb_glyph_extents_t * extents) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2830,7 +3336,7 @@ internal static bool hb_font_get_glyph_extents (hb_font_t font, UInt32 glyph, Gl (hb_font_get_glyph_extents_delegate ??= GetSymbol ("hb_font_get_glyph_extents")).Invoke (font, glyph, extents); #endif - // extern hb_bool_t hb_font_get_glyph_extents_for_origin(hb_font_t* font, hb_codepoint_t glyph, hb_direction_t direction, hb_glyph_extents_t* extents) + // extern hb_bool_t hb_font_get_glyph_extents_for_origin(hb_font_t * font, hb_codepoint_t glyph, hb_direction_t direction, hb_glyph_extents_t * extents) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2852,7 +3358,7 @@ internal static bool hb_font_get_glyph_extents_for_origin (hb_font_t font, UInt3 (hb_font_get_glyph_extents_for_origin_delegate ??= GetSymbol ("hb_font_get_glyph_extents_for_origin")).Invoke (font, glyph, direction, extents); #endif - // extern hb_bool_t hb_font_get_glyph_from_name(hb_font_t* font, const char* name, int len, hb_codepoint_t* glyph) + // extern hb_bool_t hb_font_get_glyph_from_name(hb_font_t * font, char const * name, int len, hb_codepoint_t * glyph) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2874,7 +3380,7 @@ internal static bool hb_font_get_glyph_from_name (hb_font_t font, [MarshalAs (Un (hb_font_get_glyph_from_name_delegate ??= GetSymbol ("hb_font_get_glyph_from_name")).Invoke (font, name, len, glyph); #endif - // extern hb_position_t hb_font_get_glyph_h_advance(hb_font_t* font, hb_codepoint_t glyph) + // extern hb_position_t hb_font_get_glyph_h_advance(hb_font_t * font, hb_codepoint_t glyph) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2893,7 +3399,7 @@ internal static Int32 hb_font_get_glyph_h_advance (hb_font_t font, UInt32 glyph) (hb_font_get_glyph_h_advance_delegate ??= GetSymbol ("hb_font_get_glyph_h_advance")).Invoke (font, glyph); #endif - // extern void hb_font_get_glyph_h_advances(hb_font_t* font, unsigned int count, const hb_codepoint_t* first_glyph, unsigned int glyph_stride, hb_position_t* first_advance, unsigned int advance_stride) + // extern void hb_font_get_glyph_h_advances(hb_font_t * font, unsigned int count, hb_codepoint_t const * first_glyph, unsigned int glyph_stride, hb_position_t * first_advance, unsigned int advance_stride) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2912,7 +3418,7 @@ internal static void hb_font_get_glyph_h_advances (hb_font_t font, UInt32 count, (hb_font_get_glyph_h_advances_delegate ??= GetSymbol ("hb_font_get_glyph_h_advances")).Invoke (font, count, first_glyph, glyph_stride, first_advance, advance_stride); #endif - // extern hb_position_t hb_font_get_glyph_h_kerning(hb_font_t* font, hb_codepoint_t left_glyph, hb_codepoint_t right_glyph) + // extern hb_position_t hb_font_get_glyph_h_kerning(hb_font_t * font, hb_codepoint_t left_glyph, hb_codepoint_t right_glyph) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2931,7 +3437,7 @@ internal static Int32 hb_font_get_glyph_h_kerning (hb_font_t font, UInt32 left_g (hb_font_get_glyph_h_kerning_delegate ??= GetSymbol ("hb_font_get_glyph_h_kerning")).Invoke (font, left_glyph, right_glyph); #endif - // extern hb_bool_t hb_font_get_glyph_h_origin(hb_font_t* font, hb_codepoint_t glyph, hb_position_t* x, hb_position_t* y) + // extern hb_bool_t hb_font_get_glyph_h_origin(hb_font_t * font, hb_codepoint_t glyph, hb_position_t * x, hb_position_t * y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2953,7 +3459,7 @@ internal static bool hb_font_get_glyph_h_origin (hb_font_t font, UInt32 glyph, I (hb_font_get_glyph_h_origin_delegate ??= GetSymbol ("hb_font_get_glyph_h_origin")).Invoke (font, glyph, x, y); #endif - // extern void hb_font_get_glyph_kerning_for_direction(hb_font_t* font, hb_codepoint_t first_glyph, hb_codepoint_t second_glyph, hb_direction_t direction, hb_position_t* x, hb_position_t* y) + // extern void hb_font_get_glyph_kerning_for_direction(hb_font_t * font, hb_codepoint_t first_glyph, hb_codepoint_t second_glyph, hb_direction_t direction, hb_position_t * x, hb_position_t * y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2972,7 +3478,7 @@ internal static void hb_font_get_glyph_kerning_for_direction (hb_font_t font, UI (hb_font_get_glyph_kerning_for_direction_delegate ??= GetSymbol ("hb_font_get_glyph_kerning_for_direction")).Invoke (font, first_glyph, second_glyph, direction, x, y); #endif - // extern hb_bool_t hb_font_get_glyph_name(hb_font_t* font, hb_codepoint_t glyph, char* name, unsigned int size) + // extern hb_bool_t hb_font_get_glyph_name(hb_font_t * font, hb_codepoint_t glyph, char * name, unsigned int size) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -2994,7 +3500,7 @@ internal static bool hb_font_get_glyph_name (hb_font_t font, UInt32 glyph, /* ch (hb_font_get_glyph_name_delegate ??= GetSymbol ("hb_font_get_glyph_name")).Invoke (font, glyph, name, size); #endif - // extern void hb_font_get_glyph_origin_for_direction(hb_font_t* font, hb_codepoint_t glyph, hb_direction_t direction, hb_position_t* x, hb_position_t* y) + // extern void hb_font_get_glyph_origin_for_direction(hb_font_t * font, hb_codepoint_t glyph, hb_direction_t direction, hb_position_t * x, hb_position_t * y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3013,7 +3519,7 @@ internal static void hb_font_get_glyph_origin_for_direction (hb_font_t font, UIn (hb_font_get_glyph_origin_for_direction_delegate ??= GetSymbol ("hb_font_get_glyph_origin_for_direction")).Invoke (font, glyph, direction, x, y); #endif - // extern hb_position_t hb_font_get_glyph_v_advance(hb_font_t* font, hb_codepoint_t glyph) + // extern hb_position_t hb_font_get_glyph_v_advance(hb_font_t * font, hb_codepoint_t glyph) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3032,7 +3538,7 @@ internal static Int32 hb_font_get_glyph_v_advance (hb_font_t font, UInt32 glyph) (hb_font_get_glyph_v_advance_delegate ??= GetSymbol ("hb_font_get_glyph_v_advance")).Invoke (font, glyph); #endif - // extern void hb_font_get_glyph_v_advances(hb_font_t* font, unsigned int count, const hb_codepoint_t* first_glyph, unsigned int glyph_stride, hb_position_t* first_advance, unsigned int advance_stride) + // extern void hb_font_get_glyph_v_advances(hb_font_t * font, unsigned int count, hb_codepoint_t const * first_glyph, unsigned int glyph_stride, hb_position_t * first_advance, unsigned int advance_stride) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3051,7 +3557,7 @@ internal static void hb_font_get_glyph_v_advances (hb_font_t font, UInt32 count, (hb_font_get_glyph_v_advances_delegate ??= GetSymbol ("hb_font_get_glyph_v_advances")).Invoke (font, count, first_glyph, glyph_stride, first_advance, advance_stride); #endif - // extern hb_bool_t hb_font_get_glyph_v_origin(hb_font_t* font, hb_codepoint_t glyph, hb_position_t* x, hb_position_t* y) + // extern hb_bool_t hb_font_get_glyph_v_origin(hb_font_t * font, hb_codepoint_t glyph, hb_position_t * x, hb_position_t * y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3073,7 +3579,7 @@ internal static bool hb_font_get_glyph_v_origin (hb_font_t font, UInt32 glyph, I (hb_font_get_glyph_v_origin_delegate ??= GetSymbol ("hb_font_get_glyph_v_origin")).Invoke (font, glyph, x, y); #endif - // extern hb_bool_t hb_font_get_h_extents(hb_font_t* font, hb_font_extents_t* extents) + // extern hb_bool_t hb_font_get_h_extents(hb_font_t * font, hb_font_extents_t * extents) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3095,7 +3601,7 @@ internal static bool hb_font_get_h_extents (hb_font_t font, FontExtents* extents (hb_font_get_h_extents_delegate ??= GetSymbol ("hb_font_get_h_extents")).Invoke (font, extents); #endif - // extern hb_bool_t hb_font_get_nominal_glyph(hb_font_t* font, hb_codepoint_t unicode, hb_codepoint_t* glyph) + // extern hb_bool_t hb_font_get_nominal_glyph(hb_font_t * font, hb_codepoint_t unicode, hb_codepoint_t * glyph) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3117,7 +3623,7 @@ internal static bool hb_font_get_nominal_glyph (hb_font_t font, UInt32 unicode, (hb_font_get_nominal_glyph_delegate ??= GetSymbol ("hb_font_get_nominal_glyph")).Invoke (font, unicode, glyph); #endif - // extern unsigned int hb_font_get_nominal_glyphs(hb_font_t* font, unsigned int count, const hb_codepoint_t* first_unicode, unsigned int unicode_stride, hb_codepoint_t* first_glyph, unsigned int glyph_stride) + // extern unsigned int hb_font_get_nominal_glyphs(hb_font_t * font, unsigned int count, hb_codepoint_t const * first_unicode, unsigned int unicode_stride, hb_codepoint_t * first_glyph, unsigned int glyph_stride) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3136,7 +3642,7 @@ internal static UInt32 hb_font_get_nominal_glyphs (hb_font_t font, UInt32 count, (hb_font_get_nominal_glyphs_delegate ??= GetSymbol ("hb_font_get_nominal_glyphs")).Invoke (font, count, first_unicode, unicode_stride, first_glyph, glyph_stride); #endif - // extern hb_font_t* hb_font_get_parent(hb_font_t* font) + // extern hb_font_t * hb_font_get_parent(hb_font_t * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3155,7 +3661,7 @@ internal static hb_font_t hb_font_get_parent (hb_font_t font) => (hb_font_get_parent_delegate ??= GetSymbol ("hb_font_get_parent")).Invoke (font); #endif - // extern void hb_font_get_ppem(hb_font_t* font, unsigned int* x_ppem, unsigned int* y_ppem) + // extern void hb_font_get_ppem(hb_font_t * font, unsigned int * x_ppem, unsigned int * y_ppem) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3174,7 +3680,7 @@ internal static void hb_font_get_ppem (hb_font_t font, UInt32* x_ppem, UInt32* y (hb_font_get_ppem_delegate ??= GetSymbol ("hb_font_get_ppem")).Invoke (font, x_ppem, y_ppem); #endif - // extern float hb_font_get_ptem(hb_font_t* font) + // extern float hb_font_get_ptem(hb_font_t * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3193,7 +3699,7 @@ internal static Single hb_font_get_ptem (hb_font_t font) => (hb_font_get_ptem_delegate ??= GetSymbol ("hb_font_get_ptem")).Invoke (font); #endif - // extern void hb_font_get_scale(hb_font_t* font, int* x_scale, int* y_scale) + // extern void hb_font_get_scale(hb_font_t * font, int * x_scale, int * y_scale) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3212,7 +3718,64 @@ internal static void hb_font_get_scale (hb_font_t font, Int32* x_scale, Int32* y (hb_font_get_scale_delegate ??= GetSymbol ("hb_font_get_scale")).Invoke (font, x_scale, y_scale); #endif - // extern hb_bool_t hb_font_get_v_extents(hb_font_t* font, hb_font_extents_t* extents) + // extern unsigned int hb_font_get_serial(hb_font_t * font) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial UInt32 hb_font_get_serial (hb_font_t font); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern UInt32 hb_font_get_serial (hb_font_t font); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate UInt32 hb_font_get_serial (hb_font_t font); + } + private static Delegates.hb_font_get_serial hb_font_get_serial_delegate; + internal static UInt32 hb_font_get_serial (hb_font_t font) => + (hb_font_get_serial_delegate ??= GetSymbol ("hb_font_get_serial")).Invoke (font); + #endif + + // extern void hb_font_get_synthetic_bold(hb_font_t * font, float * x_embolden, float * y_embolden, hb_bool_t * in_place) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_font_get_synthetic_bold (hb_font_t font, Single* x_embolden, Single* y_embolden, Boolean* in_place); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_font_get_synthetic_bold (hb_font_t font, Single* x_embolden, Single* y_embolden, Boolean* in_place); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_font_get_synthetic_bold (hb_font_t font, Single* x_embolden, Single* y_embolden, Boolean* in_place); + } + private static Delegates.hb_font_get_synthetic_bold hb_font_get_synthetic_bold_delegate; + internal static void hb_font_get_synthetic_bold (hb_font_t font, Single* x_embolden, Single* y_embolden, Boolean* in_place) => + (hb_font_get_synthetic_bold_delegate ??= GetSymbol ("hb_font_get_synthetic_bold")).Invoke (font, x_embolden, y_embolden, in_place); + #endif + + // extern float hb_font_get_synthetic_slant(hb_font_t * font) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial Single hb_font_get_synthetic_slant (hb_font_t font); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern Single hb_font_get_synthetic_slant (hb_font_t font); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate Single hb_font_get_synthetic_slant (hb_font_t font); + } + private static Delegates.hb_font_get_synthetic_slant hb_font_get_synthetic_slant_delegate; + internal static Single hb_font_get_synthetic_slant (hb_font_t font) => + (hb_font_get_synthetic_slant_delegate ??= GetSymbol ("hb_font_get_synthetic_slant")).Invoke (font); + #endif + + // extern hb_bool_t hb_font_get_v_extents(hb_font_t * font, hb_font_extents_t * extents) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3234,7 +3797,26 @@ internal static bool hb_font_get_v_extents (hb_font_t font, FontExtents* extents (hb_font_get_v_extents_delegate ??= GetSymbol ("hb_font_get_v_extents")).Invoke (font, extents); #endif - // extern const int* hb_font_get_var_coords_normalized(hb_font_t* font, unsigned int* length) + // extern float const * hb_font_get_var_coords_design(hb_font_t * font, unsigned int * length) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial Single* hb_font_get_var_coords_design (hb_font_t font, UInt32* length); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern Single* hb_font_get_var_coords_design (hb_font_t font, UInt32* length); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate Single* hb_font_get_var_coords_design (hb_font_t font, UInt32* length); + } + private static Delegates.hb_font_get_var_coords_design hb_font_get_var_coords_design_delegate; + internal static Single* hb_font_get_var_coords_design (hb_font_t font, UInt32* length) => + (hb_font_get_var_coords_design_delegate ??= GetSymbol ("hb_font_get_var_coords_design")).Invoke (font, length); + #endif + + // extern int const * hb_font_get_var_coords_normalized(hb_font_t * font, unsigned int * length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3253,7 +3835,26 @@ private partial class Delegates { (hb_font_get_var_coords_normalized_delegate ??= GetSymbol ("hb_font_get_var_coords_normalized")).Invoke (font, length); #endif - // extern hb_bool_t hb_font_get_variation_glyph(hb_font_t* font, hb_codepoint_t unicode, hb_codepoint_t variation_selector, hb_codepoint_t* glyph) + // extern unsigned int hb_font_get_var_named_instance(hb_font_t * font) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial UInt32 hb_font_get_var_named_instance (hb_font_t font); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern UInt32 hb_font_get_var_named_instance (hb_font_t font); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate UInt32 hb_font_get_var_named_instance (hb_font_t font); + } + private static Delegates.hb_font_get_var_named_instance hb_font_get_var_named_instance_delegate; + internal static UInt32 hb_font_get_var_named_instance (hb_font_t font) => + (hb_font_get_var_named_instance_delegate ??= GetSymbol ("hb_font_get_var_named_instance")).Invoke (font); + #endif + + // extern hb_bool_t hb_font_get_variation_glyph(hb_font_t * font, hb_codepoint_t unicode, hb_codepoint_t variation_selector, hb_codepoint_t * glyph) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3275,7 +3876,7 @@ internal static bool hb_font_get_variation_glyph (hb_font_t font, UInt32 unicode (hb_font_get_variation_glyph_delegate ??= GetSymbol ("hb_font_get_variation_glyph")).Invoke (font, unicode, variation_selector, glyph); #endif - // extern hb_bool_t hb_font_glyph_from_string(hb_font_t* font, const char* s, int len, hb_codepoint_t* glyph) + // extern hb_bool_t hb_font_glyph_from_string(hb_font_t * font, char const * s, int len, hb_codepoint_t * glyph) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3297,7 +3898,7 @@ internal static bool hb_font_glyph_from_string (hb_font_t font, [MarshalAs (Unma (hb_font_glyph_from_string_delegate ??= GetSymbol ("hb_font_glyph_from_string")).Invoke (font, s, len, glyph); #endif - // extern void hb_font_glyph_to_string(hb_font_t* font, hb_codepoint_t glyph, char* s, unsigned int size) + // extern void hb_font_glyph_to_string(hb_font_t * font, hb_codepoint_t glyph, char * s, unsigned int size) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3316,7 +3917,7 @@ internal static void hb_font_glyph_to_string (hb_font_t font, UInt32 glyph, /* c (hb_font_glyph_to_string_delegate ??= GetSymbol ("hb_font_glyph_to_string")).Invoke (font, glyph, s, size); #endif - // extern hb_bool_t hb_font_is_immutable(hb_font_t* font) + // extern hb_bool_t hb_font_is_immutable(hb_font_t * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3338,7 +3939,7 @@ internal static bool hb_font_is_immutable (hb_font_t font) => (hb_font_is_immutable_delegate ??= GetSymbol ("hb_font_is_immutable")).Invoke (font); #endif - // extern void hb_font_make_immutable(hb_font_t* font) + // extern void hb_font_make_immutable(hb_font_t * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3357,7 +3958,7 @@ internal static void hb_font_make_immutable (hb_font_t font) => (hb_font_make_immutable_delegate ??= GetSymbol ("hb_font_make_immutable")).Invoke (font); #endif - // extern hb_font_t* hb_font_reference(hb_font_t* font) + // extern hb_font_t * hb_font_reference(hb_font_t * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3376,7 +3977,7 @@ internal static hb_font_t hb_font_reference (hb_font_t font) => (hb_font_reference_delegate ??= GetSymbol ("hb_font_reference")).Invoke (font); #endif - // extern void hb_font_set_face(hb_font_t* font, hb_face_t* face) + // extern void hb_font_set_face(hb_font_t * font, hb_face_t * face) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3395,7 +3996,7 @@ internal static void hb_font_set_face (hb_font_t font, hb_face_t face) => (hb_font_set_face_delegate ??= GetSymbol ("hb_font_set_face")).Invoke (font, face); #endif - // extern void hb_font_set_funcs(hb_font_t* font, hb_font_funcs_t* klass, void* font_data, hb_destroy_func_t destroy) + // extern void hb_font_set_funcs(hb_font_t * font, hb_font_funcs_t * klass, void * font_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3414,7 +4015,7 @@ internal static void hb_font_set_funcs (hb_font_t font, hb_font_funcs_t klass, v (hb_font_set_funcs_delegate ??= GetSymbol ("hb_font_set_funcs")).Invoke (font, klass, font_data, destroy); #endif - // extern void hb_font_set_funcs_data(hb_font_t* font, void* font_data, hb_destroy_func_t destroy) + // extern void hb_font_set_funcs_data(hb_font_t * font, void * font_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3433,7 +4034,7 @@ internal static void hb_font_set_funcs_data (hb_font_t font, void* font_data, De (hb_font_set_funcs_data_delegate ??= GetSymbol ("hb_font_set_funcs_data")).Invoke (font, font_data, destroy); #endif - // extern void hb_font_set_parent(hb_font_t* font, hb_font_t* parent) + // extern void hb_font_set_parent(hb_font_t * font, hb_font_t * parent) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3452,7 +4053,7 @@ internal static void hb_font_set_parent (hb_font_t font, hb_font_t parent) => (hb_font_set_parent_delegate ??= GetSymbol ("hb_font_set_parent")).Invoke (font, parent); #endif - // extern void hb_font_set_ppem(hb_font_t* font, unsigned int x_ppem, unsigned int y_ppem) + // extern void hb_font_set_ppem(hb_font_t * font, unsigned int x_ppem, unsigned int y_ppem) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3471,45 +4072,83 @@ internal static void hb_font_set_ppem (hb_font_t font, UInt32 x_ppem, UInt32 y_p (hb_font_set_ppem_delegate ??= GetSymbol ("hb_font_set_ppem")).Invoke (font, x_ppem, y_ppem); #endif - // extern void hb_font_set_ptem(hb_font_t* font, float ptem) + // extern void hb_font_set_ptem(hb_font_t * font, float ptem) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_font_set_ptem (hb_font_t font, Single ptem); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_font_set_ptem (hb_font_t font, Single ptem); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_font_set_ptem (hb_font_t font, Single ptem); + } + private static Delegates.hb_font_set_ptem hb_font_set_ptem_delegate; + internal static void hb_font_set_ptem (hb_font_t font, Single ptem) => + (hb_font_set_ptem_delegate ??= GetSymbol ("hb_font_set_ptem")).Invoke (font, ptem); + #endif + + // extern void hb_font_set_scale(hb_font_t * font, int x_scale, int y_scale) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_font_set_scale (hb_font_t font, Int32 x_scale, Int32 y_scale); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_font_set_scale (hb_font_t font, Int32 x_scale, Int32 y_scale); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_font_set_scale (hb_font_t font, Int32 x_scale, Int32 y_scale); + } + private static Delegates.hb_font_set_scale hb_font_set_scale_delegate; + internal static void hb_font_set_scale (hb_font_t font, Int32 x_scale, Int32 y_scale) => + (hb_font_set_scale_delegate ??= GetSymbol ("hb_font_set_scale")).Invoke (font, x_scale, y_scale); + #endif + + // extern void hb_font_set_synthetic_bold(hb_font_t * font, float x_embolden, float y_embolden, hb_bool_t in_place) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial void hb_font_set_ptem (hb_font_t font, Single ptem); + internal static partial void hb_font_set_synthetic_bold (hb_font_t font, Single x_embolden, Single y_embolden, [MarshalAs (UnmanagedType.I1)] bool in_place); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern void hb_font_set_ptem (hb_font_t font, Single ptem); + internal static extern void hb_font_set_synthetic_bold (hb_font_t font, Single x_embolden, Single y_embolden, [MarshalAs (UnmanagedType.I1)] bool in_place); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate void hb_font_set_ptem (hb_font_t font, Single ptem); + internal delegate void hb_font_set_synthetic_bold (hb_font_t font, Single x_embolden, Single y_embolden, [MarshalAs (UnmanagedType.I1)] bool in_place); } - private static Delegates.hb_font_set_ptem hb_font_set_ptem_delegate; - internal static void hb_font_set_ptem (hb_font_t font, Single ptem) => - (hb_font_set_ptem_delegate ??= GetSymbol ("hb_font_set_ptem")).Invoke (font, ptem); + private static Delegates.hb_font_set_synthetic_bold hb_font_set_synthetic_bold_delegate; + internal static void hb_font_set_synthetic_bold (hb_font_t font, Single x_embolden, Single y_embolden, [MarshalAs (UnmanagedType.I1)] bool in_place) => + (hb_font_set_synthetic_bold_delegate ??= GetSymbol ("hb_font_set_synthetic_bold")).Invoke (font, x_embolden, y_embolden, in_place); #endif - // extern void hb_font_set_scale(hb_font_t* font, int x_scale, int y_scale) + // extern void hb_font_set_synthetic_slant(hb_font_t * font, float slant) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial void hb_font_set_scale (hb_font_t font, Int32 x_scale, Int32 y_scale); + internal static partial void hb_font_set_synthetic_slant (hb_font_t font, Single slant); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern void hb_font_set_scale (hb_font_t font, Int32 x_scale, Int32 y_scale); + internal static extern void hb_font_set_synthetic_slant (hb_font_t font, Single slant); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate void hb_font_set_scale (hb_font_t font, Int32 x_scale, Int32 y_scale); + internal delegate void hb_font_set_synthetic_slant (hb_font_t font, Single slant); } - private static Delegates.hb_font_set_scale hb_font_set_scale_delegate; - internal static void hb_font_set_scale (hb_font_t font, Int32 x_scale, Int32 y_scale) => - (hb_font_set_scale_delegate ??= GetSymbol ("hb_font_set_scale")).Invoke (font, x_scale, y_scale); + private static Delegates.hb_font_set_synthetic_slant hb_font_set_synthetic_slant_delegate; + internal static void hb_font_set_synthetic_slant (hb_font_t font, Single slant) => + (hb_font_set_synthetic_slant_delegate ??= GetSymbol ("hb_font_set_synthetic_slant")).Invoke (font, slant); #endif - // extern void hb_font_set_var_coords_design(hb_font_t* font, const float* coords, unsigned int coords_length) + // extern void hb_font_set_var_coords_design(hb_font_t * font, float const * coords, unsigned int coords_length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3528,7 +4167,7 @@ internal static void hb_font_set_var_coords_design (hb_font_t font, Single* coor (hb_font_set_var_coords_design_delegate ??= GetSymbol ("hb_font_set_var_coords_design")).Invoke (font, coords, coords_length); #endif - // extern void hb_font_set_var_coords_normalized(hb_font_t* font, const int* coords, unsigned int coords_length) + // extern void hb_font_set_var_coords_normalized(hb_font_t * font, int const * coords, unsigned int coords_length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3547,7 +4186,7 @@ internal static void hb_font_set_var_coords_normalized (hb_font_t font, Int32* c (hb_font_set_var_coords_normalized_delegate ??= GetSymbol ("hb_font_set_var_coords_normalized")).Invoke (font, coords, coords_length); #endif - // extern void hb_font_set_var_named_instance(hb_font_t* font, unsigned int instance_index) + // extern void hb_font_set_var_named_instance(hb_font_t * font, unsigned int instance_index) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3566,7 +4205,26 @@ internal static void hb_font_set_var_named_instance (hb_font_t font, UInt32 inst (hb_font_set_var_named_instance_delegate ??= GetSymbol ("hb_font_set_var_named_instance")).Invoke (font, instance_index); #endif - // extern void hb_font_set_variations(hb_font_t* font, const hb_variation_t* variations, unsigned int variations_length) + // extern void hb_font_set_variation(hb_font_t * font, hb_tag_t tag, float value) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_font_set_variation (hb_font_t font, UInt32 tag, Single value); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_font_set_variation (hb_font_t font, UInt32 tag, Single value); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_font_set_variation (hb_font_t font, UInt32 tag, Single value); + } + private static Delegates.hb_font_set_variation hb_font_set_variation_delegate; + internal static void hb_font_set_variation (hb_font_t font, UInt32 tag, Single value) => + (hb_font_set_variation_delegate ??= GetSymbol ("hb_font_set_variation")).Invoke (font, tag, value); + #endif + + // extern void hb_font_set_variations(hb_font_t * font, hb_variation_t const * variations, unsigned int variations_length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3585,7 +4243,7 @@ internal static void hb_font_set_variations (hb_font_t font, Variation* variatio (hb_font_set_variations_delegate ??= GetSymbol ("hb_font_set_variations")).Invoke (font, variations, variations_length); #endif - // extern void hb_font_subtract_glyph_origin_for_direction(hb_font_t* font, hb_codepoint_t glyph, hb_direction_t direction, hb_position_t* x, hb_position_t* y) + // extern void hb_font_subtract_glyph_origin_for_direction(hb_font_t * font, hb_codepoint_t glyph, hb_direction_t direction, hb_position_t * x, hb_position_t * y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3608,7 +4266,7 @@ internal static void hb_font_subtract_glyph_origin_for_direction (hb_font_t font #region hb-map.h - // extern hb_bool_t hb_map_allocation_successful(const hb_map_t* map) + // extern hb_bool_t hb_map_allocation_successful(hb_map_t const * map) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3630,7 +4288,7 @@ internal static bool hb_map_allocation_successful (hb_map_t map) => (hb_map_allocation_successful_delegate ??= GetSymbol ("hb_map_allocation_successful")).Invoke (map); #endif - // extern void hb_map_clear(hb_map_t* map) + // extern void hb_map_clear(hb_map_t * map) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3649,7 +4307,26 @@ internal static void hb_map_clear (hb_map_t map) => (hb_map_clear_delegate ??= GetSymbol ("hb_map_clear")).Invoke (map); #endif - // extern hb_map_t* hb_map_create() + // extern hb_map_t * hb_map_copy(hb_map_t const * map) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial hb_map_t hb_map_copy (hb_map_t map); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern hb_map_t hb_map_copy (hb_map_t map); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate hb_map_t hb_map_copy (hb_map_t map); + } + private static Delegates.hb_map_copy hb_map_copy_delegate; + internal static hb_map_t hb_map_copy (hb_map_t map) => + (hb_map_copy_delegate ??= GetSymbol ("hb_map_copy")).Invoke (map); + #endif + + // extern hb_map_t * hb_map_create() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3668,7 +4345,7 @@ internal static hb_map_t hb_map_create () => (hb_map_create_delegate ??= GetSymbol ("hb_map_create")).Invoke (); #endif - // extern void hb_map_del(hb_map_t* map, hb_codepoint_t key) + // extern void hb_map_del(hb_map_t * map, hb_codepoint_t key) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3687,7 +4364,7 @@ internal static void hb_map_del (hb_map_t map, UInt32 key) => (hb_map_del_delegate ??= GetSymbol ("hb_map_del")).Invoke (map, key); #endif - // extern void hb_map_destroy(hb_map_t* map) + // extern void hb_map_destroy(hb_map_t * map) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3706,7 +4383,7 @@ internal static void hb_map_destroy (hb_map_t map) => (hb_map_destroy_delegate ??= GetSymbol ("hb_map_destroy")).Invoke (map); #endif - // extern hb_codepoint_t hb_map_get(const hb_map_t* map, hb_codepoint_t key) + // extern hb_codepoint_t hb_map_get(hb_map_t const * map, hb_codepoint_t key) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3725,7 +4402,7 @@ internal static UInt32 hb_map_get (hb_map_t map, UInt32 key) => (hb_map_get_delegate ??= GetSymbol ("hb_map_get")).Invoke (map, key); #endif - // extern hb_map_t* hb_map_get_empty() + // extern hb_map_t * hb_map_get_empty() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3744,7 +4421,7 @@ internal static hb_map_t hb_map_get_empty () => (hb_map_get_empty_delegate ??= GetSymbol ("hb_map_get_empty")).Invoke (); #endif - // extern unsigned int hb_map_get_population(const hb_map_t* map) + // extern unsigned int hb_map_get_population(hb_map_t const * map) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3763,7 +4440,7 @@ internal static UInt32 hb_map_get_population (hb_map_t map) => (hb_map_get_population_delegate ??= GetSymbol ("hb_map_get_population")).Invoke (map); #endif - // extern hb_bool_t hb_map_has(const hb_map_t* map, hb_codepoint_t key) + // extern hb_bool_t hb_map_has(hb_map_t const * map, hb_codepoint_t key) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3785,7 +4462,26 @@ internal static bool hb_map_has (hb_map_t map, UInt32 key) => (hb_map_has_delegate ??= GetSymbol ("hb_map_has")).Invoke (map, key); #endif - // extern hb_bool_t hb_map_is_empty(const hb_map_t* map) + // extern unsigned int hb_map_hash(hb_map_t const * map) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial UInt32 hb_map_hash (hb_map_t map); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern UInt32 hb_map_hash (hb_map_t map); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate UInt32 hb_map_hash (hb_map_t map); + } + private static Delegates.hb_map_hash hb_map_hash_delegate; + internal static UInt32 hb_map_hash (hb_map_t map) => + (hb_map_hash_delegate ??= GetSymbol ("hb_map_hash")).Invoke (map); + #endif + + // extern hb_bool_t hb_map_is_empty(hb_map_t const * map) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3807,7 +4503,70 @@ internal static bool hb_map_is_empty (hb_map_t map) => (hb_map_is_empty_delegate ??= GetSymbol ("hb_map_is_empty")).Invoke (map); #endif - // extern hb_map_t* hb_map_reference(hb_map_t* map) + // extern hb_bool_t hb_map_is_equal(hb_map_t const * map, hb_map_t const * other) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + [return: MarshalAs (UnmanagedType.I1)] + internal static partial bool hb_map_is_equal (hb_map_t map, hb_map_t other); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal static extern bool hb_map_is_equal (hb_map_t map, hb_map_t other); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal delegate bool hb_map_is_equal (hb_map_t map, hb_map_t other); + } + private static Delegates.hb_map_is_equal hb_map_is_equal_delegate; + internal static bool hb_map_is_equal (hb_map_t map, hb_map_t other) => + (hb_map_is_equal_delegate ??= GetSymbol ("hb_map_is_equal")).Invoke (map, other); + #endif + + // extern void hb_map_keys(hb_map_t const * map, hb_set_t * keys) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_map_keys (hb_map_t map, hb_set_t keys); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_map_keys (hb_map_t map, hb_set_t keys); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_map_keys (hb_map_t map, hb_set_t keys); + } + private static Delegates.hb_map_keys hb_map_keys_delegate; + internal static void hb_map_keys (hb_map_t map, hb_set_t keys) => + (hb_map_keys_delegate ??= GetSymbol ("hb_map_keys")).Invoke (map, keys); + #endif + + // extern hb_bool_t hb_map_next(hb_map_t const * map, int * idx, hb_codepoint_t * key, hb_codepoint_t * value) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + [return: MarshalAs (UnmanagedType.I1)] + internal static partial bool hb_map_next (hb_map_t map, Int32* idx, UInt32* key, UInt32* value); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal static extern bool hb_map_next (hb_map_t map, Int32* idx, UInt32* key, UInt32* value); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal delegate bool hb_map_next (hb_map_t map, Int32* idx, UInt32* key, UInt32* value); + } + private static Delegates.hb_map_next hb_map_next_delegate; + internal static bool hb_map_next (hb_map_t map, Int32* idx, UInt32* key, UInt32* value) => + (hb_map_next_delegate ??= GetSymbol ("hb_map_next")).Invoke (map, idx, key, value); + #endif + + // extern hb_map_t * hb_map_reference(hb_map_t * map) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3826,7 +4585,7 @@ internal static hb_map_t hb_map_reference (hb_map_t map) => (hb_map_reference_delegate ??= GetSymbol ("hb_map_reference")).Invoke (map); #endif - // extern void hb_map_set(hb_map_t* map, hb_codepoint_t key, hb_codepoint_t value) + // extern void hb_map_set(hb_map_t * map, hb_codepoint_t key, hb_codepoint_t value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3845,11 +4604,49 @@ internal static void hb_map_set (hb_map_t map, UInt32 key, UInt32 value) => (hb_map_set_delegate ??= GetSymbol ("hb_map_set")).Invoke (map, key, value); #endif + // extern void hb_map_update(hb_map_t * map, hb_map_t const * other) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_map_update (hb_map_t map, hb_map_t other); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_map_update (hb_map_t map, hb_map_t other); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_map_update (hb_map_t map, hb_map_t other); + } + private static Delegates.hb_map_update hb_map_update_delegate; + internal static void hb_map_update (hb_map_t map, hb_map_t other) => + (hb_map_update_delegate ??= GetSymbol ("hb_map_update")).Invoke (map, other); + #endif + + // extern void hb_map_values(hb_map_t const * map, hb_set_t * values) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_map_values (hb_map_t map, hb_set_t values); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_map_values (hb_map_t map, hb_set_t values); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_map_values (hb_map_t map, hb_set_t values); + } + private static Delegates.hb_map_values hb_map_values_delegate; + internal static void hb_map_values (hb_map_t map, hb_set_t values) => + (hb_map_values_delegate ??= GetSymbol ("hb_map_values")).Invoke (map, values); + #endif + #endregion #region hb-ot-color.h - // extern unsigned int hb_ot_color_glyph_get_layers(hb_face_t* face, hb_codepoint_t glyph, unsigned int start_offset, unsigned int* layer_count, hb_ot_color_layer_t* layers) + // extern unsigned int hb_ot_color_glyph_get_layers(hb_face_t * face, hb_codepoint_t glyph, unsigned int start_offset, unsigned int * layer_count, hb_ot_color_layer_t * layers) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3868,7 +4665,29 @@ internal static UInt32 hb_ot_color_glyph_get_layers (hb_face_t face, UInt32 glyp (hb_ot_color_glyph_get_layers_delegate ??= GetSymbol ("hb_ot_color_glyph_get_layers")).Invoke (face, glyph, start_offset, layer_count, layers); #endif - // extern hb_blob_t* hb_ot_color_glyph_reference_png(hb_font_t* font, hb_codepoint_t glyph) + // extern hb_bool_t hb_ot_color_glyph_has_paint(hb_face_t * face, hb_codepoint_t glyph) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + [return: MarshalAs (UnmanagedType.I1)] + internal static partial bool hb_ot_color_glyph_has_paint (hb_face_t face, UInt32 glyph); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal static extern bool hb_ot_color_glyph_has_paint (hb_face_t face, UInt32 glyph); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal delegate bool hb_ot_color_glyph_has_paint (hb_face_t face, UInt32 glyph); + } + private static Delegates.hb_ot_color_glyph_has_paint hb_ot_color_glyph_has_paint_delegate; + internal static bool hb_ot_color_glyph_has_paint (hb_face_t face, UInt32 glyph) => + (hb_ot_color_glyph_has_paint_delegate ??= GetSymbol ("hb_ot_color_glyph_has_paint")).Invoke (face, glyph); + #endif + + // extern hb_blob_t * hb_ot_color_glyph_reference_png(hb_font_t * font, hb_codepoint_t glyph) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3887,7 +4706,7 @@ internal static hb_blob_t hb_ot_color_glyph_reference_png (hb_font_t font, UInt3 (hb_ot_color_glyph_reference_png_delegate ??= GetSymbol ("hb_ot_color_glyph_reference_png")).Invoke (font, glyph); #endif - // extern hb_blob_t* hb_ot_color_glyph_reference_svg(hb_face_t* face, hb_codepoint_t glyph) + // extern hb_blob_t * hb_ot_color_glyph_reference_svg(hb_face_t * face, hb_codepoint_t glyph) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3906,7 +4725,7 @@ internal static hb_blob_t hb_ot_color_glyph_reference_svg (hb_face_t face, UInt3 (hb_ot_color_glyph_reference_svg_delegate ??= GetSymbol ("hb_ot_color_glyph_reference_svg")).Invoke (face, glyph); #endif - // extern hb_bool_t hb_ot_color_has_layers(hb_face_t* face) + // extern hb_bool_t hb_ot_color_has_layers(hb_face_t * face) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3928,7 +4747,29 @@ internal static bool hb_ot_color_has_layers (hb_face_t face) => (hb_ot_color_has_layers_delegate ??= GetSymbol ("hb_ot_color_has_layers")).Invoke (face); #endif - // extern hb_bool_t hb_ot_color_has_palettes(hb_face_t* face) + // extern hb_bool_t hb_ot_color_has_paint(hb_face_t * face) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + [return: MarshalAs (UnmanagedType.I1)] + internal static partial bool hb_ot_color_has_paint (hb_face_t face); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal static extern bool hb_ot_color_has_paint (hb_face_t face); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal delegate bool hb_ot_color_has_paint (hb_face_t face); + } + private static Delegates.hb_ot_color_has_paint hb_ot_color_has_paint_delegate; + internal static bool hb_ot_color_has_paint (hb_face_t face) => + (hb_ot_color_has_paint_delegate ??= GetSymbol ("hb_ot_color_has_paint")).Invoke (face); + #endif + + // extern hb_bool_t hb_ot_color_has_palettes(hb_face_t * face) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3950,7 +4791,7 @@ internal static bool hb_ot_color_has_palettes (hb_face_t face) => (hb_ot_color_has_palettes_delegate ??= GetSymbol ("hb_ot_color_has_palettes")).Invoke (face); #endif - // extern hb_bool_t hb_ot_color_has_png(hb_face_t* face) + // extern hb_bool_t hb_ot_color_has_png(hb_face_t * face) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3972,7 +4813,7 @@ internal static bool hb_ot_color_has_png (hb_face_t face) => (hb_ot_color_has_png_delegate ??= GetSymbol ("hb_ot_color_has_png")).Invoke (face); #endif - // extern hb_bool_t hb_ot_color_has_svg(hb_face_t* face) + // extern hb_bool_t hb_ot_color_has_svg(hb_face_t * face) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -3994,7 +4835,7 @@ internal static bool hb_ot_color_has_svg (hb_face_t face) => (hb_ot_color_has_svg_delegate ??= GetSymbol ("hb_ot_color_has_svg")).Invoke (face); #endif - // extern hb_ot_name_id_t hb_ot_color_palette_color_get_name_id(hb_face_t* face, unsigned int color_index) + // extern hb_ot_name_id_t hb_ot_color_palette_color_get_name_id(hb_face_t * face, unsigned int color_index) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4013,7 +4854,7 @@ internal static OpenTypeNameId hb_ot_color_palette_color_get_name_id (hb_face_t (hb_ot_color_palette_color_get_name_id_delegate ??= GetSymbol ("hb_ot_color_palette_color_get_name_id")).Invoke (face, color_index); #endif - // extern unsigned int hb_ot_color_palette_get_colors(hb_face_t* face, unsigned int palette_index, unsigned int start_offset, unsigned int* color_count, hb_color_t* colors) + // extern unsigned int hb_ot_color_palette_get_colors(hb_face_t * face, unsigned int palette_index, unsigned int start_offset, unsigned int * color_count, hb_color_t * colors) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4032,7 +4873,7 @@ internal static UInt32 hb_ot_color_palette_get_colors (hb_face_t face, UInt32 pa (hb_ot_color_palette_get_colors_delegate ??= GetSymbol ("hb_ot_color_palette_get_colors")).Invoke (face, palette_index, start_offset, color_count, colors); #endif - // extern unsigned int hb_ot_color_palette_get_count(hb_face_t* face) + // extern unsigned int hb_ot_color_palette_get_count(hb_face_t * face) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4051,7 +4892,7 @@ internal static UInt32 hb_ot_color_palette_get_count (hb_face_t face) => (hb_ot_color_palette_get_count_delegate ??= GetSymbol ("hb_ot_color_palette_get_count")).Invoke (face); #endif - // extern hb_ot_color_palette_flags_t hb_ot_color_palette_get_flags(hb_face_t* face, unsigned int palette_index) + // extern hb_ot_color_palette_flags_t hb_ot_color_palette_get_flags(hb_face_t * face, unsigned int palette_index) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4070,7 +4911,7 @@ internal static OpenTypeColorPaletteFlags hb_ot_color_palette_get_flags (hb_face (hb_ot_color_palette_get_flags_delegate ??= GetSymbol ("hb_ot_color_palette_get_flags")).Invoke (face, palette_index); #endif - // extern hb_ot_name_id_t hb_ot_color_palette_get_name_id(hb_face_t* face, unsigned int palette_index) + // extern hb_ot_name_id_t hb_ot_color_palette_get_name_id(hb_face_t * face, unsigned int palette_index) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4093,7 +4934,7 @@ internal static OpenTypeNameId hb_ot_color_palette_get_name_id (hb_face_t face, #region hb-ot-font.h - // extern void hb_ot_font_set_funcs(hb_font_t* font) + // extern void hb_ot_font_set_funcs(hb_font_t * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4116,7 +4957,7 @@ internal static void hb_ot_font_set_funcs (hb_font_t font) => #region hb-ot-layout.h - // extern void hb_ot_layout_collect_features(hb_face_t* face, hb_tag_t table_tag, const hb_tag_t* scripts, const hb_tag_t* languages, const hb_tag_t* features, hb_set_t* feature_indexes) + // extern void hb_ot_layout_collect_features(hb_face_t * face, hb_tag_t table_tag, hb_tag_t const * scripts, hb_tag_t const * languages, hb_tag_t const * features, hb_set_t * feature_indexes) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4135,7 +4976,26 @@ internal static void hb_ot_layout_collect_features (hb_face_t face, UInt32 table (hb_ot_layout_collect_features_delegate ??= GetSymbol ("hb_ot_layout_collect_features")).Invoke (face, table_tag, scripts, languages, features, feature_indexes); #endif - // extern void hb_ot_layout_collect_lookups(hb_face_t* face, hb_tag_t table_tag, const hb_tag_t* scripts, const hb_tag_t* languages, const hb_tag_t* features, hb_set_t* lookup_indexes) + // extern void hb_ot_layout_collect_features_map(hb_face_t * face, hb_tag_t table_tag, unsigned int script_index, unsigned int language_index, hb_map_t * feature_map) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_ot_layout_collect_features_map (hb_face_t face, UInt32 table_tag, UInt32 script_index, UInt32 language_index, hb_map_t feature_map); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_ot_layout_collect_features_map (hb_face_t face, UInt32 table_tag, UInt32 script_index, UInt32 language_index, hb_map_t feature_map); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_ot_layout_collect_features_map (hb_face_t face, UInt32 table_tag, UInt32 script_index, UInt32 language_index, hb_map_t feature_map); + } + private static Delegates.hb_ot_layout_collect_features_map hb_ot_layout_collect_features_map_delegate; + internal static void hb_ot_layout_collect_features_map (hb_face_t face, UInt32 table_tag, UInt32 script_index, UInt32 language_index, hb_map_t feature_map) => + (hb_ot_layout_collect_features_map_delegate ??= GetSymbol ("hb_ot_layout_collect_features_map")).Invoke (face, table_tag, script_index, language_index, feature_map); + #endif + + // extern void hb_ot_layout_collect_lookups(hb_face_t * face, hb_tag_t table_tag, hb_tag_t const * scripts, hb_tag_t const * languages, hb_tag_t const * features, hb_set_t * lookup_indexes) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4154,7 +5014,7 @@ internal static void hb_ot_layout_collect_lookups (hb_face_t face, UInt32 table_ (hb_ot_layout_collect_lookups_delegate ??= GetSymbol ("hb_ot_layout_collect_lookups")).Invoke (face, table_tag, scripts, languages, features, lookup_indexes); #endif - // extern unsigned int hb_ot_layout_feature_get_characters(hb_face_t* face, hb_tag_t table_tag, unsigned int feature_index, unsigned int start_offset, unsigned int* char_count, hb_codepoint_t* characters) + // extern unsigned int hb_ot_layout_feature_get_characters(hb_face_t * face, hb_tag_t table_tag, unsigned int feature_index, unsigned int start_offset, unsigned int * char_count, hb_codepoint_t * characters) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4173,7 +5033,7 @@ internal static UInt32 hb_ot_layout_feature_get_characters (hb_face_t face, UInt (hb_ot_layout_feature_get_characters_delegate ??= GetSymbol ("hb_ot_layout_feature_get_characters")).Invoke (face, table_tag, feature_index, start_offset, char_count, characters); #endif - // extern unsigned int hb_ot_layout_feature_get_lookups(hb_face_t* face, hb_tag_t table_tag, unsigned int feature_index, unsigned int start_offset, unsigned int* lookup_count, unsigned int* lookup_indexes) + // extern unsigned int hb_ot_layout_feature_get_lookups(hb_face_t * face, hb_tag_t table_tag, unsigned int feature_index, unsigned int start_offset, unsigned int * lookup_count, unsigned int * lookup_indexes) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4192,7 +5052,7 @@ internal static UInt32 hb_ot_layout_feature_get_lookups (hb_face_t face, UInt32 (hb_ot_layout_feature_get_lookups_delegate ??= GetSymbol ("hb_ot_layout_feature_get_lookups")).Invoke (face, table_tag, feature_index, start_offset, lookup_count, lookup_indexes); #endif - // extern hb_bool_t hb_ot_layout_feature_get_name_ids(hb_face_t* face, hb_tag_t table_tag, unsigned int feature_index, hb_ot_name_id_t* label_id, hb_ot_name_id_t* tooltip_id, hb_ot_name_id_t* sample_id, unsigned int* num_named_parameters, hb_ot_name_id_t* first_param_id) + // extern hb_bool_t hb_ot_layout_feature_get_name_ids(hb_face_t * face, hb_tag_t table_tag, unsigned int feature_index, hb_ot_name_id_t * label_id, hb_ot_name_id_t * tooltip_id, hb_ot_name_id_t * sample_id, unsigned int * num_named_parameters, hb_ot_name_id_t * first_param_id) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4214,7 +5074,7 @@ internal static bool hb_ot_layout_feature_get_name_ids (hb_face_t face, UInt32 t (hb_ot_layout_feature_get_name_ids_delegate ??= GetSymbol ("hb_ot_layout_feature_get_name_ids")).Invoke (face, table_tag, feature_index, label_id, tooltip_id, sample_id, num_named_parameters, first_param_id); #endif - // extern unsigned int hb_ot_layout_feature_with_variations_get_lookups(hb_face_t* face, hb_tag_t table_tag, unsigned int feature_index, unsigned int variations_index, unsigned int start_offset, unsigned int* lookup_count, unsigned int* lookup_indexes) + // extern unsigned int hb_ot_layout_feature_with_variations_get_lookups(hb_face_t * face, hb_tag_t table_tag, unsigned int feature_index, unsigned int variations_index, unsigned int start_offset, unsigned int * lookup_count, unsigned int * lookup_indexes) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4233,7 +5093,7 @@ internal static UInt32 hb_ot_layout_feature_with_variations_get_lookups (hb_face (hb_ot_layout_feature_with_variations_get_lookups_delegate ??= GetSymbol ("hb_ot_layout_feature_with_variations_get_lookups")).Invoke (face, table_tag, feature_index, variations_index, start_offset, lookup_count, lookup_indexes); #endif - // extern unsigned int hb_ot_layout_get_attach_points(hb_face_t* face, hb_codepoint_t glyph, unsigned int start_offset, unsigned int* point_count, unsigned int* point_array) + // extern unsigned int hb_ot_layout_get_attach_points(hb_face_t * face, hb_codepoint_t glyph, unsigned int start_offset, unsigned int * point_count, unsigned int * point_array) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4252,7 +5112,7 @@ internal static UInt32 hb_ot_layout_get_attach_points (hb_face_t face, UInt32 gl (hb_ot_layout_get_attach_points_delegate ??= GetSymbol ("hb_ot_layout_get_attach_points")).Invoke (face, glyph, start_offset, point_count, point_array); #endif - // extern hb_bool_t hb_ot_layout_get_baseline(hb_font_t* font, hb_ot_layout_baseline_tag_t baseline_tag, hb_direction_t direction, hb_tag_t script_tag, hb_tag_t language_tag, hb_position_t* coord) + // extern hb_bool_t hb_ot_layout_get_baseline(hb_font_t * font, hb_ot_layout_baseline_tag_t baseline_tag, hb_direction_t direction, hb_tag_t script_tag, hb_tag_t language_tag, hb_position_t * coord) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4274,7 +5134,111 @@ internal static bool hb_ot_layout_get_baseline (hb_font_t font, OpenTypeLayoutBa (hb_ot_layout_get_baseline_delegate ??= GetSymbol ("hb_ot_layout_get_baseline")).Invoke (font, baseline_tag, direction, script_tag, language_tag, coord); #endif - // extern hb_ot_layout_glyph_class_t hb_ot_layout_get_glyph_class(hb_face_t* face, hb_codepoint_t glyph) + // extern void hb_ot_layout_get_baseline_with_fallback(hb_font_t * font, hb_ot_layout_baseline_tag_t baseline_tag, hb_direction_t direction, hb_tag_t script_tag, hb_tag_t language_tag, hb_position_t * coord) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_ot_layout_get_baseline_with_fallback (hb_font_t font, OpenTypeLayoutBaselineTag baseline_tag, Direction direction, UInt32 script_tag, UInt32 language_tag, Int32* coord); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_ot_layout_get_baseline_with_fallback (hb_font_t font, OpenTypeLayoutBaselineTag baseline_tag, Direction direction, UInt32 script_tag, UInt32 language_tag, Int32* coord); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_ot_layout_get_baseline_with_fallback (hb_font_t font, OpenTypeLayoutBaselineTag baseline_tag, Direction direction, UInt32 script_tag, UInt32 language_tag, Int32* coord); + } + private static Delegates.hb_ot_layout_get_baseline_with_fallback hb_ot_layout_get_baseline_with_fallback_delegate; + internal static void hb_ot_layout_get_baseline_with_fallback (hb_font_t font, OpenTypeLayoutBaselineTag baseline_tag, Direction direction, UInt32 script_tag, UInt32 language_tag, Int32* coord) => + (hb_ot_layout_get_baseline_with_fallback_delegate ??= GetSymbol ("hb_ot_layout_get_baseline_with_fallback")).Invoke (font, baseline_tag, direction, script_tag, language_tag, coord); + #endif + + // extern void hb_ot_layout_get_baseline_with_fallback2(hb_font_t * font, hb_ot_layout_baseline_tag_t baseline_tag, hb_direction_t direction, hb_script_t script, hb_language_t language, hb_position_t * coord) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_ot_layout_get_baseline_with_fallback2 (hb_font_t font, OpenTypeLayoutBaselineTag baseline_tag, Direction direction, UInt32 script, IntPtr language, Int32* coord); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_ot_layout_get_baseline_with_fallback2 (hb_font_t font, OpenTypeLayoutBaselineTag baseline_tag, Direction direction, UInt32 script, IntPtr language, Int32* coord); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_ot_layout_get_baseline_with_fallback2 (hb_font_t font, OpenTypeLayoutBaselineTag baseline_tag, Direction direction, UInt32 script, IntPtr language, Int32* coord); + } + private static Delegates.hb_ot_layout_get_baseline_with_fallback2 hb_ot_layout_get_baseline_with_fallback2_delegate; + internal static void hb_ot_layout_get_baseline_with_fallback2 (hb_font_t font, OpenTypeLayoutBaselineTag baseline_tag, Direction direction, UInt32 script, IntPtr language, Int32* coord) => + (hb_ot_layout_get_baseline_with_fallback2_delegate ??= GetSymbol ("hb_ot_layout_get_baseline_with_fallback2")).Invoke (font, baseline_tag, direction, script, language, coord); + #endif + + // extern hb_bool_t hb_ot_layout_get_baseline2(hb_font_t * font, hb_ot_layout_baseline_tag_t baseline_tag, hb_direction_t direction, hb_script_t script, hb_language_t language, hb_position_t * coord) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + [return: MarshalAs (UnmanagedType.I1)] + internal static partial bool hb_ot_layout_get_baseline2 (hb_font_t font, OpenTypeLayoutBaselineTag baseline_tag, Direction direction, UInt32 script, IntPtr language, Int32* coord); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal static extern bool hb_ot_layout_get_baseline2 (hb_font_t font, OpenTypeLayoutBaselineTag baseline_tag, Direction direction, UInt32 script, IntPtr language, Int32* coord); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal delegate bool hb_ot_layout_get_baseline2 (hb_font_t font, OpenTypeLayoutBaselineTag baseline_tag, Direction direction, UInt32 script, IntPtr language, Int32* coord); + } + private static Delegates.hb_ot_layout_get_baseline2 hb_ot_layout_get_baseline2_delegate; + internal static bool hb_ot_layout_get_baseline2 (hb_font_t font, OpenTypeLayoutBaselineTag baseline_tag, Direction direction, UInt32 script, IntPtr language, Int32* coord) => + (hb_ot_layout_get_baseline2_delegate ??= GetSymbol ("hb_ot_layout_get_baseline2")).Invoke (font, baseline_tag, direction, script, language, coord); + #endif + + // extern hb_bool_t hb_ot_layout_get_font_extents(hb_font_t * font, hb_direction_t direction, hb_tag_t script_tag, hb_tag_t language_tag, hb_font_extents_t * extents) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + [return: MarshalAs (UnmanagedType.I1)] + internal static partial bool hb_ot_layout_get_font_extents (hb_font_t font, Direction direction, UInt32 script_tag, UInt32 language_tag, FontExtents* extents); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal static extern bool hb_ot_layout_get_font_extents (hb_font_t font, Direction direction, UInt32 script_tag, UInt32 language_tag, FontExtents* extents); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal delegate bool hb_ot_layout_get_font_extents (hb_font_t font, Direction direction, UInt32 script_tag, UInt32 language_tag, FontExtents* extents); + } + private static Delegates.hb_ot_layout_get_font_extents hb_ot_layout_get_font_extents_delegate; + internal static bool hb_ot_layout_get_font_extents (hb_font_t font, Direction direction, UInt32 script_tag, UInt32 language_tag, FontExtents* extents) => + (hb_ot_layout_get_font_extents_delegate ??= GetSymbol ("hb_ot_layout_get_font_extents")).Invoke (font, direction, script_tag, language_tag, extents); + #endif + + // extern hb_bool_t hb_ot_layout_get_font_extents2(hb_font_t * font, hb_direction_t direction, hb_script_t script, hb_language_t language, hb_font_extents_t * extents) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + [return: MarshalAs (UnmanagedType.I1)] + internal static partial bool hb_ot_layout_get_font_extents2 (hb_font_t font, Direction direction, UInt32 script, IntPtr language, FontExtents* extents); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal static extern bool hb_ot_layout_get_font_extents2 (hb_font_t font, Direction direction, UInt32 script, IntPtr language, FontExtents* extents); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal delegate bool hb_ot_layout_get_font_extents2 (hb_font_t font, Direction direction, UInt32 script, IntPtr language, FontExtents* extents); + } + private static Delegates.hb_ot_layout_get_font_extents2 hb_ot_layout_get_font_extents2_delegate; + internal static bool hb_ot_layout_get_font_extents2 (hb_font_t font, Direction direction, UInt32 script, IntPtr language, FontExtents* extents) => + (hb_ot_layout_get_font_extents2_delegate ??= GetSymbol ("hb_ot_layout_get_font_extents2")).Invoke (font, direction, script, language, extents); + #endif + + // extern hb_ot_layout_glyph_class_t hb_ot_layout_get_glyph_class(hb_face_t * face, hb_codepoint_t glyph) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4293,7 +5257,7 @@ internal static OpenTypeLayoutGlyphClass hb_ot_layout_get_glyph_class (hb_face_t (hb_ot_layout_get_glyph_class_delegate ??= GetSymbol ("hb_ot_layout_get_glyph_class")).Invoke (face, glyph); #endif - // extern void hb_ot_layout_get_glyphs_in_class(hb_face_t* face, hb_ot_layout_glyph_class_t klass, hb_set_t* glyphs) + // extern void hb_ot_layout_get_glyphs_in_class(hb_face_t * face, hb_ot_layout_glyph_class_t klass, hb_set_t * glyphs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4312,7 +5276,26 @@ internal static void hb_ot_layout_get_glyphs_in_class (hb_face_t face, OpenTypeL (hb_ot_layout_get_glyphs_in_class_delegate ??= GetSymbol ("hb_ot_layout_get_glyphs_in_class")).Invoke (face, klass, glyphs); #endif - // extern unsigned int hb_ot_layout_get_ligature_carets(hb_font_t* font, hb_direction_t direction, hb_codepoint_t glyph, unsigned int start_offset, unsigned int* caret_count, hb_position_t* caret_array) + // extern hb_ot_layout_baseline_tag_t hb_ot_layout_get_horizontal_baseline_tag_for_script(hb_script_t script) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial OpenTypeLayoutBaselineTag hb_ot_layout_get_horizontal_baseline_tag_for_script (UInt32 script); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern OpenTypeLayoutBaselineTag hb_ot_layout_get_horizontal_baseline_tag_for_script (UInt32 script); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate OpenTypeLayoutBaselineTag hb_ot_layout_get_horizontal_baseline_tag_for_script (UInt32 script); + } + private static Delegates.hb_ot_layout_get_horizontal_baseline_tag_for_script hb_ot_layout_get_horizontal_baseline_tag_for_script_delegate; + internal static OpenTypeLayoutBaselineTag hb_ot_layout_get_horizontal_baseline_tag_for_script (UInt32 script) => + (hb_ot_layout_get_horizontal_baseline_tag_for_script_delegate ??= GetSymbol ("hb_ot_layout_get_horizontal_baseline_tag_for_script")).Invoke (script); + #endif + + // extern unsigned int hb_ot_layout_get_ligature_carets(hb_font_t * font, hb_direction_t direction, hb_codepoint_t glyph, unsigned int start_offset, unsigned int * caret_count, hb_position_t * caret_array) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4331,7 +5314,7 @@ internal static UInt32 hb_ot_layout_get_ligature_carets (hb_font_t font, Directi (hb_ot_layout_get_ligature_carets_delegate ??= GetSymbol ("hb_ot_layout_get_ligature_carets")).Invoke (font, direction, glyph, start_offset, caret_count, caret_array); #endif - // extern hb_bool_t hb_ot_layout_get_size_params(hb_face_t* face, unsigned int* design_size, unsigned int* subfamily_id, hb_ot_name_id_t* subfamily_name_id, unsigned int* range_start, unsigned int* range_end) + // extern hb_bool_t hb_ot_layout_get_size_params(hb_face_t * face, unsigned int * design_size, unsigned int * subfamily_id, hb_ot_name_id_t * subfamily_name_id, unsigned int * range_start, unsigned int * range_end) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4353,7 +5336,7 @@ internal static bool hb_ot_layout_get_size_params (hb_face_t face, UInt32* desig (hb_ot_layout_get_size_params_delegate ??= GetSymbol ("hb_ot_layout_get_size_params")).Invoke (face, design_size, subfamily_id, subfamily_name_id, range_start, range_end); #endif - // extern hb_bool_t hb_ot_layout_has_glyph_classes(hb_face_t* face) + // extern hb_bool_t hb_ot_layout_has_glyph_classes(hb_face_t * face) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4375,7 +5358,7 @@ internal static bool hb_ot_layout_has_glyph_classes (hb_face_t face) => (hb_ot_layout_has_glyph_classes_delegate ??= GetSymbol ("hb_ot_layout_has_glyph_classes")).Invoke (face); #endif - // extern hb_bool_t hb_ot_layout_has_positioning(hb_face_t* face) + // extern hb_bool_t hb_ot_layout_has_positioning(hb_face_t * face) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4397,7 +5380,7 @@ internal static bool hb_ot_layout_has_positioning (hb_face_t face) => (hb_ot_layout_has_positioning_delegate ??= GetSymbol ("hb_ot_layout_has_positioning")).Invoke (face); #endif - // extern hb_bool_t hb_ot_layout_has_substitution(hb_face_t* face) + // extern hb_bool_t hb_ot_layout_has_substitution(hb_face_t * face) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4419,7 +5402,7 @@ internal static bool hb_ot_layout_has_substitution (hb_face_t face) => (hb_ot_layout_has_substitution_delegate ??= GetSymbol ("hb_ot_layout_has_substitution")).Invoke (face); #endif - // extern hb_bool_t hb_ot_layout_language_find_feature(hb_face_t* face, hb_tag_t table_tag, unsigned int script_index, unsigned int language_index, hb_tag_t feature_tag, unsigned int* feature_index) + // extern hb_bool_t hb_ot_layout_language_find_feature(hb_face_t * face, hb_tag_t table_tag, unsigned int script_index, unsigned int language_index, hb_tag_t feature_tag, unsigned int * feature_index) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4441,7 +5424,7 @@ internal static bool hb_ot_layout_language_find_feature (hb_face_t face, UInt32 (hb_ot_layout_language_find_feature_delegate ??= GetSymbol ("hb_ot_layout_language_find_feature")).Invoke (face, table_tag, script_index, language_index, feature_tag, feature_index); #endif - // extern unsigned int hb_ot_layout_language_get_feature_indexes(hb_face_t* face, hb_tag_t table_tag, unsigned int script_index, unsigned int language_index, unsigned int start_offset, unsigned int* feature_count, unsigned int* feature_indexes) + // extern unsigned int hb_ot_layout_language_get_feature_indexes(hb_face_t * face, hb_tag_t table_tag, unsigned int script_index, unsigned int language_index, unsigned int start_offset, unsigned int * feature_count, unsigned int * feature_indexes) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4460,7 +5443,7 @@ internal static UInt32 hb_ot_layout_language_get_feature_indexes (hb_face_t face (hb_ot_layout_language_get_feature_indexes_delegate ??= GetSymbol ("hb_ot_layout_language_get_feature_indexes")).Invoke (face, table_tag, script_index, language_index, start_offset, feature_count, feature_indexes); #endif - // extern unsigned int hb_ot_layout_language_get_feature_tags(hb_face_t* face, hb_tag_t table_tag, unsigned int script_index, unsigned int language_index, unsigned int start_offset, unsigned int* feature_count, hb_tag_t* feature_tags) + // extern unsigned int hb_ot_layout_language_get_feature_tags(hb_face_t * face, hb_tag_t table_tag, unsigned int script_index, unsigned int language_index, unsigned int start_offset, unsigned int * feature_count, hb_tag_t * feature_tags) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4479,7 +5462,7 @@ internal static UInt32 hb_ot_layout_language_get_feature_tags (hb_face_t face, U (hb_ot_layout_language_get_feature_tags_delegate ??= GetSymbol ("hb_ot_layout_language_get_feature_tags")).Invoke (face, table_tag, script_index, language_index, start_offset, feature_count, feature_tags); #endif - // extern hb_bool_t hb_ot_layout_language_get_required_feature(hb_face_t* face, hb_tag_t table_tag, unsigned int script_index, unsigned int language_index, unsigned int* feature_index, hb_tag_t* feature_tag) + // extern hb_bool_t hb_ot_layout_language_get_required_feature(hb_face_t * face, hb_tag_t table_tag, unsigned int script_index, unsigned int language_index, unsigned int * feature_index, hb_tag_t * feature_tag) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4501,7 +5484,7 @@ internal static bool hb_ot_layout_language_get_required_feature (hb_face_t face, (hb_ot_layout_language_get_required_feature_delegate ??= GetSymbol ("hb_ot_layout_language_get_required_feature")).Invoke (face, table_tag, script_index, language_index, feature_index, feature_tag); #endif - // extern hb_bool_t hb_ot_layout_language_get_required_feature_index(hb_face_t* face, hb_tag_t table_tag, unsigned int script_index, unsigned int language_index, unsigned int* feature_index) + // extern hb_bool_t hb_ot_layout_language_get_required_feature_index(hb_face_t * face, hb_tag_t table_tag, unsigned int script_index, unsigned int language_index, unsigned int * feature_index) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4523,7 +5506,7 @@ internal static bool hb_ot_layout_language_get_required_feature_index (hb_face_t (hb_ot_layout_language_get_required_feature_index_delegate ??= GetSymbol ("hb_ot_layout_language_get_required_feature_index")).Invoke (face, table_tag, script_index, language_index, feature_index); #endif - // extern void hb_ot_layout_lookup_collect_glyphs(hb_face_t* face, hb_tag_t table_tag, unsigned int lookup_index, hb_set_t* glyphs_before, hb_set_t* glyphs_input, hb_set_t* glyphs_after, hb_set_t* glyphs_output) + // extern void hb_ot_layout_lookup_collect_glyphs(hb_face_t * face, hb_tag_t table_tag, unsigned int lookup_index, hb_set_t * glyphs_before, hb_set_t * glyphs_input, hb_set_t * glyphs_after, hb_set_t * glyphs_output) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4542,26 +5525,45 @@ internal static void hb_ot_layout_lookup_collect_glyphs (hb_face_t face, UInt32 (hb_ot_layout_lookup_collect_glyphs_delegate ??= GetSymbol ("hb_ot_layout_lookup_collect_glyphs")).Invoke (face, table_tag, lookup_index, glyphs_before, glyphs_input, glyphs_after, glyphs_output); #endif - // extern unsigned int hb_ot_layout_lookup_get_glyph_alternates(hb_face_t* face, unsigned int lookup_index, hb_codepoint_t glyph, unsigned int start_offset, unsigned int* alternate_count, hb_codepoint_t* alternate_glyphs) + // extern unsigned int hb_ot_layout_lookup_get_glyph_alternates(hb_face_t * face, unsigned int lookup_index, hb_codepoint_t glyph, unsigned int start_offset, unsigned int * alternate_count, hb_codepoint_t * alternate_glyphs) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial UInt32 hb_ot_layout_lookup_get_glyph_alternates (hb_face_t face, UInt32 lookup_index, UInt32 glyph, UInt32 start_offset, UInt32* alternate_count, UInt32* alternate_glyphs); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern UInt32 hb_ot_layout_lookup_get_glyph_alternates (hb_face_t face, UInt32 lookup_index, UInt32 glyph, UInt32 start_offset, UInt32* alternate_count, UInt32* alternate_glyphs); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate UInt32 hb_ot_layout_lookup_get_glyph_alternates (hb_face_t face, UInt32 lookup_index, UInt32 glyph, UInt32 start_offset, UInt32* alternate_count, UInt32* alternate_glyphs); + } + private static Delegates.hb_ot_layout_lookup_get_glyph_alternates hb_ot_layout_lookup_get_glyph_alternates_delegate; + internal static UInt32 hb_ot_layout_lookup_get_glyph_alternates (hb_face_t face, UInt32 lookup_index, UInt32 glyph, UInt32 start_offset, UInt32* alternate_count, UInt32* alternate_glyphs) => + (hb_ot_layout_lookup_get_glyph_alternates_delegate ??= GetSymbol ("hb_ot_layout_lookup_get_glyph_alternates")).Invoke (face, lookup_index, glyph, start_offset, alternate_count, alternate_glyphs); + #endif + + // extern hb_position_t hb_ot_layout_lookup_get_optical_bound(hb_font_t * font, unsigned int lookup_index, hb_direction_t direction, hb_codepoint_t glyph) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] - internal static partial UInt32 hb_ot_layout_lookup_get_glyph_alternates (hb_face_t face, UInt32 lookup_index, UInt32 glyph, UInt32 start_offset, UInt32* alternate_count, UInt32* alternate_glyphs); + internal static partial Int32 hb_ot_layout_lookup_get_optical_bound (hb_font_t font, UInt32 lookup_index, Direction direction, UInt32 glyph); #else // !USE_LIBRARY_IMPORT [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] - internal static extern UInt32 hb_ot_layout_lookup_get_glyph_alternates (hb_face_t face, UInt32 lookup_index, UInt32 glyph, UInt32 start_offset, UInt32* alternate_count, UInt32* alternate_glyphs); + internal static extern Int32 hb_ot_layout_lookup_get_optical_bound (hb_font_t font, UInt32 lookup_index, Direction direction, UInt32 glyph); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] - internal delegate UInt32 hb_ot_layout_lookup_get_glyph_alternates (hb_face_t face, UInt32 lookup_index, UInt32 glyph, UInt32 start_offset, UInt32* alternate_count, UInt32* alternate_glyphs); + internal delegate Int32 hb_ot_layout_lookup_get_optical_bound (hb_font_t font, UInt32 lookup_index, Direction direction, UInt32 glyph); } - private static Delegates.hb_ot_layout_lookup_get_glyph_alternates hb_ot_layout_lookup_get_glyph_alternates_delegate; - internal static UInt32 hb_ot_layout_lookup_get_glyph_alternates (hb_face_t face, UInt32 lookup_index, UInt32 glyph, UInt32 start_offset, UInt32* alternate_count, UInt32* alternate_glyphs) => - (hb_ot_layout_lookup_get_glyph_alternates_delegate ??= GetSymbol ("hb_ot_layout_lookup_get_glyph_alternates")).Invoke (face, lookup_index, glyph, start_offset, alternate_count, alternate_glyphs); + private static Delegates.hb_ot_layout_lookup_get_optical_bound hb_ot_layout_lookup_get_optical_bound_delegate; + internal static Int32 hb_ot_layout_lookup_get_optical_bound (hb_font_t font, UInt32 lookup_index, Direction direction, UInt32 glyph) => + (hb_ot_layout_lookup_get_optical_bound_delegate ??= GetSymbol ("hb_ot_layout_lookup_get_optical_bound")).Invoke (font, lookup_index, direction, glyph); #endif - // extern void hb_ot_layout_lookup_substitute_closure(hb_face_t* face, unsigned int lookup_index, hb_set_t* glyphs) + // extern void hb_ot_layout_lookup_substitute_closure(hb_face_t * face, unsigned int lookup_index, hb_set_t * glyphs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4580,7 +5582,7 @@ internal static void hb_ot_layout_lookup_substitute_closure (hb_face_t face, UIn (hb_ot_layout_lookup_substitute_closure_delegate ??= GetSymbol ("hb_ot_layout_lookup_substitute_closure")).Invoke (face, lookup_index, glyphs); #endif - // extern hb_bool_t hb_ot_layout_lookup_would_substitute(hb_face_t* face, unsigned int lookup_index, const hb_codepoint_t* glyphs, unsigned int glyphs_length, hb_bool_t zero_context) + // extern hb_bool_t hb_ot_layout_lookup_would_substitute(hb_face_t * face, unsigned int lookup_index, hb_codepoint_t const * glyphs, unsigned int glyphs_length, hb_bool_t zero_context) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4602,7 +5604,7 @@ internal static bool hb_ot_layout_lookup_would_substitute (hb_face_t face, UInt3 (hb_ot_layout_lookup_would_substitute_delegate ??= GetSymbol ("hb_ot_layout_lookup_would_substitute")).Invoke (face, lookup_index, glyphs, glyphs_length, zero_context); #endif - // extern void hb_ot_layout_lookups_substitute_closure(hb_face_t* face, const hb_set_t* lookups, hb_set_t* glyphs) + // extern void hb_ot_layout_lookups_substitute_closure(hb_face_t * face, hb_set_t const * lookups, hb_set_t * glyphs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4621,7 +5623,7 @@ internal static void hb_ot_layout_lookups_substitute_closure (hb_face_t face, hb (hb_ot_layout_lookups_substitute_closure_delegate ??= GetSymbol ("hb_ot_layout_lookups_substitute_closure")).Invoke (face, lookups, glyphs); #endif - // extern unsigned int hb_ot_layout_script_get_language_tags(hb_face_t* face, hb_tag_t table_tag, unsigned int script_index, unsigned int start_offset, unsigned int* language_count, hb_tag_t* language_tags) + // extern unsigned int hb_ot_layout_script_get_language_tags(hb_face_t * face, hb_tag_t table_tag, unsigned int script_index, unsigned int start_offset, unsigned int * language_count, hb_tag_t * language_tags) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4640,7 +5642,7 @@ internal static UInt32 hb_ot_layout_script_get_language_tags (hb_face_t face, UI (hb_ot_layout_script_get_language_tags_delegate ??= GetSymbol ("hb_ot_layout_script_get_language_tags")).Invoke (face, table_tag, script_index, start_offset, language_count, language_tags); #endif - // extern hb_bool_t hb_ot_layout_script_select_language(hb_face_t* face, hb_tag_t table_tag, unsigned int script_index, unsigned int language_count, const hb_tag_t* language_tags, unsigned int* language_index) + // extern hb_bool_t hb_ot_layout_script_select_language(hb_face_t * face, hb_tag_t table_tag, unsigned int script_index, unsigned int language_count, hb_tag_t const * language_tags, unsigned int * language_index) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4662,7 +5664,29 @@ internal static bool hb_ot_layout_script_select_language (hb_face_t face, UInt32 (hb_ot_layout_script_select_language_delegate ??= GetSymbol ("hb_ot_layout_script_select_language")).Invoke (face, table_tag, script_index, language_count, language_tags, language_index); #endif - // extern hb_bool_t hb_ot_layout_table_find_feature_variations(hb_face_t* face, hb_tag_t table_tag, const int* coords, unsigned int num_coords, unsigned int* variations_index) + // extern hb_bool_t hb_ot_layout_script_select_language2(hb_face_t * face, hb_tag_t table_tag, unsigned int script_index, unsigned int language_count, hb_tag_t const * language_tags, unsigned int * language_index, hb_tag_t * chosen_language) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + [return: MarshalAs (UnmanagedType.I1)] + internal static partial bool hb_ot_layout_script_select_language2 (hb_face_t face, UInt32 table_tag, UInt32 script_index, UInt32 language_count, UInt32* language_tags, UInt32* language_index, UInt32* chosen_language); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal static extern bool hb_ot_layout_script_select_language2 (hb_face_t face, UInt32 table_tag, UInt32 script_index, UInt32 language_count, UInt32* language_tags, UInt32* language_index, UInt32* chosen_language); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal delegate bool hb_ot_layout_script_select_language2 (hb_face_t face, UInt32 table_tag, UInt32 script_index, UInt32 language_count, UInt32* language_tags, UInt32* language_index, UInt32* chosen_language); + } + private static Delegates.hb_ot_layout_script_select_language2 hb_ot_layout_script_select_language2_delegate; + internal static bool hb_ot_layout_script_select_language2 (hb_face_t face, UInt32 table_tag, UInt32 script_index, UInt32 language_count, UInt32* language_tags, UInt32* language_index, UInt32* chosen_language) => + (hb_ot_layout_script_select_language2_delegate ??= GetSymbol ("hb_ot_layout_script_select_language2")).Invoke (face, table_tag, script_index, language_count, language_tags, language_index, chosen_language); + #endif + + // extern hb_bool_t hb_ot_layout_table_find_feature_variations(hb_face_t * face, hb_tag_t table_tag, int const * coords, unsigned int num_coords, unsigned int * variations_index) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4684,7 +5708,7 @@ internal static bool hb_ot_layout_table_find_feature_variations (hb_face_t face, (hb_ot_layout_table_find_feature_variations_delegate ??= GetSymbol ("hb_ot_layout_table_find_feature_variations")).Invoke (face, table_tag, coords, num_coords, variations_index); #endif - // extern hb_bool_t hb_ot_layout_table_find_script(hb_face_t* face, hb_tag_t table_tag, hb_tag_t script_tag, unsigned int* script_index) + // extern hb_bool_t hb_ot_layout_table_find_script(hb_face_t * face, hb_tag_t table_tag, hb_tag_t script_tag, unsigned int * script_index) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4706,7 +5730,7 @@ internal static bool hb_ot_layout_table_find_script (hb_face_t face, UInt32 tabl (hb_ot_layout_table_find_script_delegate ??= GetSymbol ("hb_ot_layout_table_find_script")).Invoke (face, table_tag, script_tag, script_index); #endif - // extern unsigned int hb_ot_layout_table_get_feature_tags(hb_face_t* face, hb_tag_t table_tag, unsigned int start_offset, unsigned int* feature_count, hb_tag_t* feature_tags) + // extern unsigned int hb_ot_layout_table_get_feature_tags(hb_face_t * face, hb_tag_t table_tag, unsigned int start_offset, unsigned int * feature_count, hb_tag_t * feature_tags) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4725,7 +5749,7 @@ internal static UInt32 hb_ot_layout_table_get_feature_tags (hb_face_t face, UInt (hb_ot_layout_table_get_feature_tags_delegate ??= GetSymbol ("hb_ot_layout_table_get_feature_tags")).Invoke (face, table_tag, start_offset, feature_count, feature_tags); #endif - // extern unsigned int hb_ot_layout_table_get_lookup_count(hb_face_t* face, hb_tag_t table_tag) + // extern unsigned int hb_ot_layout_table_get_lookup_count(hb_face_t * face, hb_tag_t table_tag) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4744,7 +5768,7 @@ internal static UInt32 hb_ot_layout_table_get_lookup_count (hb_face_t face, UInt (hb_ot_layout_table_get_lookup_count_delegate ??= GetSymbol ("hb_ot_layout_table_get_lookup_count")).Invoke (face, table_tag); #endif - // extern unsigned int hb_ot_layout_table_get_script_tags(hb_face_t* face, hb_tag_t table_tag, unsigned int start_offset, unsigned int* script_count, hb_tag_t* script_tags) + // extern unsigned int hb_ot_layout_table_get_script_tags(hb_face_t * face, hb_tag_t table_tag, unsigned int start_offset, unsigned int * script_count, hb_tag_t * script_tags) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4763,7 +5787,7 @@ internal static UInt32 hb_ot_layout_table_get_script_tags (hb_face_t face, UInt3 (hb_ot_layout_table_get_script_tags_delegate ??= GetSymbol ("hb_ot_layout_table_get_script_tags")).Invoke (face, table_tag, start_offset, script_count, script_tags); #endif - // extern hb_bool_t hb_ot_layout_table_select_script(hb_face_t* face, hb_tag_t table_tag, unsigned int script_count, const hb_tag_t* script_tags, unsigned int* script_index, hb_tag_t* chosen_script) + // extern hb_bool_t hb_ot_layout_table_select_script(hb_face_t * face, hb_tag_t table_tag, unsigned int script_count, hb_tag_t const * script_tags, unsigned int * script_index, hb_tag_t * chosen_script) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4823,7 +5847,7 @@ internal static UInt32 hb_ot_tag_to_script (UInt32 tag) => (hb_ot_tag_to_script_delegate ??= GetSymbol ("hb_ot_tag_to_script")).Invoke (tag); #endif - // extern void hb_ot_tags_from_script_and_language(hb_script_t script, hb_language_t language, unsigned int* script_count, hb_tag_t* script_tags, unsigned int* language_count, hb_tag_t* language_tags) + // extern void hb_ot_tags_from_script_and_language(hb_script_t script, hb_language_t language, unsigned int * script_count, hb_tag_t * script_tags, unsigned int * language_count, hb_tag_t * language_tags) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4842,7 +5866,7 @@ internal static void hb_ot_tags_from_script_and_language (UInt32 script, IntPtr (hb_ot_tags_from_script_and_language_delegate ??= GetSymbol ("hb_ot_tags_from_script_and_language")).Invoke (script, language, script_count, script_tags, language_count, language_tags); #endif - // extern void hb_ot_tags_to_script_and_language(hb_tag_t script_tag, hb_tag_t language_tag, hb_script_t* script, hb_language_t* language) + // extern void hb_ot_tags_to_script_and_language(hb_tag_t script_tag, hb_tag_t language_tag, hb_script_t * script, hb_language_t * language) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4865,7 +5889,7 @@ internal static void hb_ot_tags_to_script_and_language (UInt32 script_tag, UInt3 #region hb-ot-math.h - // extern hb_position_t hb_ot_math_get_constant(hb_font_t* font, hb_ot_math_constant_t constant) + // extern hb_position_t hb_ot_math_get_constant(hb_font_t * font, hb_ot_math_constant_t constant) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4884,7 +5908,7 @@ internal static Int32 hb_ot_math_get_constant (hb_font_t font, OpenTypeMathConst (hb_ot_math_get_constant_delegate ??= GetSymbol ("hb_ot_math_get_constant")).Invoke (font, constant); #endif - // extern unsigned int hb_ot_math_get_glyph_assembly(hb_font_t* font, hb_codepoint_t glyph, hb_direction_t direction, unsigned int start_offset, unsigned int* parts_count, hb_ot_math_glyph_part_t* parts, hb_position_t* italics_correction) + // extern unsigned int hb_ot_math_get_glyph_assembly(hb_font_t * font, hb_codepoint_t glyph, hb_direction_t direction, unsigned int start_offset, unsigned int * parts_count, hb_ot_math_glyph_part_t * parts, hb_position_t * italics_correction) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4903,7 +5927,7 @@ internal static UInt32 hb_ot_math_get_glyph_assembly (hb_font_t font, UInt32 gly (hb_ot_math_get_glyph_assembly_delegate ??= GetSymbol ("hb_ot_math_get_glyph_assembly")).Invoke (font, glyph, direction, start_offset, parts_count, parts, italics_correction); #endif - // extern hb_position_t hb_ot_math_get_glyph_italics_correction(hb_font_t* font, hb_codepoint_t glyph) + // extern hb_position_t hb_ot_math_get_glyph_italics_correction(hb_font_t * font, hb_codepoint_t glyph) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4922,7 +5946,7 @@ internal static Int32 hb_ot_math_get_glyph_italics_correction (hb_font_t font, U (hb_ot_math_get_glyph_italics_correction_delegate ??= GetSymbol ("hb_ot_math_get_glyph_italics_correction")).Invoke (font, glyph); #endif - // extern hb_position_t hb_ot_math_get_glyph_kerning(hb_font_t* font, hb_codepoint_t glyph, hb_ot_math_kern_t kern, hb_position_t correction_height) + // extern hb_position_t hb_ot_math_get_glyph_kerning(hb_font_t * font, hb_codepoint_t glyph, hb_ot_math_kern_t kern, hb_position_t correction_height) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4941,7 +5965,26 @@ internal static Int32 hb_ot_math_get_glyph_kerning (hb_font_t font, UInt32 glyph (hb_ot_math_get_glyph_kerning_delegate ??= GetSymbol ("hb_ot_math_get_glyph_kerning")).Invoke (font, glyph, kern, correction_height); #endif - // extern hb_position_t hb_ot_math_get_glyph_top_accent_attachment(hb_font_t* font, hb_codepoint_t glyph) + // extern unsigned int hb_ot_math_get_glyph_kernings(hb_font_t * font, hb_codepoint_t glyph, hb_ot_math_kern_t kern, unsigned int start_offset, unsigned int * entries_count, hb_ot_math_kern_entry_t * kern_entries) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial UInt32 hb_ot_math_get_glyph_kernings (hb_font_t font, UInt32 glyph, OpenTypeMathKern kern, UInt32 start_offset, UInt32* entries_count, OpenTypeMathKernEntry* kern_entries); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern UInt32 hb_ot_math_get_glyph_kernings (hb_font_t font, UInt32 glyph, OpenTypeMathKern kern, UInt32 start_offset, UInt32* entries_count, OpenTypeMathKernEntry* kern_entries); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate UInt32 hb_ot_math_get_glyph_kernings (hb_font_t font, UInt32 glyph, OpenTypeMathKern kern, UInt32 start_offset, UInt32* entries_count, OpenTypeMathKernEntry* kern_entries); + } + private static Delegates.hb_ot_math_get_glyph_kernings hb_ot_math_get_glyph_kernings_delegate; + internal static UInt32 hb_ot_math_get_glyph_kernings (hb_font_t font, UInt32 glyph, OpenTypeMathKern kern, UInt32 start_offset, UInt32* entries_count, OpenTypeMathKernEntry* kern_entries) => + (hb_ot_math_get_glyph_kernings_delegate ??= GetSymbol ("hb_ot_math_get_glyph_kernings")).Invoke (font, glyph, kern, start_offset, entries_count, kern_entries); + #endif + + // extern hb_position_t hb_ot_math_get_glyph_top_accent_attachment(hb_font_t * font, hb_codepoint_t glyph) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4960,7 +6003,7 @@ internal static Int32 hb_ot_math_get_glyph_top_accent_attachment (hb_font_t font (hb_ot_math_get_glyph_top_accent_attachment_delegate ??= GetSymbol ("hb_ot_math_get_glyph_top_accent_attachment")).Invoke (font, glyph); #endif - // extern unsigned int hb_ot_math_get_glyph_variants(hb_font_t* font, hb_codepoint_t glyph, hb_direction_t direction, unsigned int start_offset, unsigned int* variants_count, hb_ot_math_glyph_variant_t* variants) + // extern unsigned int hb_ot_math_get_glyph_variants(hb_font_t * font, hb_codepoint_t glyph, hb_direction_t direction, unsigned int start_offset, unsigned int * variants_count, hb_ot_math_glyph_variant_t * variants) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4979,7 +6022,7 @@ internal static UInt32 hb_ot_math_get_glyph_variants (hb_font_t font, UInt32 gly (hb_ot_math_get_glyph_variants_delegate ??= GetSymbol ("hb_ot_math_get_glyph_variants")).Invoke (font, glyph, direction, start_offset, variants_count, variants); #endif - // extern hb_position_t hb_ot_math_get_min_connector_overlap(hb_font_t* font, hb_direction_t direction) + // extern hb_position_t hb_ot_math_get_min_connector_overlap(hb_font_t * font, hb_direction_t direction) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -4998,7 +6041,7 @@ internal static Int32 hb_ot_math_get_min_connector_overlap (hb_font_t font, Dire (hb_ot_math_get_min_connector_overlap_delegate ??= GetSymbol ("hb_ot_math_get_min_connector_overlap")).Invoke (font, direction); #endif - // extern hb_bool_t hb_ot_math_has_data(hb_face_t* face) + // extern hb_bool_t hb_ot_math_has_data(hb_face_t * face) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5020,7 +6063,7 @@ internal static bool hb_ot_math_has_data (hb_face_t face) => (hb_ot_math_has_data_delegate ??= GetSymbol ("hb_ot_math_has_data")).Invoke (face); #endif - // extern hb_bool_t hb_ot_math_is_glyph_extended_shape(hb_face_t* face, hb_codepoint_t glyph) + // extern hb_bool_t hb_ot_math_is_glyph_extended_shape(hb_face_t * face, hb_codepoint_t glyph) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5046,7 +6089,7 @@ internal static bool hb_ot_math_is_glyph_extended_shape (hb_face_t face, UInt32 #region hb-ot-meta.h - // extern unsigned int hb_ot_meta_get_entry_tags(hb_face_t* face, unsigned int start_offset, unsigned int* entries_count, hb_ot_meta_tag_t* entries) + // extern unsigned int hb_ot_meta_get_entry_tags(hb_face_t * face, unsigned int start_offset, unsigned int * entries_count, hb_ot_meta_tag_t * entries) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5065,7 +6108,7 @@ internal static UInt32 hb_ot_meta_get_entry_tags (hb_face_t face, UInt32 start_o (hb_ot_meta_get_entry_tags_delegate ??= GetSymbol ("hb_ot_meta_get_entry_tags")).Invoke (face, start_offset, entries_count, entries); #endif - // extern hb_blob_t* hb_ot_meta_reference_entry(hb_face_t* face, hb_ot_meta_tag_t meta_tag) + // extern hb_blob_t * hb_ot_meta_reference_entry(hb_face_t * face, hb_ot_meta_tag_t meta_tag) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5088,7 +6131,7 @@ internal static hb_blob_t hb_ot_meta_reference_entry (hb_face_t face, OpenTypeMe #region hb-ot-metrics.h - // extern hb_bool_t hb_ot_metrics_get_position(hb_font_t* font, hb_ot_metrics_tag_t metrics_tag, hb_position_t* position) + // extern hb_bool_t hb_ot_metrics_get_position(hb_font_t * font, hb_ot_metrics_tag_t metrics_tag, hb_position_t * position) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5110,7 +6153,26 @@ internal static bool hb_ot_metrics_get_position (hb_font_t font, OpenTypeMetrics (hb_ot_metrics_get_position_delegate ??= GetSymbol ("hb_ot_metrics_get_position")).Invoke (font, metrics_tag, position); #endif - // extern float hb_ot_metrics_get_variation(hb_font_t* font, hb_ot_metrics_tag_t metrics_tag) + // extern void hb_ot_metrics_get_position_with_fallback(hb_font_t * font, hb_ot_metrics_tag_t metrics_tag, hb_position_t * position) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_ot_metrics_get_position_with_fallback (hb_font_t font, OpenTypeMetricsTag metrics_tag, Int32* position); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_ot_metrics_get_position_with_fallback (hb_font_t font, OpenTypeMetricsTag metrics_tag, Int32* position); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_ot_metrics_get_position_with_fallback (hb_font_t font, OpenTypeMetricsTag metrics_tag, Int32* position); + } + private static Delegates.hb_ot_metrics_get_position_with_fallback hb_ot_metrics_get_position_with_fallback_delegate; + internal static void hb_ot_metrics_get_position_with_fallback (hb_font_t font, OpenTypeMetricsTag metrics_tag, Int32* position) => + (hb_ot_metrics_get_position_with_fallback_delegate ??= GetSymbol ("hb_ot_metrics_get_position_with_fallback")).Invoke (font, metrics_tag, position); + #endif + + // extern float hb_ot_metrics_get_variation(hb_font_t * font, hb_ot_metrics_tag_t metrics_tag) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5129,7 +6191,7 @@ internal static Single hb_ot_metrics_get_variation (hb_font_t font, OpenTypeMetr (hb_ot_metrics_get_variation_delegate ??= GetSymbol ("hb_ot_metrics_get_variation")).Invoke (font, metrics_tag); #endif - // extern hb_position_t hb_ot_metrics_get_x_variation(hb_font_t* font, hb_ot_metrics_tag_t metrics_tag) + // extern hb_position_t hb_ot_metrics_get_x_variation(hb_font_t * font, hb_ot_metrics_tag_t metrics_tag) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5148,7 +6210,7 @@ internal static Int32 hb_ot_metrics_get_x_variation (hb_font_t font, OpenTypeMet (hb_ot_metrics_get_x_variation_delegate ??= GetSymbol ("hb_ot_metrics_get_x_variation")).Invoke (font, metrics_tag); #endif - // extern hb_position_t hb_ot_metrics_get_y_variation(hb_font_t* font, hb_ot_metrics_tag_t metrics_tag) + // extern hb_position_t hb_ot_metrics_get_y_variation(hb_font_t * font, hb_ot_metrics_tag_t metrics_tag) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5171,7 +6233,7 @@ internal static Int32 hb_ot_metrics_get_y_variation (hb_font_t font, OpenTypeMet #region hb-ot-name.h - // extern unsigned int hb_ot_name_get_utf16(hb_face_t* face, hb_ot_name_id_t name_id, hb_language_t language, unsigned int* text_size, uint16_t* text) + // extern unsigned int hb_ot_name_get_utf16(hb_face_t * face, hb_ot_name_id_t name_id, hb_language_t language, unsigned int * text_size, unsigned short * text) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5190,7 +6252,7 @@ internal static UInt32 hb_ot_name_get_utf16 (hb_face_t face, OpenTypeNameId name (hb_ot_name_get_utf16_delegate ??= GetSymbol ("hb_ot_name_get_utf16")).Invoke (face, name_id, language, text_size, text); #endif - // extern unsigned int hb_ot_name_get_utf32(hb_face_t* face, hb_ot_name_id_t name_id, hb_language_t language, unsigned int* text_size, uint32_t* text) + // extern unsigned int hb_ot_name_get_utf32(hb_face_t * face, hb_ot_name_id_t name_id, hb_language_t language, unsigned int * text_size, unsigned int * text) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5209,7 +6271,7 @@ internal static UInt32 hb_ot_name_get_utf32 (hb_face_t face, OpenTypeNameId name (hb_ot_name_get_utf32_delegate ??= GetSymbol ("hb_ot_name_get_utf32")).Invoke (face, name_id, language, text_size, text); #endif - // extern unsigned int hb_ot_name_get_utf8(hb_face_t* face, hb_ot_name_id_t name_id, hb_language_t language, unsigned int* text_size, char* text) + // extern unsigned int hb_ot_name_get_utf8(hb_face_t * face, hb_ot_name_id_t name_id, hb_language_t language, unsigned int * text_size, char * text) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5228,7 +6290,7 @@ internal static UInt32 hb_ot_name_get_utf8 (hb_face_t face, OpenTypeNameId name_ (hb_ot_name_get_utf8_delegate ??= GetSymbol ("hb_ot_name_get_utf8")).Invoke (face, name_id, language, text_size, text); #endif - // extern const hb_ot_name_entry_t* hb_ot_name_list_names(hb_face_t* face, unsigned int* num_entries) + // extern hb_ot_name_entry_t const * hb_ot_name_list_names(hb_face_t * face, unsigned int * num_entries) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5251,7 +6313,7 @@ private partial class Delegates { #region hb-ot-shape.h - // extern void hb_ot_shape_glyphs_closure(hb_font_t* font, hb_buffer_t* buffer, const hb_feature_t* features, unsigned int num_features, hb_set_t* glyphs) + // extern void hb_ot_shape_glyphs_closure(hb_font_t * font, hb_buffer_t * buffer, hb_feature_t const * features, unsigned int num_features, hb_set_t * glyphs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5270,7 +6332,7 @@ internal static void hb_ot_shape_glyphs_closure (hb_font_t font, hb_buffer_t buf (hb_ot_shape_glyphs_closure_delegate ??= GetSymbol ("hb_ot_shape_glyphs_closure")).Invoke (font, buffer, features, num_features, glyphs); #endif - // extern void hb_ot_shape_plan_collect_lookups(hb_shape_plan_t* shape_plan, hb_tag_t table_tag, hb_set_t* lookup_indexes) + // extern void hb_ot_shape_plan_collect_lookups(hb_shape_plan_t * shape_plan, hb_tag_t table_tag, hb_set_t * lookup_indexes) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5293,7 +6355,7 @@ internal static void hb_ot_shape_plan_collect_lookups (hb_shape_plan_t shape_pla #region hb-set.h - // extern void hb_set_add(hb_set_t* set, hb_codepoint_t codepoint) + // extern void hb_set_add(hb_set_t * set, hb_codepoint_t codepoint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5312,7 +6374,7 @@ internal static void hb_set_add (hb_set_t set, UInt32 codepoint) => (hb_set_add_delegate ??= GetSymbol ("hb_set_add")).Invoke (set, codepoint); #endif - // extern void hb_set_add_range(hb_set_t* set, hb_codepoint_t first, hb_codepoint_t last) + // extern void hb_set_add_range(hb_set_t * set, hb_codepoint_t first, hb_codepoint_t last) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5331,7 +6393,26 @@ internal static void hb_set_add_range (hb_set_t set, UInt32 first, UInt32 last) (hb_set_add_range_delegate ??= GetSymbol ("hb_set_add_range")).Invoke (set, first, last); #endif - // extern hb_bool_t hb_set_allocation_successful(const hb_set_t* set) + // extern void hb_set_add_sorted_array(hb_set_t * set, hb_codepoint_t const * sorted_codepoints, unsigned int num_codepoints) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_set_add_sorted_array (hb_set_t set, UInt32* sorted_codepoints, UInt32 num_codepoints); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_set_add_sorted_array (hb_set_t set, UInt32* sorted_codepoints, UInt32 num_codepoints); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_set_add_sorted_array (hb_set_t set, UInt32* sorted_codepoints, UInt32 num_codepoints); + } + private static Delegates.hb_set_add_sorted_array hb_set_add_sorted_array_delegate; + internal static void hb_set_add_sorted_array (hb_set_t set, UInt32* sorted_codepoints, UInt32 num_codepoints) => + (hb_set_add_sorted_array_delegate ??= GetSymbol ("hb_set_add_sorted_array")).Invoke (set, sorted_codepoints, num_codepoints); + #endif + + // extern hb_bool_t hb_set_allocation_successful(hb_set_t const * set) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5353,7 +6434,7 @@ internal static bool hb_set_allocation_successful (hb_set_t set) => (hb_set_allocation_successful_delegate ??= GetSymbol ("hb_set_allocation_successful")).Invoke (set); #endif - // extern void hb_set_clear(hb_set_t* set) + // extern void hb_set_clear(hb_set_t * set) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5372,7 +6453,7 @@ internal static void hb_set_clear (hb_set_t set) => (hb_set_clear_delegate ??= GetSymbol ("hb_set_clear")).Invoke (set); #endif - // extern hb_set_t* hb_set_copy(const hb_set_t* set) + // extern hb_set_t * hb_set_copy(hb_set_t const * set) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5391,7 +6472,7 @@ internal static hb_set_t hb_set_copy (hb_set_t set) => (hb_set_copy_delegate ??= GetSymbol ("hb_set_copy")).Invoke (set); #endif - // extern hb_set_t* hb_set_create() + // extern hb_set_t * hb_set_create() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5410,7 +6491,7 @@ internal static hb_set_t hb_set_create () => (hb_set_create_delegate ??= GetSymbol ("hb_set_create")).Invoke (); #endif - // extern void hb_set_del(hb_set_t* set, hb_codepoint_t codepoint) + // extern void hb_set_del(hb_set_t * set, hb_codepoint_t codepoint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5429,7 +6510,7 @@ internal static void hb_set_del (hb_set_t set, UInt32 codepoint) => (hb_set_del_delegate ??= GetSymbol ("hb_set_del")).Invoke (set, codepoint); #endif - // extern void hb_set_del_range(hb_set_t* set, hb_codepoint_t first, hb_codepoint_t last) + // extern void hb_set_del_range(hb_set_t * set, hb_codepoint_t first, hb_codepoint_t last) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5448,7 +6529,7 @@ internal static void hb_set_del_range (hb_set_t set, UInt32 first, UInt32 last) (hb_set_del_range_delegate ??= GetSymbol ("hb_set_del_range")).Invoke (set, first, last); #endif - // extern void hb_set_destroy(hb_set_t* set) + // extern void hb_set_destroy(hb_set_t * set) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5467,7 +6548,7 @@ internal static void hb_set_destroy (hb_set_t set) => (hb_set_destroy_delegate ??= GetSymbol ("hb_set_destroy")).Invoke (set); #endif - // extern hb_set_t* hb_set_get_empty() + // extern hb_set_t * hb_set_get_empty() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5486,7 +6567,7 @@ internal static hb_set_t hb_set_get_empty () => (hb_set_get_empty_delegate ??= GetSymbol ("hb_set_get_empty")).Invoke (); #endif - // extern hb_codepoint_t hb_set_get_max(const hb_set_t* set) + // extern hb_codepoint_t hb_set_get_max(hb_set_t const * set) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5505,7 +6586,7 @@ internal static UInt32 hb_set_get_max (hb_set_t set) => (hb_set_get_max_delegate ??= GetSymbol ("hb_set_get_max")).Invoke (set); #endif - // extern hb_codepoint_t hb_set_get_min(const hb_set_t* set) + // extern hb_codepoint_t hb_set_get_min(hb_set_t const * set) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5524,7 +6605,7 @@ internal static UInt32 hb_set_get_min (hb_set_t set) => (hb_set_get_min_delegate ??= GetSymbol ("hb_set_get_min")).Invoke (set); #endif - // extern unsigned int hb_set_get_population(const hb_set_t* set) + // extern unsigned int hb_set_get_population(hb_set_t const * set) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5543,7 +6624,7 @@ internal static UInt32 hb_set_get_population (hb_set_t set) => (hb_set_get_population_delegate ??= GetSymbol ("hb_set_get_population")).Invoke (set); #endif - // extern hb_bool_t hb_set_has(const hb_set_t* set, hb_codepoint_t codepoint) + // extern hb_bool_t hb_set_has(hb_set_t const * set, hb_codepoint_t codepoint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5565,7 +6646,26 @@ internal static bool hb_set_has (hb_set_t set, UInt32 codepoint) => (hb_set_has_delegate ??= GetSymbol ("hb_set_has")).Invoke (set, codepoint); #endif - // extern void hb_set_intersect(hb_set_t* set, const hb_set_t* other) + // extern unsigned int hb_set_hash(hb_set_t const * set) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial UInt32 hb_set_hash (hb_set_t set); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern UInt32 hb_set_hash (hb_set_t set); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate UInt32 hb_set_hash (hb_set_t set); + } + private static Delegates.hb_set_hash hb_set_hash_delegate; + internal static UInt32 hb_set_hash (hb_set_t set) => + (hb_set_hash_delegate ??= GetSymbol ("hb_set_hash")).Invoke (set); + #endif + + // extern void hb_set_intersect(hb_set_t * set, hb_set_t const * other) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5584,7 +6684,26 @@ internal static void hb_set_intersect (hb_set_t set, hb_set_t other) => (hb_set_intersect_delegate ??= GetSymbol ("hb_set_intersect")).Invoke (set, other); #endif - // extern hb_bool_t hb_set_is_empty(const hb_set_t* set) + // extern void hb_set_invert(hb_set_t * set) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial void hb_set_invert (hb_set_t set); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern void hb_set_invert (hb_set_t set); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate void hb_set_invert (hb_set_t set); + } + private static Delegates.hb_set_invert hb_set_invert_delegate; + internal static void hb_set_invert (hb_set_t set) => + (hb_set_invert_delegate ??= GetSymbol ("hb_set_invert")).Invoke (set); + #endif + + // extern hb_bool_t hb_set_is_empty(hb_set_t const * set) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5606,7 +6725,7 @@ internal static bool hb_set_is_empty (hb_set_t set) => (hb_set_is_empty_delegate ??= GetSymbol ("hb_set_is_empty")).Invoke (set); #endif - // extern hb_bool_t hb_set_is_equal(const hb_set_t* set, const hb_set_t* other) + // extern hb_bool_t hb_set_is_equal(hb_set_t const * set, hb_set_t const * other) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5628,7 +6747,29 @@ internal static bool hb_set_is_equal (hb_set_t set, hb_set_t other) => (hb_set_is_equal_delegate ??= GetSymbol ("hb_set_is_equal")).Invoke (set, other); #endif - // extern hb_bool_t hb_set_is_subset(const hb_set_t* set, const hb_set_t* larger_set) + // extern hb_bool_t hb_set_is_inverted(hb_set_t const * set) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + [return: MarshalAs (UnmanagedType.I1)] + internal static partial bool hb_set_is_inverted (hb_set_t set); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal static extern bool hb_set_is_inverted (hb_set_t set); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal delegate bool hb_set_is_inverted (hb_set_t set); + } + private static Delegates.hb_set_is_inverted hb_set_is_inverted_delegate; + internal static bool hb_set_is_inverted (hb_set_t set) => + (hb_set_is_inverted_delegate ??= GetSymbol ("hb_set_is_inverted")).Invoke (set); + #endif + + // extern hb_bool_t hb_set_is_subset(hb_set_t const * set, hb_set_t const * larger_set) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5650,7 +6791,7 @@ internal static bool hb_set_is_subset (hb_set_t set, hb_set_t larger_set) => (hb_set_is_subset_delegate ??= GetSymbol ("hb_set_is_subset")).Invoke (set, larger_set); #endif - // extern hb_bool_t hb_set_next(const hb_set_t* set, hb_codepoint_t* codepoint) + // extern hb_bool_t hb_set_next(hb_set_t const * set, hb_codepoint_t * codepoint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5672,7 +6813,26 @@ internal static bool hb_set_next (hb_set_t set, UInt32* codepoint) => (hb_set_next_delegate ??= GetSymbol ("hb_set_next")).Invoke (set, codepoint); #endif - // extern hb_bool_t hb_set_next_range(const hb_set_t* set, hb_codepoint_t* first, hb_codepoint_t* last) + // extern unsigned int hb_set_next_many(hb_set_t const * set, hb_codepoint_t codepoint, hb_codepoint_t * out, unsigned int size) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial UInt32 hb_set_next_many (hb_set_t set, UInt32 codepoint, UInt32* @out, UInt32 size); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern UInt32 hb_set_next_many (hb_set_t set, UInt32 codepoint, UInt32* @out, UInt32 size); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate UInt32 hb_set_next_many (hb_set_t set, UInt32 codepoint, UInt32* @out, UInt32 size); + } + private static Delegates.hb_set_next_many hb_set_next_many_delegate; + internal static UInt32 hb_set_next_many (hb_set_t set, UInt32 codepoint, UInt32* @out, UInt32 size) => + (hb_set_next_many_delegate ??= GetSymbol ("hb_set_next_many")).Invoke (set, codepoint, @out, size); + #endif + + // extern hb_bool_t hb_set_next_range(hb_set_t const * set, hb_codepoint_t * first, hb_codepoint_t * last) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5694,7 +6854,7 @@ internal static bool hb_set_next_range (hb_set_t set, UInt32* first, UInt32* las (hb_set_next_range_delegate ??= GetSymbol ("hb_set_next_range")).Invoke (set, first, last); #endif - // extern hb_bool_t hb_set_previous(const hb_set_t* set, hb_codepoint_t* codepoint) + // extern hb_bool_t hb_set_previous(hb_set_t const * set, hb_codepoint_t * codepoint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5716,7 +6876,7 @@ internal static bool hb_set_previous (hb_set_t set, UInt32* codepoint) => (hb_set_previous_delegate ??= GetSymbol ("hb_set_previous")).Invoke (set, codepoint); #endif - // extern hb_bool_t hb_set_previous_range(const hb_set_t* set, hb_codepoint_t* first, hb_codepoint_t* last) + // extern hb_bool_t hb_set_previous_range(hb_set_t const * set, hb_codepoint_t * first, hb_codepoint_t * last) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5738,7 +6898,7 @@ internal static bool hb_set_previous_range (hb_set_t set, UInt32* first, UInt32* (hb_set_previous_range_delegate ??= GetSymbol ("hb_set_previous_range")).Invoke (set, first, last); #endif - // extern hb_set_t* hb_set_reference(hb_set_t* set) + // extern hb_set_t * hb_set_reference(hb_set_t * set) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5757,7 +6917,7 @@ internal static hb_set_t hb_set_reference (hb_set_t set) => (hb_set_reference_delegate ??= GetSymbol ("hb_set_reference")).Invoke (set); #endif - // extern void hb_set_set(hb_set_t* set, const hb_set_t* other) + // extern void hb_set_set(hb_set_t * set, hb_set_t const * other) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5776,7 +6936,7 @@ internal static void hb_set_set (hb_set_t set, hb_set_t other) => (hb_set_set_delegate ??= GetSymbol ("hb_set_set")).Invoke (set, other); #endif - // extern void hb_set_subtract(hb_set_t* set, const hb_set_t* other) + // extern void hb_set_subtract(hb_set_t * set, hb_set_t const * other) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5795,7 +6955,7 @@ internal static void hb_set_subtract (hb_set_t set, hb_set_t other) => (hb_set_subtract_delegate ??= GetSymbol ("hb_set_subtract")).Invoke (set, other); #endif - // extern void hb_set_symmetric_difference(hb_set_t* set, const hb_set_t* other) + // extern void hb_set_symmetric_difference(hb_set_t * set, hb_set_t const * other) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5814,7 +6974,7 @@ internal static void hb_set_symmetric_difference (hb_set_t set, hb_set_t other) (hb_set_symmetric_difference_delegate ??= GetSymbol ("hb_set_symmetric_difference")).Invoke (set, other); #endif - // extern void hb_set_union(hb_set_t* set, const hb_set_t* other) + // extern void hb_set_union(hb_set_t * set, hb_set_t const * other) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5837,7 +6997,7 @@ internal static void hb_set_union (hb_set_t set, hb_set_t other) => #region hb-shape.h - // extern void hb_shape(hb_font_t* font, hb_buffer_t* buffer, const hb_feature_t* features, unsigned int num_features) + // extern void hb_shape(hb_font_t * font, hb_buffer_t * buffer, hb_feature_t const * features, unsigned int num_features) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5856,7 +7016,7 @@ internal static void hb_shape (hb_font_t font, hb_buffer_t buffer, Feature* feat (hb_shape_delegate ??= GetSymbol ("hb_shape")).Invoke (font, buffer, features, num_features); #endif - // extern hb_bool_t hb_shape_full(hb_font_t* font, hb_buffer_t* buffer, const hb_feature_t* features, unsigned int num_features, const const char** shaper_list) + // extern hb_bool_t hb_shape_full(hb_font_t * font, hb_buffer_t * buffer, hb_feature_t const * features, unsigned int num_features, char const * const * shaper_list) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5878,7 +7038,29 @@ internal static bool hb_shape_full (hb_font_t font, hb_buffer_t buffer, Feature* (hb_shape_full_delegate ??= GetSymbol ("hb_shape_full")).Invoke (font, buffer, features, num_features, shaper_list); #endif - // extern const char** hb_shape_list_shapers() + // extern hb_bool_t hb_shape_justify(hb_font_t * font, hb_buffer_t * buffer, hb_feature_t const * features, unsigned int num_features, char const * const * shaper_list, float min_target_advance, float max_target_advance, float * advance, hb_tag_t * var_tag, float * var_value) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + [return: MarshalAs (UnmanagedType.I1)] + internal static partial bool hb_shape_justify (hb_font_t font, hb_buffer_t buffer, Feature* features, UInt32 num_features, /* char */ void** shaper_list, Single min_target_advance, Single max_target_advance, Single* advance, UInt32* var_tag, Single* var_value); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal static extern bool hb_shape_justify (hb_font_t font, hb_buffer_t buffer, Feature* features, UInt32 num_features, /* char */ void** shaper_list, Single min_target_advance, Single max_target_advance, Single* advance, UInt32* var_tag, Single* var_value); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + [return: MarshalAs (UnmanagedType.I1)] + internal delegate bool hb_shape_justify (hb_font_t font, hb_buffer_t buffer, Feature* features, UInt32 num_features, /* char */ void** shaper_list, Single min_target_advance, Single max_target_advance, Single* advance, UInt32* var_tag, Single* var_value); + } + private static Delegates.hb_shape_justify hb_shape_justify_delegate; + internal static bool hb_shape_justify (hb_font_t font, hb_buffer_t buffer, Feature* features, UInt32 num_features, /* char */ void** shaper_list, Single min_target_advance, Single max_target_advance, Single* advance, UInt32* var_tag, Single* var_value) => + (hb_shape_justify_delegate ??= GetSymbol ("hb_shape_justify")).Invoke (font, buffer, features, num_features, shaper_list, min_target_advance, max_target_advance, advance, var_tag, var_value); + #endif + + // extern char const * * hb_shape_list_shapers() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5899,9 +7081,32 @@ private partial class Delegates { #endregion + #region hb-style.h + + // extern float hb_style_get_value(hb_font_t * font, hb_style_tag_t style_tag) + #if !USE_DELEGATES + #if USE_LIBRARY_IMPORT + [LibraryImport (HARFBUZZ)] + internal static partial Single hb_style_get_value (hb_font_t font, StyleTag style_tag); + #else // !USE_LIBRARY_IMPORT + [DllImport (HARFBUZZ, CallingConvention = CallingConvention.Cdecl)] + internal static extern Single hb_style_get_value (hb_font_t font, StyleTag style_tag); + #endif + #else + private partial class Delegates { + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal delegate Single hb_style_get_value (hb_font_t font, StyleTag style_tag); + } + private static Delegates.hb_style_get_value hb_style_get_value_delegate; + internal static Single hb_style_get_value (hb_font_t font, StyleTag style_tag) => + (hb_style_get_value_delegate ??= GetSymbol ("hb_style_get_value")).Invoke (font, style_tag); + #endif + + #endregion + #region hb-unicode.h - // extern hb_unicode_combining_class_t hb_unicode_combining_class(hb_unicode_funcs_t* ufuncs, hb_codepoint_t unicode) + // extern hb_unicode_combining_class_t hb_unicode_combining_class(hb_unicode_funcs_t * ufuncs, hb_codepoint_t unicode) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5920,7 +7125,7 @@ internal static UnicodeCombiningClass hb_unicode_combining_class (hb_unicode_fun (hb_unicode_combining_class_delegate ??= GetSymbol ("hb_unicode_combining_class")).Invoke (ufuncs, unicode); #endif - // extern hb_bool_t hb_unicode_compose(hb_unicode_funcs_t* ufuncs, hb_codepoint_t a, hb_codepoint_t b, hb_codepoint_t* ab) + // extern hb_bool_t hb_unicode_compose(hb_unicode_funcs_t * ufuncs, hb_codepoint_t a, hb_codepoint_t b, hb_codepoint_t * ab) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5942,7 +7147,7 @@ internal static bool hb_unicode_compose (hb_unicode_funcs_t ufuncs, UInt32 a, UI (hb_unicode_compose_delegate ??= GetSymbol ("hb_unicode_compose")).Invoke (ufuncs, a, b, ab); #endif - // extern hb_bool_t hb_unicode_decompose(hb_unicode_funcs_t* ufuncs, hb_codepoint_t ab, hb_codepoint_t* a, hb_codepoint_t* b) + // extern hb_bool_t hb_unicode_decompose(hb_unicode_funcs_t * ufuncs, hb_codepoint_t ab, hb_codepoint_t * a, hb_codepoint_t * b) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5964,7 +7169,7 @@ internal static bool hb_unicode_decompose (hb_unicode_funcs_t ufuncs, UInt32 ab, (hb_unicode_decompose_delegate ??= GetSymbol ("hb_unicode_decompose")).Invoke (ufuncs, ab, a, b); #endif - // extern hb_unicode_funcs_t* hb_unicode_funcs_create(hb_unicode_funcs_t* parent) + // extern hb_unicode_funcs_t * hb_unicode_funcs_create(hb_unicode_funcs_t * parent) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -5983,7 +7188,7 @@ internal static hb_unicode_funcs_t hb_unicode_funcs_create (hb_unicode_funcs_t p (hb_unicode_funcs_create_delegate ??= GetSymbol ("hb_unicode_funcs_create")).Invoke (parent); #endif - // extern void hb_unicode_funcs_destroy(hb_unicode_funcs_t* ufuncs) + // extern void hb_unicode_funcs_destroy(hb_unicode_funcs_t * ufuncs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -6002,7 +7207,7 @@ internal static void hb_unicode_funcs_destroy (hb_unicode_funcs_t ufuncs) => (hb_unicode_funcs_destroy_delegate ??= GetSymbol ("hb_unicode_funcs_destroy")).Invoke (ufuncs); #endif - // extern hb_unicode_funcs_t* hb_unicode_funcs_get_default() + // extern hb_unicode_funcs_t * hb_unicode_funcs_get_default() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -6021,7 +7226,7 @@ internal static hb_unicode_funcs_t hb_unicode_funcs_get_default () => (hb_unicode_funcs_get_default_delegate ??= GetSymbol ("hb_unicode_funcs_get_default")).Invoke (); #endif - // extern hb_unicode_funcs_t* hb_unicode_funcs_get_empty() + // extern hb_unicode_funcs_t * hb_unicode_funcs_get_empty() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -6040,7 +7245,7 @@ internal static hb_unicode_funcs_t hb_unicode_funcs_get_empty () => (hb_unicode_funcs_get_empty_delegate ??= GetSymbol ("hb_unicode_funcs_get_empty")).Invoke (); #endif - // extern hb_unicode_funcs_t* hb_unicode_funcs_get_parent(hb_unicode_funcs_t* ufuncs) + // extern hb_unicode_funcs_t * hb_unicode_funcs_get_parent(hb_unicode_funcs_t * ufuncs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -6059,7 +7264,7 @@ internal static hb_unicode_funcs_t hb_unicode_funcs_get_parent (hb_unicode_funcs (hb_unicode_funcs_get_parent_delegate ??= GetSymbol ("hb_unicode_funcs_get_parent")).Invoke (ufuncs); #endif - // extern hb_bool_t hb_unicode_funcs_is_immutable(hb_unicode_funcs_t* ufuncs) + // extern hb_bool_t hb_unicode_funcs_is_immutable(hb_unicode_funcs_t * ufuncs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -6081,7 +7286,7 @@ internal static bool hb_unicode_funcs_is_immutable (hb_unicode_funcs_t ufuncs) = (hb_unicode_funcs_is_immutable_delegate ??= GetSymbol ("hb_unicode_funcs_is_immutable")).Invoke (ufuncs); #endif - // extern void hb_unicode_funcs_make_immutable(hb_unicode_funcs_t* ufuncs) + // extern void hb_unicode_funcs_make_immutable(hb_unicode_funcs_t * ufuncs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -6100,7 +7305,7 @@ internal static void hb_unicode_funcs_make_immutable (hb_unicode_funcs_t ufuncs) (hb_unicode_funcs_make_immutable_delegate ??= GetSymbol ("hb_unicode_funcs_make_immutable")).Invoke (ufuncs); #endif - // extern hb_unicode_funcs_t* hb_unicode_funcs_reference(hb_unicode_funcs_t* ufuncs) + // extern hb_unicode_funcs_t * hb_unicode_funcs_reference(hb_unicode_funcs_t * ufuncs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -6119,7 +7324,7 @@ internal static hb_unicode_funcs_t hb_unicode_funcs_reference (hb_unicode_funcs_ (hb_unicode_funcs_reference_delegate ??= GetSymbol ("hb_unicode_funcs_reference")).Invoke (ufuncs); #endif - // extern void hb_unicode_funcs_set_combining_class_func(hb_unicode_funcs_t* ufuncs, hb_unicode_combining_class_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_unicode_funcs_set_combining_class_func(hb_unicode_funcs_t * ufuncs, hb_unicode_combining_class_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -6138,7 +7343,7 @@ internal static void hb_unicode_funcs_set_combining_class_func (hb_unicode_funcs (hb_unicode_funcs_set_combining_class_func_delegate ??= GetSymbol ("hb_unicode_funcs_set_combining_class_func")).Invoke (ufuncs, func, user_data, destroy); #endif - // extern void hb_unicode_funcs_set_compose_func(hb_unicode_funcs_t* ufuncs, hb_unicode_compose_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_unicode_funcs_set_compose_func(hb_unicode_funcs_t * ufuncs, hb_unicode_compose_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -6157,7 +7362,7 @@ internal static void hb_unicode_funcs_set_compose_func (hb_unicode_funcs_t ufunc (hb_unicode_funcs_set_compose_func_delegate ??= GetSymbol ("hb_unicode_funcs_set_compose_func")).Invoke (ufuncs, func, user_data, destroy); #endif - // extern void hb_unicode_funcs_set_decompose_func(hb_unicode_funcs_t* ufuncs, hb_unicode_decompose_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_unicode_funcs_set_decompose_func(hb_unicode_funcs_t * ufuncs, hb_unicode_decompose_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -6176,7 +7381,7 @@ internal static void hb_unicode_funcs_set_decompose_func (hb_unicode_funcs_t ufu (hb_unicode_funcs_set_decompose_func_delegate ??= GetSymbol ("hb_unicode_funcs_set_decompose_func")).Invoke (ufuncs, func, user_data, destroy); #endif - // extern void hb_unicode_funcs_set_general_category_func(hb_unicode_funcs_t* ufuncs, hb_unicode_general_category_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_unicode_funcs_set_general_category_func(hb_unicode_funcs_t * ufuncs, hb_unicode_general_category_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -6195,7 +7400,7 @@ internal static void hb_unicode_funcs_set_general_category_func (hb_unicode_func (hb_unicode_funcs_set_general_category_func_delegate ??= GetSymbol ("hb_unicode_funcs_set_general_category_func")).Invoke (ufuncs, func, user_data, destroy); #endif - // extern void hb_unicode_funcs_set_mirroring_func(hb_unicode_funcs_t* ufuncs, hb_unicode_mirroring_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_unicode_funcs_set_mirroring_func(hb_unicode_funcs_t * ufuncs, hb_unicode_mirroring_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -6214,7 +7419,7 @@ internal static void hb_unicode_funcs_set_mirroring_func (hb_unicode_funcs_t ufu (hb_unicode_funcs_set_mirroring_func_delegate ??= GetSymbol ("hb_unicode_funcs_set_mirroring_func")).Invoke (ufuncs, func, user_data, destroy); #endif - // extern void hb_unicode_funcs_set_script_func(hb_unicode_funcs_t* ufuncs, hb_unicode_script_func_t func, void* user_data, hb_destroy_func_t destroy) + // extern void hb_unicode_funcs_set_script_func(hb_unicode_funcs_t * ufuncs, hb_unicode_script_func_t func, void * user_data, hb_destroy_func_t destroy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -6233,7 +7438,7 @@ internal static void hb_unicode_funcs_set_script_func (hb_unicode_funcs_t ufuncs (hb_unicode_funcs_set_script_func_delegate ??= GetSymbol ("hb_unicode_funcs_set_script_func")).Invoke (ufuncs, func, user_data, destroy); #endif - // extern hb_unicode_general_category_t hb_unicode_general_category(hb_unicode_funcs_t* ufuncs, hb_codepoint_t unicode) + // extern hb_unicode_general_category_t hb_unicode_general_category(hb_unicode_funcs_t * ufuncs, hb_codepoint_t unicode) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -6252,7 +7457,7 @@ internal static UnicodeGeneralCategory hb_unicode_general_category (hb_unicode_f (hb_unicode_general_category_delegate ??= GetSymbol ("hb_unicode_general_category")).Invoke (ufuncs, unicode); #endif - // extern hb_codepoint_t hb_unicode_mirroring(hb_unicode_funcs_t* ufuncs, hb_codepoint_t unicode) + // extern hb_codepoint_t hb_unicode_mirroring(hb_unicode_funcs_t * ufuncs, hb_codepoint_t unicode) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -6271,7 +7476,7 @@ internal static UInt32 hb_unicode_mirroring (hb_unicode_funcs_t ufuncs, UInt32 u (hb_unicode_mirroring_delegate ??= GetSymbol ("hb_unicode_mirroring")).Invoke (ufuncs, unicode); #endif - // extern hb_script_t hb_unicode_script(hb_unicode_funcs_t* ufuncs, hb_codepoint_t unicode) + // extern hb_script_t hb_unicode_script(hb_unicode_funcs_t * ufuncs, hb_codepoint_t unicode) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -6294,7 +7499,7 @@ internal static UInt32 hb_unicode_script (hb_unicode_funcs_t ufuncs, UInt32 unic #region hb-version.h - // extern void hb_version(unsigned int* major, unsigned int* minor, unsigned int* micro) + // extern void hb_version(unsigned int * major, unsigned int * minor, unsigned int * micro) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -6335,7 +7540,7 @@ internal static bool hb_version_atleast (UInt32 major, UInt32 minor, UInt32 micr (hb_version_atleast_delegate ??= GetSymbol ("hb_version_atleast")).Invoke (major, minor, micro); #endif - // extern const char* hb_version_string() + // extern char const * hb_version_string() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (HARFBUZZ)] @@ -6365,112 +7570,144 @@ private partial class Delegates { #if !USE_LIBRARY_IMPORT namespace HarfBuzzSharp { - // typedef hb_bool_t (*)(hb_buffer_t* buffer, hb_font_t* font, const char* message, void* user_data)* hb_buffer_message_func_t + // typedef hb_bool_t (*)(hb_buffer_t * buffer, hb_font_t * font, char const * message, void * user_data) * hb_buffer_message_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] [return: MarshalAs (UnmanagedType.I1)] internal unsafe delegate bool BufferMessageProxyDelegate(hb_buffer_t buffer, hb_font_t font, /* char */ void* message, void* user_data); - // typedef void (*)(void* user_data)* hb_destroy_func_t + // typedef void (*)(void * user_data) * hb_destroy_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate void DestroyProxyDelegate(void* user_data); - // typedef hb_bool_t (*)(hb_font_t* font, void* font_data, hb_font_extents_t* extents, void* user_data)* hb_font_get_font_extents_func_t + // typedef void (*)(hb_draw_funcs_t * dfuncs, void * draw_data, hb_draw_state_t * st, void * user_data) * hb_draw_close_path_func_t + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal unsafe delegate void DrawClosePathProxyDelegate(hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st, void* user_data); + + // typedef void (*)(hb_draw_funcs_t * dfuncs, void * draw_data, hb_draw_state_t * st, float control1_x, float control1_y, float control2_x, float control2_y, float to_x, float to_y, void * user_data) * hb_draw_cubic_to_func_t + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal unsafe delegate void DrawCubicToProxyDelegate(hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st, Single control1_x, Single control1_y, Single control2_x, Single control2_y, Single to_x, Single to_y, void* user_data); + + // typedef void (*)(hb_draw_funcs_t * dfuncs, void * draw_data, hb_draw_state_t * st, float to_x, float to_y, void * user_data) * hb_draw_line_to_func_t + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal unsafe delegate void DrawLineToProxyDelegate(hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st, Single to_x, Single to_y, void* user_data); + + // typedef void (*)(hb_draw_funcs_t * dfuncs, void * draw_data, hb_draw_state_t * st, float to_x, float to_y, void * user_data) * hb_draw_move_to_func_t + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal unsafe delegate void DrawMoveToProxyDelegate(hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st, Single to_x, Single to_y, void* user_data); + + // typedef void (*)(hb_draw_funcs_t * dfuncs, void * draw_data, hb_draw_state_t * st, float control_x, float control_y, float to_x, float to_y, void * user_data) * hb_draw_quadratic_to_func_t + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal unsafe delegate void DrawQuadraticToProxyDelegate(hb_draw_funcs_t dfuncs, void* draw_data, DrawState* st, Single control_x, Single control_y, Single to_x, Single to_y, void* user_data); + + // typedef void (*)(hb_font_t * font, void * font_data, hb_codepoint_t glyph, hb_draw_funcs_t * draw_funcs, void * draw_data, void * user_data) * hb_font_draw_glyph_func_t + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal unsafe delegate void FontDrawGlyphProxyDelegate(hb_font_t font, void* font_data, UInt32 glyph, hb_draw_funcs_t draw_funcs, void* draw_data, void* user_data); + + // typedef hb_bool_t (*)(hb_font_t * font, void * font_data, hb_font_extents_t * extents, void * user_data) * hb_font_get_font_extents_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] [return: MarshalAs (UnmanagedType.I1)] internal unsafe delegate bool FontGetFontExtentsProxyDelegate(hb_font_t font, void* font_data, FontExtents* extents, void* user_data); - // typedef hb_position_t (*)(hb_font_t* font, void* font_data, hb_codepoint_t glyph, void* user_data)* hb_font_get_glyph_advance_func_t + // typedef hb_position_t (*)(hb_font_t * font, void * font_data, hb_codepoint_t glyph, void * user_data) * hb_font_get_glyph_advance_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate Int32 FontGetGlyphAdvanceProxyDelegate(hb_font_t font, void* font_data, UInt32 glyph, void* user_data); - // typedef void (*)(hb_font_t* font, void* font_data, unsigned int count, const hb_codepoint_t* first_glyph, unsigned int glyph_stride, hb_position_t* first_advance, unsigned int advance_stride, void* user_data)* hb_font_get_glyph_advances_func_t + // typedef void (*)(hb_font_t * font, void * font_data, unsigned int count, hb_codepoint_t const * first_glyph, unsigned int glyph_stride, hb_position_t * first_advance, unsigned int advance_stride, void * user_data) * hb_font_get_glyph_advances_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate void FontGetGlyphAdvancesProxyDelegate(hb_font_t font, void* font_data, UInt32 count, UInt32* first_glyph, UInt32 glyph_stride, Int32* first_advance, UInt32 advance_stride, void* user_data); - // typedef hb_bool_t (*)(hb_font_t* font, void* font_data, hb_codepoint_t glyph, unsigned int point_index, hb_position_t* x, hb_position_t* y, void* user_data)* hb_font_get_glyph_contour_point_func_t + // typedef hb_bool_t (*)(hb_font_t * font, void * font_data, hb_codepoint_t glyph, unsigned int point_index, hb_position_t * x, hb_position_t * y, void * user_data) * hb_font_get_glyph_contour_point_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] [return: MarshalAs (UnmanagedType.I1)] internal unsafe delegate bool FontGetGlyphContourPointProxyDelegate(hb_font_t font, void* font_data, UInt32 glyph, UInt32 point_index, Int32* x, Int32* y, void* user_data); - // typedef hb_bool_t (*)(hb_font_t* font, void* font_data, hb_codepoint_t glyph, hb_glyph_extents_t* extents, void* user_data)* hb_font_get_glyph_extents_func_t + // typedef hb_bool_t (*)(hb_font_t * font, void * font_data, hb_codepoint_t glyph, hb_glyph_extents_t * extents, void * user_data) * hb_font_get_glyph_extents_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] [return: MarshalAs (UnmanagedType.I1)] internal unsafe delegate bool FontGetGlyphExtentsProxyDelegate(hb_font_t font, void* font_data, UInt32 glyph, GlyphExtents* extents, void* user_data); - // typedef hb_bool_t (*)(hb_font_t* font, void* font_data, const char* name, int len, hb_codepoint_t* glyph, void* user_data)* hb_font_get_glyph_from_name_func_t + // typedef hb_bool_t (*)(hb_font_t * font, void * font_data, char const * name, int len, hb_codepoint_t * glyph, void * user_data) * hb_font_get_glyph_from_name_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] [return: MarshalAs (UnmanagedType.I1)] internal unsafe delegate bool FontGetGlyphFromNameProxyDelegate(hb_font_t font, void* font_data, /* char */ void* name, Int32 len, UInt32* glyph, void* user_data); - // typedef hb_bool_t (*)(hb_font_t* font, void* font_data, hb_codepoint_t unicode, hb_codepoint_t variation_selector, hb_codepoint_t* glyph, void* user_data)* hb_font_get_glyph_func_t + // typedef hb_bool_t (*)(hb_font_t * font, void * font_data, hb_codepoint_t unicode, hb_codepoint_t variation_selector, hb_codepoint_t * glyph, void * user_data) * hb_font_get_glyph_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] [return: MarshalAs (UnmanagedType.I1)] internal unsafe delegate bool FontGetGlyphProxyDelegate(hb_font_t font, void* font_data, UInt32 unicode, UInt32 variation_selector, UInt32* glyph, void* user_data); - // typedef hb_position_t (*)(hb_font_t* font, void* font_data, hb_codepoint_t first_glyph, hb_codepoint_t second_glyph, void* user_data)* hb_font_get_glyph_kerning_func_t + // typedef hb_position_t (*)(hb_font_t * font, void * font_data, hb_codepoint_t first_glyph, hb_codepoint_t second_glyph, void * user_data) * hb_font_get_glyph_kerning_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate Int32 FontGetGlyphKerningProxyDelegate(hb_font_t font, void* font_data, UInt32 first_glyph, UInt32 second_glyph, void* user_data); - // typedef hb_bool_t (*)(hb_font_t* font, void* font_data, hb_codepoint_t glyph, char* name, unsigned int size, void* user_data)* hb_font_get_glyph_name_func_t + // typedef hb_bool_t (*)(hb_font_t * font, void * font_data, hb_codepoint_t glyph, char * name, unsigned int size, void * user_data) * hb_font_get_glyph_name_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] [return: MarshalAs (UnmanagedType.I1)] internal unsafe delegate bool FontGetGlyphNameProxyDelegate(hb_font_t font, void* font_data, UInt32 glyph, /* char */ void* name, UInt32 size, void* user_data); - // typedef hb_bool_t (*)(hb_font_t* font, void* font_data, hb_codepoint_t glyph, hb_position_t* x, hb_position_t* y, void* user_data)* hb_font_get_glyph_origin_func_t + // typedef hb_bool_t (*)(hb_font_t * font, void * font_data, hb_codepoint_t glyph, hb_position_t * x, hb_position_t * y, void * user_data) * hb_font_get_glyph_origin_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] [return: MarshalAs (UnmanagedType.I1)] internal unsafe delegate bool FontGetGlyphOriginProxyDelegate(hb_font_t font, void* font_data, UInt32 glyph, Int32* x, Int32* y, void* user_data); - // typedef hb_bool_t (*)(hb_font_t* font, void* font_data, hb_codepoint_t unicode, hb_codepoint_t* glyph, void* user_data)* hb_font_get_nominal_glyph_func_t + // typedef void (*)(hb_font_t * font, void * font_data, hb_codepoint_t glyph, hb_draw_funcs_t * draw_funcs, void * draw_data, void * user_data) * hb_font_get_glyph_shape_func_t + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal unsafe delegate void FontGetGlyphShapeProxyDelegate(hb_font_t font, void* font_data, UInt32 glyph, hb_draw_funcs_t draw_funcs, void* draw_data, void* user_data); + + // typedef hb_bool_t (*)(hb_font_t * font, void * font_data, hb_codepoint_t unicode, hb_codepoint_t * glyph, void * user_data) * hb_font_get_nominal_glyph_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] [return: MarshalAs (UnmanagedType.I1)] internal unsafe delegate bool FontGetNominalGlyphProxyDelegate(hb_font_t font, void* font_data, UInt32 unicode, UInt32* glyph, void* user_data); - // typedef unsigned int (*)(hb_font_t* font, void* font_data, unsigned int count, const hb_codepoint_t* first_unicode, unsigned int unicode_stride, hb_codepoint_t* first_glyph, unsigned int glyph_stride, void* user_data)* hb_font_get_nominal_glyphs_func_t + // typedef unsigned int (*)(hb_font_t * font, void * font_data, unsigned int count, hb_codepoint_t const * first_unicode, unsigned int unicode_stride, hb_codepoint_t * first_glyph, unsigned int glyph_stride, void * user_data) * hb_font_get_nominal_glyphs_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate UInt32 FontGetNominalGlyphsProxyDelegate(hb_font_t font, void* font_data, UInt32 count, UInt32* first_unicode, UInt32 unicode_stride, UInt32* first_glyph, UInt32 glyph_stride, void* user_data); - // typedef hb_bool_t (*)(hb_font_t* font, void* font_data, hb_codepoint_t unicode, hb_codepoint_t variation_selector, hb_codepoint_t* glyph, void* user_data)* hb_font_get_variation_glyph_func_t + // typedef hb_bool_t (*)(hb_font_t * font, void * font_data, hb_codepoint_t unicode, hb_codepoint_t variation_selector, hb_codepoint_t * glyph, void * user_data) * hb_font_get_variation_glyph_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] [return: MarshalAs (UnmanagedType.I1)] internal unsafe delegate bool FontGetVariationGlyphProxyDelegate(hb_font_t font, void* font_data, UInt32 unicode, UInt32 variation_selector, UInt32* glyph, void* user_data); -// TODO: typedef const hb_language_impl_t* hb_language_t - // typedef hb_blob_t* (*)(hb_face_t* face, hb_tag_t tag, void* user_data)* hb_reference_table_func_t + // typedef void (*)(hb_font_t * font, void * font_data, hb_codepoint_t glyph, hb_paint_funcs_t * paint_funcs, void * paint_data, unsigned int palette_index, hb_color_t foreground, void * user_data) * hb_font_paint_glyph_func_t + [UnmanagedFunctionPointer (CallingConvention.Cdecl)] + internal unsafe delegate void FontPaintGlyphProxyDelegate(hb_font_t font, void* font_data, UInt32 glyph, hb_paint_funcs_t paint_funcs, void* paint_data, UInt32 palette_index, UInt32 foreground, void* user_data); + +// TODO: typedef hb_language_impl_t const * hb_language_t + // typedef hb_blob_t * (*)(hb_face_t * face, hb_tag_t tag, void * user_data) * hb_reference_table_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate hb_blob_t ReferenceTableProxyDelegate(hb_face_t face, UInt32 tag, void* user_data); - // typedef hb_unicode_combining_class_t (*)(hb_unicode_funcs_t* ufuncs, hb_codepoint_t unicode, void* user_data)* hb_unicode_combining_class_func_t + // typedef hb_unicode_combining_class_t (*)(hb_unicode_funcs_t * ufuncs, hb_codepoint_t unicode, void * user_data) * hb_unicode_combining_class_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate int UnicodeCombiningClassProxyDelegate(hb_unicode_funcs_t ufuncs, UInt32 unicode, void* user_data); - // typedef hb_bool_t (*)(hb_unicode_funcs_t* ufuncs, hb_codepoint_t a, hb_codepoint_t b, hb_codepoint_t* ab, void* user_data)* hb_unicode_compose_func_t + // typedef hb_bool_t (*)(hb_unicode_funcs_t * ufuncs, hb_codepoint_t a, hb_codepoint_t b, hb_codepoint_t * ab, void * user_data) * hb_unicode_compose_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] [return: MarshalAs (UnmanagedType.I1)] internal unsafe delegate bool UnicodeComposeProxyDelegate(hb_unicode_funcs_t ufuncs, UInt32 a, UInt32 b, UInt32* ab, void* user_data); - // typedef unsigned int (*)(hb_unicode_funcs_t* ufuncs, hb_codepoint_t u, hb_codepoint_t* decomposed, void* user_data)* hb_unicode_decompose_compatibility_func_t + // typedef unsigned int (*)(hb_unicode_funcs_t * ufuncs, hb_codepoint_t u, hb_codepoint_t * decomposed, void * user_data) * hb_unicode_decompose_compatibility_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate UInt32 UnicodeDecomposeCompatibilityProxyDelegate(hb_unicode_funcs_t ufuncs, UInt32 u, UInt32* decomposed, void* user_data); - // typedef hb_bool_t (*)(hb_unicode_funcs_t* ufuncs, hb_codepoint_t ab, hb_codepoint_t* a, hb_codepoint_t* b, void* user_data)* hb_unicode_decompose_func_t + // typedef hb_bool_t (*)(hb_unicode_funcs_t * ufuncs, hb_codepoint_t ab, hb_codepoint_t * a, hb_codepoint_t * b, void * user_data) * hb_unicode_decompose_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] [return: MarshalAs (UnmanagedType.I1)] internal unsafe delegate bool UnicodeDecomposeProxyDelegate(hb_unicode_funcs_t ufuncs, UInt32 ab, UInt32* a, UInt32* b, void* user_data); - // typedef unsigned int (*)(hb_unicode_funcs_t* ufuncs, hb_codepoint_t unicode, void* user_data)* hb_unicode_eastasian_width_func_t + // typedef unsigned int (*)(hb_unicode_funcs_t * ufuncs, hb_codepoint_t unicode, void * user_data) * hb_unicode_eastasian_width_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate UInt32 UnicodeEastasianWidthProxyDelegate(hb_unicode_funcs_t ufuncs, UInt32 unicode, void* user_data); - // typedef hb_unicode_general_category_t (*)(hb_unicode_funcs_t* ufuncs, hb_codepoint_t unicode, void* user_data)* hb_unicode_general_category_func_t + // typedef hb_unicode_general_category_t (*)(hb_unicode_funcs_t * ufuncs, hb_codepoint_t unicode, void * user_data) * hb_unicode_general_category_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate int UnicodeGeneralCategoryProxyDelegate(hb_unicode_funcs_t ufuncs, UInt32 unicode, void* user_data); - // typedef hb_codepoint_t (*)(hb_unicode_funcs_t* ufuncs, hb_codepoint_t unicode, void* user_data)* hb_unicode_mirroring_func_t + // typedef hb_codepoint_t (*)(hb_unicode_funcs_t * ufuncs, hb_codepoint_t unicode, void * user_data) * hb_unicode_mirroring_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate UInt32 UnicodeMirroringProxyDelegate(hb_unicode_funcs_t ufuncs, UInt32 unicode, void* user_data); - // typedef hb_script_t (*)(hb_unicode_funcs_t* ufuncs, hb_codepoint_t unicode, void* user_data)* hb_unicode_script_func_t + // typedef hb_script_t (*)(hb_unicode_funcs_t * ufuncs, hb_codepoint_t unicode, void * user_data) * hb_unicode_script_func_t [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate UInt32 UnicodeScriptProxyDelegate(hb_unicode_funcs_t ufuncs, UInt32 unicode, void* user_data); @@ -6483,13 +7720,187 @@ namespace HarfBuzzSharp { namespace HarfBuzzSharp { + // _hb_var_num_t + [StructLayout (LayoutKind.Sequential)] + public unsafe partial struct VarNum : IEquatable { + // public float f + private Single f; + public Single F { + readonly get => f; + set => f = value; + } + + // public unsigned int u32 + private UInt32 u32; + public UInt32 U32 { + readonly get => u32; + set => u32 = value; + } + + // public int i32 + private Int32 i32; + public Int32 I32 { + readonly get => i32; + set => i32 = value; + } + + // public unsigned short[2] u16 + private UInt16* u16; + public UInt16* U16 { + readonly get => u16; + set => u16 = value; + } + + // public short[2] i16 + private Int16* i16; + public Int16* I16 { + readonly get => i16; + set => i16 = value; + } + + // public unsigned char[4] u8 + private Byte* u8; + public Byte* U8 { + readonly get => u8; + set => u8 = value; + } + + // public char[4] i8 + private /* char */ void* i8; + public /* char */ void* I8 { + readonly get => i8; + set => i8 = value; + } + + public readonly bool Equals (VarNum obj) => +#pragma warning disable CS8909 + f == obj.f && u32 == obj.u32 && i32 == obj.i32 && u16 == obj.u16 && i16 == obj.i16 && u8 == obj.u8 && i8 == obj.i8; +#pragma warning restore CS8909 + + public readonly override bool Equals (object obj) => + obj is VarNum f && Equals (f); + + public static bool operator == (VarNum left, VarNum right) => + left.Equals (right); + + public static bool operator != (VarNum left, VarNum right) => + !left.Equals (right); + + public readonly override int GetHashCode () + { + var hash = new HashCode (); + hash.Add (f); + hash.Add (u32); + hash.Add (i32); + hash.Add (u16); + hash.Add (i16); + hash.Add (u8); + hash.Add (i8); + return hash.ToHashCode (); + } + + } + + // hb_draw_state_t + [StructLayout (LayoutKind.Sequential)] + public unsafe partial struct DrawState : IEquatable { + // public hb_bool_t path_open + private Boolean path_open; + public Boolean PathOpen { + readonly get => path_open; + set => path_open = value; + } + + // public float path_start_x + private Single path_start_x; + public Single PathStartX { + readonly get => path_start_x; + set => path_start_x = value; + } + + // public float path_start_y + private Single path_start_y; + public Single PathStartY { + readonly get => path_start_y; + set => path_start_y = value; + } + + // public float current_x + private Single current_x; + public Single CurrentX { + readonly get => current_x; + set => current_x = value; + } + + // public float current_y + private Single current_y; + public Single CurrentY { + readonly get => current_y; + set => current_y = value; + } + + // public hb_var_num_t reserved1 + private VarNum reserved1; + + // public hb_var_num_t reserved2 + private VarNum reserved2; + + // public hb_var_num_t reserved3 + private VarNum reserved3; + + // public hb_var_num_t reserved4 + private VarNum reserved4; + + // public hb_var_num_t reserved5 + private VarNum reserved5; + + // public hb_var_num_t reserved6 + private VarNum reserved6; + + // public hb_var_num_t reserved7 + private VarNum reserved7; + + public readonly bool Equals (DrawState obj) => +#pragma warning disable CS8909 + path_open == obj.path_open && path_start_x == obj.path_start_x && path_start_y == obj.path_start_y && current_x == obj.current_x && current_y == obj.current_y && reserved1 == obj.reserved1 && reserved2 == obj.reserved2 && reserved3 == obj.reserved3 && reserved4 == obj.reserved4 && reserved5 == obj.reserved5 && reserved6 == obj.reserved6 && reserved7 == obj.reserved7; +#pragma warning restore CS8909 + + public readonly override bool Equals (object obj) => + obj is DrawState f && Equals (f); + + public static bool operator == (DrawState left, DrawState right) => + left.Equals (right); + + public static bool operator != (DrawState left, DrawState right) => + !left.Equals (right); + + public readonly override int GetHashCode () + { + var hash = new HashCode (); + hash.Add (path_open); + hash.Add (path_start_x); + hash.Add (path_start_y); + hash.Add (current_x); + hash.Add (current_y); + hash.Add (reserved1); + hash.Add (reserved2); + hash.Add (reserved3); + hash.Add (reserved4); + hash.Add (reserved5); + hash.Add (reserved6); + hash.Add (reserved7); + return hash.ToHashCode (); + } + + } + // hb_feature_t [StructLayout (LayoutKind.Sequential)] public unsafe partial struct Feature : IEquatable { // public hb_tag_t tag private UInt32 tag; - // public uint32_t value + // public unsigned int value private UInt32 value; // public unsigned int start @@ -6683,7 +8094,7 @@ public UInt32 Mask { set => mask = value; } - // public uint32_t cluster + // public unsigned int cluster private UInt32 cluster; public UInt32 Cluster { readonly get => cluster; @@ -6931,6 +8342,47 @@ public readonly override int GetHashCode () } + // hb_ot_math_kern_entry_t + [StructLayout (LayoutKind.Sequential)] + public unsafe partial struct OpenTypeMathKernEntry : IEquatable { + // public hb_position_t max_correction_height + private Int32 max_correction_height; + public Int32 MaxCorrectionHeight { + readonly get => max_correction_height; + set => max_correction_height = value; + } + + // public hb_position_t kern_value + private Int32 kern_value; + public Int32 KernValue { + readonly get => kern_value; + set => kern_value = value; + } + + public readonly bool Equals (OpenTypeMathKernEntry obj) => +#pragma warning disable CS8909 + max_correction_height == obj.max_correction_height && kern_value == obj.kern_value; +#pragma warning restore CS8909 + + public readonly override bool Equals (object obj) => + obj is OpenTypeMathKernEntry f && Equals (f); + + public static bool operator == (OpenTypeMathKernEntry left, OpenTypeMathKernEntry right) => + left.Equals (right); + + public static bool operator != (OpenTypeMathKernEntry left, OpenTypeMathKernEntry right) => + !left.Equals (right); + + public readonly override int GetHashCode () + { + var hash = new HashCode (); + hash.Add (max_correction_height); + hash.Add (kern_value); + return hash.ToHashCode (); + } + + } + // hb_ot_name_entry_t [StructLayout (LayoutKind.Sequential)] public unsafe partial struct OpenTypeNameEntry : IEquatable { @@ -7237,6 +8689,14 @@ public enum BufferFlags { RemoveDefaultIgnorables = 8, // HB_BUFFER_FLAG_DO_NOT_INSERT_DOTTED_CIRCLE = 0x00000010u DoNotInsertDottedCircle = 16, + // HB_BUFFER_FLAG_VERIFY = 0x00000020u + Verify = 32, + // HB_BUFFER_FLAG_PRODUCE_UNSAFE_TO_CONCAT = 0x00000040u + ProduceUnsafeToConcat = 64, + // HB_BUFFER_FLAG_PRODUCE_SAFE_TO_INSERT_TATWEEL = 0x00000080u + ProduceSafeToInsertTatweel = 128, + // HB_BUFFER_FLAG_DEFINED = 0x000000FFu + Defined = 255, } // hb_buffer_serialize_flags_t @@ -7256,6 +8716,8 @@ public enum SerializeFlag { GlyphFlags = 16, // HB_BUFFER_SERIALIZE_FLAG_NO_ADVANCES = 0x00000020u NoAdvances = 32, + // HB_BUFFER_SERIALIZE_FLAG_DEFINED = 0x0000003Fu + Defined = 63, } // hb_buffer_serialize_format_t @@ -7287,8 +8749,12 @@ public enum Direction { public enum GlyphFlags { // HB_GLYPH_FLAG_UNSAFE_TO_BREAK = 0x00000001 UnsafeToBreak = 1, - // HB_GLYPH_FLAG_DEFINED = 0x00000001 - Defined = 1, + // HB_GLYPH_FLAG_UNSAFE_TO_CONCAT = 0x00000002 + UnsafeToConcat = 2, + // HB_GLYPH_FLAG_SAFE_TO_INSERT_TATWEEL = 0x00000004 + SafeToInsertTatweel = 4, + // HB_GLYPH_FLAG_DEFINED = 0x00000007 + Defined = 7, } // hb_memory_mode_t @@ -7323,10 +8789,14 @@ public enum OpenTypeLayoutBaselineTag { IdeoFaceBottomOrLeft = 1768121954, // HB_OT_LAYOUT_BASELINE_TAG_IDEO_FACE_TOP_OR_RIGHT = 1768121972 IdeoFaceTopOrRight = 1768121972, + // HB_OT_LAYOUT_BASELINE_TAG_IDEO_FACE_CENTRAL = 1231251043 + IdeoFaceCentral = 1231251043, // HB_OT_LAYOUT_BASELINE_TAG_IDEO_EMBOX_BOTTOM_OR_LEFT = 1768187247 IdeoEmboxBottomOrLeft = 1768187247, // HB_OT_LAYOUT_BASELINE_TAG_IDEO_EMBOX_TOP_OR_RIGHT = 1768191088 IdeoEmboxTopOrRight = 1768191088, + // HB_OT_LAYOUT_BASELINE_TAG_IDEO_EMBOX_CENTRAL = 1231315813 + IdeoEmboxCentral = 1231315813, // HB_OT_LAYOUT_BASELINE_TAG_MATH = 1835103336 Math = 1835103336, } @@ -7547,12 +9017,84 @@ public enum OpenTypeMetricsTag { UnderlineOffset = 1970168943, } + // hb_ot_name_id_predefined_t + public enum OpenTypeNameIdPredefined { + // HB_OT_NAME_ID_COPYRIGHT = 0 + HbOtNameIdCopyright = 0, + // HB_OT_NAME_ID_FONT_FAMILY = 1 + HbOtNameIdFontFamily = 1, + // HB_OT_NAME_ID_FONT_SUBFAMILY = 2 + HbOtNameIdFontSubfamily = 2, + // HB_OT_NAME_ID_UNIQUE_ID = 3 + HbOtNameIdUniqueId = 3, + // HB_OT_NAME_ID_FULL_NAME = 4 + HbOtNameIdFullName = 4, + // HB_OT_NAME_ID_VERSION_STRING = 5 + HbOtNameIdVersionString = 5, + // HB_OT_NAME_ID_POSTSCRIPT_NAME = 6 + HbOtNameIdPostscriptName = 6, + // HB_OT_NAME_ID_TRADEMARK = 7 + HbOtNameIdTrademark = 7, + // HB_OT_NAME_ID_MANUFACTURER = 8 + HbOtNameIdManufacturer = 8, + // HB_OT_NAME_ID_DESIGNER = 9 + HbOtNameIdDesigner = 9, + // HB_OT_NAME_ID_DESCRIPTION = 10 + HbOtNameIdDescription = 10, + // HB_OT_NAME_ID_VENDOR_URL = 11 + HbOtNameIdVendorUrl = 11, + // HB_OT_NAME_ID_DESIGNER_URL = 12 + HbOtNameIdDesignerUrl = 12, + // HB_OT_NAME_ID_LICENSE = 13 + HbOtNameIdLicense = 13, + // HB_OT_NAME_ID_LICENSE_URL = 14 + HbOtNameIdLicenseUrl = 14, + // HB_OT_NAME_ID_TYPOGRAPHIC_FAMILY = 16 + HbOtNameIdTypographicFamily = 16, + // HB_OT_NAME_ID_TYPOGRAPHIC_SUBFAMILY = 17 + HbOtNameIdTypographicSubfamily = 17, + // HB_OT_NAME_ID_MAC_FULL_NAME = 18 + HbOtNameIdMacFullName = 18, + // HB_OT_NAME_ID_SAMPLE_TEXT = 19 + HbOtNameIdSampleText = 19, + // HB_OT_NAME_ID_CID_FINDFONT_NAME = 20 + HbOtNameIdCidFindfontName = 20, + // HB_OT_NAME_ID_WWS_FAMILY = 21 + HbOtNameIdWwsFamily = 21, + // HB_OT_NAME_ID_WWS_SUBFAMILY = 22 + HbOtNameIdWwsSubfamily = 22, + // HB_OT_NAME_ID_LIGHT_BACKGROUND = 23 + HbOtNameIdLightBackground = 23, + // HB_OT_NAME_ID_DARK_BACKGROUND = 24 + HbOtNameIdDarkBackground = 24, + // HB_OT_NAME_ID_VARIATIONS_PS_PREFIX = 25 + HbOtNameIdVariationsPsPrefix = 25, + // HB_OT_NAME_ID_INVALID = 0xFFFF + HbOtNameIdInvalid = 65535, + } + // hb_ot_var_axis_flags_t public enum OpenTypeVarAxisFlags { // HB_OT_VAR_AXIS_FLAG_HIDDEN = 0x00000001u Hidden = 1, } + // hb_style_tag_t + public enum StyleTag { + // HB_STYLE_TAG_ITALIC = 1769234796 + Italic = 1769234796, + // HB_STYLE_TAG_OPTICAL_SIZE = 1869640570 + OpticalSize = 1869640570, + // HB_STYLE_TAG_SLANT_ANGLE = 1936486004 + SlantAngle = 1936486004, + // HB_STYLE_TAG_SLANT_RATIO = 1399615092 + SlantRatio = 1399615092, + // HB_STYLE_TAG_WIDTH = 2003072104 + Width = 2003072104, + // HB_STYLE_TAG_WEIGHT = 2003265652 + Weight = 2003265652, + } + // hb_unicode_combining_class_t public enum UnicodeCombiningClass { // HB_UNICODE_COMBINING_CLASS_NOT_REORDERED = 0 @@ -7635,8 +9177,8 @@ public enum UnicodeCombiningClass { CCC129 = 129, // HB_UNICODE_COMBINING_CLASS_CCC130 = 130 CCC130 = 130, - // HB_UNICODE_COMBINING_CLASS_CCC133 = 132 - CCC133 = 132, + // HB_UNICODE_COMBINING_CLASS_CCC132 = 132 + Ccc132 = 132, // HB_UNICODE_COMBINING_CLASS_ATTACHED_BELOW_LEFT = 200 AttachedBelowLeft = 200, // HB_UNICODE_COMBINING_CLASS_ATTACHED_BELOW = 202 @@ -7890,7 +9432,7 @@ internal static unsafe partial class DelegateProxies { [return: MarshalAs (UnmanagedType.I1)] private static partial bool FontGetVariationGlyphProxyImplementation(hb_font_t font,void* font_data,UInt32 unicode,UInt32 variation_selector,UInt32* glyph,void* user_data); -// TODO: typedef const hb_language_impl_t* hb_language_t +// TODO: typedef hb_language_impl_t const * hb_language_t /// Proxy for hb_reference_table_func_t native function. #if USE_LIBRARY_IMPORT public static readonly delegate* unmanaged[Cdecl] ReferenceTableProxy = &ReferenceTableProxyImplementation; diff --git a/binding/HarfBuzzSharp/Language.cs b/binding/HarfBuzzSharp/Language.cs index ce87b256620..a0c40da12af 100644 --- a/binding/HarfBuzzSharp/Language.cs +++ b/binding/HarfBuzzSharp/Language.cs @@ -32,6 +32,24 @@ public Language (string name) public string Name { get; } + /// + /// Checks whether this language matches a specific language. + /// + /// + /// Checks whether this language matches the specified language. + /// When checking for a match, a language that matches the prefix + /// (including the region subtag) will be considered a match. + /// For example, "en-us" matches "en" (since "en" is a prefix of "en-us"). + /// + /// The language to check against + /// True if this language matches the specific language + public bool Matches (Language specific) + { + if (specific == null) + throw new ArgumentNullException (nameof (specific)); + return HarfBuzzApi.hb_language_matches (Handle, specific.Handle); + } + public override string ToString () => Name; public override bool Equals (object obj) => diff --git a/binding/SkiaSharp.Resources/ResourcesApi.generated.cs b/binding/SkiaSharp.Resources/ResourcesApi.generated.cs index fa699789b03..60abd2d77ba 100644 --- a/binding/SkiaSharp.Resources/ResourcesApi.generated.cs +++ b/binding/SkiaSharp.Resources/ResourcesApi.generated.cs @@ -117,7 +117,7 @@ internal unsafe partial class ResourcesApi { #region skresources_resource_provider.h - // skresources_resource_provider_t* skresources_caching_resource_provider_proxy_make(skresources_resource_provider_t* rp) + // skresources_resource_provider_t * skresources_caching_resource_provider_proxy_make(skresources_resource_provider_t * rp) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -136,7 +136,7 @@ internal static skresources_resource_provider_t skresources_caching_resource_pro (skresources_caching_resource_provider_proxy_make_delegate ??= GetSymbol ("skresources_caching_resource_provider_proxy_make")).Invoke (rp); #endif - // skresources_resource_provider_t* skresources_data_uri_resource_provider_proxy_make(skresources_resource_provider_t* rp, bool predecode) + // skresources_resource_provider_t * skresources_data_uri_resource_provider_proxy_make(skresources_resource_provider_t * rp, bool predecode) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -155,7 +155,7 @@ internal static skresources_resource_provider_t skresources_data_uri_resource_pr (skresources_data_uri_resource_provider_proxy_make_delegate ??= GetSymbol ("skresources_data_uri_resource_provider_proxy_make")).Invoke (rp, predecode); #endif - // skresources_resource_provider_t* skresources_file_resource_provider_make(sk_string_t* base_dir, bool predecode) + // skresources_resource_provider_t * skresources_file_resource_provider_make(sk_string_t * base_dir, bool predecode) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -174,7 +174,7 @@ internal static skresources_resource_provider_t skresources_file_resource_provid (skresources_file_resource_provider_make_delegate ??= GetSymbol ("skresources_file_resource_provider_make")).Invoke (base_dir, predecode); #endif - // void skresources_resource_provider_delete(skresources_resource_provider_t* instance) + // void skresources_resource_provider_delete(skresources_resource_provider_t * instance) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -193,7 +193,7 @@ internal static void skresources_resource_provider_delete (skresources_resource_ (skresources_resource_provider_delete_delegate ??= GetSymbol ("skresources_resource_provider_delete")).Invoke (instance); #endif - // sk_data_t* skresources_resource_provider_load(skresources_resource_provider_t* instance, const char* path, const char* name) + // sk_data_t * skresources_resource_provider_load(skresources_resource_provider_t * instance, char const * path, char const * name) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -212,7 +212,7 @@ internal static sk_data_t skresources_resource_provider_load (skresources_resour (skresources_resource_provider_load_delegate ??= GetSymbol ("skresources_resource_provider_load")).Invoke (instance, path, name); #endif - // skresources_external_track_asset_t* skresources_resource_provider_load_audio_asset(skresources_resource_provider_t* instance, const char* path, const char* name, const char* id) + // skresources_external_track_asset_t * skresources_resource_provider_load_audio_asset(skresources_resource_provider_t * instance, char const * path, char const * name, char const * id) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -231,7 +231,7 @@ internal static skresources_external_track_asset_t skresources_resource_provider (skresources_resource_provider_load_audio_asset_delegate ??= GetSymbol ("skresources_resource_provider_load_audio_asset")).Invoke (instance, path, name, id); #endif - // skresources_image_asset_t* skresources_resource_provider_load_image_asset(skresources_resource_provider_t* instance, const char* path, const char* name, const char* id) + // skresources_image_asset_t * skresources_resource_provider_load_image_asset(skresources_resource_provider_t * instance, char const * path, char const * name, char const * id) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -250,7 +250,7 @@ internal static skresources_image_asset_t skresources_resource_provider_load_ima (skresources_resource_provider_load_image_asset_delegate ??= GetSymbol ("skresources_resource_provider_load_image_asset")).Invoke (instance, path, name, id); #endif - // sk_typeface_t* skresources_resource_provider_load_typeface(skresources_resource_provider_t* instance, const char* name, const char* url) + // sk_typeface_t * skresources_resource_provider_load_typeface(skresources_resource_provider_t * instance, char const * name, char const * url) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -269,7 +269,7 @@ internal static sk_typeface_t skresources_resource_provider_load_typeface (skres (skresources_resource_provider_load_typeface_delegate ??= GetSymbol ("skresources_resource_provider_load_typeface")).Invoke (instance, name, url); #endif - // void skresources_resource_provider_ref(skresources_resource_provider_t* instance) + // void skresources_resource_provider_ref(skresources_resource_provider_t * instance) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -288,7 +288,7 @@ internal static void skresources_resource_provider_ref (skresources_resource_pro (skresources_resource_provider_ref_delegate ??= GetSymbol ("skresources_resource_provider_ref")).Invoke (instance); #endif - // void skresources_resource_provider_unref(skresources_resource_provider_t* instance) + // void skresources_resource_provider_unref(skresources_resource_provider_t * instance) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] diff --git a/binding/SkiaSharp.SceneGraph/SceneGraphApi.generated.cs b/binding/SkiaSharp.SceneGraph/SceneGraphApi.generated.cs index 658c3c85908..f387691b506 100644 --- a/binding/SkiaSharp.SceneGraph/SceneGraphApi.generated.cs +++ b/binding/SkiaSharp.SceneGraph/SceneGraphApi.generated.cs @@ -117,7 +117,7 @@ internal unsafe partial class SceneGraphApi { #region sksg_invalidation_controller.h - // void sksg_invalidation_controller_begin(sksg_invalidation_controller_t* instance) + // void sksg_invalidation_controller_begin(sksg_invalidation_controller_t * instance) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -136,7 +136,7 @@ internal static void sksg_invalidation_controller_begin (sksg_invalidation_contr (sksg_invalidation_controller_begin_delegate ??= GetSymbol ("sksg_invalidation_controller_begin")).Invoke (instance); #endif - // void sksg_invalidation_controller_delete(sksg_invalidation_controller_t* instance) + // void sksg_invalidation_controller_delete(sksg_invalidation_controller_t * instance) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -155,7 +155,7 @@ internal static void sksg_invalidation_controller_delete (sksg_invalidation_cont (sksg_invalidation_controller_delete_delegate ??= GetSymbol ("sksg_invalidation_controller_delete")).Invoke (instance); #endif - // void sksg_invalidation_controller_end(sksg_invalidation_controller_t* instance) + // void sksg_invalidation_controller_end(sksg_invalidation_controller_t * instance) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -174,7 +174,7 @@ internal static void sksg_invalidation_controller_end (sksg_invalidation_control (sksg_invalidation_controller_end_delegate ??= GetSymbol ("sksg_invalidation_controller_end")).Invoke (instance); #endif - // void sksg_invalidation_controller_get_bounds(sksg_invalidation_controller_t* instance, sk_rect_t* bounds) + // void sksg_invalidation_controller_get_bounds(sksg_invalidation_controller_t * instance, sk_rect_t * bounds) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -193,7 +193,7 @@ internal static void sksg_invalidation_controller_get_bounds (sksg_invalidation_ (sksg_invalidation_controller_get_bounds_delegate ??= GetSymbol ("sksg_invalidation_controller_get_bounds")).Invoke (instance, bounds); #endif - // void sksg_invalidation_controller_inval(sksg_invalidation_controller_t* instance, sk_rect_t* rect, sk_matrix_t* matrix) + // void sksg_invalidation_controller_inval(sksg_invalidation_controller_t * instance, sk_rect_t * rect, sk_matrix_t * matrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -212,7 +212,7 @@ internal static void sksg_invalidation_controller_inval (sksg_invalidation_contr (sksg_invalidation_controller_inval_delegate ??= GetSymbol ("sksg_invalidation_controller_inval")).Invoke (instance, rect, matrix); #endif - // sksg_invalidation_controller_t* sksg_invalidation_controller_new() + // sksg_invalidation_controller_t * sksg_invalidation_controller_new() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -231,7 +231,7 @@ internal static sksg_invalidation_controller_t sksg_invalidation_controller_new (sksg_invalidation_controller_new_delegate ??= GetSymbol ("sksg_invalidation_controller_new")).Invoke (); #endif - // void sksg_invalidation_controller_reset(sksg_invalidation_controller_t* instance) + // void sksg_invalidation_controller_reset(sksg_invalidation_controller_t * instance) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] diff --git a/binding/SkiaSharp.Skottie/SkottieApi.generated.cs b/binding/SkiaSharp.Skottie/SkottieApi.generated.cs index 21425ff755a..07e722ec61c 100644 --- a/binding/SkiaSharp.Skottie/SkottieApi.generated.cs +++ b/binding/SkiaSharp.Skottie/SkottieApi.generated.cs @@ -117,7 +117,7 @@ internal unsafe partial class SkottieApi { #region skottie_animation.h - // void skottie_animation_builder_delete(skottie_animation_builder_t* instance) + // void skottie_animation_builder_delete(skottie_animation_builder_t * instance) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -136,7 +136,7 @@ internal static void skottie_animation_builder_delete (skottie_animation_builder (skottie_animation_builder_delete_delegate ??= GetSymbol ("skottie_animation_builder_delete")).Invoke (instance); #endif - // void skottie_animation_builder_get_stats(skottie_animation_builder_t* instance, skottie_animation_builder_stats_t* stats) + // void skottie_animation_builder_get_stats(skottie_animation_builder_t * instance, skottie_animation_builder_stats_t * stats) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -155,7 +155,7 @@ internal static void skottie_animation_builder_get_stats (skottie_animation_buil (skottie_animation_builder_get_stats_delegate ??= GetSymbol ("skottie_animation_builder_get_stats")).Invoke (instance, stats); #endif - // skottie_animation_t* skottie_animation_builder_make_from_data(skottie_animation_builder_t* instance, const char* data, size_t length) + // skottie_animation_t * skottie_animation_builder_make_from_data(skottie_animation_builder_t * instance, char const * data, size_t length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -174,7 +174,7 @@ internal static skottie_animation_t skottie_animation_builder_make_from_data (sk (skottie_animation_builder_make_from_data_delegate ??= GetSymbol ("skottie_animation_builder_make_from_data")).Invoke (instance, data, length); #endif - // skottie_animation_t* skottie_animation_builder_make_from_file(skottie_animation_builder_t* instance, const char* path) + // skottie_animation_t * skottie_animation_builder_make_from_file(skottie_animation_builder_t * instance, char const * path) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -193,7 +193,7 @@ internal static skottie_animation_t skottie_animation_builder_make_from_file (sk (skottie_animation_builder_make_from_file_delegate ??= GetSymbol ("skottie_animation_builder_make_from_file")).Invoke (instance, path); #endif - // skottie_animation_t* skottie_animation_builder_make_from_stream(skottie_animation_builder_t* instance, sk_stream_t* stream) + // skottie_animation_t * skottie_animation_builder_make_from_stream(skottie_animation_builder_t * instance, sk_stream_t * stream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -212,7 +212,7 @@ internal static skottie_animation_t skottie_animation_builder_make_from_stream ( (skottie_animation_builder_make_from_stream_delegate ??= GetSymbol ("skottie_animation_builder_make_from_stream")).Invoke (instance, stream); #endif - // skottie_animation_t* skottie_animation_builder_make_from_string(skottie_animation_builder_t* instance, const char* data, size_t length) + // skottie_animation_t * skottie_animation_builder_make_from_string(skottie_animation_builder_t * instance, char const * data, size_t length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -231,7 +231,7 @@ internal static skottie_animation_t skottie_animation_builder_make_from_string ( (skottie_animation_builder_make_from_string_delegate ??= GetSymbol ("skottie_animation_builder_make_from_string")).Invoke (instance, data, length); #endif - // skottie_animation_builder_t* skottie_animation_builder_new(skottie_animation_builder_flags_t flags) + // skottie_animation_builder_t * skottie_animation_builder_new(skottie_animation_builder_flags_t flags) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -250,7 +250,7 @@ internal static skottie_animation_builder_t skottie_animation_builder_new (Anima (skottie_animation_builder_new_delegate ??= GetSymbol ("skottie_animation_builder_new")).Invoke (flags); #endif - // void skottie_animation_builder_set_font_manager(skottie_animation_builder_t* instance, sk_fontmgr_t* fontManager) + // void skottie_animation_builder_set_font_manager(skottie_animation_builder_t * instance, sk_fontmgr_t * fontManager) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -269,7 +269,7 @@ internal static void skottie_animation_builder_set_font_manager (skottie_animati (skottie_animation_builder_set_font_manager_delegate ??= GetSymbol ("skottie_animation_builder_set_font_manager")).Invoke (instance, fontManager); #endif - // void skottie_animation_builder_set_resource_provider(skottie_animation_builder_t* instance, skottie_resource_provider_t* resourceProvider) + // void skottie_animation_builder_set_resource_provider(skottie_animation_builder_t * instance, skottie_resource_provider_t * resourceProvider) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -288,7 +288,7 @@ internal static void skottie_animation_builder_set_resource_provider (skottie_an (skottie_animation_builder_set_resource_provider_delegate ??= GetSymbol ("skottie_animation_builder_set_resource_provider")).Invoke (instance, resourceProvider); #endif - // void skottie_animation_delete(skottie_animation_t* instance) + // void skottie_animation_delete(skottie_animation_t * instance) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -307,7 +307,7 @@ internal static void skottie_animation_delete (skottie_animation_t instance) => (skottie_animation_delete_delegate ??= GetSymbol ("skottie_animation_delete")).Invoke (instance); #endif - // double skottie_animation_get_duration(skottie_animation_t* instance) + // double skottie_animation_get_duration(skottie_animation_t * instance) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -326,7 +326,7 @@ internal static Double skottie_animation_get_duration (skottie_animation_t insta (skottie_animation_get_duration_delegate ??= GetSymbol ("skottie_animation_get_duration")).Invoke (instance); #endif - // double skottie_animation_get_fps(skottie_animation_t* instance) + // double skottie_animation_get_fps(skottie_animation_t * instance) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -345,7 +345,7 @@ internal static Double skottie_animation_get_fps (skottie_animation_t instance) (skottie_animation_get_fps_delegate ??= GetSymbol ("skottie_animation_get_fps")).Invoke (instance); #endif - // double skottie_animation_get_in_point(skottie_animation_t* instance) + // double skottie_animation_get_in_point(skottie_animation_t * instance) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -364,7 +364,7 @@ internal static Double skottie_animation_get_in_point (skottie_animation_t insta (skottie_animation_get_in_point_delegate ??= GetSymbol ("skottie_animation_get_in_point")).Invoke (instance); #endif - // double skottie_animation_get_out_point(skottie_animation_t* instance) + // double skottie_animation_get_out_point(skottie_animation_t * instance) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -383,7 +383,7 @@ internal static Double skottie_animation_get_out_point (skottie_animation_t inst (skottie_animation_get_out_point_delegate ??= GetSymbol ("skottie_animation_get_out_point")).Invoke (instance); #endif - // void skottie_animation_get_size(skottie_animation_t* instance, sk_size_t* size) + // void skottie_animation_get_size(skottie_animation_t * instance, sk_size_t * size) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -402,7 +402,7 @@ internal static void skottie_animation_get_size (skottie_animation_t instance, S (skottie_animation_get_size_delegate ??= GetSymbol ("skottie_animation_get_size")).Invoke (instance, size); #endif - // void skottie_animation_get_version(skottie_animation_t* instance, sk_string_t* version) + // void skottie_animation_get_version(skottie_animation_t * instance, sk_string_t * version) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -421,7 +421,7 @@ internal static void skottie_animation_get_version (skottie_animation_t instance (skottie_animation_get_version_delegate ??= GetSymbol ("skottie_animation_get_version")).Invoke (instance, version); #endif - // skottie_animation_t* skottie_animation_make_from_data(const char* data, size_t length) + // skottie_animation_t * skottie_animation_make_from_data(char const * data, size_t length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -440,7 +440,7 @@ internal static skottie_animation_t skottie_animation_make_from_data (/* char */ (skottie_animation_make_from_data_delegate ??= GetSymbol ("skottie_animation_make_from_data")).Invoke (data, length); #endif - // skottie_animation_t* skottie_animation_make_from_file(const char* path) + // skottie_animation_t * skottie_animation_make_from_file(char const * path) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -459,7 +459,7 @@ internal static skottie_animation_t skottie_animation_make_from_file ([MarshalAs (skottie_animation_make_from_file_delegate ??= GetSymbol ("skottie_animation_make_from_file")).Invoke (path); #endif - // skottie_animation_t* skottie_animation_make_from_stream(sk_stream_t* stream) + // skottie_animation_t * skottie_animation_make_from_stream(sk_stream_t * stream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -478,7 +478,7 @@ internal static skottie_animation_t skottie_animation_make_from_stream (sk_strea (skottie_animation_make_from_stream_delegate ??= GetSymbol ("skottie_animation_make_from_stream")).Invoke (stream); #endif - // skottie_animation_t* skottie_animation_make_from_string(const char* data, size_t length) + // skottie_animation_t * skottie_animation_make_from_string(char const * data, size_t length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -497,7 +497,7 @@ internal static skottie_animation_t skottie_animation_make_from_string ([Marshal (skottie_animation_make_from_string_delegate ??= GetSymbol ("skottie_animation_make_from_string")).Invoke (data, length); #endif - // void skottie_animation_ref(skottie_animation_t* instance) + // void skottie_animation_ref(skottie_animation_t * instance) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -516,7 +516,7 @@ internal static void skottie_animation_ref (skottie_animation_t instance) => (skottie_animation_ref_delegate ??= GetSymbol ("skottie_animation_ref")).Invoke (instance); #endif - // void skottie_animation_render(skottie_animation_t* instance, sk_canvas_t* canvas, sk_rect_t* dst) + // void skottie_animation_render(skottie_animation_t * instance, sk_canvas_t * canvas, sk_rect_t * dst) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -535,7 +535,7 @@ internal static void skottie_animation_render (skottie_animation_t instance, sk_ (skottie_animation_render_delegate ??= GetSymbol ("skottie_animation_render")).Invoke (instance, canvas, dst); #endif - // void skottie_animation_render_with_flags(skottie_animation_t* instance, sk_canvas_t* canvas, sk_rect_t* dst, skottie_animation_renderflags_t flags) + // void skottie_animation_render_with_flags(skottie_animation_t * instance, sk_canvas_t * canvas, sk_rect_t * dst, skottie_animation_renderflags_t flags) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -554,7 +554,7 @@ internal static void skottie_animation_render_with_flags (skottie_animation_t in (skottie_animation_render_with_flags_delegate ??= GetSymbol ("skottie_animation_render_with_flags")).Invoke (instance, canvas, dst, flags); #endif - // void skottie_animation_seek(skottie_animation_t* instance, float t, sksg_invalidation_controller_t* ic) + // void skottie_animation_seek(skottie_animation_t * instance, float t, sksg_invalidation_controller_t * ic) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -573,7 +573,7 @@ internal static void skottie_animation_seek (skottie_animation_t instance, Singl (skottie_animation_seek_delegate ??= GetSymbol ("skottie_animation_seek")).Invoke (instance, t, ic); #endif - // void skottie_animation_seek_frame(skottie_animation_t* instance, float t, sksg_invalidation_controller_t* ic) + // void skottie_animation_seek_frame(skottie_animation_t * instance, float t, sksg_invalidation_controller_t * ic) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -592,7 +592,7 @@ internal static void skottie_animation_seek_frame (skottie_animation_t instance, (skottie_animation_seek_frame_delegate ??= GetSymbol ("skottie_animation_seek_frame")).Invoke (instance, t, ic); #endif - // void skottie_animation_seek_frame_time(skottie_animation_t* instance, float t, sksg_invalidation_controller_t* ic) + // void skottie_animation_seek_frame_time(skottie_animation_t * instance, float t, sksg_invalidation_controller_t * ic) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -611,7 +611,7 @@ internal static void skottie_animation_seek_frame_time (skottie_animation_t inst (skottie_animation_seek_frame_time_delegate ??= GetSymbol ("skottie_animation_seek_frame_time")).Invoke (instance, t, ic); #endif - // void skottie_animation_unref(skottie_animation_t* instance) + // void skottie_animation_unref(skottie_animation_t * instance) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] diff --git a/binding/SkiaSharp/SkiaApi.generated.cs b/binding/SkiaSharp/SkiaApi.generated.cs index 36a99043c72..02147dc094a 100644 --- a/binding/SkiaSharp/SkiaApi.generated.cs +++ b/binding/SkiaSharp/SkiaApi.generated.cs @@ -116,7 +116,7 @@ internal unsafe partial class SkiaApi { #region gr_context.h - // void gr_backendrendertarget_delete(gr_backendrendertarget_t* rendertarget) + // void gr_backendrendertarget_delete(gr_backendrendertarget_t * rendertarget) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -135,7 +135,7 @@ internal static void gr_backendrendertarget_delete (gr_backendrendertarget_t ren (gr_backendrendertarget_delete_delegate ??= GetSymbol ("gr_backendrendertarget_delete")).Invoke (rendertarget); #endif - // gr_backend_t gr_backendrendertarget_get_backend(const gr_backendrendertarget_t* rendertarget) + // gr_backend_t gr_backendrendertarget_get_backend(gr_backendrendertarget_t const * rendertarget) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -154,7 +154,7 @@ internal static GRBackendNative gr_backendrendertarget_get_backend (gr_backendre (gr_backendrendertarget_get_backend_delegate ??= GetSymbol ("gr_backendrendertarget_get_backend")).Invoke (rendertarget); #endif - // bool gr_backendrendertarget_get_gl_framebufferinfo(const gr_backendrendertarget_t* rendertarget, gr_gl_framebufferinfo_t* glInfo) + // bool gr_backendrendertarget_get_gl_framebufferinfo(gr_backendrendertarget_t const * rendertarget, gr_gl_framebufferinfo_t * glInfo) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -176,7 +176,7 @@ internal static bool gr_backendrendertarget_get_gl_framebufferinfo (gr_backendre (gr_backendrendertarget_get_gl_framebufferinfo_delegate ??= GetSymbol ("gr_backendrendertarget_get_gl_framebufferinfo")).Invoke (rendertarget, glInfo); #endif - // int gr_backendrendertarget_get_height(const gr_backendrendertarget_t* rendertarget) + // int gr_backendrendertarget_get_height(gr_backendrendertarget_t const * rendertarget) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -195,7 +195,7 @@ internal static Int32 gr_backendrendertarget_get_height (gr_backendrendertarget_ (gr_backendrendertarget_get_height_delegate ??= GetSymbol ("gr_backendrendertarget_get_height")).Invoke (rendertarget); #endif - // int gr_backendrendertarget_get_samples(const gr_backendrendertarget_t* rendertarget) + // int gr_backendrendertarget_get_samples(gr_backendrendertarget_t const * rendertarget) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -214,7 +214,7 @@ internal static Int32 gr_backendrendertarget_get_samples (gr_backendrendertarget (gr_backendrendertarget_get_samples_delegate ??= GetSymbol ("gr_backendrendertarget_get_samples")).Invoke (rendertarget); #endif - // int gr_backendrendertarget_get_stencils(const gr_backendrendertarget_t* rendertarget) + // int gr_backendrendertarget_get_stencils(gr_backendrendertarget_t const * rendertarget) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -233,7 +233,7 @@ internal static Int32 gr_backendrendertarget_get_stencils (gr_backendrendertarge (gr_backendrendertarget_get_stencils_delegate ??= GetSymbol ("gr_backendrendertarget_get_stencils")).Invoke (rendertarget); #endif - // int gr_backendrendertarget_get_width(const gr_backendrendertarget_t* rendertarget) + // int gr_backendrendertarget_get_width(gr_backendrendertarget_t const * rendertarget) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -252,7 +252,7 @@ internal static Int32 gr_backendrendertarget_get_width (gr_backendrendertarget_t (gr_backendrendertarget_get_width_delegate ??= GetSymbol ("gr_backendrendertarget_get_width")).Invoke (rendertarget); #endif - // bool gr_backendrendertarget_is_valid(const gr_backendrendertarget_t* rendertarget) + // bool gr_backendrendertarget_is_valid(gr_backendrendertarget_t const * rendertarget) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -274,7 +274,7 @@ internal static bool gr_backendrendertarget_is_valid (gr_backendrendertarget_t r (gr_backendrendertarget_is_valid_delegate ??= GetSymbol ("gr_backendrendertarget_is_valid")).Invoke (rendertarget); #endif - // gr_backendrendertarget_t* gr_backendrendertarget_new_direct3d(int width, int height, const gr_d3d_textureresourceinfo_t* d3dInfo) + // gr_backendrendertarget_t * gr_backendrendertarget_new_direct3d(int width, int height, gr_d3d_textureresourceinfo_t const * d3dInfo) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -293,7 +293,7 @@ internal static gr_backendrendertarget_t gr_backendrendertarget_new_direct3d (In (gr_backendrendertarget_new_direct3d_delegate ??= GetSymbol ("gr_backendrendertarget_new_direct3d")).Invoke (width, height, d3dInfo); #endif - // gr_backendrendertarget_t* gr_backendrendertarget_new_gl(int width, int height, int samples, int stencils, const gr_gl_framebufferinfo_t* glInfo) + // gr_backendrendertarget_t * gr_backendrendertarget_new_gl(int width, int height, int samples, int stencils, gr_gl_framebufferinfo_t const * glInfo) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -312,7 +312,7 @@ internal static gr_backendrendertarget_t gr_backendrendertarget_new_gl (Int32 wi (gr_backendrendertarget_new_gl_delegate ??= GetSymbol ("gr_backendrendertarget_new_gl")).Invoke (width, height, samples, stencils, glInfo); #endif - // gr_backendrendertarget_t* gr_backendrendertarget_new_metal(int width, int height, const gr_mtl_textureinfo_t* mtlInfo) + // gr_backendrendertarget_t * gr_backendrendertarget_new_metal(int width, int height, gr_mtl_textureinfo_t const * mtlInfo) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -331,7 +331,7 @@ internal static gr_backendrendertarget_t gr_backendrendertarget_new_metal (Int32 (gr_backendrendertarget_new_metal_delegate ??= GetSymbol ("gr_backendrendertarget_new_metal")).Invoke (width, height, mtlInfo); #endif - // gr_backendrendertarget_t* gr_backendrendertarget_new_vulkan(int width, int height, const gr_vk_imageinfo_t* vkImageInfo) + // gr_backendrendertarget_t * gr_backendrendertarget_new_vulkan(int width, int height, gr_vk_imageinfo_t const * vkImageInfo) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -350,7 +350,7 @@ internal static gr_backendrendertarget_t gr_backendrendertarget_new_vulkan (Int3 (gr_backendrendertarget_new_vulkan_delegate ??= GetSymbol ("gr_backendrendertarget_new_vulkan")).Invoke (width, height, vkImageInfo); #endif - // void gr_backendtexture_delete(gr_backendtexture_t* texture) + // void gr_backendtexture_delete(gr_backendtexture_t * texture) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -369,7 +369,7 @@ internal static void gr_backendtexture_delete (gr_backendtexture_t texture) => (gr_backendtexture_delete_delegate ??= GetSymbol ("gr_backendtexture_delete")).Invoke (texture); #endif - // gr_backend_t gr_backendtexture_get_backend(const gr_backendtexture_t* texture) + // gr_backend_t gr_backendtexture_get_backend(gr_backendtexture_t const * texture) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -388,7 +388,7 @@ internal static GRBackendNative gr_backendtexture_get_backend (gr_backendtexture (gr_backendtexture_get_backend_delegate ??= GetSymbol ("gr_backendtexture_get_backend")).Invoke (texture); #endif - // bool gr_backendtexture_get_gl_textureinfo(const gr_backendtexture_t* texture, gr_gl_textureinfo_t* glInfo) + // bool gr_backendtexture_get_gl_textureinfo(gr_backendtexture_t const * texture, gr_gl_textureinfo_t * glInfo) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -410,7 +410,7 @@ internal static bool gr_backendtexture_get_gl_textureinfo (gr_backendtexture_t t (gr_backendtexture_get_gl_textureinfo_delegate ??= GetSymbol ("gr_backendtexture_get_gl_textureinfo")).Invoke (texture, glInfo); #endif - // int gr_backendtexture_get_height(const gr_backendtexture_t* texture) + // int gr_backendtexture_get_height(gr_backendtexture_t const * texture) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -429,7 +429,7 @@ internal static Int32 gr_backendtexture_get_height (gr_backendtexture_t texture) (gr_backendtexture_get_height_delegate ??= GetSymbol ("gr_backendtexture_get_height")).Invoke (texture); #endif - // int gr_backendtexture_get_width(const gr_backendtexture_t* texture) + // int gr_backendtexture_get_width(gr_backendtexture_t const * texture) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -448,7 +448,7 @@ internal static Int32 gr_backendtexture_get_width (gr_backendtexture_t texture) (gr_backendtexture_get_width_delegate ??= GetSymbol ("gr_backendtexture_get_width")).Invoke (texture); #endif - // bool gr_backendtexture_has_mipmaps(const gr_backendtexture_t* texture) + // bool gr_backendtexture_has_mipmaps(gr_backendtexture_t const * texture) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -470,7 +470,7 @@ internal static bool gr_backendtexture_has_mipmaps (gr_backendtexture_t texture) (gr_backendtexture_has_mipmaps_delegate ??= GetSymbol ("gr_backendtexture_has_mipmaps")).Invoke (texture); #endif - // bool gr_backendtexture_is_valid(const gr_backendtexture_t* texture) + // bool gr_backendtexture_is_valid(gr_backendtexture_t const * texture) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -492,7 +492,7 @@ internal static bool gr_backendtexture_is_valid (gr_backendtexture_t texture) => (gr_backendtexture_is_valid_delegate ??= GetSymbol ("gr_backendtexture_is_valid")).Invoke (texture); #endif - // gr_backendtexture_t* gr_backendtexture_new_direct3d(int width, int height, const gr_d3d_textureresourceinfo_t* d3dInfo) + // gr_backendtexture_t * gr_backendtexture_new_direct3d(int width, int height, gr_d3d_textureresourceinfo_t const * d3dInfo) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -511,7 +511,7 @@ internal static gr_backendtexture_t gr_backendtexture_new_direct3d (Int32 width, (gr_backendtexture_new_direct3d_delegate ??= GetSymbol ("gr_backendtexture_new_direct3d")).Invoke (width, height, d3dInfo); #endif - // gr_backendtexture_t* gr_backendtexture_new_gl(int width, int height, bool mipmapped, const gr_gl_textureinfo_t* glInfo) + // gr_backendtexture_t * gr_backendtexture_new_gl(int width, int height, bool mipmapped, gr_gl_textureinfo_t const * glInfo) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -530,7 +530,7 @@ internal static gr_backendtexture_t gr_backendtexture_new_gl (Int32 width, Int32 (gr_backendtexture_new_gl_delegate ??= GetSymbol ("gr_backendtexture_new_gl")).Invoke (width, height, mipmapped, glInfo); #endif - // gr_backendtexture_t* gr_backendtexture_new_metal(int width, int height, bool mipmapped, const gr_mtl_textureinfo_t* mtlInfo) + // gr_backendtexture_t * gr_backendtexture_new_metal(int width, int height, bool mipmapped, gr_mtl_textureinfo_t const * mtlInfo) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -549,7 +549,7 @@ internal static gr_backendtexture_t gr_backendtexture_new_metal (Int32 width, In (gr_backendtexture_new_metal_delegate ??= GetSymbol ("gr_backendtexture_new_metal")).Invoke (width, height, mipmapped, mtlInfo); #endif - // gr_backendtexture_t* gr_backendtexture_new_vulkan(int width, int height, const gr_vk_imageinfo_t* vkInfo) + // gr_backendtexture_t * gr_backendtexture_new_vulkan(int width, int height, gr_vk_imageinfo_t const * vkInfo) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -568,7 +568,7 @@ internal static gr_backendtexture_t gr_backendtexture_new_vulkan (Int32 width, I (gr_backendtexture_new_vulkan_delegate ??= GetSymbol ("gr_backendtexture_new_vulkan")).Invoke (width, height, vkInfo); #endif - // void gr_direct_context_abandon_context(gr_direct_context_t* context) + // void gr_direct_context_abandon_context(gr_direct_context_t * context) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -587,7 +587,7 @@ internal static void gr_direct_context_abandon_context (gr_direct_context_t cont (gr_direct_context_abandon_context_delegate ??= GetSymbol ("gr_direct_context_abandon_context")).Invoke (context); #endif - // void gr_direct_context_dump_memory_statistics(const gr_direct_context_t* context, sk_tracememorydump_t* dump) + // void gr_direct_context_dump_memory_statistics(gr_direct_context_t const * context, sk_tracememorydump_t * dump) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -606,7 +606,7 @@ internal static void gr_direct_context_dump_memory_statistics (gr_direct_context (gr_direct_context_dump_memory_statistics_delegate ??= GetSymbol ("gr_direct_context_dump_memory_statistics")).Invoke (context, dump); #endif - // void gr_direct_context_flush(gr_direct_context_t* context) + // void gr_direct_context_flush(gr_direct_context_t * context) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -625,7 +625,7 @@ internal static void gr_direct_context_flush (gr_direct_context_t context) => (gr_direct_context_flush_delegate ??= GetSymbol ("gr_direct_context_flush")).Invoke (context); #endif - // void gr_direct_context_flush_and_submit(gr_direct_context_t* context, bool syncCpu) + // void gr_direct_context_flush_and_submit(gr_direct_context_t * context, bool syncCpu) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -644,7 +644,7 @@ internal static void gr_direct_context_flush_and_submit (gr_direct_context_t con (gr_direct_context_flush_and_submit_delegate ??= GetSymbol ("gr_direct_context_flush_and_submit")).Invoke (context, syncCpu); #endif - // void gr_direct_context_flush_image(gr_direct_context_t* context, const sk_image_t* image) + // void gr_direct_context_flush_image(gr_direct_context_t * context, sk_image_t const * image) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -663,7 +663,7 @@ internal static void gr_direct_context_flush_image (gr_direct_context_t context, (gr_direct_context_flush_image_delegate ??= GetSymbol ("gr_direct_context_flush_image")).Invoke (context, image); #endif - // void gr_direct_context_flush_surface(gr_direct_context_t* context, sk_surface_t* surface) + // void gr_direct_context_flush_surface(gr_direct_context_t * context, sk_surface_t * surface) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -682,7 +682,7 @@ internal static void gr_direct_context_flush_surface (gr_direct_context_t contex (gr_direct_context_flush_surface_delegate ??= GetSymbol ("gr_direct_context_flush_surface")).Invoke (context, surface); #endif - // void gr_direct_context_free_gpu_resources(gr_direct_context_t* context) + // void gr_direct_context_free_gpu_resources(gr_direct_context_t * context) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -701,7 +701,7 @@ internal static void gr_direct_context_free_gpu_resources (gr_direct_context_t c (gr_direct_context_free_gpu_resources_delegate ??= GetSymbol ("gr_direct_context_free_gpu_resources")).Invoke (context); #endif - // size_t gr_direct_context_get_resource_cache_limit(gr_direct_context_t* context) + // size_t gr_direct_context_get_resource_cache_limit(gr_direct_context_t * context) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -720,7 +720,7 @@ private partial class Delegates { (gr_direct_context_get_resource_cache_limit_delegate ??= GetSymbol ("gr_direct_context_get_resource_cache_limit")).Invoke (context); #endif - // void gr_direct_context_get_resource_cache_usage(gr_direct_context_t* context, int* maxResources, size_t* maxResourceBytes) + // void gr_direct_context_get_resource_cache_usage(gr_direct_context_t * context, int * maxResources, size_t * maxResourceBytes) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -739,7 +739,7 @@ internal static void gr_direct_context_get_resource_cache_usage (gr_direct_conte (gr_direct_context_get_resource_cache_usage_delegate ??= GetSymbol ("gr_direct_context_get_resource_cache_usage")).Invoke (context, maxResources, maxResourceBytes); #endif - // bool gr_direct_context_is_abandoned(gr_direct_context_t* context) + // bool gr_direct_context_is_abandoned(gr_direct_context_t * context) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -761,7 +761,7 @@ internal static bool gr_direct_context_is_abandoned (gr_direct_context_t context (gr_direct_context_is_abandoned_delegate ??= GetSymbol ("gr_direct_context_is_abandoned")).Invoke (context); #endif - // gr_direct_context_t* gr_direct_context_make_direct3d(const gr_d3d_backendcontext_t d3dBackendContext) + // gr_direct_context_t * gr_direct_context_make_direct3d(gr_d3d_backendcontext_t const d3dBackendContext) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -780,7 +780,7 @@ internal static gr_direct_context_t gr_direct_context_make_direct3d (GRD3DBacken (gr_direct_context_make_direct3d_delegate ??= GetSymbol ("gr_direct_context_make_direct3d")).Invoke (d3dBackendContext); #endif - // gr_direct_context_t* gr_direct_context_make_direct3d_with_options(const gr_d3d_backendcontext_t d3dBackendContext, const gr_context_options_t* options) + // gr_direct_context_t * gr_direct_context_make_direct3d_with_options(gr_d3d_backendcontext_t const d3dBackendContext, gr_context_options_t const * options) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -799,7 +799,7 @@ internal static gr_direct_context_t gr_direct_context_make_direct3d_with_options (gr_direct_context_make_direct3d_with_options_delegate ??= GetSymbol ("gr_direct_context_make_direct3d_with_options")).Invoke (d3dBackendContext, options); #endif - // gr_direct_context_t* gr_direct_context_make_gl(const gr_glinterface_t* glInterface) + // gr_direct_context_t * gr_direct_context_make_gl(gr_glinterface_t const * glInterface) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -818,7 +818,7 @@ internal static gr_direct_context_t gr_direct_context_make_gl (gr_glinterface_t (gr_direct_context_make_gl_delegate ??= GetSymbol ("gr_direct_context_make_gl")).Invoke (glInterface); #endif - // gr_direct_context_t* gr_direct_context_make_gl_with_options(const gr_glinterface_t* glInterface, const gr_context_options_t* options) + // gr_direct_context_t * gr_direct_context_make_gl_with_options(gr_glinterface_t const * glInterface, gr_context_options_t const * options) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -837,7 +837,7 @@ internal static gr_direct_context_t gr_direct_context_make_gl_with_options (gr_g (gr_direct_context_make_gl_with_options_delegate ??= GetSymbol ("gr_direct_context_make_gl_with_options")).Invoke (glInterface, options); #endif - // gr_direct_context_t* gr_direct_context_make_metal(void* device, void* queue) + // gr_direct_context_t * gr_direct_context_make_metal(void * device, void * queue) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -856,7 +856,7 @@ internal static gr_direct_context_t gr_direct_context_make_metal (void* device, (gr_direct_context_make_metal_delegate ??= GetSymbol ("gr_direct_context_make_metal")).Invoke (device, queue); #endif - // gr_direct_context_t* gr_direct_context_make_metal_with_options(void* device, void* queue, const gr_context_options_t* options) + // gr_direct_context_t * gr_direct_context_make_metal_with_options(void * device, void * queue, gr_context_options_t const * options) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -875,7 +875,7 @@ internal static gr_direct_context_t gr_direct_context_make_metal_with_options (v (gr_direct_context_make_metal_with_options_delegate ??= GetSymbol ("gr_direct_context_make_metal_with_options")).Invoke (device, queue, options); #endif - // gr_direct_context_t* gr_direct_context_make_vulkan(const gr_vk_backendcontext_t vkBackendContext) + // gr_direct_context_t * gr_direct_context_make_vulkan(gr_vk_backendcontext_t const vkBackendContext) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -894,7 +894,7 @@ internal static gr_direct_context_t gr_direct_context_make_vulkan (GRVkBackendCo (gr_direct_context_make_vulkan_delegate ??= GetSymbol ("gr_direct_context_make_vulkan")).Invoke (vkBackendContext); #endif - // gr_direct_context_t* gr_direct_context_make_vulkan_with_options(const gr_vk_backendcontext_t vkBackendContext, const gr_context_options_t* options) + // gr_direct_context_t * gr_direct_context_make_vulkan_with_options(gr_vk_backendcontext_t const vkBackendContext, gr_context_options_t const * options) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -913,7 +913,7 @@ internal static gr_direct_context_t gr_direct_context_make_vulkan_with_options ( (gr_direct_context_make_vulkan_with_options_delegate ??= GetSymbol ("gr_direct_context_make_vulkan_with_options")).Invoke (vkBackendContext, options); #endif - // void gr_direct_context_perform_deferred_cleanup(gr_direct_context_t* context, long long ms) + // void gr_direct_context_perform_deferred_cleanup(gr_direct_context_t * context, long long ms) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -932,7 +932,7 @@ internal static void gr_direct_context_perform_deferred_cleanup (gr_direct_conte (gr_direct_context_perform_deferred_cleanup_delegate ??= GetSymbol ("gr_direct_context_perform_deferred_cleanup")).Invoke (context, ms); #endif - // void gr_direct_context_purge_unlocked_resources(gr_direct_context_t* context, bool scratchResourcesOnly) + // void gr_direct_context_purge_unlocked_resources(gr_direct_context_t * context, bool scratchResourcesOnly) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -951,7 +951,7 @@ internal static void gr_direct_context_purge_unlocked_resources (gr_direct_conte (gr_direct_context_purge_unlocked_resources_delegate ??= GetSymbol ("gr_direct_context_purge_unlocked_resources")).Invoke (context, scratchResourcesOnly); #endif - // void gr_direct_context_purge_unlocked_resources_bytes(gr_direct_context_t* context, size_t bytesToPurge, bool preferScratchResources) + // void gr_direct_context_purge_unlocked_resources_bytes(gr_direct_context_t * context, size_t bytesToPurge, bool preferScratchResources) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -970,7 +970,7 @@ internal static void gr_direct_context_purge_unlocked_resources_bytes (gr_direct (gr_direct_context_purge_unlocked_resources_bytes_delegate ??= GetSymbol ("gr_direct_context_purge_unlocked_resources_bytes")).Invoke (context, bytesToPurge, preferScratchResources); #endif - // void gr_direct_context_release_resources_and_abandon_context(gr_direct_context_t* context) + // void gr_direct_context_release_resources_and_abandon_context(gr_direct_context_t * context) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -989,7 +989,7 @@ internal static void gr_direct_context_release_resources_and_abandon_context (gr (gr_direct_context_release_resources_and_abandon_context_delegate ??= GetSymbol ("gr_direct_context_release_resources_and_abandon_context")).Invoke (context); #endif - // void gr_direct_context_reset_context(gr_direct_context_t* context, uint32_t state) + // void gr_direct_context_reset_context(gr_direct_context_t * context, unsigned int state) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1008,7 +1008,7 @@ internal static void gr_direct_context_reset_context (gr_direct_context_t contex (gr_direct_context_reset_context_delegate ??= GetSymbol ("gr_direct_context_reset_context")).Invoke (context, state); #endif - // void gr_direct_context_set_resource_cache_limit(gr_direct_context_t* context, size_t maxResourceBytes) + // void gr_direct_context_set_resource_cache_limit(gr_direct_context_t * context, size_t maxResourceBytes) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1027,7 +1027,7 @@ internal static void gr_direct_context_set_resource_cache_limit (gr_direct_conte (gr_direct_context_set_resource_cache_limit_delegate ??= GetSymbol ("gr_direct_context_set_resource_cache_limit")).Invoke (context, maxResourceBytes); #endif - // bool gr_direct_context_submit(gr_direct_context_t* context, bool syncCpu) + // bool gr_direct_context_submit(gr_direct_context_t * context, bool syncCpu) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1049,7 +1049,7 @@ internal static bool gr_direct_context_submit (gr_direct_context_t context, [Mar (gr_direct_context_submit_delegate ??= GetSymbol ("gr_direct_context_submit")).Invoke (context, syncCpu); #endif - // const gr_glinterface_t* gr_glinterface_assemble_gl_interface(void* ctx, gr_gl_get_proc get) + // gr_glinterface_t const * gr_glinterface_assemble_gl_interface(void * ctx, gr_gl_get_proc get) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1068,7 +1068,7 @@ internal static gr_glinterface_t gr_glinterface_assemble_gl_interface (void* ctx (gr_glinterface_assemble_gl_interface_delegate ??= GetSymbol ("gr_glinterface_assemble_gl_interface")).Invoke (ctx, get); #endif - // const gr_glinterface_t* gr_glinterface_assemble_gles_interface(void* ctx, gr_gl_get_proc get) + // gr_glinterface_t const * gr_glinterface_assemble_gles_interface(void * ctx, gr_gl_get_proc get) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1087,7 +1087,7 @@ internal static gr_glinterface_t gr_glinterface_assemble_gles_interface (void* c (gr_glinterface_assemble_gles_interface_delegate ??= GetSymbol ("gr_glinterface_assemble_gles_interface")).Invoke (ctx, get); #endif - // const gr_glinterface_t* gr_glinterface_assemble_interface(void* ctx, gr_gl_get_proc get) + // gr_glinterface_t const * gr_glinterface_assemble_interface(void * ctx, gr_gl_get_proc get) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1106,7 +1106,7 @@ internal static gr_glinterface_t gr_glinterface_assemble_interface (void* ctx, G (gr_glinterface_assemble_interface_delegate ??= GetSymbol ("gr_glinterface_assemble_interface")).Invoke (ctx, get); #endif - // const gr_glinterface_t* gr_glinterface_assemble_webgl_interface(void* ctx, gr_gl_get_proc get) + // gr_glinterface_t const * gr_glinterface_assemble_webgl_interface(void * ctx, gr_gl_get_proc get) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1125,7 +1125,7 @@ internal static gr_glinterface_t gr_glinterface_assemble_webgl_interface (void* (gr_glinterface_assemble_webgl_interface_delegate ??= GetSymbol ("gr_glinterface_assemble_webgl_interface")).Invoke (ctx, get); #endif - // const gr_glinterface_t* gr_glinterface_create_native_interface() + // gr_glinterface_t const * gr_glinterface_create_native_interface() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1144,7 +1144,7 @@ internal static gr_glinterface_t gr_glinterface_create_native_interface () => (gr_glinterface_create_native_interface_delegate ??= GetSymbol ("gr_glinterface_create_native_interface")).Invoke (); #endif - // bool gr_glinterface_has_extension(const gr_glinterface_t* glInterface, const char* extension) + // bool gr_glinterface_has_extension(gr_glinterface_t const * glInterface, char const * extension) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1166,7 +1166,7 @@ internal static bool gr_glinterface_has_extension (gr_glinterface_t glInterface, (gr_glinterface_has_extension_delegate ??= GetSymbol ("gr_glinterface_has_extension")).Invoke (glInterface, extension); #endif - // void gr_glinterface_unref(const gr_glinterface_t* glInterface) + // void gr_glinterface_unref(gr_glinterface_t const * glInterface) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1185,7 +1185,7 @@ internal static void gr_glinterface_unref (gr_glinterface_t glInterface) => (gr_glinterface_unref_delegate ??= GetSymbol ("gr_glinterface_unref")).Invoke (glInterface); #endif - // bool gr_glinterface_validate(const gr_glinterface_t* glInterface) + // bool gr_glinterface_validate(gr_glinterface_t const * glInterface) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1207,7 +1207,7 @@ internal static bool gr_glinterface_validate (gr_glinterface_t glInterface) => (gr_glinterface_validate_delegate ??= GetSymbol ("gr_glinterface_validate")).Invoke (glInterface); #endif - // gr_backend_t gr_recording_context_get_backend(gr_recording_context_t* context) + // gr_backend_t gr_recording_context_get_backend(gr_recording_context_t * context) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1226,7 +1226,7 @@ internal static GRBackendNative gr_recording_context_get_backend (gr_recording_c (gr_recording_context_get_backend_delegate ??= GetSymbol ("gr_recording_context_get_backend")).Invoke (context); #endif - // gr_direct_context_t* gr_recording_context_get_direct_context(gr_recording_context_t* context) + // gr_direct_context_t * gr_recording_context_get_direct_context(gr_recording_context_t * context) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1245,7 +1245,7 @@ internal static gr_direct_context_t gr_recording_context_get_direct_context (gr_ (gr_recording_context_get_direct_context_delegate ??= GetSymbol ("gr_recording_context_get_direct_context")).Invoke (context); #endif - // int gr_recording_context_get_max_surface_sample_count_for_color_type(gr_recording_context_t* context, sk_colortype_t colorType) + // int gr_recording_context_get_max_surface_sample_count_for_color_type(gr_recording_context_t * context, sk_colortype_t colorType) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1264,7 +1264,7 @@ internal static Int32 gr_recording_context_get_max_surface_sample_count_for_colo (gr_recording_context_get_max_surface_sample_count_for_color_type_delegate ??= GetSymbol ("gr_recording_context_get_max_surface_sample_count_for_color_type")).Invoke (context, colorType); #endif - // bool gr_recording_context_is_abandoned(gr_recording_context_t* context) + // bool gr_recording_context_is_abandoned(gr_recording_context_t * context) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1286,7 +1286,7 @@ internal static bool gr_recording_context_is_abandoned (gr_recording_context_t c (gr_recording_context_is_abandoned_delegate ??= GetSymbol ("gr_recording_context_is_abandoned")).Invoke (context); #endif - // int gr_recording_context_max_render_target_size(gr_recording_context_t* context) + // int gr_recording_context_max_render_target_size(gr_recording_context_t * context) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1305,7 +1305,7 @@ internal static Int32 gr_recording_context_max_render_target_size (gr_recording_ (gr_recording_context_max_render_target_size_delegate ??= GetSymbol ("gr_recording_context_max_render_target_size")).Invoke (context); #endif - // int gr_recording_context_max_texture_size(gr_recording_context_t* context) + // int gr_recording_context_max_texture_size(gr_recording_context_t * context) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1324,7 +1324,7 @@ internal static Int32 gr_recording_context_max_texture_size (gr_recording_contex (gr_recording_context_max_texture_size_delegate ??= GetSymbol ("gr_recording_context_max_texture_size")).Invoke (context); #endif - // void gr_recording_context_unref(gr_recording_context_t* context) + // void gr_recording_context_unref(gr_recording_context_t * context) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1343,7 +1343,7 @@ internal static void gr_recording_context_unref (gr_recording_context_t context) (gr_recording_context_unref_delegate ??= GetSymbol ("gr_recording_context_unref")).Invoke (context); #endif - // void gr_vk_extensions_delete(gr_vk_extensions_t* extensions) + // void gr_vk_extensions_delete(gr_vk_extensions_t * extensions) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1362,7 +1362,7 @@ internal static void gr_vk_extensions_delete (gr_vk_extensions_t extensions) => (gr_vk_extensions_delete_delegate ??= GetSymbol ("gr_vk_extensions_delete")).Invoke (extensions); #endif - // bool gr_vk_extensions_has_extension(gr_vk_extensions_t* extensions, const char* ext, uint32_t minVersion) + // bool gr_vk_extensions_has_extension(gr_vk_extensions_t * extensions, char const * ext, unsigned int minVersion) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1384,7 +1384,7 @@ internal static bool gr_vk_extensions_has_extension (gr_vk_extensions_t extensio (gr_vk_extensions_has_extension_delegate ??= GetSymbol ("gr_vk_extensions_has_extension")).Invoke (extensions, ext, minVersion); #endif - // void gr_vk_extensions_init(gr_vk_extensions_t* extensions, gr_vk_get_proc getProc, void* userData, vk_instance_t* instance, vk_physical_device_t* physDev, uint32_t instanceExtensionCount, const char** instanceExtensions, uint32_t deviceExtensionCount, const char** deviceExtensions) + // void gr_vk_extensions_init(gr_vk_extensions_t * extensions, gr_vk_get_proc getProc, void * userData, vk_instance_t * instance, vk_physical_device_t * physDev, unsigned int instanceExtensionCount, char const * * instanceExtensions, unsigned int deviceExtensionCount, char const * * deviceExtensions) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1403,7 +1403,7 @@ internal static void gr_vk_extensions_init (gr_vk_extensions_t extensions, GRVkG (gr_vk_extensions_init_delegate ??= GetSymbol ("gr_vk_extensions_init")).Invoke (extensions, getProc, userData, instance, physDev, instanceExtensionCount, instanceExtensions, deviceExtensionCount, deviceExtensions); #endif - // gr_vk_extensions_t* gr_vk_extensions_new() + // gr_vk_extensions_t * gr_vk_extensions_new() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1426,7 +1426,7 @@ internal static gr_vk_extensions_t gr_vk_extensions_new () => #region sk_bitmap.h - // void sk_bitmap_destructor(sk_bitmap_t* cbitmap) + // void sk_bitmap_destructor(sk_bitmap_t * cbitmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1445,7 +1445,7 @@ internal static void sk_bitmap_destructor (sk_bitmap_t cbitmap) => (sk_bitmap_destructor_delegate ??= GetSymbol ("sk_bitmap_destructor")).Invoke (cbitmap); #endif - // void sk_bitmap_erase(sk_bitmap_t* cbitmap, sk_color_t color) + // void sk_bitmap_erase(sk_bitmap_t * cbitmap, sk_color_t color) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1464,7 +1464,7 @@ internal static void sk_bitmap_erase (sk_bitmap_t cbitmap, UInt32 color) => (sk_bitmap_erase_delegate ??= GetSymbol ("sk_bitmap_erase")).Invoke (cbitmap, color); #endif - // void sk_bitmap_erase_rect(sk_bitmap_t* cbitmap, sk_color_t color, sk_irect_t* rect) + // void sk_bitmap_erase_rect(sk_bitmap_t * cbitmap, sk_color_t color, sk_irect_t * rect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1483,7 +1483,7 @@ internal static void sk_bitmap_erase_rect (sk_bitmap_t cbitmap, UInt32 color, SK (sk_bitmap_erase_rect_delegate ??= GetSymbol ("sk_bitmap_erase_rect")).Invoke (cbitmap, color, rect); #endif - // bool sk_bitmap_extract_alpha(sk_bitmap_t* cbitmap, sk_bitmap_t* dst, const sk_paint_t* paint, sk_ipoint_t* offset) + // bool sk_bitmap_extract_alpha(sk_bitmap_t * cbitmap, sk_bitmap_t * dst, sk_paint_t const * paint, sk_ipoint_t * offset) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1505,7 +1505,7 @@ internal static bool sk_bitmap_extract_alpha (sk_bitmap_t cbitmap, sk_bitmap_t d (sk_bitmap_extract_alpha_delegate ??= GetSymbol ("sk_bitmap_extract_alpha")).Invoke (cbitmap, dst, paint, offset); #endif - // bool sk_bitmap_extract_subset(sk_bitmap_t* cbitmap, sk_bitmap_t* dst, sk_irect_t* subset) + // bool sk_bitmap_extract_subset(sk_bitmap_t * cbitmap, sk_bitmap_t * dst, sk_irect_t * subset) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1527,7 +1527,7 @@ internal static bool sk_bitmap_extract_subset (sk_bitmap_t cbitmap, sk_bitmap_t (sk_bitmap_extract_subset_delegate ??= GetSymbol ("sk_bitmap_extract_subset")).Invoke (cbitmap, dst, subset); #endif - // void* sk_bitmap_get_addr(sk_bitmap_t* cbitmap, int x, int y) + // void * sk_bitmap_get_addr(sk_bitmap_t * cbitmap, int x, int y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1546,7 +1546,7 @@ private partial class Delegates { (sk_bitmap_get_addr_delegate ??= GetSymbol ("sk_bitmap_get_addr")).Invoke (cbitmap, x, y); #endif - // uint16_t* sk_bitmap_get_addr_16(sk_bitmap_t* cbitmap, int x, int y) + // unsigned short * sk_bitmap_get_addr_16(sk_bitmap_t * cbitmap, int x, int y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1565,7 +1565,7 @@ private partial class Delegates { (sk_bitmap_get_addr_16_delegate ??= GetSymbol ("sk_bitmap_get_addr_16")).Invoke (cbitmap, x, y); #endif - // uint32_t* sk_bitmap_get_addr_32(sk_bitmap_t* cbitmap, int x, int y) + // unsigned int * sk_bitmap_get_addr_32(sk_bitmap_t * cbitmap, int x, int y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1584,7 +1584,7 @@ private partial class Delegates { (sk_bitmap_get_addr_32_delegate ??= GetSymbol ("sk_bitmap_get_addr_32")).Invoke (cbitmap, x, y); #endif - // uint8_t* sk_bitmap_get_addr_8(sk_bitmap_t* cbitmap, int x, int y) + // unsigned char * sk_bitmap_get_addr_8(sk_bitmap_t * cbitmap, int x, int y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1603,7 +1603,7 @@ private partial class Delegates { (sk_bitmap_get_addr_8_delegate ??= GetSymbol ("sk_bitmap_get_addr_8")).Invoke (cbitmap, x, y); #endif - // size_t sk_bitmap_get_byte_count(sk_bitmap_t* cbitmap) + // size_t sk_bitmap_get_byte_count(sk_bitmap_t * cbitmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1622,7 +1622,7 @@ private partial class Delegates { (sk_bitmap_get_byte_count_delegate ??= GetSymbol ("sk_bitmap_get_byte_count")).Invoke (cbitmap); #endif - // void sk_bitmap_get_info(sk_bitmap_t* cbitmap, sk_imageinfo_t* info) + // void sk_bitmap_get_info(sk_bitmap_t * cbitmap, sk_imageinfo_t * info) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1641,7 +1641,7 @@ internal static void sk_bitmap_get_info (sk_bitmap_t cbitmap, SKImageInfoNative* (sk_bitmap_get_info_delegate ??= GetSymbol ("sk_bitmap_get_info")).Invoke (cbitmap, info); #endif - // sk_color_t sk_bitmap_get_pixel_color(sk_bitmap_t* cbitmap, int x, int y) + // sk_color_t sk_bitmap_get_pixel_color(sk_bitmap_t * cbitmap, int x, int y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1660,7 +1660,7 @@ internal static UInt32 sk_bitmap_get_pixel_color (sk_bitmap_t cbitmap, Int32 x, (sk_bitmap_get_pixel_color_delegate ??= GetSymbol ("sk_bitmap_get_pixel_color")).Invoke (cbitmap, x, y); #endif - // void sk_bitmap_get_pixel_colors(sk_bitmap_t* cbitmap, sk_color_t* colors) + // void sk_bitmap_get_pixel_colors(sk_bitmap_t * cbitmap, sk_color_t * colors) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1679,7 +1679,7 @@ internal static void sk_bitmap_get_pixel_colors (sk_bitmap_t cbitmap, UInt32* co (sk_bitmap_get_pixel_colors_delegate ??= GetSymbol ("sk_bitmap_get_pixel_colors")).Invoke (cbitmap, colors); #endif - // void* sk_bitmap_get_pixels(sk_bitmap_t* cbitmap, size_t* length) + // void * sk_bitmap_get_pixels(sk_bitmap_t * cbitmap, size_t * length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1698,7 +1698,7 @@ private partial class Delegates { (sk_bitmap_get_pixels_delegate ??= GetSymbol ("sk_bitmap_get_pixels")).Invoke (cbitmap, length); #endif - // size_t sk_bitmap_get_row_bytes(sk_bitmap_t* cbitmap) + // size_t sk_bitmap_get_row_bytes(sk_bitmap_t * cbitmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1717,7 +1717,7 @@ private partial class Delegates { (sk_bitmap_get_row_bytes_delegate ??= GetSymbol ("sk_bitmap_get_row_bytes")).Invoke (cbitmap); #endif - // bool sk_bitmap_install_pixels(sk_bitmap_t* cbitmap, const sk_imageinfo_t* cinfo, void* pixels, size_t rowBytes, const sk_bitmap_release_proc releaseProc, void* context) + // bool sk_bitmap_install_pixels(sk_bitmap_t * cbitmap, sk_imageinfo_t const * cinfo, void * pixels, size_t rowBytes, sk_bitmap_release_proc const releaseProc, void * context) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1739,7 +1739,7 @@ internal static bool sk_bitmap_install_pixels (sk_bitmap_t cbitmap, SKImageInfoN (sk_bitmap_install_pixels_delegate ??= GetSymbol ("sk_bitmap_install_pixels")).Invoke (cbitmap, cinfo, pixels, rowBytes, releaseProc, context); #endif - // bool sk_bitmap_install_pixels_with_pixmap(sk_bitmap_t* cbitmap, const sk_pixmap_t* cpixmap) + // bool sk_bitmap_install_pixels_with_pixmap(sk_bitmap_t * cbitmap, sk_pixmap_t const * cpixmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1761,7 +1761,7 @@ internal static bool sk_bitmap_install_pixels_with_pixmap (sk_bitmap_t cbitmap, (sk_bitmap_install_pixels_with_pixmap_delegate ??= GetSymbol ("sk_bitmap_install_pixels_with_pixmap")).Invoke (cbitmap, cpixmap); #endif - // bool sk_bitmap_is_immutable(sk_bitmap_t* cbitmap) + // bool sk_bitmap_is_immutable(sk_bitmap_t * cbitmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1783,7 +1783,7 @@ internal static bool sk_bitmap_is_immutable (sk_bitmap_t cbitmap) => (sk_bitmap_is_immutable_delegate ??= GetSymbol ("sk_bitmap_is_immutable")).Invoke (cbitmap); #endif - // bool sk_bitmap_is_null(sk_bitmap_t* cbitmap) + // bool sk_bitmap_is_null(sk_bitmap_t * cbitmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1805,7 +1805,7 @@ internal static bool sk_bitmap_is_null (sk_bitmap_t cbitmap) => (sk_bitmap_is_null_delegate ??= GetSymbol ("sk_bitmap_is_null")).Invoke (cbitmap); #endif - // sk_shader_t* sk_bitmap_make_shader(sk_bitmap_t* cbitmap, sk_shader_tilemode_t tmx, sk_shader_tilemode_t tmy, sk_sampling_options_t* sampling, const sk_matrix_t* cmatrix) + // sk_shader_t * sk_bitmap_make_shader(sk_bitmap_t * cbitmap, sk_shader_tilemode_t tmx, sk_shader_tilemode_t tmy, sk_sampling_options_t * sampling, sk_matrix_t const * cmatrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1824,7 +1824,7 @@ internal static sk_shader_t sk_bitmap_make_shader (sk_bitmap_t cbitmap, SKShader (sk_bitmap_make_shader_delegate ??= GetSymbol ("sk_bitmap_make_shader")).Invoke (cbitmap, tmx, tmy, sampling, cmatrix); #endif - // sk_bitmap_t* sk_bitmap_new() + // sk_bitmap_t * sk_bitmap_new() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1843,7 +1843,7 @@ internal static sk_bitmap_t sk_bitmap_new () => (sk_bitmap_new_delegate ??= GetSymbol ("sk_bitmap_new")).Invoke (); #endif - // void sk_bitmap_notify_pixels_changed(sk_bitmap_t* cbitmap) + // void sk_bitmap_notify_pixels_changed(sk_bitmap_t * cbitmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1862,7 +1862,7 @@ internal static void sk_bitmap_notify_pixels_changed (sk_bitmap_t cbitmap) => (sk_bitmap_notify_pixels_changed_delegate ??= GetSymbol ("sk_bitmap_notify_pixels_changed")).Invoke (cbitmap); #endif - // bool sk_bitmap_peek_pixels(sk_bitmap_t* cbitmap, sk_pixmap_t* cpixmap) + // bool sk_bitmap_peek_pixels(sk_bitmap_t * cbitmap, sk_pixmap_t * cpixmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1884,7 +1884,7 @@ internal static bool sk_bitmap_peek_pixels (sk_bitmap_t cbitmap, sk_pixmap_t cpi (sk_bitmap_peek_pixels_delegate ??= GetSymbol ("sk_bitmap_peek_pixels")).Invoke (cbitmap, cpixmap); #endif - // bool sk_bitmap_ready_to_draw(sk_bitmap_t* cbitmap) + // bool sk_bitmap_ready_to_draw(sk_bitmap_t * cbitmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1906,7 +1906,7 @@ internal static bool sk_bitmap_ready_to_draw (sk_bitmap_t cbitmap) => (sk_bitmap_ready_to_draw_delegate ??= GetSymbol ("sk_bitmap_ready_to_draw")).Invoke (cbitmap); #endif - // void sk_bitmap_reset(sk_bitmap_t* cbitmap) + // void sk_bitmap_reset(sk_bitmap_t * cbitmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1925,7 +1925,7 @@ internal static void sk_bitmap_reset (sk_bitmap_t cbitmap) => (sk_bitmap_reset_delegate ??= GetSymbol ("sk_bitmap_reset")).Invoke (cbitmap); #endif - // void sk_bitmap_set_immutable(sk_bitmap_t* cbitmap) + // void sk_bitmap_set_immutable(sk_bitmap_t * cbitmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1944,7 +1944,7 @@ internal static void sk_bitmap_set_immutable (sk_bitmap_t cbitmap) => (sk_bitmap_set_immutable_delegate ??= GetSymbol ("sk_bitmap_set_immutable")).Invoke (cbitmap); #endif - // void sk_bitmap_set_pixels(sk_bitmap_t* cbitmap, void* pixels) + // void sk_bitmap_set_pixels(sk_bitmap_t * cbitmap, void * pixels) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1963,7 +1963,7 @@ internal static void sk_bitmap_set_pixels (sk_bitmap_t cbitmap, void* pixels) => (sk_bitmap_set_pixels_delegate ??= GetSymbol ("sk_bitmap_set_pixels")).Invoke (cbitmap, pixels); #endif - // void sk_bitmap_swap(sk_bitmap_t* cbitmap, sk_bitmap_t* cother) + // void sk_bitmap_swap(sk_bitmap_t * cbitmap, sk_bitmap_t * cother) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -1982,7 +1982,7 @@ internal static void sk_bitmap_swap (sk_bitmap_t cbitmap, sk_bitmap_t cother) => (sk_bitmap_swap_delegate ??= GetSymbol ("sk_bitmap_swap")).Invoke (cbitmap, cother); #endif - // bool sk_bitmap_try_alloc_pixels(sk_bitmap_t* cbitmap, const sk_imageinfo_t* requestedInfo, size_t rowBytes) + // bool sk_bitmap_try_alloc_pixels(sk_bitmap_t * cbitmap, sk_imageinfo_t const * requestedInfo, size_t rowBytes) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2004,7 +2004,7 @@ internal static bool sk_bitmap_try_alloc_pixels (sk_bitmap_t cbitmap, SKImageInf (sk_bitmap_try_alloc_pixels_delegate ??= GetSymbol ("sk_bitmap_try_alloc_pixels")).Invoke (cbitmap, requestedInfo, rowBytes); #endif - // bool sk_bitmap_try_alloc_pixels_with_flags(sk_bitmap_t* cbitmap, const sk_imageinfo_t* requestedInfo, uint32_t flags) + // bool sk_bitmap_try_alloc_pixels_with_flags(sk_bitmap_t * cbitmap, sk_imageinfo_t const * requestedInfo, unsigned int flags) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2030,7 +2030,7 @@ internal static bool sk_bitmap_try_alloc_pixels_with_flags (sk_bitmap_t cbitmap, #region sk_blender.h - // sk_blender_t* sk_blender_new_arithmetic(float k1, float k2, float k3, float k4, bool enforcePremul) + // sk_blender_t * sk_blender_new_arithmetic(float k1, float k2, float k3, float k4, bool enforcePremul) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2049,7 +2049,7 @@ internal static sk_blender_t sk_blender_new_arithmetic (Single k1, Single k2, Si (sk_blender_new_arithmetic_delegate ??= GetSymbol ("sk_blender_new_arithmetic")).Invoke (k1, k2, k3, k4, enforcePremul); #endif - // sk_blender_t* sk_blender_new_mode(sk_blendmode_t mode) + // sk_blender_t * sk_blender_new_mode(sk_blendmode_t mode) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2068,7 +2068,7 @@ internal static sk_blender_t sk_blender_new_mode (SKBlendMode mode) => (sk_blender_new_mode_delegate ??= GetSymbol ("sk_blender_new_mode")).Invoke (mode); #endif - // void sk_blender_ref(sk_blender_t* blender) + // void sk_blender_ref(sk_blender_t * blender) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2087,7 +2087,7 @@ internal static void sk_blender_ref (sk_blender_t blender) => (sk_blender_ref_delegate ??= GetSymbol ("sk_blender_ref")).Invoke (blender); #endif - // void sk_blender_unref(sk_blender_t* blender) + // void sk_blender_unref(sk_blender_t * blender) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2110,7 +2110,7 @@ internal static void sk_blender_unref (sk_blender_t blender) => #region sk_canvas.h - // void sk_canvas_clear(sk_canvas_t* ccanvas, sk_color_t color) + // void sk_canvas_clear(sk_canvas_t * ccanvas, sk_color_t color) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2129,7 +2129,7 @@ internal static void sk_canvas_clear (sk_canvas_t ccanvas, UInt32 color) => (sk_canvas_clear_delegate ??= GetSymbol ("sk_canvas_clear")).Invoke (ccanvas, color); #endif - // void sk_canvas_clear_color4f(sk_canvas_t* ccanvas, sk_color4f_t color) + // void sk_canvas_clear_color4f(sk_canvas_t * ccanvas, sk_color4f_t color) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2148,7 +2148,7 @@ internal static void sk_canvas_clear_color4f (sk_canvas_t ccanvas, SKColorF colo (sk_canvas_clear_color4f_delegate ??= GetSymbol ("sk_canvas_clear_color4f")).Invoke (ccanvas, color); #endif - // void sk_canvas_clip_path_with_operation(sk_canvas_t* ccanvas, const sk_path_t* cpath, sk_clipop_t op, bool doAA) + // void sk_canvas_clip_path_with_operation(sk_canvas_t * ccanvas, sk_path_t const * cpath, sk_clipop_t op, bool doAA) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2167,7 +2167,7 @@ internal static void sk_canvas_clip_path_with_operation (sk_canvas_t ccanvas, sk (sk_canvas_clip_path_with_operation_delegate ??= GetSymbol ("sk_canvas_clip_path_with_operation")).Invoke (ccanvas, cpath, op, doAA); #endif - // void sk_canvas_clip_rect_with_operation(sk_canvas_t* ccanvas, const sk_rect_t* crect, sk_clipop_t op, bool doAA) + // void sk_canvas_clip_rect_with_operation(sk_canvas_t * ccanvas, sk_rect_t const * crect, sk_clipop_t op, bool doAA) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2186,7 +2186,7 @@ internal static void sk_canvas_clip_rect_with_operation (sk_canvas_t ccanvas, SK (sk_canvas_clip_rect_with_operation_delegate ??= GetSymbol ("sk_canvas_clip_rect_with_operation")).Invoke (ccanvas, crect, op, doAA); #endif - // void sk_canvas_clip_region(sk_canvas_t* ccanvas, const sk_region_t* region, sk_clipop_t op) + // void sk_canvas_clip_region(sk_canvas_t * ccanvas, sk_region_t const * region, sk_clipop_t op) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2205,7 +2205,7 @@ internal static void sk_canvas_clip_region (sk_canvas_t ccanvas, sk_region_t reg (sk_canvas_clip_region_delegate ??= GetSymbol ("sk_canvas_clip_region")).Invoke (ccanvas, region, op); #endif - // void sk_canvas_clip_rrect_with_operation(sk_canvas_t* ccanvas, const sk_rrect_t* crect, sk_clipop_t op, bool doAA) + // void sk_canvas_clip_rrect_with_operation(sk_canvas_t * ccanvas, sk_rrect_t const * crect, sk_clipop_t op, bool doAA) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2224,7 +2224,7 @@ internal static void sk_canvas_clip_rrect_with_operation (sk_canvas_t ccanvas, s (sk_canvas_clip_rrect_with_operation_delegate ??= GetSymbol ("sk_canvas_clip_rrect_with_operation")).Invoke (ccanvas, crect, op, doAA); #endif - // void sk_canvas_concat(sk_canvas_t* ccanvas, const sk_matrix44_t* cmatrix) + // void sk_canvas_concat(sk_canvas_t * ccanvas, sk_matrix44_t const * cmatrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2243,7 +2243,7 @@ internal static void sk_canvas_concat (sk_canvas_t ccanvas, SKMatrix44* cmatrix) (sk_canvas_concat_delegate ??= GetSymbol ("sk_canvas_concat")).Invoke (ccanvas, cmatrix); #endif - // void sk_canvas_destroy(sk_canvas_t* ccanvas) + // void sk_canvas_destroy(sk_canvas_t * ccanvas) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2262,7 +2262,7 @@ internal static void sk_canvas_destroy (sk_canvas_t ccanvas) => (sk_canvas_destroy_delegate ??= GetSymbol ("sk_canvas_destroy")).Invoke (ccanvas); #endif - // void sk_canvas_discard(sk_canvas_t* ccanvas) + // void sk_canvas_discard(sk_canvas_t * ccanvas) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2281,7 +2281,7 @@ internal static void sk_canvas_discard (sk_canvas_t ccanvas) => (sk_canvas_discard_delegate ??= GetSymbol ("sk_canvas_discard")).Invoke (ccanvas); #endif - // void sk_canvas_draw_annotation(sk_canvas_t* t, const sk_rect_t* rect, const char* key, sk_data_t* value) + // void sk_canvas_draw_annotation(sk_canvas_t * t, sk_rect_t const * rect, char const * key, sk_data_t * value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2300,7 +2300,7 @@ internal static void sk_canvas_draw_annotation (sk_canvas_t t, SKRect* rect, /* (sk_canvas_draw_annotation_delegate ??= GetSymbol ("sk_canvas_draw_annotation")).Invoke (t, rect, key, value); #endif - // void sk_canvas_draw_arc(sk_canvas_t* ccanvas, const sk_rect_t* oval, float startAngle, float sweepAngle, bool useCenter, const sk_paint_t* paint) + // void sk_canvas_draw_arc(sk_canvas_t * ccanvas, sk_rect_t const * oval, float startAngle, float sweepAngle, bool useCenter, sk_paint_t const * paint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2319,7 +2319,7 @@ internal static void sk_canvas_draw_arc (sk_canvas_t ccanvas, SKRect* oval, Sing (sk_canvas_draw_arc_delegate ??= GetSymbol ("sk_canvas_draw_arc")).Invoke (ccanvas, oval, startAngle, sweepAngle, useCenter, paint); #endif - // void sk_canvas_draw_atlas(sk_canvas_t* ccanvas, const sk_image_t* atlas, const sk_rsxform_t* xform, const sk_rect_t* tex, const sk_color_t* colors, int count, sk_blendmode_t mode, const sk_sampling_options_t* sampling, const sk_rect_t* cullRect, const sk_paint_t* paint) + // void sk_canvas_draw_atlas(sk_canvas_t * ccanvas, sk_image_t const * atlas, sk_rsxform_t const * xform, sk_rect_t const * tex, sk_color_t const * colors, int count, sk_blendmode_t mode, sk_sampling_options_t const * sampling, sk_rect_t const * cullRect, sk_paint_t const * paint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2338,7 +2338,7 @@ internal static void sk_canvas_draw_atlas (sk_canvas_t ccanvas, sk_image_t atlas (sk_canvas_draw_atlas_delegate ??= GetSymbol ("sk_canvas_draw_atlas")).Invoke (ccanvas, atlas, xform, tex, colors, count, mode, sampling, cullRect, paint); #endif - // void sk_canvas_draw_circle(sk_canvas_t* ccanvas, float cx, float cy, float rad, const sk_paint_t* cpaint) + // void sk_canvas_draw_circle(sk_canvas_t * ccanvas, float cx, float cy, float rad, sk_paint_t const * cpaint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2357,7 +2357,7 @@ internal static void sk_canvas_draw_circle (sk_canvas_t ccanvas, Single cx, Sing (sk_canvas_draw_circle_delegate ??= GetSymbol ("sk_canvas_draw_circle")).Invoke (ccanvas, cx, cy, rad, cpaint); #endif - // void sk_canvas_draw_color(sk_canvas_t* ccanvas, sk_color_t color, sk_blendmode_t cmode) + // void sk_canvas_draw_color(sk_canvas_t * ccanvas, sk_color_t color, sk_blendmode_t cmode) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2376,7 +2376,7 @@ internal static void sk_canvas_draw_color (sk_canvas_t ccanvas, UInt32 color, SK (sk_canvas_draw_color_delegate ??= GetSymbol ("sk_canvas_draw_color")).Invoke (ccanvas, color, cmode); #endif - // void sk_canvas_draw_color4f(sk_canvas_t* ccanvas, sk_color4f_t color, sk_blendmode_t cmode) + // void sk_canvas_draw_color4f(sk_canvas_t * ccanvas, sk_color4f_t color, sk_blendmode_t cmode) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2395,7 +2395,7 @@ internal static void sk_canvas_draw_color4f (sk_canvas_t ccanvas, SKColorF color (sk_canvas_draw_color4f_delegate ??= GetSymbol ("sk_canvas_draw_color4f")).Invoke (ccanvas, color, cmode); #endif - // void sk_canvas_draw_drawable(sk_canvas_t* ccanvas, sk_drawable_t* cdrawable, const sk_matrix_t* cmatrix) + // void sk_canvas_draw_drawable(sk_canvas_t * ccanvas, sk_drawable_t * cdrawable, sk_matrix_t const * cmatrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2414,7 +2414,7 @@ internal static void sk_canvas_draw_drawable (sk_canvas_t ccanvas, sk_drawable_t (sk_canvas_draw_drawable_delegate ??= GetSymbol ("sk_canvas_draw_drawable")).Invoke (ccanvas, cdrawable, cmatrix); #endif - // void sk_canvas_draw_drrect(sk_canvas_t* ccanvas, const sk_rrect_t* outer, const sk_rrect_t* inner, const sk_paint_t* paint) + // void sk_canvas_draw_drrect(sk_canvas_t * ccanvas, sk_rrect_t const * outer, sk_rrect_t const * inner, sk_paint_t const * paint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2433,7 +2433,7 @@ internal static void sk_canvas_draw_drrect (sk_canvas_t ccanvas, sk_rrect_t oute (sk_canvas_draw_drrect_delegate ??= GetSymbol ("sk_canvas_draw_drrect")).Invoke (ccanvas, outer, inner, paint); #endif - // void sk_canvas_draw_image(sk_canvas_t* ccanvas, const sk_image_t* cimage, float x, float y, const sk_sampling_options_t* sampling, const sk_paint_t* cpaint) + // void sk_canvas_draw_image(sk_canvas_t * ccanvas, sk_image_t const * cimage, float x, float y, sk_sampling_options_t const * sampling, sk_paint_t const * cpaint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2452,7 +2452,7 @@ internal static void sk_canvas_draw_image (sk_canvas_t ccanvas, sk_image_t cimag (sk_canvas_draw_image_delegate ??= GetSymbol ("sk_canvas_draw_image")).Invoke (ccanvas, cimage, x, y, sampling, cpaint); #endif - // void sk_canvas_draw_image_lattice(sk_canvas_t* ccanvas, const sk_image_t* image, const sk_lattice_t* lattice, const sk_rect_t* dst, sk_filter_mode_t mode, const sk_paint_t* paint) + // void sk_canvas_draw_image_lattice(sk_canvas_t * ccanvas, sk_image_t const * image, sk_lattice_t const * lattice, sk_rect_t const * dst, sk_filter_mode_t mode, sk_paint_t const * paint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2471,7 +2471,7 @@ internal static void sk_canvas_draw_image_lattice (sk_canvas_t ccanvas, sk_image (sk_canvas_draw_image_lattice_delegate ??= GetSymbol ("sk_canvas_draw_image_lattice")).Invoke (ccanvas, image, lattice, dst, mode, paint); #endif - // void sk_canvas_draw_image_nine(sk_canvas_t* ccanvas, const sk_image_t* image, const sk_irect_t* center, const sk_rect_t* dst, sk_filter_mode_t mode, const sk_paint_t* paint) + // void sk_canvas_draw_image_nine(sk_canvas_t * ccanvas, sk_image_t const * image, sk_irect_t const * center, sk_rect_t const * dst, sk_filter_mode_t mode, sk_paint_t const * paint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2490,7 +2490,7 @@ internal static void sk_canvas_draw_image_nine (sk_canvas_t ccanvas, sk_image_t (sk_canvas_draw_image_nine_delegate ??= GetSymbol ("sk_canvas_draw_image_nine")).Invoke (ccanvas, image, center, dst, mode, paint); #endif - // void sk_canvas_draw_image_rect(sk_canvas_t* ccanvas, const sk_image_t* cimage, const sk_rect_t* csrcR, const sk_rect_t* cdstR, const sk_sampling_options_t* sampling, const sk_paint_t* cpaint) + // void sk_canvas_draw_image_rect(sk_canvas_t * ccanvas, sk_image_t const * cimage, sk_rect_t const * csrcR, sk_rect_t const * cdstR, sk_sampling_options_t const * sampling, sk_paint_t const * cpaint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2509,7 +2509,7 @@ internal static void sk_canvas_draw_image_rect (sk_canvas_t ccanvas, sk_image_t (sk_canvas_draw_image_rect_delegate ??= GetSymbol ("sk_canvas_draw_image_rect")).Invoke (ccanvas, cimage, csrcR, cdstR, sampling, cpaint); #endif - // void sk_canvas_draw_line(sk_canvas_t* ccanvas, float x0, float y0, float x1, float y1, sk_paint_t* cpaint) + // void sk_canvas_draw_line(sk_canvas_t * ccanvas, float x0, float y0, float x1, float y1, sk_paint_t * cpaint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2528,7 +2528,7 @@ internal static void sk_canvas_draw_line (sk_canvas_t ccanvas, Single x0, Single (sk_canvas_draw_line_delegate ??= GetSymbol ("sk_canvas_draw_line")).Invoke (ccanvas, x0, y0, x1, y1, cpaint); #endif - // void sk_canvas_draw_link_destination_annotation(sk_canvas_t* t, const sk_rect_t* rect, sk_data_t* value) + // void sk_canvas_draw_link_destination_annotation(sk_canvas_t * t, sk_rect_t const * rect, sk_data_t * value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2547,7 +2547,7 @@ internal static void sk_canvas_draw_link_destination_annotation (sk_canvas_t t, (sk_canvas_draw_link_destination_annotation_delegate ??= GetSymbol ("sk_canvas_draw_link_destination_annotation")).Invoke (t, rect, value); #endif - // void sk_canvas_draw_named_destination_annotation(sk_canvas_t* t, const sk_point_t* point, sk_data_t* value) + // void sk_canvas_draw_named_destination_annotation(sk_canvas_t * t, sk_point_t const * point, sk_data_t * value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2566,7 +2566,7 @@ internal static void sk_canvas_draw_named_destination_annotation (sk_canvas_t t, (sk_canvas_draw_named_destination_annotation_delegate ??= GetSymbol ("sk_canvas_draw_named_destination_annotation")).Invoke (t, point, value); #endif - // void sk_canvas_draw_oval(sk_canvas_t* ccanvas, const sk_rect_t* crect, const sk_paint_t* cpaint) + // void sk_canvas_draw_oval(sk_canvas_t * ccanvas, sk_rect_t const * crect, sk_paint_t const * cpaint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2585,7 +2585,7 @@ internal static void sk_canvas_draw_oval (sk_canvas_t ccanvas, SKRect* crect, sk (sk_canvas_draw_oval_delegate ??= GetSymbol ("sk_canvas_draw_oval")).Invoke (ccanvas, crect, cpaint); #endif - // void sk_canvas_draw_paint(sk_canvas_t* ccanvas, const sk_paint_t* cpaint) + // void sk_canvas_draw_paint(sk_canvas_t * ccanvas, sk_paint_t const * cpaint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2604,7 +2604,7 @@ internal static void sk_canvas_draw_paint (sk_canvas_t ccanvas, sk_paint_t cpain (sk_canvas_draw_paint_delegate ??= GetSymbol ("sk_canvas_draw_paint")).Invoke (ccanvas, cpaint); #endif - // void sk_canvas_draw_patch(sk_canvas_t* ccanvas, const sk_point_t* cubics, const sk_color_t* colors, const sk_point_t* texCoords, sk_blendmode_t mode, const sk_paint_t* paint) + // void sk_canvas_draw_patch(sk_canvas_t * ccanvas, sk_point_t const * cubics, sk_color_t const * colors, sk_point_t const * texCoords, sk_blendmode_t mode, sk_paint_t const * paint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2623,7 +2623,7 @@ internal static void sk_canvas_draw_patch (sk_canvas_t ccanvas, SKPoint* cubics, (sk_canvas_draw_patch_delegate ??= GetSymbol ("sk_canvas_draw_patch")).Invoke (ccanvas, cubics, colors, texCoords, mode, paint); #endif - // void sk_canvas_draw_path(sk_canvas_t* ccanvas, const sk_path_t* cpath, const sk_paint_t* cpaint) + // void sk_canvas_draw_path(sk_canvas_t * ccanvas, sk_path_t const * cpath, sk_paint_t const * cpaint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2642,7 +2642,7 @@ internal static void sk_canvas_draw_path (sk_canvas_t ccanvas, sk_path_t cpath, (sk_canvas_draw_path_delegate ??= GetSymbol ("sk_canvas_draw_path")).Invoke (ccanvas, cpath, cpaint); #endif - // void sk_canvas_draw_picture(sk_canvas_t* ccanvas, const sk_picture_t* cpicture, const sk_matrix_t* cmatrix, const sk_paint_t* cpaint) + // void sk_canvas_draw_picture(sk_canvas_t * ccanvas, sk_picture_t const * cpicture, sk_matrix_t const * cmatrix, sk_paint_t const * cpaint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2661,7 +2661,7 @@ internal static void sk_canvas_draw_picture (sk_canvas_t ccanvas, sk_picture_t c (sk_canvas_draw_picture_delegate ??= GetSymbol ("sk_canvas_draw_picture")).Invoke (ccanvas, cpicture, cmatrix, cpaint); #endif - // void sk_canvas_draw_point(sk_canvas_t* ccanvas, float x, float y, const sk_paint_t* cpaint) + // void sk_canvas_draw_point(sk_canvas_t * ccanvas, float x, float y, sk_paint_t const * cpaint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2680,7 +2680,7 @@ internal static void sk_canvas_draw_point (sk_canvas_t ccanvas, Single x, Single (sk_canvas_draw_point_delegate ??= GetSymbol ("sk_canvas_draw_point")).Invoke (ccanvas, x, y, cpaint); #endif - // void sk_canvas_draw_points(sk_canvas_t* ccanvas, sk_point_mode_t pointMode, size_t count, const sk_point_t[-1] points, const sk_paint_t* cpaint) + // void sk_canvas_draw_points(sk_canvas_t * ccanvas, sk_point_mode_t pointMode, size_t count, sk_point_t const[-1] points, sk_paint_t const * cpaint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2699,7 +2699,7 @@ internal static void sk_canvas_draw_points (sk_canvas_t ccanvas, SKPointMode poi (sk_canvas_draw_points_delegate ??= GetSymbol ("sk_canvas_draw_points")).Invoke (ccanvas, pointMode, count, points, cpaint); #endif - // void sk_canvas_draw_rect(sk_canvas_t* ccanvas, const sk_rect_t* crect, const sk_paint_t* cpaint) + // void sk_canvas_draw_rect(sk_canvas_t * ccanvas, sk_rect_t const * crect, sk_paint_t const * cpaint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2718,7 +2718,7 @@ internal static void sk_canvas_draw_rect (sk_canvas_t ccanvas, SKRect* crect, sk (sk_canvas_draw_rect_delegate ??= GetSymbol ("sk_canvas_draw_rect")).Invoke (ccanvas, crect, cpaint); #endif - // void sk_canvas_draw_region(sk_canvas_t* ccanvas, const sk_region_t* cregion, const sk_paint_t* cpaint) + // void sk_canvas_draw_region(sk_canvas_t * ccanvas, sk_region_t const * cregion, sk_paint_t const * cpaint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2737,7 +2737,7 @@ internal static void sk_canvas_draw_region (sk_canvas_t ccanvas, sk_region_t cre (sk_canvas_draw_region_delegate ??= GetSymbol ("sk_canvas_draw_region")).Invoke (ccanvas, cregion, cpaint); #endif - // void sk_canvas_draw_round_rect(sk_canvas_t* ccanvas, const sk_rect_t* crect, float rx, float ry, const sk_paint_t* cpaint) + // void sk_canvas_draw_round_rect(sk_canvas_t * ccanvas, sk_rect_t const * crect, float rx, float ry, sk_paint_t const * cpaint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2756,7 +2756,7 @@ internal static void sk_canvas_draw_round_rect (sk_canvas_t ccanvas, SKRect* cre (sk_canvas_draw_round_rect_delegate ??= GetSymbol ("sk_canvas_draw_round_rect")).Invoke (ccanvas, crect, rx, ry, cpaint); #endif - // void sk_canvas_draw_rrect(sk_canvas_t* ccanvas, const sk_rrect_t* crect, const sk_paint_t* cpaint) + // void sk_canvas_draw_rrect(sk_canvas_t * ccanvas, sk_rrect_t const * crect, sk_paint_t const * cpaint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2775,7 +2775,7 @@ internal static void sk_canvas_draw_rrect (sk_canvas_t ccanvas, sk_rrect_t crect (sk_canvas_draw_rrect_delegate ??= GetSymbol ("sk_canvas_draw_rrect")).Invoke (ccanvas, crect, cpaint); #endif - // void sk_canvas_draw_simple_text(sk_canvas_t* ccanvas, const void* text, size_t byte_length, sk_text_encoding_t encoding, float x, float y, const sk_font_t* cfont, const sk_paint_t* cpaint) + // void sk_canvas_draw_simple_text(sk_canvas_t * ccanvas, void const * text, size_t byte_length, sk_text_encoding_t encoding, float x, float y, sk_font_t const * cfont, sk_paint_t const * cpaint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2794,7 +2794,7 @@ internal static void sk_canvas_draw_simple_text (sk_canvas_t ccanvas, void* text (sk_canvas_draw_simple_text_delegate ??= GetSymbol ("sk_canvas_draw_simple_text")).Invoke (ccanvas, text, byte_length, encoding, x, y, cfont, cpaint); #endif - // void sk_canvas_draw_text_blob(sk_canvas_t* ccanvas, sk_textblob_t* text, float x, float y, const sk_paint_t* cpaint) + // void sk_canvas_draw_text_blob(sk_canvas_t * ccanvas, sk_textblob_t * text, float x, float y, sk_paint_t const * cpaint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2813,7 +2813,7 @@ internal static void sk_canvas_draw_text_blob (sk_canvas_t ccanvas, sk_textblob_ (sk_canvas_draw_text_blob_delegate ??= GetSymbol ("sk_canvas_draw_text_blob")).Invoke (ccanvas, text, x, y, cpaint); #endif - // void sk_canvas_draw_url_annotation(sk_canvas_t* t, const sk_rect_t* rect, sk_data_t* value) + // void sk_canvas_draw_url_annotation(sk_canvas_t * t, sk_rect_t const * rect, sk_data_t * value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2832,7 +2832,7 @@ internal static void sk_canvas_draw_url_annotation (sk_canvas_t t, SKRect* rect, (sk_canvas_draw_url_annotation_delegate ??= GetSymbol ("sk_canvas_draw_url_annotation")).Invoke (t, rect, value); #endif - // void sk_canvas_draw_vertices(sk_canvas_t* ccanvas, const sk_vertices_t* vertices, sk_blendmode_t mode, const sk_paint_t* paint) + // void sk_canvas_draw_vertices(sk_canvas_t * ccanvas, sk_vertices_t const * vertices, sk_blendmode_t mode, sk_paint_t const * paint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2851,7 +2851,7 @@ internal static void sk_canvas_draw_vertices (sk_canvas_t ccanvas, sk_vertices_t (sk_canvas_draw_vertices_delegate ??= GetSymbol ("sk_canvas_draw_vertices")).Invoke (ccanvas, vertices, mode, paint); #endif - // bool sk_canvas_get_device_clip_bounds(sk_canvas_t* ccanvas, sk_irect_t* cbounds) + // bool sk_canvas_get_device_clip_bounds(sk_canvas_t * ccanvas, sk_irect_t * cbounds) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2873,7 +2873,7 @@ internal static bool sk_canvas_get_device_clip_bounds (sk_canvas_t ccanvas, SKRe (sk_canvas_get_device_clip_bounds_delegate ??= GetSymbol ("sk_canvas_get_device_clip_bounds")).Invoke (ccanvas, cbounds); #endif - // bool sk_canvas_get_local_clip_bounds(sk_canvas_t* ccanvas, sk_rect_t* cbounds) + // bool sk_canvas_get_local_clip_bounds(sk_canvas_t * ccanvas, sk_rect_t * cbounds) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2895,7 +2895,7 @@ internal static bool sk_canvas_get_local_clip_bounds (sk_canvas_t ccanvas, SKRec (sk_canvas_get_local_clip_bounds_delegate ??= GetSymbol ("sk_canvas_get_local_clip_bounds")).Invoke (ccanvas, cbounds); #endif - // void sk_canvas_get_matrix(sk_canvas_t* ccanvas, sk_matrix44_t* cmatrix) + // void sk_canvas_get_matrix(sk_canvas_t * ccanvas, sk_matrix44_t * cmatrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2914,7 +2914,7 @@ internal static void sk_canvas_get_matrix (sk_canvas_t ccanvas, SKMatrix44* cmat (sk_canvas_get_matrix_delegate ??= GetSymbol ("sk_canvas_get_matrix")).Invoke (ccanvas, cmatrix); #endif - // int sk_canvas_get_save_count(sk_canvas_t* ccanvas) + // int sk_canvas_get_save_count(sk_canvas_t * ccanvas) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2933,7 +2933,7 @@ internal static Int32 sk_canvas_get_save_count (sk_canvas_t ccanvas) => (sk_canvas_get_save_count_delegate ??= GetSymbol ("sk_canvas_get_save_count")).Invoke (ccanvas); #endif - // bool sk_canvas_is_clip_empty(sk_canvas_t* ccanvas) + // bool sk_canvas_is_clip_empty(sk_canvas_t * ccanvas) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2955,7 +2955,7 @@ internal static bool sk_canvas_is_clip_empty (sk_canvas_t ccanvas) => (sk_canvas_is_clip_empty_delegate ??= GetSymbol ("sk_canvas_is_clip_empty")).Invoke (ccanvas); #endif - // bool sk_canvas_is_clip_rect(sk_canvas_t* ccanvas) + // bool sk_canvas_is_clip_rect(sk_canvas_t * ccanvas) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2977,7 +2977,7 @@ internal static bool sk_canvas_is_clip_rect (sk_canvas_t ccanvas) => (sk_canvas_is_clip_rect_delegate ??= GetSymbol ("sk_canvas_is_clip_rect")).Invoke (ccanvas); #endif - // sk_canvas_t* sk_canvas_new_from_bitmap(const sk_bitmap_t* bitmap) + // sk_canvas_t * sk_canvas_new_from_bitmap(sk_bitmap_t const * bitmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -2996,7 +2996,7 @@ internal static sk_canvas_t sk_canvas_new_from_bitmap (sk_bitmap_t bitmap) => (sk_canvas_new_from_bitmap_delegate ??= GetSymbol ("sk_canvas_new_from_bitmap")).Invoke (bitmap); #endif - // sk_canvas_t* sk_canvas_new_from_raster(const sk_imageinfo_t* cinfo, void* pixels, size_t rowBytes, const sk_surfaceprops_t* props) + // sk_canvas_t * sk_canvas_new_from_raster(sk_imageinfo_t const * cinfo, void * pixels, size_t rowBytes, sk_surfaceprops_t const * props) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3015,7 +3015,7 @@ internal static sk_canvas_t sk_canvas_new_from_raster (SKImageInfoNative* cinfo, (sk_canvas_new_from_raster_delegate ??= GetSymbol ("sk_canvas_new_from_raster")).Invoke (cinfo, pixels, rowBytes, props); #endif - // bool sk_canvas_quick_reject(sk_canvas_t* ccanvas, const sk_rect_t* crect) + // bool sk_canvas_quick_reject(sk_canvas_t * ccanvas, sk_rect_t const * crect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3037,7 +3037,7 @@ internal static bool sk_canvas_quick_reject (sk_canvas_t ccanvas, SKRect* crect) (sk_canvas_quick_reject_delegate ??= GetSymbol ("sk_canvas_quick_reject")).Invoke (ccanvas, crect); #endif - // void sk_canvas_reset_matrix(sk_canvas_t* ccanvas) + // void sk_canvas_reset_matrix(sk_canvas_t * ccanvas) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3056,7 +3056,7 @@ internal static void sk_canvas_reset_matrix (sk_canvas_t ccanvas) => (sk_canvas_reset_matrix_delegate ??= GetSymbol ("sk_canvas_reset_matrix")).Invoke (ccanvas); #endif - // void sk_canvas_restore(sk_canvas_t* ccanvas) + // void sk_canvas_restore(sk_canvas_t * ccanvas) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3075,7 +3075,7 @@ internal static void sk_canvas_restore (sk_canvas_t ccanvas) => (sk_canvas_restore_delegate ??= GetSymbol ("sk_canvas_restore")).Invoke (ccanvas); #endif - // void sk_canvas_restore_to_count(sk_canvas_t* ccanvas, int saveCount) + // void sk_canvas_restore_to_count(sk_canvas_t * ccanvas, int saveCount) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3094,7 +3094,7 @@ internal static void sk_canvas_restore_to_count (sk_canvas_t ccanvas, Int32 save (sk_canvas_restore_to_count_delegate ??= GetSymbol ("sk_canvas_restore_to_count")).Invoke (ccanvas, saveCount); #endif - // void sk_canvas_rotate_degrees(sk_canvas_t* ccanvas, float degrees) + // void sk_canvas_rotate_degrees(sk_canvas_t * ccanvas, float degrees) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3113,7 +3113,7 @@ internal static void sk_canvas_rotate_degrees (sk_canvas_t ccanvas, Single degre (sk_canvas_rotate_degrees_delegate ??= GetSymbol ("sk_canvas_rotate_degrees")).Invoke (ccanvas, degrees); #endif - // void sk_canvas_rotate_radians(sk_canvas_t* ccanvas, float radians) + // void sk_canvas_rotate_radians(sk_canvas_t * ccanvas, float radians) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3132,7 +3132,7 @@ internal static void sk_canvas_rotate_radians (sk_canvas_t ccanvas, Single radia (sk_canvas_rotate_radians_delegate ??= GetSymbol ("sk_canvas_rotate_radians")).Invoke (ccanvas, radians); #endif - // int sk_canvas_save(sk_canvas_t* ccanvas) + // int sk_canvas_save(sk_canvas_t * ccanvas) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3151,7 +3151,7 @@ internal static Int32 sk_canvas_save (sk_canvas_t ccanvas) => (sk_canvas_save_delegate ??= GetSymbol ("sk_canvas_save")).Invoke (ccanvas); #endif - // int sk_canvas_save_layer(sk_canvas_t* ccanvas, const sk_rect_t* crect, const sk_paint_t* cpaint) + // int sk_canvas_save_layer(sk_canvas_t * ccanvas, sk_rect_t const * crect, sk_paint_t const * cpaint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3170,7 +3170,7 @@ internal static Int32 sk_canvas_save_layer (sk_canvas_t ccanvas, SKRect* crect, (sk_canvas_save_layer_delegate ??= GetSymbol ("sk_canvas_save_layer")).Invoke (ccanvas, crect, cpaint); #endif - // int sk_canvas_save_layer_rec(sk_canvas_t* ccanvas, const sk_canvas_savelayerrec_t* crec) + // int sk_canvas_save_layer_rec(sk_canvas_t * ccanvas, sk_canvas_savelayerrec_t const * crec) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3189,7 +3189,7 @@ internal static Int32 sk_canvas_save_layer_rec (sk_canvas_t ccanvas, SKCanvasSav (sk_canvas_save_layer_rec_delegate ??= GetSymbol ("sk_canvas_save_layer_rec")).Invoke (ccanvas, crec); #endif - // void sk_canvas_scale(sk_canvas_t* ccanvas, float sx, float sy) + // void sk_canvas_scale(sk_canvas_t * ccanvas, float sx, float sy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3208,7 +3208,7 @@ internal static void sk_canvas_scale (sk_canvas_t ccanvas, Single sx, Single sy) (sk_canvas_scale_delegate ??= GetSymbol ("sk_canvas_scale")).Invoke (ccanvas, sx, sy); #endif - // void sk_canvas_set_matrix(sk_canvas_t* ccanvas, const sk_matrix44_t* cmatrix) + // void sk_canvas_set_matrix(sk_canvas_t * ccanvas, sk_matrix44_t const * cmatrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3227,7 +3227,7 @@ internal static void sk_canvas_set_matrix (sk_canvas_t ccanvas, SKMatrix44* cmat (sk_canvas_set_matrix_delegate ??= GetSymbol ("sk_canvas_set_matrix")).Invoke (ccanvas, cmatrix); #endif - // void sk_canvas_skew(sk_canvas_t* ccanvas, float sx, float sy) + // void sk_canvas_skew(sk_canvas_t * ccanvas, float sx, float sy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3246,7 +3246,7 @@ internal static void sk_canvas_skew (sk_canvas_t ccanvas, Single sx, Single sy) (sk_canvas_skew_delegate ??= GetSymbol ("sk_canvas_skew")).Invoke (ccanvas, sx, sy); #endif - // void sk_canvas_translate(sk_canvas_t* ccanvas, float dx, float dy) + // void sk_canvas_translate(sk_canvas_t * ccanvas, float dx, float dy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3265,7 +3265,7 @@ internal static void sk_canvas_translate (sk_canvas_t ccanvas, Single dx, Single (sk_canvas_translate_delegate ??= GetSymbol ("sk_canvas_translate")).Invoke (ccanvas, dx, dy); #endif - // gr_recording_context_t* sk_get_recording_context(sk_canvas_t* canvas) + // gr_recording_context_t * sk_get_recording_context(sk_canvas_t * canvas) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3284,7 +3284,7 @@ internal static gr_recording_context_t sk_get_recording_context (sk_canvas_t can (sk_get_recording_context_delegate ??= GetSymbol ("sk_get_recording_context")).Invoke (canvas); #endif - // sk_surface_t* sk_get_surface(sk_canvas_t* canvas) + // sk_surface_t * sk_get_surface(sk_canvas_t * canvas) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3303,7 +3303,7 @@ internal static sk_surface_t sk_get_surface (sk_canvas_t canvas) => (sk_get_surface_delegate ??= GetSymbol ("sk_get_surface")).Invoke (canvas); #endif - // void sk_nodraw_canvas_destroy(sk_nodraw_canvas_t* t) + // void sk_nodraw_canvas_destroy(sk_nodraw_canvas_t * t) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3322,7 +3322,7 @@ internal static void sk_nodraw_canvas_destroy (sk_nodraw_canvas_t t) => (sk_nodraw_canvas_destroy_delegate ??= GetSymbol ("sk_nodraw_canvas_destroy")).Invoke (t); #endif - // sk_nodraw_canvas_t* sk_nodraw_canvas_new(int width, int height) + // sk_nodraw_canvas_t * sk_nodraw_canvas_new(int width, int height) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3341,7 +3341,7 @@ internal static sk_nodraw_canvas_t sk_nodraw_canvas_new (Int32 width, Int32 heig (sk_nodraw_canvas_new_delegate ??= GetSymbol ("sk_nodraw_canvas_new")).Invoke (width, height); #endif - // void sk_nway_canvas_add_canvas(sk_nway_canvas_t* t, sk_canvas_t* canvas) + // void sk_nway_canvas_add_canvas(sk_nway_canvas_t * t, sk_canvas_t * canvas) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3360,7 +3360,7 @@ internal static void sk_nway_canvas_add_canvas (sk_nway_canvas_t t, sk_canvas_t (sk_nway_canvas_add_canvas_delegate ??= GetSymbol ("sk_nway_canvas_add_canvas")).Invoke (t, canvas); #endif - // void sk_nway_canvas_destroy(sk_nway_canvas_t* t) + // void sk_nway_canvas_destroy(sk_nway_canvas_t * t) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3379,7 +3379,7 @@ internal static void sk_nway_canvas_destroy (sk_nway_canvas_t t) => (sk_nway_canvas_destroy_delegate ??= GetSymbol ("sk_nway_canvas_destroy")).Invoke (t); #endif - // sk_nway_canvas_t* sk_nway_canvas_new(int width, int height) + // sk_nway_canvas_t * sk_nway_canvas_new(int width, int height) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3398,7 +3398,7 @@ internal static sk_nway_canvas_t sk_nway_canvas_new (Int32 width, Int32 height) (sk_nway_canvas_new_delegate ??= GetSymbol ("sk_nway_canvas_new")).Invoke (width, height); #endif - // void sk_nway_canvas_remove_all(sk_nway_canvas_t* t) + // void sk_nway_canvas_remove_all(sk_nway_canvas_t * t) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3417,7 +3417,7 @@ internal static void sk_nway_canvas_remove_all (sk_nway_canvas_t t) => (sk_nway_canvas_remove_all_delegate ??= GetSymbol ("sk_nway_canvas_remove_all")).Invoke (t); #endif - // void sk_nway_canvas_remove_canvas(sk_nway_canvas_t* t, sk_canvas_t* canvas) + // void sk_nway_canvas_remove_canvas(sk_nway_canvas_t * t, sk_canvas_t * canvas) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3436,7 +3436,7 @@ internal static void sk_nway_canvas_remove_canvas (sk_nway_canvas_t t, sk_canvas (sk_nway_canvas_remove_canvas_delegate ??= GetSymbol ("sk_nway_canvas_remove_canvas")).Invoke (t, canvas); #endif - // void sk_overdraw_canvas_destroy(sk_overdraw_canvas_t* canvas) + // void sk_overdraw_canvas_destroy(sk_overdraw_canvas_t * canvas) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3455,7 +3455,7 @@ internal static void sk_overdraw_canvas_destroy (sk_overdraw_canvas_t canvas) => (sk_overdraw_canvas_destroy_delegate ??= GetSymbol ("sk_overdraw_canvas_destroy")).Invoke (canvas); #endif - // sk_overdraw_canvas_t* sk_overdraw_canvas_new(sk_canvas_t* canvas) + // sk_overdraw_canvas_t * sk_overdraw_canvas_new(sk_canvas_t * canvas) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3478,7 +3478,7 @@ internal static sk_overdraw_canvas_t sk_overdraw_canvas_new (sk_canvas_t canvas) #region sk_codec.h - // void sk_codec_destroy(sk_codec_t* codec) + // void sk_codec_destroy(sk_codec_t * codec) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3497,7 +3497,7 @@ internal static void sk_codec_destroy (sk_codec_t codec) => (sk_codec_destroy_delegate ??= GetSymbol ("sk_codec_destroy")).Invoke (codec); #endif - // sk_encoded_image_format_t sk_codec_get_encoded_format(sk_codec_t* codec) + // sk_encoded_image_format_t sk_codec_get_encoded_format(sk_codec_t * codec) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3516,7 +3516,7 @@ internal static SKEncodedImageFormat sk_codec_get_encoded_format (sk_codec_t cod (sk_codec_get_encoded_format_delegate ??= GetSymbol ("sk_codec_get_encoded_format")).Invoke (codec); #endif - // int sk_codec_get_frame_count(sk_codec_t* codec) + // int sk_codec_get_frame_count(sk_codec_t * codec) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3535,7 +3535,7 @@ internal static Int32 sk_codec_get_frame_count (sk_codec_t codec) => (sk_codec_get_frame_count_delegate ??= GetSymbol ("sk_codec_get_frame_count")).Invoke (codec); #endif - // void sk_codec_get_frame_info(sk_codec_t* codec, sk_codec_frameinfo_t* frameInfo) + // void sk_codec_get_frame_info(sk_codec_t * codec, sk_codec_frameinfo_t * frameInfo) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3554,7 +3554,7 @@ internal static void sk_codec_get_frame_info (sk_codec_t codec, SKCodecFrameInfo (sk_codec_get_frame_info_delegate ??= GetSymbol ("sk_codec_get_frame_info")).Invoke (codec, frameInfo); #endif - // bool sk_codec_get_frame_info_for_index(sk_codec_t* codec, int index, sk_codec_frameinfo_t* frameInfo) + // bool sk_codec_get_frame_info_for_index(sk_codec_t * codec, int index, sk_codec_frameinfo_t * frameInfo) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3576,7 +3576,7 @@ internal static bool sk_codec_get_frame_info_for_index (sk_codec_t codec, Int32 (sk_codec_get_frame_info_for_index_delegate ??= GetSymbol ("sk_codec_get_frame_info_for_index")).Invoke (codec, index, frameInfo); #endif - // void sk_codec_get_info(sk_codec_t* codec, sk_imageinfo_t* info) + // void sk_codec_get_info(sk_codec_t * codec, sk_imageinfo_t * info) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3595,7 +3595,7 @@ internal static void sk_codec_get_info (sk_codec_t codec, SKImageInfoNative* inf (sk_codec_get_info_delegate ??= GetSymbol ("sk_codec_get_info")).Invoke (codec, info); #endif - // sk_encodedorigin_t sk_codec_get_origin(sk_codec_t* codec) + // sk_encodedorigin_t sk_codec_get_origin(sk_codec_t * codec) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3614,7 +3614,7 @@ internal static SKEncodedOrigin sk_codec_get_origin (sk_codec_t codec) => (sk_codec_get_origin_delegate ??= GetSymbol ("sk_codec_get_origin")).Invoke (codec); #endif - // sk_codec_result_t sk_codec_get_pixels(sk_codec_t* codec, const sk_imageinfo_t* info, void* pixels, size_t rowBytes, const sk_codec_options_t* options) + // sk_codec_result_t sk_codec_get_pixels(sk_codec_t * codec, sk_imageinfo_t const * info, void * pixels, size_t rowBytes, sk_codec_options_t const * options) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3633,7 +3633,7 @@ internal static SKCodecResult sk_codec_get_pixels (sk_codec_t codec, SKImageInfo (sk_codec_get_pixels_delegate ??= GetSymbol ("sk_codec_get_pixels")).Invoke (codec, info, pixels, rowBytes, options); #endif - // int sk_codec_get_repetition_count(sk_codec_t* codec) + // int sk_codec_get_repetition_count(sk_codec_t * codec) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3652,7 +3652,7 @@ internal static Int32 sk_codec_get_repetition_count (sk_codec_t codec) => (sk_codec_get_repetition_count_delegate ??= GetSymbol ("sk_codec_get_repetition_count")).Invoke (codec); #endif - // void sk_codec_get_scaled_dimensions(sk_codec_t* codec, float desiredScale, sk_isize_t* dimensions) + // void sk_codec_get_scaled_dimensions(sk_codec_t * codec, float desiredScale, sk_isize_t * dimensions) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3671,7 +3671,7 @@ internal static void sk_codec_get_scaled_dimensions (sk_codec_t codec, Single de (sk_codec_get_scaled_dimensions_delegate ??= GetSymbol ("sk_codec_get_scaled_dimensions")).Invoke (codec, desiredScale, dimensions); #endif - // sk_codec_scanline_order_t sk_codec_get_scanline_order(sk_codec_t* codec) + // sk_codec_scanline_order_t sk_codec_get_scanline_order(sk_codec_t * codec) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3690,7 +3690,7 @@ internal static SKCodecScanlineOrder sk_codec_get_scanline_order (sk_codec_t cod (sk_codec_get_scanline_order_delegate ??= GetSymbol ("sk_codec_get_scanline_order")).Invoke (codec); #endif - // int sk_codec_get_scanlines(sk_codec_t* codec, void* dst, int countLines, size_t rowBytes) + // int sk_codec_get_scanlines(sk_codec_t * codec, void * dst, int countLines, size_t rowBytes) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3709,7 +3709,7 @@ internal static Int32 sk_codec_get_scanlines (sk_codec_t codec, void* dst, Int32 (sk_codec_get_scanlines_delegate ??= GetSymbol ("sk_codec_get_scanlines")).Invoke (codec, dst, countLines, rowBytes); #endif - // bool sk_codec_get_valid_subset(sk_codec_t* codec, sk_irect_t* desiredSubset) + // bool sk_codec_get_valid_subset(sk_codec_t * codec, sk_irect_t * desiredSubset) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3731,7 +3731,7 @@ internal static bool sk_codec_get_valid_subset (sk_codec_t codec, SKRectI* desir (sk_codec_get_valid_subset_delegate ??= GetSymbol ("sk_codec_get_valid_subset")).Invoke (codec, desiredSubset); #endif - // sk_codec_result_t sk_codec_incremental_decode(sk_codec_t* codec, int* rowsDecoded) + // sk_codec_result_t sk_codec_incremental_decode(sk_codec_t * codec, int * rowsDecoded) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3769,7 +3769,7 @@ private partial class Delegates { (sk_codec_min_buffered_bytes_needed_delegate ??= GetSymbol ("sk_codec_min_buffered_bytes_needed")).Invoke (); #endif - // sk_codec_t* sk_codec_new_from_data(sk_data_t* data) + // sk_codec_t * sk_codec_new_from_data(sk_data_t * data) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3788,7 +3788,7 @@ internal static sk_codec_t sk_codec_new_from_data (sk_data_t data) => (sk_codec_new_from_data_delegate ??= GetSymbol ("sk_codec_new_from_data")).Invoke (data); #endif - // sk_codec_t* sk_codec_new_from_stream(sk_stream_t* stream, sk_codec_result_t* result) + // sk_codec_t * sk_codec_new_from_stream(sk_stream_t * stream, sk_codec_result_t * result) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3807,7 +3807,7 @@ internal static sk_codec_t sk_codec_new_from_stream (sk_stream_t stream, SKCodec (sk_codec_new_from_stream_delegate ??= GetSymbol ("sk_codec_new_from_stream")).Invoke (stream, result); #endif - // int sk_codec_next_scanline(sk_codec_t* codec) + // int sk_codec_next_scanline(sk_codec_t * codec) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3826,7 +3826,7 @@ internal static Int32 sk_codec_next_scanline (sk_codec_t codec) => (sk_codec_next_scanline_delegate ??= GetSymbol ("sk_codec_next_scanline")).Invoke (codec); #endif - // int sk_codec_output_scanline(sk_codec_t* codec, int inputScanline) + // int sk_codec_output_scanline(sk_codec_t * codec, int inputScanline) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3845,7 +3845,7 @@ internal static Int32 sk_codec_output_scanline (sk_codec_t codec, Int32 inputSca (sk_codec_output_scanline_delegate ??= GetSymbol ("sk_codec_output_scanline")).Invoke (codec, inputScanline); #endif - // bool sk_codec_skip_scanlines(sk_codec_t* codec, int countLines) + // bool sk_codec_skip_scanlines(sk_codec_t * codec, int countLines) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3867,7 +3867,7 @@ internal static bool sk_codec_skip_scanlines (sk_codec_t codec, Int32 countLines (sk_codec_skip_scanlines_delegate ??= GetSymbol ("sk_codec_skip_scanlines")).Invoke (codec, countLines); #endif - // sk_codec_result_t sk_codec_start_incremental_decode(sk_codec_t* codec, const sk_imageinfo_t* info, void* pixels, size_t rowBytes, const sk_codec_options_t* options) + // sk_codec_result_t sk_codec_start_incremental_decode(sk_codec_t * codec, sk_imageinfo_t const * info, void * pixels, size_t rowBytes, sk_codec_options_t const * options) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3886,7 +3886,7 @@ internal static SKCodecResult sk_codec_start_incremental_decode (sk_codec_t code (sk_codec_start_incremental_decode_delegate ??= GetSymbol ("sk_codec_start_incremental_decode")).Invoke (codec, info, pixels, rowBytes, options); #endif - // sk_codec_result_t sk_codec_start_scanline_decode(sk_codec_t* codec, const sk_imageinfo_t* info, const sk_codec_options_t* options) + // sk_codec_result_t sk_codec_start_scanline_decode(sk_codec_t * codec, sk_imageinfo_t const * info, sk_codec_options_t const * options) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3909,7 +3909,7 @@ internal static SKCodecResult sk_codec_start_scanline_decode (sk_codec_t codec, #region sk_colorfilter.h - // sk_colorfilter_t* sk_colorfilter_new_color_matrix(const float[20] array = 20) + // sk_colorfilter_t * sk_colorfilter_new_color_matrix(float const[20] array = 20) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3928,7 +3928,7 @@ internal static sk_colorfilter_t sk_colorfilter_new_color_matrix (Single* array) (sk_colorfilter_new_color_matrix_delegate ??= GetSymbol ("sk_colorfilter_new_color_matrix")).Invoke (array); #endif - // sk_colorfilter_t* sk_colorfilter_new_compose(sk_colorfilter_t* outer, sk_colorfilter_t* inner) + // sk_colorfilter_t * sk_colorfilter_new_compose(sk_colorfilter_t * outer, sk_colorfilter_t * inner) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3947,7 +3947,7 @@ internal static sk_colorfilter_t sk_colorfilter_new_compose (sk_colorfilter_t ou (sk_colorfilter_new_compose_delegate ??= GetSymbol ("sk_colorfilter_new_compose")).Invoke (outer, inner); #endif - // sk_colorfilter_t* sk_colorfilter_new_high_contrast(const sk_highcontrastconfig_t* config) + // sk_colorfilter_t * sk_colorfilter_new_high_contrast(sk_highcontrastconfig_t const * config) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3966,7 +3966,7 @@ internal static sk_colorfilter_t sk_colorfilter_new_high_contrast (SKHighContras (sk_colorfilter_new_high_contrast_delegate ??= GetSymbol ("sk_colorfilter_new_high_contrast")).Invoke (config); #endif - // sk_colorfilter_t* sk_colorfilter_new_hsla_matrix(const float[20] array = 20) + // sk_colorfilter_t * sk_colorfilter_new_hsla_matrix(float const[20] array = 20) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -3985,7 +3985,7 @@ internal static sk_colorfilter_t sk_colorfilter_new_hsla_matrix (Single* array) (sk_colorfilter_new_hsla_matrix_delegate ??= GetSymbol ("sk_colorfilter_new_hsla_matrix")).Invoke (array); #endif - // sk_colorfilter_t* sk_colorfilter_new_lerp(float weight, sk_colorfilter_t* filter0, sk_colorfilter_t* filter1) + // sk_colorfilter_t * sk_colorfilter_new_lerp(float weight, sk_colorfilter_t * filter0, sk_colorfilter_t * filter1) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4004,7 +4004,7 @@ internal static sk_colorfilter_t sk_colorfilter_new_lerp (Single weight, sk_colo (sk_colorfilter_new_lerp_delegate ??= GetSymbol ("sk_colorfilter_new_lerp")).Invoke (weight, filter0, filter1); #endif - // sk_colorfilter_t* sk_colorfilter_new_lighting(sk_color_t mul, sk_color_t add) + // sk_colorfilter_t * sk_colorfilter_new_lighting(sk_color_t mul, sk_color_t add) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4023,7 +4023,7 @@ internal static sk_colorfilter_t sk_colorfilter_new_lighting (UInt32 mul, UInt32 (sk_colorfilter_new_lighting_delegate ??= GetSymbol ("sk_colorfilter_new_lighting")).Invoke (mul, add); #endif - // sk_colorfilter_t* sk_colorfilter_new_linear_to_srgb_gamma() + // sk_colorfilter_t * sk_colorfilter_new_linear_to_srgb_gamma() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4042,7 +4042,7 @@ internal static sk_colorfilter_t sk_colorfilter_new_linear_to_srgb_gamma () => (sk_colorfilter_new_linear_to_srgb_gamma_delegate ??= GetSymbol ("sk_colorfilter_new_linear_to_srgb_gamma")).Invoke (); #endif - // sk_colorfilter_t* sk_colorfilter_new_luma_color() + // sk_colorfilter_t * sk_colorfilter_new_luma_color() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4061,7 +4061,7 @@ internal static sk_colorfilter_t sk_colorfilter_new_luma_color () => (sk_colorfilter_new_luma_color_delegate ??= GetSymbol ("sk_colorfilter_new_luma_color")).Invoke (); #endif - // sk_colorfilter_t* sk_colorfilter_new_mode(sk_color_t c, sk_blendmode_t mode) + // sk_colorfilter_t * sk_colorfilter_new_mode(sk_color_t c, sk_blendmode_t mode) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4080,7 +4080,7 @@ internal static sk_colorfilter_t sk_colorfilter_new_mode (UInt32 c, SKBlendMode (sk_colorfilter_new_mode_delegate ??= GetSymbol ("sk_colorfilter_new_mode")).Invoke (c, mode); #endif - // sk_colorfilter_t* sk_colorfilter_new_srgb_to_linear_gamma() + // sk_colorfilter_t * sk_colorfilter_new_srgb_to_linear_gamma() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4099,7 +4099,7 @@ internal static sk_colorfilter_t sk_colorfilter_new_srgb_to_linear_gamma () => (sk_colorfilter_new_srgb_to_linear_gamma_delegate ??= GetSymbol ("sk_colorfilter_new_srgb_to_linear_gamma")).Invoke (); #endif - // sk_colorfilter_t* sk_colorfilter_new_table(const uint8_t[256] table = 256) + // sk_colorfilter_t * sk_colorfilter_new_table(unsigned char const[256] table = 256) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4118,7 +4118,7 @@ internal static sk_colorfilter_t sk_colorfilter_new_table (Byte* table) => (sk_colorfilter_new_table_delegate ??= GetSymbol ("sk_colorfilter_new_table")).Invoke (table); #endif - // sk_colorfilter_t* sk_colorfilter_new_table_argb(const uint8_t[256] tableA = 256, const uint8_t[256] tableR = 256, const uint8_t[256] tableG = 256, const uint8_t[256] tableB = 256) + // sk_colorfilter_t * sk_colorfilter_new_table_argb(unsigned char const[256] tableA = 256, unsigned char const[256] tableR = 256, unsigned char const[256] tableG = 256, unsigned char const[256] tableB = 256) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4137,7 +4137,7 @@ internal static sk_colorfilter_t sk_colorfilter_new_table_argb (Byte* tableA, By (sk_colorfilter_new_table_argb_delegate ??= GetSymbol ("sk_colorfilter_new_table_argb")).Invoke (tableA, tableR, tableG, tableB); #endif - // void sk_colorfilter_unref(sk_colorfilter_t* filter) + // void sk_colorfilter_unref(sk_colorfilter_t * filter) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4160,7 +4160,7 @@ internal static void sk_colorfilter_unref (sk_colorfilter_t filter) => #region sk_colorspace.h - // void sk_color4f_from_color(sk_color_t color, sk_color4f_t* color4f) + // void sk_color4f_from_color(sk_color_t color, sk_color4f_t * color4f) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4179,7 +4179,7 @@ internal static void sk_color4f_from_color (UInt32 color, SKColorF* color4f) => (sk_color4f_from_color_delegate ??= GetSymbol ("sk_color4f_from_color")).Invoke (color, color4f); #endif - // sk_color_t sk_color4f_to_color(const sk_color4f_t* color4f) + // sk_color_t sk_color4f_to_color(sk_color4f_t const * color4f) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4198,7 +4198,7 @@ internal static UInt32 sk_color4f_to_color (SKColorF* color4f) => (sk_color4f_to_color_delegate ??= GetSymbol ("sk_color4f_to_color")).Invoke (color4f); #endif - // bool sk_colorspace_equals(const sk_colorspace_t* src, const sk_colorspace_t* dst) + // bool sk_colorspace_equals(sk_colorspace_t const * src, sk_colorspace_t const * dst) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4220,7 +4220,7 @@ internal static bool sk_colorspace_equals (sk_colorspace_t src, sk_colorspace_t (sk_colorspace_equals_delegate ??= GetSymbol ("sk_colorspace_equals")).Invoke (src, dst); #endif - // bool sk_colorspace_gamma_close_to_srgb(const sk_colorspace_t* colorspace) + // bool sk_colorspace_gamma_close_to_srgb(sk_colorspace_t const * colorspace) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4242,7 +4242,7 @@ internal static bool sk_colorspace_gamma_close_to_srgb (sk_colorspace_t colorspa (sk_colorspace_gamma_close_to_srgb_delegate ??= GetSymbol ("sk_colorspace_gamma_close_to_srgb")).Invoke (colorspace); #endif - // bool sk_colorspace_gamma_is_linear(const sk_colorspace_t* colorspace) + // bool sk_colorspace_gamma_is_linear(sk_colorspace_t const * colorspace) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4264,7 +4264,7 @@ internal static bool sk_colorspace_gamma_is_linear (sk_colorspace_t colorspace) (sk_colorspace_gamma_is_linear_delegate ??= GetSymbol ("sk_colorspace_gamma_is_linear")).Invoke (colorspace); #endif - // void sk_colorspace_icc_profile_delete(sk_colorspace_icc_profile_t* profile) + // void sk_colorspace_icc_profile_delete(sk_colorspace_icc_profile_t * profile) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4283,7 +4283,7 @@ internal static void sk_colorspace_icc_profile_delete (sk_colorspace_icc_profile (sk_colorspace_icc_profile_delete_delegate ??= GetSymbol ("sk_colorspace_icc_profile_delete")).Invoke (profile); #endif - // const uint8_t* sk_colorspace_icc_profile_get_buffer(const sk_colorspace_icc_profile_t* profile, uint32_t* size) + // unsigned char const * sk_colorspace_icc_profile_get_buffer(sk_colorspace_icc_profile_t const * profile, unsigned int * size) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4302,7 +4302,7 @@ private partial class Delegates { (sk_colorspace_icc_profile_get_buffer_delegate ??= GetSymbol ("sk_colorspace_icc_profile_get_buffer")).Invoke (profile, size); #endif - // bool sk_colorspace_icc_profile_get_to_xyzd50(const sk_colorspace_icc_profile_t* profile, sk_colorspace_xyz_t* toXYZD50) + // bool sk_colorspace_icc_profile_get_to_xyzd50(sk_colorspace_icc_profile_t const * profile, sk_colorspace_xyz_t * toXYZD50) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4324,7 +4324,7 @@ internal static bool sk_colorspace_icc_profile_get_to_xyzd50 (sk_colorspace_icc_ (sk_colorspace_icc_profile_get_to_xyzd50_delegate ??= GetSymbol ("sk_colorspace_icc_profile_get_to_xyzd50")).Invoke (profile, toXYZD50); #endif - // sk_colorspace_icc_profile_t* sk_colorspace_icc_profile_new() + // sk_colorspace_icc_profile_t * sk_colorspace_icc_profile_new() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4343,7 +4343,7 @@ internal static sk_colorspace_icc_profile_t sk_colorspace_icc_profile_new () => (sk_colorspace_icc_profile_new_delegate ??= GetSymbol ("sk_colorspace_icc_profile_new")).Invoke (); #endif - // bool sk_colorspace_icc_profile_parse(const void* buffer, size_t length, sk_colorspace_icc_profile_t* profile) + // bool sk_colorspace_icc_profile_parse(void const * buffer, size_t length, sk_colorspace_icc_profile_t * profile) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4365,7 +4365,7 @@ internal static bool sk_colorspace_icc_profile_parse (void* buffer, /* size_t */ (sk_colorspace_icc_profile_parse_delegate ??= GetSymbol ("sk_colorspace_icc_profile_parse")).Invoke (buffer, length, profile); #endif - // bool sk_colorspace_is_numerical_transfer_fn(const sk_colorspace_t* colorspace, sk_colorspace_transfer_fn_t* transferFn) + // bool sk_colorspace_is_numerical_transfer_fn(sk_colorspace_t const * colorspace, sk_colorspace_transfer_fn_t * transferFn) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4387,7 +4387,7 @@ internal static bool sk_colorspace_is_numerical_transfer_fn (sk_colorspace_t col (sk_colorspace_is_numerical_transfer_fn_delegate ??= GetSymbol ("sk_colorspace_is_numerical_transfer_fn")).Invoke (colorspace, transferFn); #endif - // bool sk_colorspace_is_srgb(const sk_colorspace_t* colorspace) + // bool sk_colorspace_is_srgb(sk_colorspace_t const * colorspace) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4409,7 +4409,7 @@ internal static bool sk_colorspace_is_srgb (sk_colorspace_t colorspace) => (sk_colorspace_is_srgb_delegate ??= GetSymbol ("sk_colorspace_is_srgb")).Invoke (colorspace); #endif - // sk_colorspace_t* sk_colorspace_make_linear_gamma(const sk_colorspace_t* colorspace) + // sk_colorspace_t * sk_colorspace_make_linear_gamma(sk_colorspace_t const * colorspace) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4428,7 +4428,7 @@ internal static sk_colorspace_t sk_colorspace_make_linear_gamma (sk_colorspace_t (sk_colorspace_make_linear_gamma_delegate ??= GetSymbol ("sk_colorspace_make_linear_gamma")).Invoke (colorspace); #endif - // sk_colorspace_t* sk_colorspace_make_srgb_gamma(const sk_colorspace_t* colorspace) + // sk_colorspace_t * sk_colorspace_make_srgb_gamma(sk_colorspace_t const * colorspace) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4447,7 +4447,7 @@ internal static sk_colorspace_t sk_colorspace_make_srgb_gamma (sk_colorspace_t c (sk_colorspace_make_srgb_gamma_delegate ??= GetSymbol ("sk_colorspace_make_srgb_gamma")).Invoke (colorspace); #endif - // sk_colorspace_t* sk_colorspace_new_icc(const sk_colorspace_icc_profile_t* profile) + // sk_colorspace_t * sk_colorspace_new_icc(sk_colorspace_icc_profile_t const * profile) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4466,7 +4466,7 @@ internal static sk_colorspace_t sk_colorspace_new_icc (sk_colorspace_icc_profile (sk_colorspace_new_icc_delegate ??= GetSymbol ("sk_colorspace_new_icc")).Invoke (profile); #endif - // sk_colorspace_t* sk_colorspace_new_rgb(const sk_colorspace_transfer_fn_t* transferFn, const sk_colorspace_xyz_t* toXYZD50) + // sk_colorspace_t * sk_colorspace_new_rgb(sk_colorspace_transfer_fn_t const * transferFn, sk_colorspace_xyz_t const * toXYZD50) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4485,7 +4485,7 @@ internal static sk_colorspace_t sk_colorspace_new_rgb (SKColorSpaceTransferFn* t (sk_colorspace_new_rgb_delegate ??= GetSymbol ("sk_colorspace_new_rgb")).Invoke (transferFn, toXYZD50); #endif - // sk_colorspace_t* sk_colorspace_new_srgb() + // sk_colorspace_t * sk_colorspace_new_srgb() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4504,7 +4504,7 @@ internal static sk_colorspace_t sk_colorspace_new_srgb () => (sk_colorspace_new_srgb_delegate ??= GetSymbol ("sk_colorspace_new_srgb")).Invoke (); #endif - // sk_colorspace_t* sk_colorspace_new_srgb_linear() + // sk_colorspace_t * sk_colorspace_new_srgb_linear() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4523,7 +4523,7 @@ internal static sk_colorspace_t sk_colorspace_new_srgb_linear () => (sk_colorspace_new_srgb_linear_delegate ??= GetSymbol ("sk_colorspace_new_srgb_linear")).Invoke (); #endif - // bool sk_colorspace_primaries_to_xyzd50(const sk_colorspace_primaries_t* primaries, sk_colorspace_xyz_t* toXYZD50) + // bool sk_colorspace_primaries_to_xyzd50(sk_colorspace_primaries_t const * primaries, sk_colorspace_xyz_t * toXYZD50) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4545,7 +4545,7 @@ internal static bool sk_colorspace_primaries_to_xyzd50 (SKColorSpacePrimaries* p (sk_colorspace_primaries_to_xyzd50_delegate ??= GetSymbol ("sk_colorspace_primaries_to_xyzd50")).Invoke (primaries, toXYZD50); #endif - // void sk_colorspace_ref(sk_colorspace_t* colorspace) + // void sk_colorspace_ref(sk_colorspace_t * colorspace) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4564,7 +4564,7 @@ internal static void sk_colorspace_ref (sk_colorspace_t colorspace) => (sk_colorspace_ref_delegate ??= GetSymbol ("sk_colorspace_ref")).Invoke (colorspace); #endif - // void sk_colorspace_to_profile(const sk_colorspace_t* colorspace, sk_colorspace_icc_profile_t* profile) + // void sk_colorspace_to_profile(sk_colorspace_t const * colorspace, sk_colorspace_icc_profile_t * profile) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4583,7 +4583,7 @@ internal static void sk_colorspace_to_profile (sk_colorspace_t colorspace, sk_co (sk_colorspace_to_profile_delegate ??= GetSymbol ("sk_colorspace_to_profile")).Invoke (colorspace, profile); #endif - // bool sk_colorspace_to_xyzd50(const sk_colorspace_t* colorspace, sk_colorspace_xyz_t* toXYZD50) + // bool sk_colorspace_to_xyzd50(sk_colorspace_t const * colorspace, sk_colorspace_xyz_t * toXYZD50) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4605,7 +4605,7 @@ internal static bool sk_colorspace_to_xyzd50 (sk_colorspace_t colorspace, SKColo (sk_colorspace_to_xyzd50_delegate ??= GetSymbol ("sk_colorspace_to_xyzd50")).Invoke (colorspace, toXYZD50); #endif - // float sk_colorspace_transfer_fn_eval(const sk_colorspace_transfer_fn_t* transferFn, float x) + // float sk_colorspace_transfer_fn_eval(sk_colorspace_transfer_fn_t const * transferFn, float x) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4624,7 +4624,7 @@ internal static Single sk_colorspace_transfer_fn_eval (SKColorSpaceTransferFn* t (sk_colorspace_transfer_fn_eval_delegate ??= GetSymbol ("sk_colorspace_transfer_fn_eval")).Invoke (transferFn, x); #endif - // bool sk_colorspace_transfer_fn_invert(const sk_colorspace_transfer_fn_t* src, sk_colorspace_transfer_fn_t* dst) + // bool sk_colorspace_transfer_fn_invert(sk_colorspace_transfer_fn_t const * src, sk_colorspace_transfer_fn_t * dst) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4646,7 +4646,7 @@ internal static bool sk_colorspace_transfer_fn_invert (SKColorSpaceTransferFn* s (sk_colorspace_transfer_fn_invert_delegate ??= GetSymbol ("sk_colorspace_transfer_fn_invert")).Invoke (src, dst); #endif - // void sk_colorspace_transfer_fn_named_2dot2(sk_colorspace_transfer_fn_t* transferFn) + // void sk_colorspace_transfer_fn_named_2dot2(sk_colorspace_transfer_fn_t * transferFn) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4665,7 +4665,7 @@ internal static void sk_colorspace_transfer_fn_named_2dot2 (SKColorSpaceTransfer (sk_colorspace_transfer_fn_named_2dot2_delegate ??= GetSymbol ("sk_colorspace_transfer_fn_named_2dot2")).Invoke (transferFn); #endif - // void sk_colorspace_transfer_fn_named_hlg(sk_colorspace_transfer_fn_t* transferFn) + // void sk_colorspace_transfer_fn_named_hlg(sk_colorspace_transfer_fn_t * transferFn) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4684,7 +4684,7 @@ internal static void sk_colorspace_transfer_fn_named_hlg (SKColorSpaceTransferFn (sk_colorspace_transfer_fn_named_hlg_delegate ??= GetSymbol ("sk_colorspace_transfer_fn_named_hlg")).Invoke (transferFn); #endif - // void sk_colorspace_transfer_fn_named_linear(sk_colorspace_transfer_fn_t* transferFn) + // void sk_colorspace_transfer_fn_named_linear(sk_colorspace_transfer_fn_t * transferFn) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4703,7 +4703,7 @@ internal static void sk_colorspace_transfer_fn_named_linear (SKColorSpaceTransfe (sk_colorspace_transfer_fn_named_linear_delegate ??= GetSymbol ("sk_colorspace_transfer_fn_named_linear")).Invoke (transferFn); #endif - // void sk_colorspace_transfer_fn_named_pq(sk_colorspace_transfer_fn_t* transferFn) + // void sk_colorspace_transfer_fn_named_pq(sk_colorspace_transfer_fn_t * transferFn) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4722,7 +4722,7 @@ internal static void sk_colorspace_transfer_fn_named_pq (SKColorSpaceTransferFn* (sk_colorspace_transfer_fn_named_pq_delegate ??= GetSymbol ("sk_colorspace_transfer_fn_named_pq")).Invoke (transferFn); #endif - // void sk_colorspace_transfer_fn_named_rec2020(sk_colorspace_transfer_fn_t* transferFn) + // void sk_colorspace_transfer_fn_named_rec2020(sk_colorspace_transfer_fn_t * transferFn) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4741,7 +4741,7 @@ internal static void sk_colorspace_transfer_fn_named_rec2020 (SKColorSpaceTransf (sk_colorspace_transfer_fn_named_rec2020_delegate ??= GetSymbol ("sk_colorspace_transfer_fn_named_rec2020")).Invoke (transferFn); #endif - // void sk_colorspace_transfer_fn_named_srgb(sk_colorspace_transfer_fn_t* transferFn) + // void sk_colorspace_transfer_fn_named_srgb(sk_colorspace_transfer_fn_t * transferFn) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4760,7 +4760,7 @@ internal static void sk_colorspace_transfer_fn_named_srgb (SKColorSpaceTransferF (sk_colorspace_transfer_fn_named_srgb_delegate ??= GetSymbol ("sk_colorspace_transfer_fn_named_srgb")).Invoke (transferFn); #endif - // void sk_colorspace_unref(sk_colorspace_t* colorspace) + // void sk_colorspace_unref(sk_colorspace_t * colorspace) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4779,7 +4779,7 @@ internal static void sk_colorspace_unref (sk_colorspace_t colorspace) => (sk_colorspace_unref_delegate ??= GetSymbol ("sk_colorspace_unref")).Invoke (colorspace); #endif - // void sk_colorspace_xyz_concat(const sk_colorspace_xyz_t* a, const sk_colorspace_xyz_t* b, sk_colorspace_xyz_t* result) + // void sk_colorspace_xyz_concat(sk_colorspace_xyz_t const * a, sk_colorspace_xyz_t const * b, sk_colorspace_xyz_t * result) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4798,7 +4798,7 @@ internal static void sk_colorspace_xyz_concat (SKColorSpaceXyz* a, SKColorSpaceX (sk_colorspace_xyz_concat_delegate ??= GetSymbol ("sk_colorspace_xyz_concat")).Invoke (a, b, result); #endif - // bool sk_colorspace_xyz_invert(const sk_colorspace_xyz_t* src, sk_colorspace_xyz_t* dst) + // bool sk_colorspace_xyz_invert(sk_colorspace_xyz_t const * src, sk_colorspace_xyz_t * dst) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4820,7 +4820,7 @@ internal static bool sk_colorspace_xyz_invert (SKColorSpaceXyz* src, SKColorSpac (sk_colorspace_xyz_invert_delegate ??= GetSymbol ("sk_colorspace_xyz_invert")).Invoke (src, dst); #endif - // void sk_colorspace_xyz_named_adobe_rgb(sk_colorspace_xyz_t* xyz) + // void sk_colorspace_xyz_named_adobe_rgb(sk_colorspace_xyz_t * xyz) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4839,7 +4839,7 @@ internal static void sk_colorspace_xyz_named_adobe_rgb (SKColorSpaceXyz* xyz) => (sk_colorspace_xyz_named_adobe_rgb_delegate ??= GetSymbol ("sk_colorspace_xyz_named_adobe_rgb")).Invoke (xyz); #endif - // void sk_colorspace_xyz_named_display_p3(sk_colorspace_xyz_t* xyz) + // void sk_colorspace_xyz_named_display_p3(sk_colorspace_xyz_t * xyz) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4858,7 +4858,7 @@ internal static void sk_colorspace_xyz_named_display_p3 (SKColorSpaceXyz* xyz) = (sk_colorspace_xyz_named_display_p3_delegate ??= GetSymbol ("sk_colorspace_xyz_named_display_p3")).Invoke (xyz); #endif - // void sk_colorspace_xyz_named_rec2020(sk_colorspace_xyz_t* xyz) + // void sk_colorspace_xyz_named_rec2020(sk_colorspace_xyz_t * xyz) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4877,7 +4877,7 @@ internal static void sk_colorspace_xyz_named_rec2020 (SKColorSpaceXyz* xyz) => (sk_colorspace_xyz_named_rec2020_delegate ??= GetSymbol ("sk_colorspace_xyz_named_rec2020")).Invoke (xyz); #endif - // void sk_colorspace_xyz_named_srgb(sk_colorspace_xyz_t* xyz) + // void sk_colorspace_xyz_named_srgb(sk_colorspace_xyz_t * xyz) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4896,7 +4896,7 @@ internal static void sk_colorspace_xyz_named_srgb (SKColorSpaceXyz* xyz) => (sk_colorspace_xyz_named_srgb_delegate ??= GetSymbol ("sk_colorspace_xyz_named_srgb")).Invoke (xyz); #endif - // void sk_colorspace_xyz_named_xyz(sk_colorspace_xyz_t* xyz) + // void sk_colorspace_xyz_named_xyz(sk_colorspace_xyz_t * xyz) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4919,7 +4919,7 @@ internal static void sk_colorspace_xyz_named_xyz (SKColorSpaceXyz* xyz) => #region sk_data.h - // const uint8_t* sk_data_get_bytes(const sk_data_t*) + // unsigned char const * sk_data_get_bytes(sk_data_t const *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4938,7 +4938,7 @@ private partial class Delegates { (sk_data_get_bytes_delegate ??= GetSymbol ("sk_data_get_bytes")).Invoke (param0); #endif - // const void* sk_data_get_data(const sk_data_t*) + // void const * sk_data_get_data(sk_data_t const *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4957,7 +4957,7 @@ private partial class Delegates { (sk_data_get_data_delegate ??= GetSymbol ("sk_data_get_data")).Invoke (param0); #endif - // size_t sk_data_get_size(const sk_data_t*) + // size_t sk_data_get_size(sk_data_t const *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4976,7 +4976,7 @@ private partial class Delegates { (sk_data_get_size_delegate ??= GetSymbol ("sk_data_get_size")).Invoke (param0); #endif - // sk_data_t* sk_data_new_empty() + // sk_data_t * sk_data_new_empty() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -4995,7 +4995,7 @@ internal static sk_data_t sk_data_new_empty () => (sk_data_new_empty_delegate ??= GetSymbol ("sk_data_new_empty")).Invoke (); #endif - // sk_data_t* sk_data_new_from_file(const char* path) + // sk_data_t * sk_data_new_from_file(char const * path) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5014,7 +5014,7 @@ internal static sk_data_t sk_data_new_from_file (/* char */ void* path) => (sk_data_new_from_file_delegate ??= GetSymbol ("sk_data_new_from_file")).Invoke (path); #endif - // sk_data_t* sk_data_new_from_stream(sk_stream_t* stream, size_t length) + // sk_data_t * sk_data_new_from_stream(sk_stream_t * stream, size_t length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5033,7 +5033,7 @@ internal static sk_data_t sk_data_new_from_stream (sk_stream_t stream, /* size_t (sk_data_new_from_stream_delegate ??= GetSymbol ("sk_data_new_from_stream")).Invoke (stream, length); #endif - // sk_data_t* sk_data_new_subset(const sk_data_t* src, size_t offset, size_t length) + // sk_data_t * sk_data_new_subset(sk_data_t const * src, size_t offset, size_t length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5052,7 +5052,7 @@ internal static sk_data_t sk_data_new_subset (sk_data_t src, /* size_t */ IntPtr (sk_data_new_subset_delegate ??= GetSymbol ("sk_data_new_subset")).Invoke (src, offset, length); #endif - // sk_data_t* sk_data_new_uninitialized(size_t size) + // sk_data_t * sk_data_new_uninitialized(size_t size) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5071,7 +5071,7 @@ internal static sk_data_t sk_data_new_uninitialized (/* size_t */ IntPtr size) = (sk_data_new_uninitialized_delegate ??= GetSymbol ("sk_data_new_uninitialized")).Invoke (size); #endif - // sk_data_t* sk_data_new_with_copy(const void* src, size_t length) + // sk_data_t * sk_data_new_with_copy(void const * src, size_t length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5090,7 +5090,7 @@ internal static sk_data_t sk_data_new_with_copy (void* src, /* size_t */ IntPtr (sk_data_new_with_copy_delegate ??= GetSymbol ("sk_data_new_with_copy")).Invoke (src, length); #endif - // sk_data_t* sk_data_new_with_proc(const void* ptr, size_t length, sk_data_release_proc proc, void* ctx) + // sk_data_t * sk_data_new_with_proc(void const * ptr, size_t length, sk_data_release_proc proc, void * ctx) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5109,7 +5109,7 @@ internal static sk_data_t sk_data_new_with_proc (void* ptr, /* size_t */ IntPtr (sk_data_new_with_proc_delegate ??= GetSymbol ("sk_data_new_with_proc")).Invoke (ptr, length, proc, ctx); #endif - // void sk_data_ref(const sk_data_t*) + // void sk_data_ref(sk_data_t const *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5128,7 +5128,7 @@ internal static void sk_data_ref (sk_data_t param0) => (sk_data_ref_delegate ??= GetSymbol ("sk_data_ref")).Invoke (param0); #endif - // void sk_data_unref(const sk_data_t*) + // void sk_data_unref(sk_data_t const *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5151,7 +5151,7 @@ internal static void sk_data_unref (sk_data_t param0) => #region sk_document.h - // void sk_document_abort(sk_document_t* document) + // void sk_document_abort(sk_document_t * document) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5170,7 +5170,7 @@ internal static void sk_document_abort (sk_document_t document) => (sk_document_abort_delegate ??= GetSymbol ("sk_document_abort")).Invoke (document); #endif - // sk_canvas_t* sk_document_begin_page(sk_document_t* document, float width, float height, const sk_rect_t* content) + // sk_canvas_t * sk_document_begin_page(sk_document_t * document, float width, float height, sk_rect_t const * content) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5189,7 +5189,7 @@ internal static sk_canvas_t sk_document_begin_page (sk_document_t document, Sing (sk_document_begin_page_delegate ??= GetSymbol ("sk_document_begin_page")).Invoke (document, width, height, content); #endif - // void sk_document_close(sk_document_t* document) + // void sk_document_close(sk_document_t * document) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5208,7 +5208,7 @@ internal static void sk_document_close (sk_document_t document) => (sk_document_close_delegate ??= GetSymbol ("sk_document_close")).Invoke (document); #endif - // sk_document_t* sk_document_create_pdf_from_stream(sk_wstream_t* stream) + // sk_document_t * sk_document_create_pdf_from_stream(sk_wstream_t * stream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5227,7 +5227,7 @@ internal static sk_document_t sk_document_create_pdf_from_stream (sk_wstream_t s (sk_document_create_pdf_from_stream_delegate ??= GetSymbol ("sk_document_create_pdf_from_stream")).Invoke (stream); #endif - // sk_document_t* sk_document_create_pdf_from_stream_with_metadata(sk_wstream_t* stream, const sk_document_pdf_metadata_t* metadata) + // sk_document_t * sk_document_create_pdf_from_stream_with_metadata(sk_wstream_t * stream, sk_document_pdf_metadata_t const * metadata) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5246,7 +5246,7 @@ internal static sk_document_t sk_document_create_pdf_from_stream_with_metadata ( (sk_document_create_pdf_from_stream_with_metadata_delegate ??= GetSymbol ("sk_document_create_pdf_from_stream_with_metadata")).Invoke (stream, metadata); #endif - // sk_document_t* sk_document_create_xps_from_stream(sk_wstream_t* stream, float dpi) + // sk_document_t * sk_document_create_xps_from_stream(sk_wstream_t * stream, float dpi) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5265,7 +5265,7 @@ internal static sk_document_t sk_document_create_xps_from_stream (sk_wstream_t s (sk_document_create_xps_from_stream_delegate ??= GetSymbol ("sk_document_create_xps_from_stream")).Invoke (stream, dpi); #endif - // void sk_document_end_page(sk_document_t* document) + // void sk_document_end_page(sk_document_t * document) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5284,7 +5284,7 @@ internal static void sk_document_end_page (sk_document_t document) => (sk_document_end_page_delegate ??= GetSymbol ("sk_document_end_page")).Invoke (document); #endif - // void sk_document_unref(sk_document_t* document) + // void sk_document_unref(sk_document_t * document) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5307,7 +5307,7 @@ internal static void sk_document_unref (sk_document_t document) => #region sk_drawable.h - // size_t sk_drawable_approximate_bytes_used(sk_drawable_t*) + // size_t sk_drawable_approximate_bytes_used(sk_drawable_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5326,7 +5326,7 @@ private partial class Delegates { (sk_drawable_approximate_bytes_used_delegate ??= GetSymbol ("sk_drawable_approximate_bytes_used")).Invoke (param0); #endif - // void sk_drawable_draw(sk_drawable_t*, sk_canvas_t*, const sk_matrix_t*) + // void sk_drawable_draw(sk_drawable_t *, sk_canvas_t *, sk_matrix_t const *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5345,7 +5345,7 @@ internal static void sk_drawable_draw (sk_drawable_t param0, sk_canvas_t param1, (sk_drawable_draw_delegate ??= GetSymbol ("sk_drawable_draw")).Invoke (param0, param1, param2); #endif - // void sk_drawable_get_bounds(sk_drawable_t*, sk_rect_t*) + // void sk_drawable_get_bounds(sk_drawable_t *, sk_rect_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5364,7 +5364,7 @@ internal static void sk_drawable_get_bounds (sk_drawable_t param0, SKRect* param (sk_drawable_get_bounds_delegate ??= GetSymbol ("sk_drawable_get_bounds")).Invoke (param0, param1); #endif - // uint32_t sk_drawable_get_generation_id(sk_drawable_t*) + // unsigned int sk_drawable_get_generation_id(sk_drawable_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5383,7 +5383,7 @@ internal static UInt32 sk_drawable_get_generation_id (sk_drawable_t param0) => (sk_drawable_get_generation_id_delegate ??= GetSymbol ("sk_drawable_get_generation_id")).Invoke (param0); #endif - // sk_picture_t* sk_drawable_new_picture_snapshot(sk_drawable_t*) + // sk_picture_t * sk_drawable_new_picture_snapshot(sk_drawable_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5402,7 +5402,7 @@ internal static sk_picture_t sk_drawable_new_picture_snapshot (sk_drawable_t par (sk_drawable_new_picture_snapshot_delegate ??= GetSymbol ("sk_drawable_new_picture_snapshot")).Invoke (param0); #endif - // void sk_drawable_notify_drawing_changed(sk_drawable_t*) + // void sk_drawable_notify_drawing_changed(sk_drawable_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5421,7 +5421,7 @@ internal static void sk_drawable_notify_drawing_changed (sk_drawable_t param0) = (sk_drawable_notify_drawing_changed_delegate ??= GetSymbol ("sk_drawable_notify_drawing_changed")).Invoke (param0); #endif - // void sk_drawable_unref(sk_drawable_t*) + // void sk_drawable_unref(sk_drawable_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5444,7 +5444,7 @@ internal static void sk_drawable_unref (sk_drawable_t param0) => #region sk_font.h - // size_t sk_font_break_text(const sk_font_t* font, const void* text, size_t byteLength, sk_text_encoding_t encoding, float maxWidth, float* measuredWidth, const sk_paint_t* paint) + // size_t sk_font_break_text(sk_font_t const * font, void const * text, size_t byteLength, sk_text_encoding_t encoding, float maxWidth, float * measuredWidth, sk_paint_t const * paint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5463,7 +5463,7 @@ private partial class Delegates { (sk_font_break_text_delegate ??= GetSymbol ("sk_font_break_text")).Invoke (font, text, byteLength, encoding, maxWidth, measuredWidth, paint); #endif - // void sk_font_delete(sk_font_t* font) + // void sk_font_delete(sk_font_t * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5482,7 +5482,7 @@ internal static void sk_font_delete (sk_font_t font) => (sk_font_delete_delegate ??= GetSymbol ("sk_font_delete")).Invoke (font); #endif - // sk_font_edging_t sk_font_get_edging(const sk_font_t* font) + // sk_font_edging_t sk_font_get_edging(sk_font_t const * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5501,7 +5501,7 @@ internal static SKFontEdging sk_font_get_edging (sk_font_t font) => (sk_font_get_edging_delegate ??= GetSymbol ("sk_font_get_edging")).Invoke (font); #endif - // sk_font_hinting_t sk_font_get_hinting(const sk_font_t* font) + // sk_font_hinting_t sk_font_get_hinting(sk_font_t const * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5520,7 +5520,7 @@ internal static SKFontHinting sk_font_get_hinting (sk_font_t font) => (sk_font_get_hinting_delegate ??= GetSymbol ("sk_font_get_hinting")).Invoke (font); #endif - // float sk_font_get_metrics(const sk_font_t* font, sk_fontmetrics_t* metrics) + // float sk_font_get_metrics(sk_font_t const * font, sk_fontmetrics_t * metrics) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5539,7 +5539,7 @@ internal static Single sk_font_get_metrics (sk_font_t font, SKFontMetrics* metri (sk_font_get_metrics_delegate ??= GetSymbol ("sk_font_get_metrics")).Invoke (font, metrics); #endif - // bool sk_font_get_path(const sk_font_t* font, uint16_t glyph, sk_path_t* path) + // bool sk_font_get_path(sk_font_t const * font, unsigned short glyph, sk_path_t * path) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5561,7 +5561,7 @@ internal static bool sk_font_get_path (sk_font_t font, UInt16 glyph, sk_path_t p (sk_font_get_path_delegate ??= GetSymbol ("sk_font_get_path")).Invoke (font, glyph, path); #endif - // void sk_font_get_paths(const sk_font_t* font, uint16_t[-1] glyphs, int count, const sk_glyph_path_proc glyphPathProc, void* context) + // void sk_font_get_paths(sk_font_t const * font, unsigned short[-1] glyphs, int count, sk_glyph_path_proc const glyphPathProc, void * context) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5580,7 +5580,7 @@ internal static void sk_font_get_paths (sk_font_t font, UInt16* glyphs, Int32 co (sk_font_get_paths_delegate ??= GetSymbol ("sk_font_get_paths")).Invoke (font, glyphs, count, glyphPathProc, context); #endif - // void sk_font_get_pos(const sk_font_t* font, const uint16_t[-1] glyphs, int count, sk_point_t[-1] pos, sk_point_t* origin) + // void sk_font_get_pos(sk_font_t const * font, unsigned short const[-1] glyphs, int count, sk_point_t[-1] pos, sk_point_t * origin) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5599,7 +5599,7 @@ internal static void sk_font_get_pos (sk_font_t font, UInt16* glyphs, Int32 coun (sk_font_get_pos_delegate ??= GetSymbol ("sk_font_get_pos")).Invoke (font, glyphs, count, pos, origin); #endif - // float sk_font_get_scale_x(const sk_font_t* font) + // float sk_font_get_scale_x(sk_font_t const * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5618,7 +5618,7 @@ internal static Single sk_font_get_scale_x (sk_font_t font) => (sk_font_get_scale_x_delegate ??= GetSymbol ("sk_font_get_scale_x")).Invoke (font); #endif - // float sk_font_get_size(const sk_font_t* font) + // float sk_font_get_size(sk_font_t const * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5637,7 +5637,7 @@ internal static Single sk_font_get_size (sk_font_t font) => (sk_font_get_size_delegate ??= GetSymbol ("sk_font_get_size")).Invoke (font); #endif - // float sk_font_get_skew_x(const sk_font_t* font) + // float sk_font_get_skew_x(sk_font_t const * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5656,7 +5656,7 @@ internal static Single sk_font_get_skew_x (sk_font_t font) => (sk_font_get_skew_x_delegate ??= GetSymbol ("sk_font_get_skew_x")).Invoke (font); #endif - // sk_typeface_t* sk_font_get_typeface(const sk_font_t* font) + // sk_typeface_t * sk_font_get_typeface(sk_font_t const * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5675,7 +5675,7 @@ internal static sk_typeface_t sk_font_get_typeface (sk_font_t font) => (sk_font_get_typeface_delegate ??= GetSymbol ("sk_font_get_typeface")).Invoke (font); #endif - // void sk_font_get_widths_bounds(const sk_font_t* font, const uint16_t[-1] glyphs, int count, float[-1] widths, sk_rect_t[-1] bounds, const sk_paint_t* paint) + // void sk_font_get_widths_bounds(sk_font_t const * font, unsigned short const[-1] glyphs, int count, float[-1] widths, sk_rect_t[-1] bounds, sk_paint_t const * paint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5694,7 +5694,7 @@ internal static void sk_font_get_widths_bounds (sk_font_t font, UInt16* glyphs, (sk_font_get_widths_bounds_delegate ??= GetSymbol ("sk_font_get_widths_bounds")).Invoke (font, glyphs, count, widths, bounds, paint); #endif - // void sk_font_get_xpos(const sk_font_t* font, const uint16_t[-1] glyphs, int count, float[-1] xpos, float origin) + // void sk_font_get_xpos(sk_font_t const * font, unsigned short const[-1] glyphs, int count, float[-1] xpos, float origin) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5713,7 +5713,7 @@ internal static void sk_font_get_xpos (sk_font_t font, UInt16* glyphs, Int32 cou (sk_font_get_xpos_delegate ??= GetSymbol ("sk_font_get_xpos")).Invoke (font, glyphs, count, xpos, origin); #endif - // bool sk_font_is_baseline_snap(const sk_font_t* font) + // bool sk_font_is_baseline_snap(sk_font_t const * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5735,7 +5735,7 @@ internal static bool sk_font_is_baseline_snap (sk_font_t font) => (sk_font_is_baseline_snap_delegate ??= GetSymbol ("sk_font_is_baseline_snap")).Invoke (font); #endif - // bool sk_font_is_embedded_bitmaps(const sk_font_t* font) + // bool sk_font_is_embedded_bitmaps(sk_font_t const * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5757,7 +5757,7 @@ internal static bool sk_font_is_embedded_bitmaps (sk_font_t font) => (sk_font_is_embedded_bitmaps_delegate ??= GetSymbol ("sk_font_is_embedded_bitmaps")).Invoke (font); #endif - // bool sk_font_is_embolden(const sk_font_t* font) + // bool sk_font_is_embolden(sk_font_t const * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5779,7 +5779,7 @@ internal static bool sk_font_is_embolden (sk_font_t font) => (sk_font_is_embolden_delegate ??= GetSymbol ("sk_font_is_embolden")).Invoke (font); #endif - // bool sk_font_is_force_auto_hinting(const sk_font_t* font) + // bool sk_font_is_force_auto_hinting(sk_font_t const * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5801,7 +5801,7 @@ internal static bool sk_font_is_force_auto_hinting (sk_font_t font) => (sk_font_is_force_auto_hinting_delegate ??= GetSymbol ("sk_font_is_force_auto_hinting")).Invoke (font); #endif - // bool sk_font_is_linear_metrics(const sk_font_t* font) + // bool sk_font_is_linear_metrics(sk_font_t const * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5823,7 +5823,7 @@ internal static bool sk_font_is_linear_metrics (sk_font_t font) => (sk_font_is_linear_metrics_delegate ??= GetSymbol ("sk_font_is_linear_metrics")).Invoke (font); #endif - // bool sk_font_is_subpixel(const sk_font_t* font) + // bool sk_font_is_subpixel(sk_font_t const * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5845,7 +5845,7 @@ internal static bool sk_font_is_subpixel (sk_font_t font) => (sk_font_is_subpixel_delegate ??= GetSymbol ("sk_font_is_subpixel")).Invoke (font); #endif - // float sk_font_measure_text(const sk_font_t* font, const void* text, size_t byteLength, sk_text_encoding_t encoding, sk_rect_t* bounds, const sk_paint_t* paint) + // float sk_font_measure_text(sk_font_t const * font, void const * text, size_t byteLength, sk_text_encoding_t encoding, sk_rect_t * bounds, sk_paint_t const * paint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5864,7 +5864,7 @@ internal static Single sk_font_measure_text (sk_font_t font, void* text, /* size (sk_font_measure_text_delegate ??= GetSymbol ("sk_font_measure_text")).Invoke (font, text, byteLength, encoding, bounds, paint); #endif - // void sk_font_measure_text_no_return(const sk_font_t* font, const void* text, size_t byteLength, sk_text_encoding_t encoding, sk_rect_t* bounds, const sk_paint_t* paint, float* measuredWidth) + // void sk_font_measure_text_no_return(sk_font_t const * font, void const * text, size_t byteLength, sk_text_encoding_t encoding, sk_rect_t * bounds, sk_paint_t const * paint, float * measuredWidth) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5883,7 +5883,7 @@ internal static void sk_font_measure_text_no_return (sk_font_t font, void* text, (sk_font_measure_text_no_return_delegate ??= GetSymbol ("sk_font_measure_text_no_return")).Invoke (font, text, byteLength, encoding, bounds, paint, measuredWidth); #endif - // sk_font_t* sk_font_new() + // sk_font_t * sk_font_new() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5902,7 +5902,7 @@ internal static sk_font_t sk_font_new () => (sk_font_new_delegate ??= GetSymbol ("sk_font_new")).Invoke (); #endif - // sk_font_t* sk_font_new_with_values(sk_typeface_t* typeface, float size, float scaleX, float skewX) + // sk_font_t * sk_font_new_with_values(sk_typeface_t * typeface, float size, float scaleX, float skewX) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5921,7 +5921,7 @@ internal static sk_font_t sk_font_new_with_values (sk_typeface_t typeface, Singl (sk_font_new_with_values_delegate ??= GetSymbol ("sk_font_new_with_values")).Invoke (typeface, size, scaleX, skewX); #endif - // void sk_font_set_baseline_snap(sk_font_t* font, bool value) + // void sk_font_set_baseline_snap(sk_font_t * font, bool value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5940,7 +5940,7 @@ internal static void sk_font_set_baseline_snap (sk_font_t font, [MarshalAs (Unma (sk_font_set_baseline_snap_delegate ??= GetSymbol ("sk_font_set_baseline_snap")).Invoke (font, value); #endif - // void sk_font_set_edging(sk_font_t* font, sk_font_edging_t value) + // void sk_font_set_edging(sk_font_t * font, sk_font_edging_t value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5959,7 +5959,7 @@ internal static void sk_font_set_edging (sk_font_t font, SKFontEdging value) => (sk_font_set_edging_delegate ??= GetSymbol ("sk_font_set_edging")).Invoke (font, value); #endif - // void sk_font_set_embedded_bitmaps(sk_font_t* font, bool value) + // void sk_font_set_embedded_bitmaps(sk_font_t * font, bool value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5978,7 +5978,7 @@ internal static void sk_font_set_embedded_bitmaps (sk_font_t font, [MarshalAs (U (sk_font_set_embedded_bitmaps_delegate ??= GetSymbol ("sk_font_set_embedded_bitmaps")).Invoke (font, value); #endif - // void sk_font_set_embolden(sk_font_t* font, bool value) + // void sk_font_set_embolden(sk_font_t * font, bool value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -5997,7 +5997,7 @@ internal static void sk_font_set_embolden (sk_font_t font, [MarshalAs (Unmanaged (sk_font_set_embolden_delegate ??= GetSymbol ("sk_font_set_embolden")).Invoke (font, value); #endif - // void sk_font_set_force_auto_hinting(sk_font_t* font, bool value) + // void sk_font_set_force_auto_hinting(sk_font_t * font, bool value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6016,7 +6016,7 @@ internal static void sk_font_set_force_auto_hinting (sk_font_t font, [MarshalAs (sk_font_set_force_auto_hinting_delegate ??= GetSymbol ("sk_font_set_force_auto_hinting")).Invoke (font, value); #endif - // void sk_font_set_hinting(sk_font_t* font, sk_font_hinting_t value) + // void sk_font_set_hinting(sk_font_t * font, sk_font_hinting_t value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6035,7 +6035,7 @@ internal static void sk_font_set_hinting (sk_font_t font, SKFontHinting value) = (sk_font_set_hinting_delegate ??= GetSymbol ("sk_font_set_hinting")).Invoke (font, value); #endif - // void sk_font_set_linear_metrics(sk_font_t* font, bool value) + // void sk_font_set_linear_metrics(sk_font_t * font, bool value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6054,7 +6054,7 @@ internal static void sk_font_set_linear_metrics (sk_font_t font, [MarshalAs (Unm (sk_font_set_linear_metrics_delegate ??= GetSymbol ("sk_font_set_linear_metrics")).Invoke (font, value); #endif - // void sk_font_set_scale_x(sk_font_t* font, float value) + // void sk_font_set_scale_x(sk_font_t * font, float value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6073,7 +6073,7 @@ internal static void sk_font_set_scale_x (sk_font_t font, Single value) => (sk_font_set_scale_x_delegate ??= GetSymbol ("sk_font_set_scale_x")).Invoke (font, value); #endif - // void sk_font_set_size(sk_font_t* font, float value) + // void sk_font_set_size(sk_font_t * font, float value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6092,7 +6092,7 @@ internal static void sk_font_set_size (sk_font_t font, Single value) => (sk_font_set_size_delegate ??= GetSymbol ("sk_font_set_size")).Invoke (font, value); #endif - // void sk_font_set_skew_x(sk_font_t* font, float value) + // void sk_font_set_skew_x(sk_font_t * font, float value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6111,7 +6111,7 @@ internal static void sk_font_set_skew_x (sk_font_t font, Single value) => (sk_font_set_skew_x_delegate ??= GetSymbol ("sk_font_set_skew_x")).Invoke (font, value); #endif - // void sk_font_set_subpixel(sk_font_t* font, bool value) + // void sk_font_set_subpixel(sk_font_t * font, bool value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6130,7 +6130,7 @@ internal static void sk_font_set_subpixel (sk_font_t font, [MarshalAs (Unmanaged (sk_font_set_subpixel_delegate ??= GetSymbol ("sk_font_set_subpixel")).Invoke (font, value); #endif - // void sk_font_set_typeface(sk_font_t* font, sk_typeface_t* value) + // void sk_font_set_typeface(sk_font_t * font, sk_typeface_t * value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6149,7 +6149,7 @@ internal static void sk_font_set_typeface (sk_font_t font, sk_typeface_t value) (sk_font_set_typeface_delegate ??= GetSymbol ("sk_font_set_typeface")).Invoke (font, value); #endif - // int sk_font_text_to_glyphs(const sk_font_t* font, const void* text, size_t byteLength, sk_text_encoding_t encoding, uint16_t[-1] glyphs, int maxGlyphCount) + // int sk_font_text_to_glyphs(sk_font_t const * font, void const * text, size_t byteLength, sk_text_encoding_t encoding, unsigned short[-1] glyphs, int maxGlyphCount) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6168,7 +6168,7 @@ internal static Int32 sk_font_text_to_glyphs (sk_font_t font, void* text, /* siz (sk_font_text_to_glyphs_delegate ??= GetSymbol ("sk_font_text_to_glyphs")).Invoke (font, text, byteLength, encoding, glyphs, maxGlyphCount); #endif - // uint16_t sk_font_unichar_to_glyph(const sk_font_t* font, int32_t uni) + // unsigned short sk_font_unichar_to_glyph(sk_font_t const * font, int uni) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6187,7 +6187,7 @@ internal static UInt16 sk_font_unichar_to_glyph (sk_font_t font, Int32 uni) => (sk_font_unichar_to_glyph_delegate ??= GetSymbol ("sk_font_unichar_to_glyph")).Invoke (font, uni); #endif - // void sk_font_unichars_to_glyphs(const sk_font_t* font, const int32_t[-1] uni, int count, uint16_t[-1] glyphs) + // void sk_font_unichars_to_glyphs(sk_font_t const * font, int const[-1] uni, int count, unsigned short[-1] glyphs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6206,7 +6206,7 @@ internal static void sk_font_unichars_to_glyphs (sk_font_t font, Int32* uni, Int (sk_font_unichars_to_glyphs_delegate ??= GetSymbol ("sk_font_unichars_to_glyphs")).Invoke (font, uni, count, glyphs); #endif - // void sk_text_utils_get_path(const void* text, size_t length, sk_text_encoding_t encoding, float x, float y, const sk_font_t* font, sk_path_t* path) + // void sk_text_utils_get_path(void const * text, size_t length, sk_text_encoding_t encoding, float x, float y, sk_font_t const * font, sk_path_t * path) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6225,7 +6225,7 @@ internal static void sk_text_utils_get_path (void* text, /* size_t */ IntPtr len (sk_text_utils_get_path_delegate ??= GetSymbol ("sk_text_utils_get_path")).Invoke (text, length, encoding, x, y, font, path); #endif - // void sk_text_utils_get_pos_path(const void* text, size_t length, sk_text_encoding_t encoding, const sk_point_t[-1] pos, const sk_font_t* font, sk_path_t* path) + // void sk_text_utils_get_pos_path(void const * text, size_t length, sk_text_encoding_t encoding, sk_point_t const[-1] pos, sk_font_t const * font, sk_path_t * path) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6267,7 +6267,7 @@ internal static SKColorTypeNative sk_colortype_get_default_8888 () => (sk_colortype_get_default_8888_delegate ??= GetSymbol ("sk_colortype_get_default_8888")).Invoke (); #endif - // int sk_nvrefcnt_get_ref_count(const sk_nvrefcnt_t* refcnt) + // int sk_nvrefcnt_get_ref_count(sk_nvrefcnt_t const * refcnt) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6286,7 +6286,7 @@ internal static Int32 sk_nvrefcnt_get_ref_count (sk_nvrefcnt_t refcnt) => (sk_nvrefcnt_get_ref_count_delegate ??= GetSymbol ("sk_nvrefcnt_get_ref_count")).Invoke (refcnt); #endif - // void sk_nvrefcnt_safe_ref(sk_nvrefcnt_t* refcnt) + // void sk_nvrefcnt_safe_ref(sk_nvrefcnt_t * refcnt) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6305,7 +6305,7 @@ internal static void sk_nvrefcnt_safe_ref (sk_nvrefcnt_t refcnt) => (sk_nvrefcnt_safe_ref_delegate ??= GetSymbol ("sk_nvrefcnt_safe_ref")).Invoke (refcnt); #endif - // void sk_nvrefcnt_safe_unref(sk_nvrefcnt_t* refcnt) + // void sk_nvrefcnt_safe_unref(sk_nvrefcnt_t * refcnt) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6324,7 +6324,7 @@ internal static void sk_nvrefcnt_safe_unref (sk_nvrefcnt_t refcnt) => (sk_nvrefcnt_safe_unref_delegate ??= GetSymbol ("sk_nvrefcnt_safe_unref")).Invoke (refcnt); #endif - // bool sk_nvrefcnt_unique(const sk_nvrefcnt_t* refcnt) + // bool sk_nvrefcnt_unique(sk_nvrefcnt_t const * refcnt) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6346,7 +6346,7 @@ internal static bool sk_nvrefcnt_unique (sk_nvrefcnt_t refcnt) => (sk_nvrefcnt_unique_delegate ??= GetSymbol ("sk_nvrefcnt_unique")).Invoke (refcnt); #endif - // int sk_refcnt_get_ref_count(const sk_refcnt_t* refcnt) + // int sk_refcnt_get_ref_count(sk_refcnt_t const * refcnt) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6365,7 +6365,7 @@ internal static Int32 sk_refcnt_get_ref_count (sk_refcnt_t refcnt) => (sk_refcnt_get_ref_count_delegate ??= GetSymbol ("sk_refcnt_get_ref_count")).Invoke (refcnt); #endif - // void sk_refcnt_safe_ref(sk_refcnt_t* refcnt) + // void sk_refcnt_safe_ref(sk_refcnt_t * refcnt) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6384,7 +6384,7 @@ internal static void sk_refcnt_safe_ref (sk_refcnt_t refcnt) => (sk_refcnt_safe_ref_delegate ??= GetSymbol ("sk_refcnt_safe_ref")).Invoke (refcnt); #endif - // void sk_refcnt_safe_unref(sk_refcnt_t* refcnt) + // void sk_refcnt_safe_unref(sk_refcnt_t * refcnt) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6403,7 +6403,7 @@ internal static void sk_refcnt_safe_unref (sk_refcnt_t refcnt) => (sk_refcnt_safe_unref_delegate ??= GetSymbol ("sk_refcnt_safe_unref")).Invoke (refcnt); #endif - // bool sk_refcnt_unique(const sk_refcnt_t* refcnt) + // bool sk_refcnt_unique(sk_refcnt_t const * refcnt) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6463,7 +6463,7 @@ internal static Int32 sk_version_get_milestone () => (sk_version_get_milestone_delegate ??= GetSymbol ("sk_version_get_milestone")).Invoke (); #endif - // const char* sk_version_get_string() + // char const * sk_version_get_string() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6486,7 +6486,7 @@ private partial class Delegates { #region sk_graphics.h - // void sk_graphics_dump_memory_statistics(sk_tracememorydump_t* dump) + // void sk_graphics_dump_memory_statistics(sk_tracememorydump_t * dump) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6794,7 +6794,7 @@ private partial class Delegates { #region sk_image.h - // sk_alphatype_t sk_image_get_alpha_type(const sk_image_t* image) + // sk_alphatype_t sk_image_get_alpha_type(sk_image_t const * image) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6813,7 +6813,7 @@ internal static SKAlphaType sk_image_get_alpha_type (sk_image_t image) => (sk_image_get_alpha_type_delegate ??= GetSymbol ("sk_image_get_alpha_type")).Invoke (image); #endif - // sk_colortype_t sk_image_get_color_type(const sk_image_t* image) + // sk_colortype_t sk_image_get_color_type(sk_image_t const * image) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6832,7 +6832,7 @@ internal static SKColorTypeNative sk_image_get_color_type (sk_image_t image) => (sk_image_get_color_type_delegate ??= GetSymbol ("sk_image_get_color_type")).Invoke (image); #endif - // sk_colorspace_t* sk_image_get_colorspace(const sk_image_t* image) + // sk_colorspace_t * sk_image_get_colorspace(sk_image_t const * image) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6851,7 +6851,7 @@ internal static sk_colorspace_t sk_image_get_colorspace (sk_image_t image) => (sk_image_get_colorspace_delegate ??= GetSymbol ("sk_image_get_colorspace")).Invoke (image); #endif - // int sk_image_get_height(const sk_image_t* cimage) + // int sk_image_get_height(sk_image_t const * cimage) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6870,7 +6870,7 @@ internal static Int32 sk_image_get_height (sk_image_t cimage) => (sk_image_get_height_delegate ??= GetSymbol ("sk_image_get_height")).Invoke (cimage); #endif - // uint32_t sk_image_get_unique_id(const sk_image_t* cimage) + // unsigned int sk_image_get_unique_id(sk_image_t const * cimage) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6889,7 +6889,7 @@ internal static UInt32 sk_image_get_unique_id (sk_image_t cimage) => (sk_image_get_unique_id_delegate ??= GetSymbol ("sk_image_get_unique_id")).Invoke (cimage); #endif - // int sk_image_get_width(const sk_image_t* cimage) + // int sk_image_get_width(sk_image_t const * cimage) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6908,7 +6908,7 @@ internal static Int32 sk_image_get_width (sk_image_t cimage) => (sk_image_get_width_delegate ??= GetSymbol ("sk_image_get_width")).Invoke (cimage); #endif - // bool sk_image_is_alpha_only(const sk_image_t* image) + // bool sk_image_is_alpha_only(sk_image_t const * image) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6930,7 +6930,7 @@ internal static bool sk_image_is_alpha_only (sk_image_t image) => (sk_image_is_alpha_only_delegate ??= GetSymbol ("sk_image_is_alpha_only")).Invoke (image); #endif - // bool sk_image_is_lazy_generated(const sk_image_t* image) + // bool sk_image_is_lazy_generated(sk_image_t const * image) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6952,7 +6952,7 @@ internal static bool sk_image_is_lazy_generated (sk_image_t image) => (sk_image_is_lazy_generated_delegate ??= GetSymbol ("sk_image_is_lazy_generated")).Invoke (image); #endif - // bool sk_image_is_texture_backed(const sk_image_t* image) + // bool sk_image_is_texture_backed(sk_image_t const * image) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6974,7 +6974,7 @@ internal static bool sk_image_is_texture_backed (sk_image_t image) => (sk_image_is_texture_backed_delegate ??= GetSymbol ("sk_image_is_texture_backed")).Invoke (image); #endif - // bool sk_image_is_valid(const sk_image_t* image, gr_recording_context_t* context) + // bool sk_image_is_valid(sk_image_t const * image, gr_recording_context_t * context) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -6996,7 +6996,7 @@ internal static bool sk_image_is_valid (sk_image_t image, gr_recording_context_t (sk_image_is_valid_delegate ??= GetSymbol ("sk_image_is_valid")).Invoke (image, context); #endif - // sk_image_t* sk_image_make_non_texture_image(const sk_image_t* cimage) + // sk_image_t * sk_image_make_non_texture_image(sk_image_t const * cimage) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7015,7 +7015,7 @@ internal static sk_image_t sk_image_make_non_texture_image (sk_image_t cimage) = (sk_image_make_non_texture_image_delegate ??= GetSymbol ("sk_image_make_non_texture_image")).Invoke (cimage); #endif - // sk_image_t* sk_image_make_raster_image(const sk_image_t* cimage) + // sk_image_t * sk_image_make_raster_image(sk_image_t const * cimage) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7034,7 +7034,7 @@ internal static sk_image_t sk_image_make_raster_image (sk_image_t cimage) => (sk_image_make_raster_image_delegate ??= GetSymbol ("sk_image_make_raster_image")).Invoke (cimage); #endif - // sk_shader_t* sk_image_make_raw_shader(const sk_image_t* image, sk_shader_tilemode_t tileX, sk_shader_tilemode_t tileY, const sk_sampling_options_t* sampling, const sk_matrix_t* cmatrix) + // sk_shader_t * sk_image_make_raw_shader(sk_image_t const * image, sk_shader_tilemode_t tileX, sk_shader_tilemode_t tileY, sk_sampling_options_t const * sampling, sk_matrix_t const * cmatrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7053,7 +7053,7 @@ internal static sk_shader_t sk_image_make_raw_shader (sk_image_t image, SKShader (sk_image_make_raw_shader_delegate ??= GetSymbol ("sk_image_make_raw_shader")).Invoke (image, tileX, tileY, sampling, cmatrix); #endif - // sk_shader_t* sk_image_make_shader(const sk_image_t* image, sk_shader_tilemode_t tileX, sk_shader_tilemode_t tileY, const sk_sampling_options_t* sampling, const sk_matrix_t* cmatrix) + // sk_shader_t * sk_image_make_shader(sk_image_t const * image, sk_shader_tilemode_t tileX, sk_shader_tilemode_t tileY, sk_sampling_options_t const * sampling, sk_matrix_t const * cmatrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7072,7 +7072,7 @@ internal static sk_shader_t sk_image_make_shader (sk_image_t image, SKShaderTile (sk_image_make_shader_delegate ??= GetSymbol ("sk_image_make_shader")).Invoke (image, tileX, tileY, sampling, cmatrix); #endif - // sk_image_t* sk_image_make_subset(const sk_image_t* cimage, gr_direct_context_t* context, const sk_irect_t* subset) + // sk_image_t * sk_image_make_subset(sk_image_t const * cimage, gr_direct_context_t * context, sk_irect_t const * subset) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7091,7 +7091,7 @@ internal static sk_image_t sk_image_make_subset (sk_image_t cimage, gr_direct_co (sk_image_make_subset_delegate ??= GetSymbol ("sk_image_make_subset")).Invoke (cimage, context, subset); #endif - // sk_image_t* sk_image_make_subset_raster(const sk_image_t* cimage, const sk_irect_t* subset) + // sk_image_t * sk_image_make_subset_raster(sk_image_t const * cimage, sk_irect_t const * subset) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7110,7 +7110,7 @@ internal static sk_image_t sk_image_make_subset_raster (sk_image_t cimage, SKRec (sk_image_make_subset_raster_delegate ??= GetSymbol ("sk_image_make_subset_raster")).Invoke (cimage, subset); #endif - // sk_image_t* sk_image_make_texture_image(const sk_image_t* cimage, gr_direct_context_t* context, bool mipmapped, bool budgeted) + // sk_image_t * sk_image_make_texture_image(sk_image_t const * cimage, gr_direct_context_t * context, bool mipmapped, bool budgeted) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7129,7 +7129,7 @@ internal static sk_image_t sk_image_make_texture_image (sk_image_t cimage, gr_di (sk_image_make_texture_image_delegate ??= GetSymbol ("sk_image_make_texture_image")).Invoke (cimage, context, mipmapped, budgeted); #endif - // sk_image_t* sk_image_make_with_filter(const sk_image_t* cimage, gr_recording_context_t* context, const sk_imagefilter_t* filter, const sk_irect_t* subset, const sk_irect_t* clipBounds, sk_irect_t* outSubset, sk_ipoint_t* outOffset) + // sk_image_t * sk_image_make_with_filter(sk_image_t const * cimage, gr_recording_context_t * context, sk_imagefilter_t const * filter, sk_irect_t const * subset, sk_irect_t const * clipBounds, sk_irect_t * outSubset, sk_ipoint_t * outOffset) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7148,7 +7148,7 @@ internal static sk_image_t sk_image_make_with_filter (sk_image_t cimage, gr_reco (sk_image_make_with_filter_delegate ??= GetSymbol ("sk_image_make_with_filter")).Invoke (cimage, context, filter, subset, clipBounds, outSubset, outOffset); #endif - // sk_image_t* sk_image_make_with_filter_raster(const sk_image_t* cimage, const sk_imagefilter_t* filter, const sk_irect_t* subset, const sk_irect_t* clipBounds, sk_irect_t* outSubset, sk_ipoint_t* outOffset) + // sk_image_t * sk_image_make_with_filter_raster(sk_image_t const * cimage, sk_imagefilter_t const * filter, sk_irect_t const * subset, sk_irect_t const * clipBounds, sk_irect_t * outSubset, sk_ipoint_t * outOffset) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7167,7 +7167,7 @@ internal static sk_image_t sk_image_make_with_filter_raster (sk_image_t cimage, (sk_image_make_with_filter_raster_delegate ??= GetSymbol ("sk_image_make_with_filter_raster")).Invoke (cimage, filter, subset, clipBounds, outSubset, outOffset); #endif - // sk_image_t* sk_image_new_from_adopted_texture(gr_recording_context_t* context, const gr_backendtexture_t* texture, gr_surfaceorigin_t origin, sk_colortype_t colorType, sk_alphatype_t alpha, const sk_colorspace_t* colorSpace) + // sk_image_t * sk_image_new_from_adopted_texture(gr_recording_context_t * context, gr_backendtexture_t const * texture, gr_surfaceorigin_t origin, sk_colortype_t colorType, sk_alphatype_t alpha, sk_colorspace_t const * colorSpace) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7186,7 +7186,7 @@ internal static sk_image_t sk_image_new_from_adopted_texture (gr_recording_conte (sk_image_new_from_adopted_texture_delegate ??= GetSymbol ("sk_image_new_from_adopted_texture")).Invoke (context, texture, origin, colorType, alpha, colorSpace); #endif - // sk_image_t* sk_image_new_from_bitmap(const sk_bitmap_t* cbitmap) + // sk_image_t * sk_image_new_from_bitmap(sk_bitmap_t const * cbitmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7205,7 +7205,7 @@ internal static sk_image_t sk_image_new_from_bitmap (sk_bitmap_t cbitmap) => (sk_image_new_from_bitmap_delegate ??= GetSymbol ("sk_image_new_from_bitmap")).Invoke (cbitmap); #endif - // sk_image_t* sk_image_new_from_encoded(const sk_data_t* cdata) + // sk_image_t * sk_image_new_from_encoded(sk_data_t const * cdata) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7224,7 +7224,7 @@ internal static sk_image_t sk_image_new_from_encoded (sk_data_t cdata) => (sk_image_new_from_encoded_delegate ??= GetSymbol ("sk_image_new_from_encoded")).Invoke (cdata); #endif - // sk_image_t* sk_image_new_from_picture(sk_picture_t* picture, const sk_isize_t* dimensions, const sk_matrix_t* cmatrix, const sk_paint_t* paint, bool useFloatingPointBitDepth, const sk_colorspace_t* colorSpace, const sk_surfaceprops_t* props) + // sk_image_t * sk_image_new_from_picture(sk_picture_t * picture, sk_isize_t const * dimensions, sk_matrix_t const * cmatrix, sk_paint_t const * paint, bool useFloatingPointBitDepth, sk_colorspace_t const * colorSpace, sk_surfaceprops_t const * props) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7243,7 +7243,7 @@ internal static sk_image_t sk_image_new_from_picture (sk_picture_t picture, SKSi (sk_image_new_from_picture_delegate ??= GetSymbol ("sk_image_new_from_picture")).Invoke (picture, dimensions, cmatrix, paint, useFloatingPointBitDepth, colorSpace, props); #endif - // sk_image_t* sk_image_new_from_texture(gr_recording_context_t* context, const gr_backendtexture_t* texture, gr_surfaceorigin_t origin, sk_colortype_t colorType, sk_alphatype_t alpha, const sk_colorspace_t* colorSpace, const sk_image_texture_release_proc releaseProc, void* releaseContext) + // sk_image_t * sk_image_new_from_texture(gr_recording_context_t * context, gr_backendtexture_t const * texture, gr_surfaceorigin_t origin, sk_colortype_t colorType, sk_alphatype_t alpha, sk_colorspace_t const * colorSpace, sk_image_texture_release_proc const releaseProc, void * releaseContext) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7262,7 +7262,7 @@ internal static sk_image_t sk_image_new_from_texture (gr_recording_context_t con (sk_image_new_from_texture_delegate ??= GetSymbol ("sk_image_new_from_texture")).Invoke (context, texture, origin, colorType, alpha, colorSpace, releaseProc, releaseContext); #endif - // sk_image_t* sk_image_new_raster(const sk_pixmap_t* pixmap, sk_image_raster_release_proc releaseProc, void* context) + // sk_image_t * sk_image_new_raster(sk_pixmap_t const * pixmap, sk_image_raster_release_proc releaseProc, void * context) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7281,7 +7281,7 @@ internal static sk_image_t sk_image_new_raster (sk_pixmap_t pixmap, SKImageRaste (sk_image_new_raster_delegate ??= GetSymbol ("sk_image_new_raster")).Invoke (pixmap, releaseProc, context); #endif - // sk_image_t* sk_image_new_raster_copy(const sk_imageinfo_t* cinfo, const void* pixels, size_t rowBytes) + // sk_image_t * sk_image_new_raster_copy(sk_imageinfo_t const * cinfo, void const * pixels, size_t rowBytes) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7300,7 +7300,7 @@ internal static sk_image_t sk_image_new_raster_copy (SKImageInfoNative* cinfo, v (sk_image_new_raster_copy_delegate ??= GetSymbol ("sk_image_new_raster_copy")).Invoke (cinfo, pixels, rowBytes); #endif - // sk_image_t* sk_image_new_raster_copy_with_pixmap(const sk_pixmap_t* pixmap) + // sk_image_t * sk_image_new_raster_copy_with_pixmap(sk_pixmap_t const * pixmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7319,7 +7319,7 @@ internal static sk_image_t sk_image_new_raster_copy_with_pixmap (sk_pixmap_t pix (sk_image_new_raster_copy_with_pixmap_delegate ??= GetSymbol ("sk_image_new_raster_copy_with_pixmap")).Invoke (pixmap); #endif - // sk_image_t* sk_image_new_raster_data(const sk_imageinfo_t* cinfo, sk_data_t* pixels, size_t rowBytes) + // sk_image_t * sk_image_new_raster_data(sk_imageinfo_t const * cinfo, sk_data_t * pixels, size_t rowBytes) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7338,7 +7338,7 @@ internal static sk_image_t sk_image_new_raster_data (SKImageInfoNative* cinfo, s (sk_image_new_raster_data_delegate ??= GetSymbol ("sk_image_new_raster_data")).Invoke (cinfo, pixels, rowBytes); #endif - // bool sk_image_peek_pixels(const sk_image_t* image, sk_pixmap_t* pixmap) + // bool sk_image_peek_pixels(sk_image_t const * image, sk_pixmap_t * pixmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7360,7 +7360,7 @@ internal static bool sk_image_peek_pixels (sk_image_t image, sk_pixmap_t pixmap) (sk_image_peek_pixels_delegate ??= GetSymbol ("sk_image_peek_pixels")).Invoke (image, pixmap); #endif - // bool sk_image_read_pixels(const sk_image_t* image, const sk_imageinfo_t* dstInfo, void* dstPixels, size_t dstRowBytes, int srcX, int srcY, sk_image_caching_hint_t cachingHint) + // bool sk_image_read_pixels(sk_image_t const * image, sk_imageinfo_t const * dstInfo, void * dstPixels, size_t dstRowBytes, int srcX, int srcY, sk_image_caching_hint_t cachingHint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7382,7 +7382,7 @@ internal static bool sk_image_read_pixels (sk_image_t image, SKImageInfoNative* (sk_image_read_pixels_delegate ??= GetSymbol ("sk_image_read_pixels")).Invoke (image, dstInfo, dstPixels, dstRowBytes, srcX, srcY, cachingHint); #endif - // bool sk_image_read_pixels_into_pixmap(const sk_image_t* image, const sk_pixmap_t* dst, int srcX, int srcY, sk_image_caching_hint_t cachingHint) + // bool sk_image_read_pixels_into_pixmap(sk_image_t const * image, sk_pixmap_t const * dst, int srcX, int srcY, sk_image_caching_hint_t cachingHint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7404,7 +7404,7 @@ internal static bool sk_image_read_pixels_into_pixmap (sk_image_t image, sk_pixm (sk_image_read_pixels_into_pixmap_delegate ??= GetSymbol ("sk_image_read_pixels_into_pixmap")).Invoke (image, dst, srcX, srcY, cachingHint); #endif - // void sk_image_ref(const sk_image_t* cimage) + // void sk_image_ref(sk_image_t const * cimage) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7423,7 +7423,7 @@ internal static void sk_image_ref (sk_image_t cimage) => (sk_image_ref_delegate ??= GetSymbol ("sk_image_ref")).Invoke (cimage); #endif - // sk_data_t* sk_image_ref_encoded(const sk_image_t* cimage) + // sk_data_t * sk_image_ref_encoded(sk_image_t const * cimage) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7442,7 +7442,7 @@ internal static sk_data_t sk_image_ref_encoded (sk_image_t cimage) => (sk_image_ref_encoded_delegate ??= GetSymbol ("sk_image_ref_encoded")).Invoke (cimage); #endif - // bool sk_image_scale_pixels(const sk_image_t* image, const sk_pixmap_t* dst, const sk_sampling_options_t* sampling, sk_image_caching_hint_t cachingHint) + // bool sk_image_scale_pixels(sk_image_t const * image, sk_pixmap_t const * dst, sk_sampling_options_t const * sampling, sk_image_caching_hint_t cachingHint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7464,7 +7464,7 @@ internal static bool sk_image_scale_pixels (sk_image_t image, sk_pixmap_t dst, S (sk_image_scale_pixels_delegate ??= GetSymbol ("sk_image_scale_pixels")).Invoke (image, dst, sampling, cachingHint); #endif - // void sk_image_unref(const sk_image_t* cimage) + // void sk_image_unref(sk_image_t const * cimage) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7487,7 +7487,7 @@ internal static void sk_image_unref (sk_image_t cimage) => #region sk_imagefilter.h - // sk_imagefilter_t* sk_imagefilter_new_arithmetic(float k1, float k2, float k3, float k4, bool enforcePMColor, const sk_imagefilter_t* background, const sk_imagefilter_t* foreground, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_arithmetic(float k1, float k2, float k3, float k4, bool enforcePMColor, sk_imagefilter_t const * background, sk_imagefilter_t const * foreground, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7506,7 +7506,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_arithmetic (Single k1, Singl (sk_imagefilter_new_arithmetic_delegate ??= GetSymbol ("sk_imagefilter_new_arithmetic")).Invoke (k1, k2, k3, k4, enforcePMColor, background, foreground, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_blend(sk_blendmode_t mode, const sk_imagefilter_t* background, const sk_imagefilter_t* foreground, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_blend(sk_blendmode_t mode, sk_imagefilter_t const * background, sk_imagefilter_t const * foreground, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7525,7 +7525,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_blend (SKBlendMode mode, sk_ (sk_imagefilter_new_blend_delegate ??= GetSymbol ("sk_imagefilter_new_blend")).Invoke (mode, background, foreground, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_blender(sk_blender_t* blender, const sk_imagefilter_t* background, const sk_imagefilter_t* foreground, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_blender(sk_blender_t * blender, sk_imagefilter_t const * background, sk_imagefilter_t const * foreground, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7544,7 +7544,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_blender (sk_blender_t blende (sk_imagefilter_new_blender_delegate ??= GetSymbol ("sk_imagefilter_new_blender")).Invoke (blender, background, foreground, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_blur(float sigmaX, float sigmaY, sk_shader_tilemode_t tileMode, const sk_imagefilter_t* input, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_blur(float sigmaX, float sigmaY, sk_shader_tilemode_t tileMode, sk_imagefilter_t const * input, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7563,7 +7563,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_blur (Single sigmaX, Single (sk_imagefilter_new_blur_delegate ??= GetSymbol ("sk_imagefilter_new_blur")).Invoke (sigmaX, sigmaY, tileMode, input, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_color_filter(sk_colorfilter_t* cf, const sk_imagefilter_t* input, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_color_filter(sk_colorfilter_t * cf, sk_imagefilter_t const * input, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7582,7 +7582,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_color_filter (sk_colorfilter (sk_imagefilter_new_color_filter_delegate ??= GetSymbol ("sk_imagefilter_new_color_filter")).Invoke (cf, input, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_compose(const sk_imagefilter_t* outer, const sk_imagefilter_t* inner) + // sk_imagefilter_t * sk_imagefilter_new_compose(sk_imagefilter_t const * outer, sk_imagefilter_t const * inner) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7601,7 +7601,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_compose (sk_imagefilter_t ou (sk_imagefilter_new_compose_delegate ??= GetSymbol ("sk_imagefilter_new_compose")).Invoke (outer, inner); #endif - // sk_imagefilter_t* sk_imagefilter_new_dilate(float radiusX, float radiusY, const sk_imagefilter_t* input, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_dilate(float radiusX, float radiusY, sk_imagefilter_t const * input, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7620,7 +7620,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_dilate (Single radiusX, Sing (sk_imagefilter_new_dilate_delegate ??= GetSymbol ("sk_imagefilter_new_dilate")).Invoke (radiusX, radiusY, input, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_displacement_map_effect(sk_color_channel_t xChannelSelector, sk_color_channel_t yChannelSelector, float scale, const sk_imagefilter_t* displacement, const sk_imagefilter_t* color, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_displacement_map_effect(sk_color_channel_t xChannelSelector, sk_color_channel_t yChannelSelector, float scale, sk_imagefilter_t const * displacement, sk_imagefilter_t const * color, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7639,7 +7639,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_displacement_map_effect (SKC (sk_imagefilter_new_displacement_map_effect_delegate ??= GetSymbol ("sk_imagefilter_new_displacement_map_effect")).Invoke (xChannelSelector, yChannelSelector, scale, displacement, color, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_distant_lit_diffuse(const sk_point3_t* direction, sk_color_t lightColor, float surfaceScale, float kd, const sk_imagefilter_t* input, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_distant_lit_diffuse(sk_point3_t const * direction, sk_color_t lightColor, float surfaceScale, float kd, sk_imagefilter_t const * input, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7658,7 +7658,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_distant_lit_diffuse (SKPoint (sk_imagefilter_new_distant_lit_diffuse_delegate ??= GetSymbol ("sk_imagefilter_new_distant_lit_diffuse")).Invoke (direction, lightColor, surfaceScale, kd, input, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_distant_lit_specular(const sk_point3_t* direction, sk_color_t lightColor, float surfaceScale, float ks, float shininess, const sk_imagefilter_t* input, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_distant_lit_specular(sk_point3_t const * direction, sk_color_t lightColor, float surfaceScale, float ks, float shininess, sk_imagefilter_t const * input, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7677,7 +7677,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_distant_lit_specular (SKPoin (sk_imagefilter_new_distant_lit_specular_delegate ??= GetSymbol ("sk_imagefilter_new_distant_lit_specular")).Invoke (direction, lightColor, surfaceScale, ks, shininess, input, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_drop_shadow(float dx, float dy, float sigmaX, float sigmaY, sk_color_t color, const sk_imagefilter_t* input, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_drop_shadow(float dx, float dy, float sigmaX, float sigmaY, sk_color_t color, sk_imagefilter_t const * input, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7696,7 +7696,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_drop_shadow (Single dx, Sing (sk_imagefilter_new_drop_shadow_delegate ??= GetSymbol ("sk_imagefilter_new_drop_shadow")).Invoke (dx, dy, sigmaX, sigmaY, color, input, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_drop_shadow_only(float dx, float dy, float sigmaX, float sigmaY, sk_color_t color, const sk_imagefilter_t* input, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_drop_shadow_only(float dx, float dy, float sigmaX, float sigmaY, sk_color_t color, sk_imagefilter_t const * input, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7715,7 +7715,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_drop_shadow_only (Single dx, (sk_imagefilter_new_drop_shadow_only_delegate ??= GetSymbol ("sk_imagefilter_new_drop_shadow_only")).Invoke (dx, dy, sigmaX, sigmaY, color, input, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_erode(float radiusX, float radiusY, const sk_imagefilter_t* input, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_erode(float radiusX, float radiusY, sk_imagefilter_t const * input, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7734,7 +7734,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_erode (Single radiusX, Singl (sk_imagefilter_new_erode_delegate ??= GetSymbol ("sk_imagefilter_new_erode")).Invoke (radiusX, radiusY, input, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_image(sk_image_t* image, const sk_rect_t* srcRect, const sk_rect_t* dstRect, const sk_sampling_options_t* sampling) + // sk_imagefilter_t * sk_imagefilter_new_image(sk_image_t * image, sk_rect_t const * srcRect, sk_rect_t const * dstRect, sk_sampling_options_t const * sampling) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7753,7 +7753,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_image (sk_image_t image, SKR (sk_imagefilter_new_image_delegate ??= GetSymbol ("sk_imagefilter_new_image")).Invoke (image, srcRect, dstRect, sampling); #endif - // sk_imagefilter_t* sk_imagefilter_new_image_simple(sk_image_t* image, const sk_sampling_options_t* sampling) + // sk_imagefilter_t * sk_imagefilter_new_image_simple(sk_image_t * image, sk_sampling_options_t const * sampling) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7772,7 +7772,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_image_simple (sk_image_t ima (sk_imagefilter_new_image_simple_delegate ??= GetSymbol ("sk_imagefilter_new_image_simple")).Invoke (image, sampling); #endif - // sk_imagefilter_t* sk_imagefilter_new_magnifier(const sk_rect_t* lensBounds, float zoomAmount, float inset, const sk_sampling_options_t* sampling, const sk_imagefilter_t* input, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_magnifier(sk_rect_t const * lensBounds, float zoomAmount, float inset, sk_sampling_options_t const * sampling, sk_imagefilter_t const * input, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7791,7 +7791,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_magnifier (SKRect* lensBound (sk_imagefilter_new_magnifier_delegate ??= GetSymbol ("sk_imagefilter_new_magnifier")).Invoke (lensBounds, zoomAmount, inset, sampling, input, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_matrix_convolution(const sk_isize_t* kernelSize, const float[-1] kernel, float gain, float bias, const sk_ipoint_t* kernelOffset, sk_shader_tilemode_t ctileMode, bool convolveAlpha, const sk_imagefilter_t* input, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_matrix_convolution(sk_isize_t const * kernelSize, float const[-1] kernel, float gain, float bias, sk_ipoint_t const * kernelOffset, sk_shader_tilemode_t ctileMode, bool convolveAlpha, sk_imagefilter_t const * input, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7810,7 +7810,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_matrix_convolution (SKSizeI* (sk_imagefilter_new_matrix_convolution_delegate ??= GetSymbol ("sk_imagefilter_new_matrix_convolution")).Invoke (kernelSize, kernel, gain, bias, kernelOffset, ctileMode, convolveAlpha, input, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_matrix_transform(const sk_matrix_t* cmatrix, const sk_sampling_options_t* sampling, const sk_imagefilter_t* input) + // sk_imagefilter_t * sk_imagefilter_new_matrix_transform(sk_matrix_t const * cmatrix, sk_sampling_options_t const * sampling, sk_imagefilter_t const * input) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7829,7 +7829,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_matrix_transform (SKMatrix* (sk_imagefilter_new_matrix_transform_delegate ??= GetSymbol ("sk_imagefilter_new_matrix_transform")).Invoke (cmatrix, sampling, input); #endif - // sk_imagefilter_t* sk_imagefilter_new_merge(const sk_imagefilter_t*[-1] cfilters, int count, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_merge(sk_imagefilter_t const *[-1] cfilters, int count, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7848,7 +7848,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_merge (sk_imagefilter_t* cfi (sk_imagefilter_new_merge_delegate ??= GetSymbol ("sk_imagefilter_new_merge")).Invoke (cfilters, count, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_merge_simple(const sk_imagefilter_t* first, const sk_imagefilter_t* second, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_merge_simple(sk_imagefilter_t const * first, sk_imagefilter_t const * second, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7867,7 +7867,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_merge_simple (sk_imagefilter (sk_imagefilter_new_merge_simple_delegate ??= GetSymbol ("sk_imagefilter_new_merge_simple")).Invoke (first, second, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_offset(float dx, float dy, const sk_imagefilter_t* input, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_offset(float dx, float dy, sk_imagefilter_t const * input, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7886,7 +7886,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_offset (Single dx, Single dy (sk_imagefilter_new_offset_delegate ??= GetSymbol ("sk_imagefilter_new_offset")).Invoke (dx, dy, input, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_picture(const sk_picture_t* picture) + // sk_imagefilter_t * sk_imagefilter_new_picture(sk_picture_t const * picture) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7905,7 +7905,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_picture (sk_picture_t pictur (sk_imagefilter_new_picture_delegate ??= GetSymbol ("sk_imagefilter_new_picture")).Invoke (picture); #endif - // sk_imagefilter_t* sk_imagefilter_new_picture_with_rect(const sk_picture_t* picture, const sk_rect_t* targetRect) + // sk_imagefilter_t * sk_imagefilter_new_picture_with_rect(sk_picture_t const * picture, sk_rect_t const * targetRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7924,7 +7924,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_picture_with_rect (sk_pictur (sk_imagefilter_new_picture_with_rect_delegate ??= GetSymbol ("sk_imagefilter_new_picture_with_rect")).Invoke (picture, targetRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_point_lit_diffuse(const sk_point3_t* location, sk_color_t lightColor, float surfaceScale, float kd, const sk_imagefilter_t* input, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_point_lit_diffuse(sk_point3_t const * location, sk_color_t lightColor, float surfaceScale, float kd, sk_imagefilter_t const * input, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7943,7 +7943,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_point_lit_diffuse (SKPoint3* (sk_imagefilter_new_point_lit_diffuse_delegate ??= GetSymbol ("sk_imagefilter_new_point_lit_diffuse")).Invoke (location, lightColor, surfaceScale, kd, input, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_point_lit_specular(const sk_point3_t* location, sk_color_t lightColor, float surfaceScale, float ks, float shininess, const sk_imagefilter_t* input, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_point_lit_specular(sk_point3_t const * location, sk_color_t lightColor, float surfaceScale, float ks, float shininess, sk_imagefilter_t const * input, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7962,7 +7962,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_point_lit_specular (SKPoint3 (sk_imagefilter_new_point_lit_specular_delegate ??= GetSymbol ("sk_imagefilter_new_point_lit_specular")).Invoke (location, lightColor, surfaceScale, ks, shininess, input, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_shader(const sk_shader_t* shader, bool dither, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_shader(sk_shader_t const * shader, bool dither, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -7981,7 +7981,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_shader (sk_shader_t shader, (sk_imagefilter_new_shader_delegate ??= GetSymbol ("sk_imagefilter_new_shader")).Invoke (shader, dither, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_spot_lit_diffuse(const sk_point3_t* location, const sk_point3_t* target, float specularExponent, float cutoffAngle, sk_color_t lightColor, float surfaceScale, float kd, const sk_imagefilter_t* input, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_spot_lit_diffuse(sk_point3_t const * location, sk_point3_t const * target, float specularExponent, float cutoffAngle, sk_color_t lightColor, float surfaceScale, float kd, sk_imagefilter_t const * input, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8000,7 +8000,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_spot_lit_diffuse (SKPoint3* (sk_imagefilter_new_spot_lit_diffuse_delegate ??= GetSymbol ("sk_imagefilter_new_spot_lit_diffuse")).Invoke (location, target, specularExponent, cutoffAngle, lightColor, surfaceScale, kd, input, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_spot_lit_specular(const sk_point3_t* location, const sk_point3_t* target, float specularExponent, float cutoffAngle, sk_color_t lightColor, float surfaceScale, float ks, float shininess, const sk_imagefilter_t* input, const sk_rect_t* cropRect) + // sk_imagefilter_t * sk_imagefilter_new_spot_lit_specular(sk_point3_t const * location, sk_point3_t const * target, float specularExponent, float cutoffAngle, sk_color_t lightColor, float surfaceScale, float ks, float shininess, sk_imagefilter_t const * input, sk_rect_t const * cropRect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8019,7 +8019,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_spot_lit_specular (SKPoint3* (sk_imagefilter_new_spot_lit_specular_delegate ??= GetSymbol ("sk_imagefilter_new_spot_lit_specular")).Invoke (location, target, specularExponent, cutoffAngle, lightColor, surfaceScale, ks, shininess, input, cropRect); #endif - // sk_imagefilter_t* sk_imagefilter_new_tile(const sk_rect_t* src, const sk_rect_t* dst, const sk_imagefilter_t* input) + // sk_imagefilter_t * sk_imagefilter_new_tile(sk_rect_t const * src, sk_rect_t const * dst, sk_imagefilter_t const * input) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8038,7 +8038,7 @@ internal static sk_imagefilter_t sk_imagefilter_new_tile (SKRect* src, SKRect* d (sk_imagefilter_new_tile_delegate ??= GetSymbol ("sk_imagefilter_new_tile")).Invoke (src, dst, input); #endif - // void sk_imagefilter_unref(sk_imagefilter_t* cfilter) + // void sk_imagefilter_unref(sk_imagefilter_t * cfilter) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8084,7 +8084,7 @@ internal static void sk_linker_keep_alive () => #region sk_maskfilter.h - // sk_maskfilter_t* sk_maskfilter_new_blur(sk_blurstyle_t, float sigma) + // sk_maskfilter_t * sk_maskfilter_new_blur(sk_blurstyle_t, float sigma) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8103,7 +8103,7 @@ internal static sk_maskfilter_t sk_maskfilter_new_blur (SKBlurStyle param0, Sing (sk_maskfilter_new_blur_delegate ??= GetSymbol ("sk_maskfilter_new_blur")).Invoke (param0, sigma); #endif - // sk_maskfilter_t* sk_maskfilter_new_blur_with_flags(sk_blurstyle_t, float sigma, bool respectCTM) + // sk_maskfilter_t * sk_maskfilter_new_blur_with_flags(sk_blurstyle_t, float sigma, bool respectCTM) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8122,7 +8122,7 @@ internal static sk_maskfilter_t sk_maskfilter_new_blur_with_flags (SKBlurStyle p (sk_maskfilter_new_blur_with_flags_delegate ??= GetSymbol ("sk_maskfilter_new_blur_with_flags")).Invoke (param0, sigma, respectCTM); #endif - // sk_maskfilter_t* sk_maskfilter_new_clip(uint8_t min, uint8_t max) + // sk_maskfilter_t * sk_maskfilter_new_clip(unsigned char min, unsigned char max) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8141,7 +8141,7 @@ internal static sk_maskfilter_t sk_maskfilter_new_clip (Byte min, Byte max) => (sk_maskfilter_new_clip_delegate ??= GetSymbol ("sk_maskfilter_new_clip")).Invoke (min, max); #endif - // sk_maskfilter_t* sk_maskfilter_new_gamma(float gamma) + // sk_maskfilter_t * sk_maskfilter_new_gamma(float gamma) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8160,7 +8160,7 @@ internal static sk_maskfilter_t sk_maskfilter_new_gamma (Single gamma) => (sk_maskfilter_new_gamma_delegate ??= GetSymbol ("sk_maskfilter_new_gamma")).Invoke (gamma); #endif - // sk_maskfilter_t* sk_maskfilter_new_shader(sk_shader_t* cshader) + // sk_maskfilter_t * sk_maskfilter_new_shader(sk_shader_t * cshader) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8179,7 +8179,7 @@ internal static sk_maskfilter_t sk_maskfilter_new_shader (sk_shader_t cshader) = (sk_maskfilter_new_shader_delegate ??= GetSymbol ("sk_maskfilter_new_shader")).Invoke (cshader); #endif - // sk_maskfilter_t* sk_maskfilter_new_table(const uint8_t[256] table = 256) + // sk_maskfilter_t * sk_maskfilter_new_table(unsigned char const[256] table = 256) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8198,7 +8198,7 @@ internal static sk_maskfilter_t sk_maskfilter_new_table (Byte* table) => (sk_maskfilter_new_table_delegate ??= GetSymbol ("sk_maskfilter_new_table")).Invoke (table); #endif - // void sk_maskfilter_ref(sk_maskfilter_t*) + // void sk_maskfilter_ref(sk_maskfilter_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8217,7 +8217,7 @@ internal static void sk_maskfilter_ref (sk_maskfilter_t param0) => (sk_maskfilter_ref_delegate ??= GetSymbol ("sk_maskfilter_ref")).Invoke (param0); #endif - // void sk_maskfilter_unref(sk_maskfilter_t*) + // void sk_maskfilter_unref(sk_maskfilter_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8240,7 +8240,7 @@ internal static void sk_maskfilter_unref (sk_maskfilter_t param0) => #region sk_matrix.h - // void sk_matrix_concat(sk_matrix_t* result, sk_matrix_t* first, sk_matrix_t* second) + // void sk_matrix_concat(sk_matrix_t * result, sk_matrix_t * first, sk_matrix_t * second) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8259,7 +8259,7 @@ internal static void sk_matrix_concat (SKMatrix* result, SKMatrix* first, SKMatr (sk_matrix_concat_delegate ??= GetSymbol ("sk_matrix_concat")).Invoke (result, first, second); #endif - // void sk_matrix_map_points(sk_matrix_t* matrix, sk_point_t* dst, sk_point_t* src, int count) + // void sk_matrix_map_points(sk_matrix_t * matrix, sk_point_t * dst, sk_point_t * src, int count) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8278,7 +8278,7 @@ internal static void sk_matrix_map_points (SKMatrix* matrix, SKPoint* dst, SKPoi (sk_matrix_map_points_delegate ??= GetSymbol ("sk_matrix_map_points")).Invoke (matrix, dst, src, count); #endif - // float sk_matrix_map_radius(sk_matrix_t* matrix, float radius) + // float sk_matrix_map_radius(sk_matrix_t * matrix, float radius) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8297,7 +8297,7 @@ internal static Single sk_matrix_map_radius (SKMatrix* matrix, Single radius) => (sk_matrix_map_radius_delegate ??= GetSymbol ("sk_matrix_map_radius")).Invoke (matrix, radius); #endif - // void sk_matrix_map_rect(sk_matrix_t* matrix, sk_rect_t* dest, sk_rect_t* source) + // void sk_matrix_map_rect(sk_matrix_t * matrix, sk_rect_t * dest, sk_rect_t * source) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8316,7 +8316,7 @@ internal static void sk_matrix_map_rect (SKMatrix* matrix, SKRect* dest, SKRect* (sk_matrix_map_rect_delegate ??= GetSymbol ("sk_matrix_map_rect")).Invoke (matrix, dest, source); #endif - // void sk_matrix_map_vector(sk_matrix_t* matrix, float x, float y, sk_point_t* result) + // void sk_matrix_map_vector(sk_matrix_t * matrix, float x, float y, sk_point_t * result) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8335,7 +8335,7 @@ internal static void sk_matrix_map_vector (SKMatrix* matrix, Single x, Single y, (sk_matrix_map_vector_delegate ??= GetSymbol ("sk_matrix_map_vector")).Invoke (matrix, x, y, result); #endif - // void sk_matrix_map_vectors(sk_matrix_t* matrix, sk_point_t* dst, sk_point_t* src, int count) + // void sk_matrix_map_vectors(sk_matrix_t * matrix, sk_point_t * dst, sk_point_t * src, int count) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8354,7 +8354,7 @@ internal static void sk_matrix_map_vectors (SKMatrix* matrix, SKPoint* dst, SKPo (sk_matrix_map_vectors_delegate ??= GetSymbol ("sk_matrix_map_vectors")).Invoke (matrix, dst, src, count); #endif - // void sk_matrix_map_xy(sk_matrix_t* matrix, float x, float y, sk_point_t* result) + // void sk_matrix_map_xy(sk_matrix_t * matrix, float x, float y, sk_point_t * result) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8373,7 +8373,7 @@ internal static void sk_matrix_map_xy (SKMatrix* matrix, Single x, Single y, SKP (sk_matrix_map_xy_delegate ??= GetSymbol ("sk_matrix_map_xy")).Invoke (matrix, x, y, result); #endif - // void sk_matrix_post_concat(sk_matrix_t* result, sk_matrix_t* matrix) + // void sk_matrix_post_concat(sk_matrix_t * result, sk_matrix_t * matrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8392,7 +8392,7 @@ internal static void sk_matrix_post_concat (SKMatrix* result, SKMatrix* matrix) (sk_matrix_post_concat_delegate ??= GetSymbol ("sk_matrix_post_concat")).Invoke (result, matrix); #endif - // void sk_matrix_pre_concat(sk_matrix_t* result, sk_matrix_t* matrix) + // void sk_matrix_pre_concat(sk_matrix_t * result, sk_matrix_t * matrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8411,7 +8411,7 @@ internal static void sk_matrix_pre_concat (SKMatrix* result, SKMatrix* matrix) = (sk_matrix_pre_concat_delegate ??= GetSymbol ("sk_matrix_pre_concat")).Invoke (result, matrix); #endif - // bool sk_matrix_try_invert(sk_matrix_t* matrix, sk_matrix_t* result) + // bool sk_matrix_try_invert(sk_matrix_t * matrix, sk_matrix_t * result) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8437,7 +8437,7 @@ internal static bool sk_matrix_try_invert (SKMatrix* matrix, SKMatrix* result) = #region sk_paint.h - // sk_paint_t* sk_paint_clone(sk_paint_t*) + // sk_paint_t * sk_paint_clone(sk_paint_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8456,7 +8456,7 @@ internal static sk_paint_t sk_paint_clone (sk_paint_t param0) => (sk_paint_clone_delegate ??= GetSymbol ("sk_paint_clone")).Invoke (param0); #endif - // void sk_paint_delete(sk_paint_t*) + // void sk_paint_delete(sk_paint_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8475,7 +8475,7 @@ internal static void sk_paint_delete (sk_paint_t param0) => (sk_paint_delete_delegate ??= GetSymbol ("sk_paint_delete")).Invoke (param0); #endif - // sk_blender_t* sk_paint_get_blender(sk_paint_t* cpaint) + // sk_blender_t * sk_paint_get_blender(sk_paint_t * cpaint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8494,7 +8494,7 @@ internal static sk_blender_t sk_paint_get_blender (sk_paint_t cpaint) => (sk_paint_get_blender_delegate ??= GetSymbol ("sk_paint_get_blender")).Invoke (cpaint); #endif - // sk_blendmode_t sk_paint_get_blendmode(sk_paint_t*) + // sk_blendmode_t sk_paint_get_blendmode(sk_paint_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8513,7 +8513,7 @@ internal static SKBlendMode sk_paint_get_blendmode (sk_paint_t param0) => (sk_paint_get_blendmode_delegate ??= GetSymbol ("sk_paint_get_blendmode")).Invoke (param0); #endif - // sk_color_t sk_paint_get_color(const sk_paint_t*) + // sk_color_t sk_paint_get_color(sk_paint_t const *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8532,7 +8532,7 @@ internal static UInt32 sk_paint_get_color (sk_paint_t param0) => (sk_paint_get_color_delegate ??= GetSymbol ("sk_paint_get_color")).Invoke (param0); #endif - // void sk_paint_get_color4f(const sk_paint_t* paint, sk_color4f_t* color) + // void sk_paint_get_color4f(sk_paint_t const * paint, sk_color4f_t * color) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8551,7 +8551,7 @@ internal static void sk_paint_get_color4f (sk_paint_t paint, SKColorF* color) => (sk_paint_get_color4f_delegate ??= GetSymbol ("sk_paint_get_color4f")).Invoke (paint, color); #endif - // sk_colorfilter_t* sk_paint_get_colorfilter(sk_paint_t*) + // sk_colorfilter_t * sk_paint_get_colorfilter(sk_paint_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8570,7 +8570,7 @@ internal static sk_colorfilter_t sk_paint_get_colorfilter (sk_paint_t param0) => (sk_paint_get_colorfilter_delegate ??= GetSymbol ("sk_paint_get_colorfilter")).Invoke (param0); #endif - // bool sk_paint_get_fill_path(const sk_paint_t* cpaint, const sk_path_t* src, sk_path_t* dst, const sk_rect_t* cullRect, const sk_matrix_t* cmatrix) + // bool sk_paint_get_fill_path(sk_paint_t const * cpaint, sk_path_t const * src, sk_path_t * dst, sk_rect_t const * cullRect, sk_matrix_t const * cmatrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8592,7 +8592,7 @@ internal static bool sk_paint_get_fill_path (sk_paint_t cpaint, sk_path_t src, s (sk_paint_get_fill_path_delegate ??= GetSymbol ("sk_paint_get_fill_path")).Invoke (cpaint, src, dst, cullRect, cmatrix); #endif - // sk_imagefilter_t* sk_paint_get_imagefilter(sk_paint_t*) + // sk_imagefilter_t * sk_paint_get_imagefilter(sk_paint_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8611,7 +8611,7 @@ internal static sk_imagefilter_t sk_paint_get_imagefilter (sk_paint_t param0) => (sk_paint_get_imagefilter_delegate ??= GetSymbol ("sk_paint_get_imagefilter")).Invoke (param0); #endif - // sk_maskfilter_t* sk_paint_get_maskfilter(sk_paint_t*) + // sk_maskfilter_t * sk_paint_get_maskfilter(sk_paint_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8630,7 +8630,7 @@ internal static sk_maskfilter_t sk_paint_get_maskfilter (sk_paint_t param0) => (sk_paint_get_maskfilter_delegate ??= GetSymbol ("sk_paint_get_maskfilter")).Invoke (param0); #endif - // sk_path_effect_t* sk_paint_get_path_effect(sk_paint_t* cpaint) + // sk_path_effect_t * sk_paint_get_path_effect(sk_paint_t * cpaint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8649,7 +8649,7 @@ internal static sk_path_effect_t sk_paint_get_path_effect (sk_paint_t cpaint) => (sk_paint_get_path_effect_delegate ??= GetSymbol ("sk_paint_get_path_effect")).Invoke (cpaint); #endif - // sk_shader_t* sk_paint_get_shader(sk_paint_t*) + // sk_shader_t * sk_paint_get_shader(sk_paint_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8668,7 +8668,7 @@ internal static sk_shader_t sk_paint_get_shader (sk_paint_t param0) => (sk_paint_get_shader_delegate ??= GetSymbol ("sk_paint_get_shader")).Invoke (param0); #endif - // sk_stroke_cap_t sk_paint_get_stroke_cap(const sk_paint_t*) + // sk_stroke_cap_t sk_paint_get_stroke_cap(sk_paint_t const *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8687,7 +8687,7 @@ internal static SKStrokeCap sk_paint_get_stroke_cap (sk_paint_t param0) => (sk_paint_get_stroke_cap_delegate ??= GetSymbol ("sk_paint_get_stroke_cap")).Invoke (param0); #endif - // sk_stroke_join_t sk_paint_get_stroke_join(const sk_paint_t*) + // sk_stroke_join_t sk_paint_get_stroke_join(sk_paint_t const *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8706,7 +8706,7 @@ internal static SKStrokeJoin sk_paint_get_stroke_join (sk_paint_t param0) => (sk_paint_get_stroke_join_delegate ??= GetSymbol ("sk_paint_get_stroke_join")).Invoke (param0); #endif - // float sk_paint_get_stroke_miter(const sk_paint_t*) + // float sk_paint_get_stroke_miter(sk_paint_t const *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8725,7 +8725,7 @@ internal static Single sk_paint_get_stroke_miter (sk_paint_t param0) => (sk_paint_get_stroke_miter_delegate ??= GetSymbol ("sk_paint_get_stroke_miter")).Invoke (param0); #endif - // float sk_paint_get_stroke_width(const sk_paint_t*) + // float sk_paint_get_stroke_width(sk_paint_t const *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8744,7 +8744,7 @@ internal static Single sk_paint_get_stroke_width (sk_paint_t param0) => (sk_paint_get_stroke_width_delegate ??= GetSymbol ("sk_paint_get_stroke_width")).Invoke (param0); #endif - // sk_paint_style_t sk_paint_get_style(const sk_paint_t*) + // sk_paint_style_t sk_paint_get_style(sk_paint_t const *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8763,7 +8763,7 @@ internal static SKPaintStyle sk_paint_get_style (sk_paint_t param0) => (sk_paint_get_style_delegate ??= GetSymbol ("sk_paint_get_style")).Invoke (param0); #endif - // bool sk_paint_is_antialias(const sk_paint_t*) + // bool sk_paint_is_antialias(sk_paint_t const *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8785,7 +8785,7 @@ internal static bool sk_paint_is_antialias (sk_paint_t param0) => (sk_paint_is_antialias_delegate ??= GetSymbol ("sk_paint_is_antialias")).Invoke (param0); #endif - // bool sk_paint_is_dither(const sk_paint_t*) + // bool sk_paint_is_dither(sk_paint_t const *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8807,7 +8807,7 @@ internal static bool sk_paint_is_dither (sk_paint_t param0) => (sk_paint_is_dither_delegate ??= GetSymbol ("sk_paint_is_dither")).Invoke (param0); #endif - // sk_paint_t* sk_paint_new() + // sk_paint_t * sk_paint_new() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8826,7 +8826,7 @@ internal static sk_paint_t sk_paint_new () => (sk_paint_new_delegate ??= GetSymbol ("sk_paint_new")).Invoke (); #endif - // void sk_paint_reset(sk_paint_t*) + // void sk_paint_reset(sk_paint_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8845,7 +8845,7 @@ internal static void sk_paint_reset (sk_paint_t param0) => (sk_paint_reset_delegate ??= GetSymbol ("sk_paint_reset")).Invoke (param0); #endif - // void sk_paint_set_antialias(sk_paint_t*, bool) + // void sk_paint_set_antialias(sk_paint_t *, bool) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8864,7 +8864,7 @@ internal static void sk_paint_set_antialias (sk_paint_t param0, [MarshalAs (Unma (sk_paint_set_antialias_delegate ??= GetSymbol ("sk_paint_set_antialias")).Invoke (param0, param1); #endif - // void sk_paint_set_blender(sk_paint_t* paint, sk_blender_t* blender) + // void sk_paint_set_blender(sk_paint_t * paint, sk_blender_t * blender) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8883,7 +8883,7 @@ internal static void sk_paint_set_blender (sk_paint_t paint, sk_blender_t blende (sk_paint_set_blender_delegate ??= GetSymbol ("sk_paint_set_blender")).Invoke (paint, blender); #endif - // void sk_paint_set_blendmode(sk_paint_t*, sk_blendmode_t) + // void sk_paint_set_blendmode(sk_paint_t *, sk_blendmode_t) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8902,7 +8902,7 @@ internal static void sk_paint_set_blendmode (sk_paint_t param0, SKBlendMode para (sk_paint_set_blendmode_delegate ??= GetSymbol ("sk_paint_set_blendmode")).Invoke (param0, param1); #endif - // void sk_paint_set_color(sk_paint_t*, sk_color_t) + // void sk_paint_set_color(sk_paint_t *, sk_color_t) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8921,7 +8921,7 @@ internal static void sk_paint_set_color (sk_paint_t param0, UInt32 param1) => (sk_paint_set_color_delegate ??= GetSymbol ("sk_paint_set_color")).Invoke (param0, param1); #endif - // void sk_paint_set_color4f(sk_paint_t* paint, sk_color4f_t* color, sk_colorspace_t* colorspace) + // void sk_paint_set_color4f(sk_paint_t * paint, sk_color4f_t * color, sk_colorspace_t * colorspace) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8940,7 +8940,7 @@ internal static void sk_paint_set_color4f (sk_paint_t paint, SKColorF* color, sk (sk_paint_set_color4f_delegate ??= GetSymbol ("sk_paint_set_color4f")).Invoke (paint, color, colorspace); #endif - // void sk_paint_set_colorfilter(sk_paint_t*, sk_colorfilter_t*) + // void sk_paint_set_colorfilter(sk_paint_t *, sk_colorfilter_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8959,7 +8959,7 @@ internal static void sk_paint_set_colorfilter (sk_paint_t param0, sk_colorfilter (sk_paint_set_colorfilter_delegate ??= GetSymbol ("sk_paint_set_colorfilter")).Invoke (param0, param1); #endif - // void sk_paint_set_dither(sk_paint_t*, bool) + // void sk_paint_set_dither(sk_paint_t *, bool) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8978,7 +8978,7 @@ internal static void sk_paint_set_dither (sk_paint_t param0, [MarshalAs (Unmanag (sk_paint_set_dither_delegate ??= GetSymbol ("sk_paint_set_dither")).Invoke (param0, param1); #endif - // void sk_paint_set_imagefilter(sk_paint_t*, sk_imagefilter_t*) + // void sk_paint_set_imagefilter(sk_paint_t *, sk_imagefilter_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -8997,7 +8997,7 @@ internal static void sk_paint_set_imagefilter (sk_paint_t param0, sk_imagefilter (sk_paint_set_imagefilter_delegate ??= GetSymbol ("sk_paint_set_imagefilter")).Invoke (param0, param1); #endif - // void sk_paint_set_maskfilter(sk_paint_t*, sk_maskfilter_t*) + // void sk_paint_set_maskfilter(sk_paint_t *, sk_maskfilter_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9016,7 +9016,7 @@ internal static void sk_paint_set_maskfilter (sk_paint_t param0, sk_maskfilter_t (sk_paint_set_maskfilter_delegate ??= GetSymbol ("sk_paint_set_maskfilter")).Invoke (param0, param1); #endif - // void sk_paint_set_path_effect(sk_paint_t* cpaint, sk_path_effect_t* effect) + // void sk_paint_set_path_effect(sk_paint_t * cpaint, sk_path_effect_t * effect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9035,7 +9035,7 @@ internal static void sk_paint_set_path_effect (sk_paint_t cpaint, sk_path_effect (sk_paint_set_path_effect_delegate ??= GetSymbol ("sk_paint_set_path_effect")).Invoke (cpaint, effect); #endif - // void sk_paint_set_shader(sk_paint_t*, sk_shader_t*) + // void sk_paint_set_shader(sk_paint_t *, sk_shader_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9054,7 +9054,7 @@ internal static void sk_paint_set_shader (sk_paint_t param0, sk_shader_t param1) (sk_paint_set_shader_delegate ??= GetSymbol ("sk_paint_set_shader")).Invoke (param0, param1); #endif - // void sk_paint_set_stroke_cap(sk_paint_t*, sk_stroke_cap_t) + // void sk_paint_set_stroke_cap(sk_paint_t *, sk_stroke_cap_t) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9073,7 +9073,7 @@ internal static void sk_paint_set_stroke_cap (sk_paint_t param0, SKStrokeCap par (sk_paint_set_stroke_cap_delegate ??= GetSymbol ("sk_paint_set_stroke_cap")).Invoke (param0, param1); #endif - // void sk_paint_set_stroke_join(sk_paint_t*, sk_stroke_join_t) + // void sk_paint_set_stroke_join(sk_paint_t *, sk_stroke_join_t) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9092,7 +9092,7 @@ internal static void sk_paint_set_stroke_join (sk_paint_t param0, SKStrokeJoin p (sk_paint_set_stroke_join_delegate ??= GetSymbol ("sk_paint_set_stroke_join")).Invoke (param0, param1); #endif - // void sk_paint_set_stroke_miter(sk_paint_t*, float miter) + // void sk_paint_set_stroke_miter(sk_paint_t *, float miter) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9111,7 +9111,7 @@ internal static void sk_paint_set_stroke_miter (sk_paint_t param0, Single miter) (sk_paint_set_stroke_miter_delegate ??= GetSymbol ("sk_paint_set_stroke_miter")).Invoke (param0, miter); #endif - // void sk_paint_set_stroke_width(sk_paint_t*, float width) + // void sk_paint_set_stroke_width(sk_paint_t *, float width) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9130,7 +9130,7 @@ internal static void sk_paint_set_stroke_width (sk_paint_t param0, Single width) (sk_paint_set_stroke_width_delegate ??= GetSymbol ("sk_paint_set_stroke_width")).Invoke (param0, width); #endif - // void sk_paint_set_style(sk_paint_t*, sk_paint_style_t) + // void sk_paint_set_style(sk_paint_t *, sk_paint_style_t) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9153,7 +9153,7 @@ internal static void sk_paint_set_style (sk_paint_t param0, SKPaintStyle param1) #region sk_path.h - // void sk_opbuilder_add(sk_opbuilder_t* builder, const sk_path_t* path, sk_pathop_t op) + // void sk_opbuilder_add(sk_opbuilder_t * builder, sk_path_t const * path, sk_pathop_t op) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9172,7 +9172,7 @@ internal static void sk_opbuilder_add (sk_opbuilder_t builder, sk_path_t path, S (sk_opbuilder_add_delegate ??= GetSymbol ("sk_opbuilder_add")).Invoke (builder, path, op); #endif - // void sk_opbuilder_destroy(sk_opbuilder_t* builder) + // void sk_opbuilder_destroy(sk_opbuilder_t * builder) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9191,7 +9191,7 @@ internal static void sk_opbuilder_destroy (sk_opbuilder_t builder) => (sk_opbuilder_destroy_delegate ??= GetSymbol ("sk_opbuilder_destroy")).Invoke (builder); #endif - // sk_opbuilder_t* sk_opbuilder_new() + // sk_opbuilder_t * sk_opbuilder_new() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9210,7 +9210,7 @@ internal static sk_opbuilder_t sk_opbuilder_new () => (sk_opbuilder_new_delegate ??= GetSymbol ("sk_opbuilder_new")).Invoke (); #endif - // bool sk_opbuilder_resolve(sk_opbuilder_t* builder, sk_path_t* result) + // bool sk_opbuilder_resolve(sk_opbuilder_t * builder, sk_path_t * result) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9232,7 +9232,7 @@ internal static bool sk_opbuilder_resolve (sk_opbuilder_t builder, sk_path_t res (sk_opbuilder_resolve_delegate ??= GetSymbol ("sk_opbuilder_resolve")).Invoke (builder, result); #endif - // void sk_path_add_arc(sk_path_t* cpath, const sk_rect_t* crect, float startAngle, float sweepAngle) + // void sk_path_add_arc(sk_path_t * cpath, sk_rect_t const * crect, float startAngle, float sweepAngle) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9251,7 +9251,7 @@ internal static void sk_path_add_arc (sk_path_t cpath, SKRect* crect, Single sta (sk_path_add_arc_delegate ??= GetSymbol ("sk_path_add_arc")).Invoke (cpath, crect, startAngle, sweepAngle); #endif - // void sk_path_add_circle(sk_path_t*, float x, float y, float radius, sk_path_direction_t dir) + // void sk_path_add_circle(sk_path_t *, float x, float y, float radius, sk_path_direction_t dir) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9270,7 +9270,7 @@ internal static void sk_path_add_circle (sk_path_t param0, Single x, Single y, S (sk_path_add_circle_delegate ??= GetSymbol ("sk_path_add_circle")).Invoke (param0, x, y, radius, dir); #endif - // void sk_path_add_oval(sk_path_t*, const sk_rect_t*, sk_path_direction_t) + // void sk_path_add_oval(sk_path_t *, sk_rect_t const *, sk_path_direction_t) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9289,7 +9289,7 @@ internal static void sk_path_add_oval (sk_path_t param0, SKRect* param1, SKPathD (sk_path_add_oval_delegate ??= GetSymbol ("sk_path_add_oval")).Invoke (param0, param1, param2); #endif - // void sk_path_add_path(sk_path_t* cpath, sk_path_t* other, sk_path_add_mode_t add_mode) + // void sk_path_add_path(sk_path_t * cpath, sk_path_t * other, sk_path_add_mode_t add_mode) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9308,7 +9308,7 @@ internal static void sk_path_add_path (sk_path_t cpath, sk_path_t other, SKPathA (sk_path_add_path_delegate ??= GetSymbol ("sk_path_add_path")).Invoke (cpath, other, add_mode); #endif - // void sk_path_add_path_matrix(sk_path_t* cpath, sk_path_t* other, sk_matrix_t* matrix, sk_path_add_mode_t add_mode) + // void sk_path_add_path_matrix(sk_path_t * cpath, sk_path_t * other, sk_matrix_t * matrix, sk_path_add_mode_t add_mode) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9327,7 +9327,7 @@ internal static void sk_path_add_path_matrix (sk_path_t cpath, sk_path_t other, (sk_path_add_path_matrix_delegate ??= GetSymbol ("sk_path_add_path_matrix")).Invoke (cpath, other, matrix, add_mode); #endif - // void sk_path_add_path_offset(sk_path_t* cpath, sk_path_t* other, float dx, float dy, sk_path_add_mode_t add_mode) + // void sk_path_add_path_offset(sk_path_t * cpath, sk_path_t * other, float dx, float dy, sk_path_add_mode_t add_mode) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9346,7 +9346,7 @@ internal static void sk_path_add_path_offset (sk_path_t cpath, sk_path_t other, (sk_path_add_path_offset_delegate ??= GetSymbol ("sk_path_add_path_offset")).Invoke (cpath, other, dx, dy, add_mode); #endif - // void sk_path_add_path_reverse(sk_path_t* cpath, sk_path_t* other) + // void sk_path_add_path_reverse(sk_path_t * cpath, sk_path_t * other) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9365,7 +9365,7 @@ internal static void sk_path_add_path_reverse (sk_path_t cpath, sk_path_t other) (sk_path_add_path_reverse_delegate ??= GetSymbol ("sk_path_add_path_reverse")).Invoke (cpath, other); #endif - // void sk_path_add_poly(sk_path_t* cpath, const sk_point_t* points, int count, bool close) + // void sk_path_add_poly(sk_path_t * cpath, sk_point_t const * points, int count, bool close) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9384,7 +9384,7 @@ internal static void sk_path_add_poly (sk_path_t cpath, SKPoint* points, Int32 c (sk_path_add_poly_delegate ??= GetSymbol ("sk_path_add_poly")).Invoke (cpath, points, count, close); #endif - // void sk_path_add_rect(sk_path_t*, const sk_rect_t*, sk_path_direction_t) + // void sk_path_add_rect(sk_path_t *, sk_rect_t const *, sk_path_direction_t) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9403,7 +9403,7 @@ internal static void sk_path_add_rect (sk_path_t param0, SKRect* param1, SKPathD (sk_path_add_rect_delegate ??= GetSymbol ("sk_path_add_rect")).Invoke (param0, param1, param2); #endif - // void sk_path_add_rect_start(sk_path_t* cpath, const sk_rect_t* crect, sk_path_direction_t cdir, uint32_t startIndex) + // void sk_path_add_rect_start(sk_path_t * cpath, sk_rect_t const * crect, sk_path_direction_t cdir, unsigned int startIndex) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9422,7 +9422,7 @@ internal static void sk_path_add_rect_start (sk_path_t cpath, SKRect* crect, SKP (sk_path_add_rect_start_delegate ??= GetSymbol ("sk_path_add_rect_start")).Invoke (cpath, crect, cdir, startIndex); #endif - // void sk_path_add_rounded_rect(sk_path_t*, const sk_rect_t*, float, float, sk_path_direction_t) + // void sk_path_add_rounded_rect(sk_path_t *, sk_rect_t const *, float, float, sk_path_direction_t) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9441,7 +9441,7 @@ internal static void sk_path_add_rounded_rect (sk_path_t param0, SKRect* param1, (sk_path_add_rounded_rect_delegate ??= GetSymbol ("sk_path_add_rounded_rect")).Invoke (param0, param1, param2, param3, param4); #endif - // void sk_path_add_rrect(sk_path_t*, const sk_rrect_t*, sk_path_direction_t) + // void sk_path_add_rrect(sk_path_t *, sk_rrect_t const *, sk_path_direction_t) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9460,7 +9460,7 @@ internal static void sk_path_add_rrect (sk_path_t param0, sk_rrect_t param1, SKP (sk_path_add_rrect_delegate ??= GetSymbol ("sk_path_add_rrect")).Invoke (param0, param1, param2); #endif - // void sk_path_add_rrect_start(sk_path_t*, const sk_rrect_t*, sk_path_direction_t, uint32_t) + // void sk_path_add_rrect_start(sk_path_t *, sk_rrect_t const *, sk_path_direction_t, unsigned int) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9479,7 +9479,7 @@ internal static void sk_path_add_rrect_start (sk_path_t param0, sk_rrect_t param (sk_path_add_rrect_start_delegate ??= GetSymbol ("sk_path_add_rrect_start")).Invoke (param0, param1, param2, param3); #endif - // void sk_path_arc_to(sk_path_t*, float rx, float ry, float xAxisRotate, sk_path_arc_size_t largeArc, sk_path_direction_t sweep, float x, float y) + // void sk_path_arc_to(sk_path_t *, float rx, float ry, float xAxisRotate, sk_path_arc_size_t largeArc, sk_path_direction_t sweep, float x, float y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9498,7 +9498,7 @@ internal static void sk_path_arc_to (sk_path_t param0, Single rx, Single ry, Sin (sk_path_arc_to_delegate ??= GetSymbol ("sk_path_arc_to")).Invoke (param0, rx, ry, xAxisRotate, largeArc, sweep, x, y); #endif - // void sk_path_arc_to_with_oval(sk_path_t*, const sk_rect_t* oval, float startAngle, float sweepAngle, bool forceMoveTo) + // void sk_path_arc_to_with_oval(sk_path_t *, sk_rect_t const * oval, float startAngle, float sweepAngle, bool forceMoveTo) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9517,7 +9517,7 @@ internal static void sk_path_arc_to_with_oval (sk_path_t param0, SKRect* oval, S (sk_path_arc_to_with_oval_delegate ??= GetSymbol ("sk_path_arc_to_with_oval")).Invoke (param0, oval, startAngle, sweepAngle, forceMoveTo); #endif - // void sk_path_arc_to_with_points(sk_path_t*, float x1, float y1, float x2, float y2, float radius) + // void sk_path_arc_to_with_points(sk_path_t *, float x1, float y1, float x2, float y2, float radius) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9536,7 +9536,7 @@ internal static void sk_path_arc_to_with_points (sk_path_t param0, Single x1, Si (sk_path_arc_to_with_points_delegate ??= GetSymbol ("sk_path_arc_to_with_points")).Invoke (param0, x1, y1, x2, y2, radius); #endif - // sk_path_t* sk_path_clone(const sk_path_t* cpath) + // sk_path_t * sk_path_clone(sk_path_t const * cpath) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9555,7 +9555,7 @@ internal static sk_path_t sk_path_clone (sk_path_t cpath) => (sk_path_clone_delegate ??= GetSymbol ("sk_path_clone")).Invoke (cpath); #endif - // void sk_path_close(sk_path_t*) + // void sk_path_close(sk_path_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9574,7 +9574,7 @@ internal static void sk_path_close (sk_path_t param0) => (sk_path_close_delegate ??= GetSymbol ("sk_path_close")).Invoke (param0); #endif - // void sk_path_compute_tight_bounds(const sk_path_t*, sk_rect_t*) + // void sk_path_compute_tight_bounds(sk_path_t const *, sk_rect_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9593,7 +9593,7 @@ internal static void sk_path_compute_tight_bounds (sk_path_t param0, SKRect* par (sk_path_compute_tight_bounds_delegate ??= GetSymbol ("sk_path_compute_tight_bounds")).Invoke (param0, param1); #endif - // void sk_path_conic_to(sk_path_t*, float x0, float y0, float x1, float y1, float w) + // void sk_path_conic_to(sk_path_t *, float x0, float y0, float x1, float y1, float w) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9612,7 +9612,7 @@ internal static void sk_path_conic_to (sk_path_t param0, Single x0, Single y0, S (sk_path_conic_to_delegate ??= GetSymbol ("sk_path_conic_to")).Invoke (param0, x0, y0, x1, y1, w); #endif - // bool sk_path_contains(const sk_path_t* cpath, float x, float y) + // bool sk_path_contains(sk_path_t const * cpath, float x, float y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9634,7 +9634,7 @@ internal static bool sk_path_contains (sk_path_t cpath, Single x, Single y) => (sk_path_contains_delegate ??= GetSymbol ("sk_path_contains")).Invoke (cpath, x, y); #endif - // int sk_path_convert_conic_to_quads(const sk_point_t* p0, const sk_point_t* p1, const sk_point_t* p2, float w, sk_point_t* pts, int pow2) + // int sk_path_convert_conic_to_quads(sk_point_t const * p0, sk_point_t const * p1, sk_point_t const * p2, float w, sk_point_t * pts, int pow2) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9653,7 +9653,7 @@ internal static Int32 sk_path_convert_conic_to_quads (SKPoint* p0, SKPoint* p1, (sk_path_convert_conic_to_quads_delegate ??= GetSymbol ("sk_path_convert_conic_to_quads")).Invoke (p0, p1, p2, w, pts, pow2); #endif - // int sk_path_count_points(const sk_path_t* cpath) + // int sk_path_count_points(sk_path_t const * cpath) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9672,7 +9672,7 @@ internal static Int32 sk_path_count_points (sk_path_t cpath) => (sk_path_count_points_delegate ??= GetSymbol ("sk_path_count_points")).Invoke (cpath); #endif - // int sk_path_count_verbs(const sk_path_t* cpath) + // int sk_path_count_verbs(sk_path_t const * cpath) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9691,7 +9691,7 @@ internal static Int32 sk_path_count_verbs (sk_path_t cpath) => (sk_path_count_verbs_delegate ??= GetSymbol ("sk_path_count_verbs")).Invoke (cpath); #endif - // sk_path_iterator_t* sk_path_create_iter(sk_path_t* cpath, int forceClose) + // sk_path_iterator_t * sk_path_create_iter(sk_path_t * cpath, int forceClose) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9710,7 +9710,7 @@ internal static sk_path_iterator_t sk_path_create_iter (sk_path_t cpath, Int32 f (sk_path_create_iter_delegate ??= GetSymbol ("sk_path_create_iter")).Invoke (cpath, forceClose); #endif - // sk_path_rawiterator_t* sk_path_create_rawiter(sk_path_t* cpath) + // sk_path_rawiterator_t * sk_path_create_rawiter(sk_path_t * cpath) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9729,7 +9729,7 @@ internal static sk_path_rawiterator_t sk_path_create_rawiter (sk_path_t cpath) = (sk_path_create_rawiter_delegate ??= GetSymbol ("sk_path_create_rawiter")).Invoke (cpath); #endif - // void sk_path_cubic_to(sk_path_t*, float x0, float y0, float x1, float y1, float x2, float y2) + // void sk_path_cubic_to(sk_path_t *, float x0, float y0, float x1, float y1, float x2, float y2) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9748,7 +9748,7 @@ internal static void sk_path_cubic_to (sk_path_t param0, Single x0, Single y0, S (sk_path_cubic_to_delegate ??= GetSymbol ("sk_path_cubic_to")).Invoke (param0, x0, y0, x1, y1, x2, y2); #endif - // void sk_path_delete(sk_path_t*) + // void sk_path_delete(sk_path_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9767,7 +9767,7 @@ internal static void sk_path_delete (sk_path_t param0) => (sk_path_delete_delegate ??= GetSymbol ("sk_path_delete")).Invoke (param0); #endif - // void sk_path_get_bounds(const sk_path_t*, sk_rect_t*) + // void sk_path_get_bounds(sk_path_t const *, sk_rect_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9786,7 +9786,7 @@ internal static void sk_path_get_bounds (sk_path_t param0, SKRect* param1) => (sk_path_get_bounds_delegate ??= GetSymbol ("sk_path_get_bounds")).Invoke (param0, param1); #endif - // sk_path_filltype_t sk_path_get_filltype(sk_path_t*) + // sk_path_filltype_t sk_path_get_filltype(sk_path_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9805,7 +9805,7 @@ internal static SKPathFillType sk_path_get_filltype (sk_path_t param0) => (sk_path_get_filltype_delegate ??= GetSymbol ("sk_path_get_filltype")).Invoke (param0); #endif - // bool sk_path_get_last_point(const sk_path_t* cpath, sk_point_t* point) + // bool sk_path_get_last_point(sk_path_t const * cpath, sk_point_t * point) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9827,7 +9827,7 @@ internal static bool sk_path_get_last_point (sk_path_t cpath, SKPoint* point) => (sk_path_get_last_point_delegate ??= GetSymbol ("sk_path_get_last_point")).Invoke (cpath, point); #endif - // void sk_path_get_point(const sk_path_t* cpath, int index, sk_point_t* point) + // void sk_path_get_point(sk_path_t const * cpath, int index, sk_point_t * point) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9846,7 +9846,7 @@ internal static void sk_path_get_point (sk_path_t cpath, Int32 index, SKPoint* p (sk_path_get_point_delegate ??= GetSymbol ("sk_path_get_point")).Invoke (cpath, index, point); #endif - // int sk_path_get_points(const sk_path_t* cpath, sk_point_t* points, int max) + // int sk_path_get_points(sk_path_t const * cpath, sk_point_t * points, int max) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9865,7 +9865,7 @@ internal static Int32 sk_path_get_points (sk_path_t cpath, SKPoint* points, Int3 (sk_path_get_points_delegate ??= GetSymbol ("sk_path_get_points")).Invoke (cpath, points, max); #endif - // uint32_t sk_path_get_segment_masks(sk_path_t* cpath) + // unsigned int sk_path_get_segment_masks(sk_path_t * cpath) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9884,7 +9884,7 @@ internal static UInt32 sk_path_get_segment_masks (sk_path_t cpath) => (sk_path_get_segment_masks_delegate ??= GetSymbol ("sk_path_get_segment_masks")).Invoke (cpath); #endif - // bool sk_path_is_convex(const sk_path_t* cpath) + // bool sk_path_is_convex(sk_path_t const * cpath) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9906,7 +9906,7 @@ internal static bool sk_path_is_convex (sk_path_t cpath) => (sk_path_is_convex_delegate ??= GetSymbol ("sk_path_is_convex")).Invoke (cpath); #endif - // bool sk_path_is_line(sk_path_t* cpath, sk_point_t[2] line = 2) + // bool sk_path_is_line(sk_path_t * cpath, sk_point_t[2] line = 2) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9928,7 +9928,7 @@ internal static bool sk_path_is_line (sk_path_t cpath, SKPoint* line) => (sk_path_is_line_delegate ??= GetSymbol ("sk_path_is_line")).Invoke (cpath, line); #endif - // bool sk_path_is_oval(sk_path_t* cpath, sk_rect_t* bounds) + // bool sk_path_is_oval(sk_path_t * cpath, sk_rect_t * bounds) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9950,7 +9950,7 @@ internal static bool sk_path_is_oval (sk_path_t cpath, SKRect* bounds) => (sk_path_is_oval_delegate ??= GetSymbol ("sk_path_is_oval")).Invoke (cpath, bounds); #endif - // bool sk_path_is_rect(sk_path_t* cpath, sk_rect_t* rect, bool* isClosed, sk_path_direction_t* direction) + // bool sk_path_is_rect(sk_path_t * cpath, sk_rect_t * rect, bool * isClosed, sk_path_direction_t * direction) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9972,7 +9972,7 @@ internal static bool sk_path_is_rect (sk_path_t cpath, SKRect* rect, Byte* isClo (sk_path_is_rect_delegate ??= GetSymbol ("sk_path_is_rect")).Invoke (cpath, rect, isClosed, direction); #endif - // bool sk_path_is_rrect(sk_path_t* cpath, sk_rrect_t* bounds) + // bool sk_path_is_rrect(sk_path_t * cpath, sk_rrect_t * bounds) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -9994,7 +9994,7 @@ internal static bool sk_path_is_rrect (sk_path_t cpath, sk_rrect_t bounds) => (sk_path_is_rrect_delegate ??= GetSymbol ("sk_path_is_rrect")).Invoke (cpath, bounds); #endif - // float sk_path_iter_conic_weight(sk_path_iterator_t* iterator) + // float sk_path_iter_conic_weight(sk_path_iterator_t * iterator) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10013,7 +10013,7 @@ internal static Single sk_path_iter_conic_weight (sk_path_iterator_t iterator) = (sk_path_iter_conic_weight_delegate ??= GetSymbol ("sk_path_iter_conic_weight")).Invoke (iterator); #endif - // void sk_path_iter_destroy(sk_path_iterator_t* iterator) + // void sk_path_iter_destroy(sk_path_iterator_t * iterator) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10032,7 +10032,7 @@ internal static void sk_path_iter_destroy (sk_path_iterator_t iterator) => (sk_path_iter_destroy_delegate ??= GetSymbol ("sk_path_iter_destroy")).Invoke (iterator); #endif - // int sk_path_iter_is_close_line(sk_path_iterator_t* iterator) + // int sk_path_iter_is_close_line(sk_path_iterator_t * iterator) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10051,7 +10051,7 @@ internal static Int32 sk_path_iter_is_close_line (sk_path_iterator_t iterator) = (sk_path_iter_is_close_line_delegate ??= GetSymbol ("sk_path_iter_is_close_line")).Invoke (iterator); #endif - // int sk_path_iter_is_closed_contour(sk_path_iterator_t* iterator) + // int sk_path_iter_is_closed_contour(sk_path_iterator_t * iterator) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10070,7 +10070,7 @@ internal static Int32 sk_path_iter_is_closed_contour (sk_path_iterator_t iterato (sk_path_iter_is_closed_contour_delegate ??= GetSymbol ("sk_path_iter_is_closed_contour")).Invoke (iterator); #endif - // sk_path_verb_t sk_path_iter_next(sk_path_iterator_t* iterator, sk_point_t[4] points = 4) + // sk_path_verb_t sk_path_iter_next(sk_path_iterator_t * iterator, sk_point_t[4] points = 4) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10089,7 +10089,7 @@ internal static SKPathVerb sk_path_iter_next (sk_path_iterator_t iterator, SKPoi (sk_path_iter_next_delegate ??= GetSymbol ("sk_path_iter_next")).Invoke (iterator, points); #endif - // void sk_path_line_to(sk_path_t*, float x, float y) + // void sk_path_line_to(sk_path_t *, float x, float y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10108,7 +10108,7 @@ internal static void sk_path_line_to (sk_path_t param0, Single x, Single y) => (sk_path_line_to_delegate ??= GetSymbol ("sk_path_line_to")).Invoke (param0, x, y); #endif - // void sk_path_move_to(sk_path_t*, float x, float y) + // void sk_path_move_to(sk_path_t *, float x, float y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10127,7 +10127,7 @@ internal static void sk_path_move_to (sk_path_t param0, Single x, Single y) => (sk_path_move_to_delegate ??= GetSymbol ("sk_path_move_to")).Invoke (param0, x, y); #endif - // sk_path_t* sk_path_new() + // sk_path_t * sk_path_new() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10146,7 +10146,7 @@ internal static sk_path_t sk_path_new () => (sk_path_new_delegate ??= GetSymbol ("sk_path_new")).Invoke (); #endif - // bool sk_path_parse_svg_string(sk_path_t* cpath, const char* str) + // bool sk_path_parse_svg_string(sk_path_t * cpath, char const * str) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10168,7 +10168,7 @@ internal static bool sk_path_parse_svg_string (sk_path_t cpath, [MarshalAs (Unma (sk_path_parse_svg_string_delegate ??= GetSymbol ("sk_path_parse_svg_string")).Invoke (cpath, str); #endif - // void sk_path_quad_to(sk_path_t*, float x0, float y0, float x1, float y1) + // void sk_path_quad_to(sk_path_t *, float x0, float y0, float x1, float y1) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10187,7 +10187,7 @@ internal static void sk_path_quad_to (sk_path_t param0, Single x0, Single y0, Si (sk_path_quad_to_delegate ??= GetSymbol ("sk_path_quad_to")).Invoke (param0, x0, y0, x1, y1); #endif - // void sk_path_rarc_to(sk_path_t*, float rx, float ry, float xAxisRotate, sk_path_arc_size_t largeArc, sk_path_direction_t sweep, float x, float y) + // void sk_path_rarc_to(sk_path_t *, float rx, float ry, float xAxisRotate, sk_path_arc_size_t largeArc, sk_path_direction_t sweep, float x, float y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10206,7 +10206,7 @@ internal static void sk_path_rarc_to (sk_path_t param0, Single rx, Single ry, Si (sk_path_rarc_to_delegate ??= GetSymbol ("sk_path_rarc_to")).Invoke (param0, rx, ry, xAxisRotate, largeArc, sweep, x, y); #endif - // float sk_path_rawiter_conic_weight(sk_path_rawiterator_t* iterator) + // float sk_path_rawiter_conic_weight(sk_path_rawiterator_t * iterator) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10225,7 +10225,7 @@ internal static Single sk_path_rawiter_conic_weight (sk_path_rawiterator_t itera (sk_path_rawiter_conic_weight_delegate ??= GetSymbol ("sk_path_rawiter_conic_weight")).Invoke (iterator); #endif - // void sk_path_rawiter_destroy(sk_path_rawiterator_t* iterator) + // void sk_path_rawiter_destroy(sk_path_rawiterator_t * iterator) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10244,7 +10244,7 @@ internal static void sk_path_rawiter_destroy (sk_path_rawiterator_t iterator) => (sk_path_rawiter_destroy_delegate ??= GetSymbol ("sk_path_rawiter_destroy")).Invoke (iterator); #endif - // sk_path_verb_t sk_path_rawiter_next(sk_path_rawiterator_t* iterator, sk_point_t[4] points = 4) + // sk_path_verb_t sk_path_rawiter_next(sk_path_rawiterator_t * iterator, sk_point_t[4] points = 4) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10263,7 +10263,7 @@ internal static SKPathVerb sk_path_rawiter_next (sk_path_rawiterator_t iterator, (sk_path_rawiter_next_delegate ??= GetSymbol ("sk_path_rawiter_next")).Invoke (iterator, points); #endif - // sk_path_verb_t sk_path_rawiter_peek(sk_path_rawiterator_t* iterator) + // sk_path_verb_t sk_path_rawiter_peek(sk_path_rawiterator_t * iterator) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10282,7 +10282,7 @@ internal static SKPathVerb sk_path_rawiter_peek (sk_path_rawiterator_t iterator) (sk_path_rawiter_peek_delegate ??= GetSymbol ("sk_path_rawiter_peek")).Invoke (iterator); #endif - // void sk_path_rconic_to(sk_path_t*, float dx0, float dy0, float dx1, float dy1, float w) + // void sk_path_rconic_to(sk_path_t *, float dx0, float dy0, float dx1, float dy1, float w) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10301,7 +10301,7 @@ internal static void sk_path_rconic_to (sk_path_t param0, Single dx0, Single dy0 (sk_path_rconic_to_delegate ??= GetSymbol ("sk_path_rconic_to")).Invoke (param0, dx0, dy0, dx1, dy1, w); #endif - // void sk_path_rcubic_to(sk_path_t*, float dx0, float dy0, float dx1, float dy1, float dx2, float dy2) + // void sk_path_rcubic_to(sk_path_t *, float dx0, float dy0, float dx1, float dy1, float dx2, float dy2) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10320,7 +10320,7 @@ internal static void sk_path_rcubic_to (sk_path_t param0, Single dx0, Single dy0 (sk_path_rcubic_to_delegate ??= GetSymbol ("sk_path_rcubic_to")).Invoke (param0, dx0, dy0, dx1, dy1, dx2, dy2); #endif - // void sk_path_reset(sk_path_t* cpath) + // void sk_path_reset(sk_path_t * cpath) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10339,7 +10339,7 @@ internal static void sk_path_reset (sk_path_t cpath) => (sk_path_reset_delegate ??= GetSymbol ("sk_path_reset")).Invoke (cpath); #endif - // void sk_path_rewind(sk_path_t* cpath) + // void sk_path_rewind(sk_path_t * cpath) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10358,7 +10358,7 @@ internal static void sk_path_rewind (sk_path_t cpath) => (sk_path_rewind_delegate ??= GetSymbol ("sk_path_rewind")).Invoke (cpath); #endif - // void sk_path_rline_to(sk_path_t*, float dx, float yd) + // void sk_path_rline_to(sk_path_t *, float dx, float yd) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10377,7 +10377,7 @@ internal static void sk_path_rline_to (sk_path_t param0, Single dx, Single yd) = (sk_path_rline_to_delegate ??= GetSymbol ("sk_path_rline_to")).Invoke (param0, dx, yd); #endif - // void sk_path_rmove_to(sk_path_t*, float dx, float dy) + // void sk_path_rmove_to(sk_path_t *, float dx, float dy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10396,7 +10396,7 @@ internal static void sk_path_rmove_to (sk_path_t param0, Single dx, Single dy) = (sk_path_rmove_to_delegate ??= GetSymbol ("sk_path_rmove_to")).Invoke (param0, dx, dy); #endif - // void sk_path_rquad_to(sk_path_t*, float dx0, float dy0, float dx1, float dy1) + // void sk_path_rquad_to(sk_path_t *, float dx0, float dy0, float dx1, float dy1) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10415,7 +10415,7 @@ internal static void sk_path_rquad_to (sk_path_t param0, Single dx0, Single dy0, (sk_path_rquad_to_delegate ??= GetSymbol ("sk_path_rquad_to")).Invoke (param0, dx0, dy0, dx1, dy1); #endif - // void sk_path_set_filltype(sk_path_t*, sk_path_filltype_t) + // void sk_path_set_filltype(sk_path_t *, sk_path_filltype_t) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10434,7 +10434,7 @@ internal static void sk_path_set_filltype (sk_path_t param0, SKPathFillType para (sk_path_set_filltype_delegate ??= GetSymbol ("sk_path_set_filltype")).Invoke (param0, param1); #endif - // void sk_path_to_svg_string(const sk_path_t* cpath, sk_string_t* str) + // void sk_path_to_svg_string(sk_path_t const * cpath, sk_string_t * str) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10453,7 +10453,7 @@ internal static void sk_path_to_svg_string (sk_path_t cpath, sk_string_t str) => (sk_path_to_svg_string_delegate ??= GetSymbol ("sk_path_to_svg_string")).Invoke (cpath, str); #endif - // void sk_path_transform(sk_path_t* cpath, const sk_matrix_t* cmatrix) + // void sk_path_transform(sk_path_t * cpath, sk_matrix_t const * cmatrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10472,7 +10472,7 @@ internal static void sk_path_transform (sk_path_t cpath, SKMatrix* cmatrix) => (sk_path_transform_delegate ??= GetSymbol ("sk_path_transform")).Invoke (cpath, cmatrix); #endif - // void sk_path_transform_to_dest(const sk_path_t* cpath, const sk_matrix_t* cmatrix, sk_path_t* destination) + // void sk_path_transform_to_dest(sk_path_t const * cpath, sk_matrix_t const * cmatrix, sk_path_t * destination) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10491,7 +10491,7 @@ internal static void sk_path_transform_to_dest (sk_path_t cpath, SKMatrix* cmatr (sk_path_transform_to_dest_delegate ??= GetSymbol ("sk_path_transform_to_dest")).Invoke (cpath, cmatrix, destination); #endif - // void sk_pathmeasure_destroy(sk_pathmeasure_t* pathMeasure) + // void sk_pathmeasure_destroy(sk_pathmeasure_t * pathMeasure) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10510,7 +10510,7 @@ internal static void sk_pathmeasure_destroy (sk_pathmeasure_t pathMeasure) => (sk_pathmeasure_destroy_delegate ??= GetSymbol ("sk_pathmeasure_destroy")).Invoke (pathMeasure); #endif - // float sk_pathmeasure_get_length(sk_pathmeasure_t* pathMeasure) + // float sk_pathmeasure_get_length(sk_pathmeasure_t * pathMeasure) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10529,7 +10529,7 @@ internal static Single sk_pathmeasure_get_length (sk_pathmeasure_t pathMeasure) (sk_pathmeasure_get_length_delegate ??= GetSymbol ("sk_pathmeasure_get_length")).Invoke (pathMeasure); #endif - // bool sk_pathmeasure_get_matrix(sk_pathmeasure_t* pathMeasure, float distance, sk_matrix_t* matrix, sk_pathmeasure_matrixflags_t flags) + // bool sk_pathmeasure_get_matrix(sk_pathmeasure_t * pathMeasure, float distance, sk_matrix_t * matrix, sk_pathmeasure_matrixflags_t flags) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10551,7 +10551,7 @@ internal static bool sk_pathmeasure_get_matrix (sk_pathmeasure_t pathMeasure, Si (sk_pathmeasure_get_matrix_delegate ??= GetSymbol ("sk_pathmeasure_get_matrix")).Invoke (pathMeasure, distance, matrix, flags); #endif - // bool sk_pathmeasure_get_pos_tan(sk_pathmeasure_t* pathMeasure, float distance, sk_point_t* position, sk_vector_t* tangent) + // bool sk_pathmeasure_get_pos_tan(sk_pathmeasure_t * pathMeasure, float distance, sk_point_t * position, sk_vector_t * tangent) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10573,7 +10573,7 @@ internal static bool sk_pathmeasure_get_pos_tan (sk_pathmeasure_t pathMeasure, S (sk_pathmeasure_get_pos_tan_delegate ??= GetSymbol ("sk_pathmeasure_get_pos_tan")).Invoke (pathMeasure, distance, position, tangent); #endif - // bool sk_pathmeasure_get_segment(sk_pathmeasure_t* pathMeasure, float start, float stop, sk_path_t* dst, bool startWithMoveTo) + // bool sk_pathmeasure_get_segment(sk_pathmeasure_t * pathMeasure, float start, float stop, sk_path_t * dst, bool startWithMoveTo) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10595,7 +10595,7 @@ internal static bool sk_pathmeasure_get_segment (sk_pathmeasure_t pathMeasure, S (sk_pathmeasure_get_segment_delegate ??= GetSymbol ("sk_pathmeasure_get_segment")).Invoke (pathMeasure, start, stop, dst, startWithMoveTo); #endif - // bool sk_pathmeasure_is_closed(sk_pathmeasure_t* pathMeasure) + // bool sk_pathmeasure_is_closed(sk_pathmeasure_t * pathMeasure) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10617,7 +10617,7 @@ internal static bool sk_pathmeasure_is_closed (sk_pathmeasure_t pathMeasure) => (sk_pathmeasure_is_closed_delegate ??= GetSymbol ("sk_pathmeasure_is_closed")).Invoke (pathMeasure); #endif - // sk_pathmeasure_t* sk_pathmeasure_new() + // sk_pathmeasure_t * sk_pathmeasure_new() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10636,7 +10636,7 @@ internal static sk_pathmeasure_t sk_pathmeasure_new () => (sk_pathmeasure_new_delegate ??= GetSymbol ("sk_pathmeasure_new")).Invoke (); #endif - // sk_pathmeasure_t* sk_pathmeasure_new_with_path(const sk_path_t* path, bool forceClosed, float resScale) + // sk_pathmeasure_t * sk_pathmeasure_new_with_path(sk_path_t const * path, bool forceClosed, float resScale) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10655,7 +10655,7 @@ internal static sk_pathmeasure_t sk_pathmeasure_new_with_path (sk_path_t path, [ (sk_pathmeasure_new_with_path_delegate ??= GetSymbol ("sk_pathmeasure_new_with_path")).Invoke (path, forceClosed, resScale); #endif - // bool sk_pathmeasure_next_contour(sk_pathmeasure_t* pathMeasure) + // bool sk_pathmeasure_next_contour(sk_pathmeasure_t * pathMeasure) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10677,7 +10677,7 @@ internal static bool sk_pathmeasure_next_contour (sk_pathmeasure_t pathMeasure) (sk_pathmeasure_next_contour_delegate ??= GetSymbol ("sk_pathmeasure_next_contour")).Invoke (pathMeasure); #endif - // void sk_pathmeasure_set_path(sk_pathmeasure_t* pathMeasure, const sk_path_t* path, bool forceClosed) + // void sk_pathmeasure_set_path(sk_pathmeasure_t * pathMeasure, sk_path_t const * path, bool forceClosed) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10696,7 +10696,7 @@ internal static void sk_pathmeasure_set_path (sk_pathmeasure_t pathMeasure, sk_p (sk_pathmeasure_set_path_delegate ??= GetSymbol ("sk_pathmeasure_set_path")).Invoke (pathMeasure, path, forceClosed); #endif - // bool sk_pathop_as_winding(const sk_path_t* path, sk_path_t* result) + // bool sk_pathop_as_winding(sk_path_t const * path, sk_path_t * result) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10718,7 +10718,7 @@ internal static bool sk_pathop_as_winding (sk_path_t path, sk_path_t result) => (sk_pathop_as_winding_delegate ??= GetSymbol ("sk_pathop_as_winding")).Invoke (path, result); #endif - // bool sk_pathop_op(const sk_path_t* one, const sk_path_t* two, sk_pathop_t op, sk_path_t* result) + // bool sk_pathop_op(sk_path_t const * one, sk_path_t const * two, sk_pathop_t op, sk_path_t * result) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10740,7 +10740,7 @@ internal static bool sk_pathop_op (sk_path_t one, sk_path_t two, SKPathOp op, sk (sk_pathop_op_delegate ??= GetSymbol ("sk_pathop_op")).Invoke (one, two, op, result); #endif - // bool sk_pathop_simplify(const sk_path_t* path, sk_path_t* result) + // bool sk_pathop_simplify(sk_path_t const * path, sk_path_t * result) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10762,7 +10762,7 @@ internal static bool sk_pathop_simplify (sk_path_t path, sk_path_t result) => (sk_pathop_simplify_delegate ??= GetSymbol ("sk_pathop_simplify")).Invoke (path, result); #endif - // bool sk_pathop_tight_bounds(const sk_path_t* path, sk_rect_t* result) + // bool sk_pathop_tight_bounds(sk_path_t const * path, sk_rect_t * result) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10788,7 +10788,7 @@ internal static bool sk_pathop_tight_bounds (sk_path_t path, SKRect* result) => #region sk_patheffect.h - // sk_path_effect_t* sk_path_effect_create_1d_path(const sk_path_t* path, float advance, float phase, sk_path_effect_1d_style_t style) + // sk_path_effect_t * sk_path_effect_create_1d_path(sk_path_t const * path, float advance, float phase, sk_path_effect_1d_style_t style) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10807,7 +10807,7 @@ internal static sk_path_effect_t sk_path_effect_create_1d_path (sk_path_t path, (sk_path_effect_create_1d_path_delegate ??= GetSymbol ("sk_path_effect_create_1d_path")).Invoke (path, advance, phase, style); #endif - // sk_path_effect_t* sk_path_effect_create_2d_line(float width, const sk_matrix_t* matrix) + // sk_path_effect_t * sk_path_effect_create_2d_line(float width, sk_matrix_t const * matrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10826,7 +10826,7 @@ internal static sk_path_effect_t sk_path_effect_create_2d_line (Single width, SK (sk_path_effect_create_2d_line_delegate ??= GetSymbol ("sk_path_effect_create_2d_line")).Invoke (width, matrix); #endif - // sk_path_effect_t* sk_path_effect_create_2d_path(const sk_matrix_t* matrix, const sk_path_t* path) + // sk_path_effect_t * sk_path_effect_create_2d_path(sk_matrix_t const * matrix, sk_path_t const * path) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10845,7 +10845,7 @@ internal static sk_path_effect_t sk_path_effect_create_2d_path (SKMatrix* matrix (sk_path_effect_create_2d_path_delegate ??= GetSymbol ("sk_path_effect_create_2d_path")).Invoke (matrix, path); #endif - // sk_path_effect_t* sk_path_effect_create_compose(sk_path_effect_t* outer, sk_path_effect_t* inner) + // sk_path_effect_t * sk_path_effect_create_compose(sk_path_effect_t * outer, sk_path_effect_t * inner) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10864,7 +10864,7 @@ internal static sk_path_effect_t sk_path_effect_create_compose (sk_path_effect_t (sk_path_effect_create_compose_delegate ??= GetSymbol ("sk_path_effect_create_compose")).Invoke (outer, inner); #endif - // sk_path_effect_t* sk_path_effect_create_corner(float radius) + // sk_path_effect_t * sk_path_effect_create_corner(float radius) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10883,7 +10883,7 @@ internal static sk_path_effect_t sk_path_effect_create_corner (Single radius) => (sk_path_effect_create_corner_delegate ??= GetSymbol ("sk_path_effect_create_corner")).Invoke (radius); #endif - // sk_path_effect_t* sk_path_effect_create_dash(const float[-1] intervals, int count, float phase) + // sk_path_effect_t * sk_path_effect_create_dash(float const[-1] intervals, int count, float phase) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10902,7 +10902,7 @@ internal static sk_path_effect_t sk_path_effect_create_dash (Single* intervals, (sk_path_effect_create_dash_delegate ??= GetSymbol ("sk_path_effect_create_dash")).Invoke (intervals, count, phase); #endif - // sk_path_effect_t* sk_path_effect_create_discrete(float segLength, float deviation, uint32_t seedAssist) + // sk_path_effect_t * sk_path_effect_create_discrete(float segLength, float deviation, unsigned int seedAssist) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10921,7 +10921,7 @@ internal static sk_path_effect_t sk_path_effect_create_discrete (Single segLengt (sk_path_effect_create_discrete_delegate ??= GetSymbol ("sk_path_effect_create_discrete")).Invoke (segLength, deviation, seedAssist); #endif - // sk_path_effect_t* sk_path_effect_create_sum(sk_path_effect_t* first, sk_path_effect_t* second) + // sk_path_effect_t * sk_path_effect_create_sum(sk_path_effect_t * first, sk_path_effect_t * second) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10940,7 +10940,7 @@ internal static sk_path_effect_t sk_path_effect_create_sum (sk_path_effect_t fir (sk_path_effect_create_sum_delegate ??= GetSymbol ("sk_path_effect_create_sum")).Invoke (first, second); #endif - // sk_path_effect_t* sk_path_effect_create_trim(float start, float stop, sk_path_effect_trim_mode_t mode) + // sk_path_effect_t * sk_path_effect_create_trim(float start, float stop, sk_path_effect_trim_mode_t mode) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10959,7 +10959,7 @@ internal static sk_path_effect_t sk_path_effect_create_trim (Single start, Singl (sk_path_effect_create_trim_delegate ??= GetSymbol ("sk_path_effect_create_trim")).Invoke (start, stop, mode); #endif - // void sk_path_effect_unref(sk_path_effect_t* t) + // void sk_path_effect_unref(sk_path_effect_t * t) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -10982,7 +10982,7 @@ internal static void sk_path_effect_unref (sk_path_effect_t t) => #region sk_picture.h - // size_t sk_picture_approximate_bytes_used(const sk_picture_t* picture) + // size_t sk_picture_approximate_bytes_used(sk_picture_t const * picture) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11001,7 +11001,7 @@ private partial class Delegates { (sk_picture_approximate_bytes_used_delegate ??= GetSymbol ("sk_picture_approximate_bytes_used")).Invoke (picture); #endif - // int sk_picture_approximate_op_count(const sk_picture_t* picture, bool nested) + // int sk_picture_approximate_op_count(sk_picture_t const * picture, bool nested) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11020,7 +11020,7 @@ internal static Int32 sk_picture_approximate_op_count (sk_picture_t picture, [Ma (sk_picture_approximate_op_count_delegate ??= GetSymbol ("sk_picture_approximate_op_count")).Invoke (picture, nested); #endif - // sk_picture_t* sk_picture_deserialize_from_data(sk_data_t* data) + // sk_picture_t * sk_picture_deserialize_from_data(sk_data_t * data) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11039,7 +11039,7 @@ internal static sk_picture_t sk_picture_deserialize_from_data (sk_data_t data) = (sk_picture_deserialize_from_data_delegate ??= GetSymbol ("sk_picture_deserialize_from_data")).Invoke (data); #endif - // sk_picture_t* sk_picture_deserialize_from_memory(void* buffer, size_t length) + // sk_picture_t * sk_picture_deserialize_from_memory(void * buffer, size_t length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11058,7 +11058,7 @@ internal static sk_picture_t sk_picture_deserialize_from_memory (void* buffer, / (sk_picture_deserialize_from_memory_delegate ??= GetSymbol ("sk_picture_deserialize_from_memory")).Invoke (buffer, length); #endif - // sk_picture_t* sk_picture_deserialize_from_stream(sk_stream_t* stream) + // sk_picture_t * sk_picture_deserialize_from_stream(sk_stream_t * stream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11077,7 +11077,7 @@ internal static sk_picture_t sk_picture_deserialize_from_stream (sk_stream_t str (sk_picture_deserialize_from_stream_delegate ??= GetSymbol ("sk_picture_deserialize_from_stream")).Invoke (stream); #endif - // void sk_picture_get_cull_rect(sk_picture_t*, sk_rect_t*) + // void sk_picture_get_cull_rect(sk_picture_t *, sk_rect_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11096,7 +11096,7 @@ internal static void sk_picture_get_cull_rect (sk_picture_t param0, SKRect* para (sk_picture_get_cull_rect_delegate ??= GetSymbol ("sk_picture_get_cull_rect")).Invoke (param0, param1); #endif - // sk_canvas_t* sk_picture_get_recording_canvas(sk_picture_recorder_t* crec) + // sk_canvas_t * sk_picture_get_recording_canvas(sk_picture_recorder_t * crec) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11115,7 +11115,7 @@ internal static sk_canvas_t sk_picture_get_recording_canvas (sk_picture_recorder (sk_picture_get_recording_canvas_delegate ??= GetSymbol ("sk_picture_get_recording_canvas")).Invoke (crec); #endif - // uint32_t sk_picture_get_unique_id(sk_picture_t*) + // unsigned int sk_picture_get_unique_id(sk_picture_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11134,7 +11134,7 @@ internal static UInt32 sk_picture_get_unique_id (sk_picture_t param0) => (sk_picture_get_unique_id_delegate ??= GetSymbol ("sk_picture_get_unique_id")).Invoke (param0); #endif - // sk_shader_t* sk_picture_make_shader(sk_picture_t* src, sk_shader_tilemode_t tmx, sk_shader_tilemode_t tmy, sk_filter_mode_t mode, const sk_matrix_t* localMatrix, const sk_rect_t* tile) + // sk_shader_t * sk_picture_make_shader(sk_picture_t * src, sk_shader_tilemode_t tmx, sk_shader_tilemode_t tmy, sk_filter_mode_t mode, sk_matrix_t const * localMatrix, sk_rect_t const * tile) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11153,7 +11153,7 @@ internal static sk_shader_t sk_picture_make_shader (sk_picture_t src, SKShaderTi (sk_picture_make_shader_delegate ??= GetSymbol ("sk_picture_make_shader")).Invoke (src, tmx, tmy, mode, localMatrix, tile); #endif - // void sk_picture_playback(const sk_picture_t* picture, sk_canvas_t* canvas) + // void sk_picture_playback(sk_picture_t const * picture, sk_canvas_t * canvas) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11172,7 +11172,7 @@ internal static void sk_picture_playback (sk_picture_t picture, sk_canvas_t canv (sk_picture_playback_delegate ??= GetSymbol ("sk_picture_playback")).Invoke (picture, canvas); #endif - // sk_canvas_t* sk_picture_recorder_begin_recording(sk_picture_recorder_t*, const sk_rect_t*) + // sk_canvas_t * sk_picture_recorder_begin_recording(sk_picture_recorder_t *, sk_rect_t const *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11191,7 +11191,7 @@ internal static sk_canvas_t sk_picture_recorder_begin_recording (sk_picture_reco (sk_picture_recorder_begin_recording_delegate ??= GetSymbol ("sk_picture_recorder_begin_recording")).Invoke (param0, param1); #endif - // sk_canvas_t* sk_picture_recorder_begin_recording_with_bbh_factory(sk_picture_recorder_t*, const sk_rect_t*, sk_bbh_factory_t*) + // sk_canvas_t * sk_picture_recorder_begin_recording_with_bbh_factory(sk_picture_recorder_t *, sk_rect_t const *, sk_bbh_factory_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11210,7 +11210,7 @@ internal static sk_canvas_t sk_picture_recorder_begin_recording_with_bbh_factory (sk_picture_recorder_begin_recording_with_bbh_factory_delegate ??= GetSymbol ("sk_picture_recorder_begin_recording_with_bbh_factory")).Invoke (param0, param1, param2); #endif - // void sk_picture_recorder_delete(sk_picture_recorder_t*) + // void sk_picture_recorder_delete(sk_picture_recorder_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11229,7 +11229,7 @@ internal static void sk_picture_recorder_delete (sk_picture_recorder_t param0) = (sk_picture_recorder_delete_delegate ??= GetSymbol ("sk_picture_recorder_delete")).Invoke (param0); #endif - // sk_picture_t* sk_picture_recorder_end_recording(sk_picture_recorder_t*) + // sk_picture_t * sk_picture_recorder_end_recording(sk_picture_recorder_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11248,7 +11248,7 @@ internal static sk_picture_t sk_picture_recorder_end_recording (sk_picture_recor (sk_picture_recorder_end_recording_delegate ??= GetSymbol ("sk_picture_recorder_end_recording")).Invoke (param0); #endif - // sk_drawable_t* sk_picture_recorder_end_recording_as_drawable(sk_picture_recorder_t*) + // sk_drawable_t * sk_picture_recorder_end_recording_as_drawable(sk_picture_recorder_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11267,7 +11267,7 @@ internal static sk_drawable_t sk_picture_recorder_end_recording_as_drawable (sk_ (sk_picture_recorder_end_recording_as_drawable_delegate ??= GetSymbol ("sk_picture_recorder_end_recording_as_drawable")).Invoke (param0); #endif - // sk_picture_recorder_t* sk_picture_recorder_new() + // sk_picture_recorder_t * sk_picture_recorder_new() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11286,7 +11286,7 @@ internal static sk_picture_recorder_t sk_picture_recorder_new () => (sk_picture_recorder_new_delegate ??= GetSymbol ("sk_picture_recorder_new")).Invoke (); #endif - // void sk_picture_ref(sk_picture_t*) + // void sk_picture_ref(sk_picture_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11305,7 +11305,7 @@ internal static void sk_picture_ref (sk_picture_t param0) => (sk_picture_ref_delegate ??= GetSymbol ("sk_picture_ref")).Invoke (param0); #endif - // sk_data_t* sk_picture_serialize_to_data(const sk_picture_t* picture) + // sk_data_t * sk_picture_serialize_to_data(sk_picture_t const * picture) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11324,7 +11324,7 @@ internal static sk_data_t sk_picture_serialize_to_data (sk_picture_t picture) => (sk_picture_serialize_to_data_delegate ??= GetSymbol ("sk_picture_serialize_to_data")).Invoke (picture); #endif - // void sk_picture_serialize_to_stream(const sk_picture_t* picture, sk_wstream_t* stream) + // void sk_picture_serialize_to_stream(sk_picture_t const * picture, sk_wstream_t * stream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11343,7 +11343,7 @@ internal static void sk_picture_serialize_to_stream (sk_picture_t picture, sk_ws (sk_picture_serialize_to_stream_delegate ??= GetSymbol ("sk_picture_serialize_to_stream")).Invoke (picture, stream); #endif - // void sk_picture_unref(sk_picture_t*) + // void sk_picture_unref(sk_picture_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11362,7 +11362,7 @@ internal static void sk_picture_unref (sk_picture_t param0) => (sk_picture_unref_delegate ??= GetSymbol ("sk_picture_unref")).Invoke (param0); #endif - // void sk_rtree_factory_delete(sk_rtree_factory_t*) + // void sk_rtree_factory_delete(sk_rtree_factory_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11381,7 +11381,7 @@ internal static void sk_rtree_factory_delete (sk_rtree_factory_t param0) => (sk_rtree_factory_delete_delegate ??= GetSymbol ("sk_rtree_factory_delete")).Invoke (param0); #endif - // sk_rtree_factory_t* sk_rtree_factory_new() + // sk_rtree_factory_t * sk_rtree_factory_new() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11404,7 +11404,7 @@ internal static sk_rtree_factory_t sk_rtree_factory_new () => #region sk_pixmap.h - // void sk_color_get_bit_shift(int* a, int* r, int* g, int* b) + // void sk_color_get_bit_shift(int * a, int * r, int * g, int * b) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11423,7 +11423,7 @@ internal static void sk_color_get_bit_shift (Int32* a, Int32* r, Int32* g, Int32 (sk_color_get_bit_shift_delegate ??= GetSymbol ("sk_color_get_bit_shift")).Invoke (a, r, g, b); #endif - // sk_pmcolor_t sk_color_premultiply(const sk_color_t color) + // sk_pmcolor_t sk_color_premultiply(sk_color_t const color) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11442,7 +11442,7 @@ internal static UInt32 sk_color_premultiply (UInt32 color) => (sk_color_premultiply_delegate ??= GetSymbol ("sk_color_premultiply")).Invoke (color); #endif - // void sk_color_premultiply_array(const sk_color_t* colors, int size, sk_pmcolor_t* pmcolors) + // void sk_color_premultiply_array(sk_color_t const * colors, int size, sk_pmcolor_t * pmcolors) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11461,7 +11461,7 @@ internal static void sk_color_premultiply_array (UInt32* colors, Int32 size, UIn (sk_color_premultiply_array_delegate ??= GetSymbol ("sk_color_premultiply_array")).Invoke (colors, size, pmcolors); #endif - // sk_color_t sk_color_unpremultiply(const sk_pmcolor_t pmcolor) + // sk_color_t sk_color_unpremultiply(sk_pmcolor_t const pmcolor) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11480,7 +11480,7 @@ internal static UInt32 sk_color_unpremultiply (UInt32 pmcolor) => (sk_color_unpremultiply_delegate ??= GetSymbol ("sk_color_unpremultiply")).Invoke (pmcolor); #endif - // void sk_color_unpremultiply_array(const sk_pmcolor_t* pmcolors, int size, sk_color_t* colors) + // void sk_color_unpremultiply_array(sk_pmcolor_t const * pmcolors, int size, sk_color_t * colors) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11499,7 +11499,7 @@ internal static void sk_color_unpremultiply_array (UInt32* pmcolors, Int32 size, (sk_color_unpremultiply_array_delegate ??= GetSymbol ("sk_color_unpremultiply_array")).Invoke (pmcolors, size, colors); #endif - // bool sk_jpegencoder_encode(sk_wstream_t* dst, const sk_pixmap_t* src, const sk_jpegencoder_options_t* options) + // bool sk_jpegencoder_encode(sk_wstream_t * dst, sk_pixmap_t const * src, sk_jpegencoder_options_t const * options) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11521,7 +11521,7 @@ internal static bool sk_jpegencoder_encode (sk_wstream_t dst, sk_pixmap_t src, S (sk_jpegencoder_encode_delegate ??= GetSymbol ("sk_jpegencoder_encode")).Invoke (dst, src, options); #endif - // bool sk_pixmap_compute_is_opaque(const sk_pixmap_t* cpixmap) + // bool sk_pixmap_compute_is_opaque(sk_pixmap_t const * cpixmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11543,7 +11543,7 @@ internal static bool sk_pixmap_compute_is_opaque (sk_pixmap_t cpixmap) => (sk_pixmap_compute_is_opaque_delegate ??= GetSymbol ("sk_pixmap_compute_is_opaque")).Invoke (cpixmap); #endif - // void sk_pixmap_destructor(sk_pixmap_t* cpixmap) + // void sk_pixmap_destructor(sk_pixmap_t * cpixmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11562,7 +11562,7 @@ internal static void sk_pixmap_destructor (sk_pixmap_t cpixmap) => (sk_pixmap_destructor_delegate ??= GetSymbol ("sk_pixmap_destructor")).Invoke (cpixmap); #endif - // bool sk_pixmap_erase_color(const sk_pixmap_t* cpixmap, sk_color_t color, const sk_irect_t* subset) + // bool sk_pixmap_erase_color(sk_pixmap_t const * cpixmap, sk_color_t color, sk_irect_t const * subset) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11584,7 +11584,7 @@ internal static bool sk_pixmap_erase_color (sk_pixmap_t cpixmap, UInt32 color, S (sk_pixmap_erase_color_delegate ??= GetSymbol ("sk_pixmap_erase_color")).Invoke (cpixmap, color, subset); #endif - // bool sk_pixmap_erase_color4f(const sk_pixmap_t* cpixmap, const sk_color4f_t* color, const sk_irect_t* subset) + // bool sk_pixmap_erase_color4f(sk_pixmap_t const * cpixmap, sk_color4f_t const * color, sk_irect_t const * subset) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11606,7 +11606,7 @@ internal static bool sk_pixmap_erase_color4f (sk_pixmap_t cpixmap, SKColorF* col (sk_pixmap_erase_color4f_delegate ??= GetSymbol ("sk_pixmap_erase_color4f")).Invoke (cpixmap, color, subset); #endif - // bool sk_pixmap_extract_subset(const sk_pixmap_t* cpixmap, sk_pixmap_t* result, const sk_irect_t* subset) + // bool sk_pixmap_extract_subset(sk_pixmap_t const * cpixmap, sk_pixmap_t * result, sk_irect_t const * subset) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11628,7 +11628,7 @@ internal static bool sk_pixmap_extract_subset (sk_pixmap_t cpixmap, sk_pixmap_t (sk_pixmap_extract_subset_delegate ??= GetSymbol ("sk_pixmap_extract_subset")).Invoke (cpixmap, result, subset); #endif - // sk_colorspace_t* sk_pixmap_get_colorspace(const sk_pixmap_t* cpixmap) + // sk_colorspace_t * sk_pixmap_get_colorspace(sk_pixmap_t const * cpixmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11647,7 +11647,7 @@ internal static sk_colorspace_t sk_pixmap_get_colorspace (sk_pixmap_t cpixmap) = (sk_pixmap_get_colorspace_delegate ??= GetSymbol ("sk_pixmap_get_colorspace")).Invoke (cpixmap); #endif - // void sk_pixmap_get_info(const sk_pixmap_t* cpixmap, sk_imageinfo_t* cinfo) + // void sk_pixmap_get_info(sk_pixmap_t const * cpixmap, sk_imageinfo_t * cinfo) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11666,7 +11666,7 @@ internal static void sk_pixmap_get_info (sk_pixmap_t cpixmap, SKImageInfoNative* (sk_pixmap_get_info_delegate ??= GetSymbol ("sk_pixmap_get_info")).Invoke (cpixmap, cinfo); #endif - // float sk_pixmap_get_pixel_alphaf(const sk_pixmap_t* cpixmap, int x, int y) + // float sk_pixmap_get_pixel_alphaf(sk_pixmap_t const * cpixmap, int x, int y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11685,7 +11685,7 @@ internal static Single sk_pixmap_get_pixel_alphaf (sk_pixmap_t cpixmap, Int32 x, (sk_pixmap_get_pixel_alphaf_delegate ??= GetSymbol ("sk_pixmap_get_pixel_alphaf")).Invoke (cpixmap, x, y); #endif - // sk_color_t sk_pixmap_get_pixel_color(const sk_pixmap_t* cpixmap, int x, int y) + // sk_color_t sk_pixmap_get_pixel_color(sk_pixmap_t const * cpixmap, int x, int y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11704,7 +11704,7 @@ internal static UInt32 sk_pixmap_get_pixel_color (sk_pixmap_t cpixmap, Int32 x, (sk_pixmap_get_pixel_color_delegate ??= GetSymbol ("sk_pixmap_get_pixel_color")).Invoke (cpixmap, x, y); #endif - // void sk_pixmap_get_pixel_color4f(const sk_pixmap_t* cpixmap, int x, int y, sk_color4f_t* color) + // void sk_pixmap_get_pixel_color4f(sk_pixmap_t const * cpixmap, int x, int y, sk_color4f_t * color) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11723,7 +11723,7 @@ internal static void sk_pixmap_get_pixel_color4f (sk_pixmap_t cpixmap, Int32 x, (sk_pixmap_get_pixel_color4f_delegate ??= GetSymbol ("sk_pixmap_get_pixel_color4f")).Invoke (cpixmap, x, y, color); #endif - // size_t sk_pixmap_get_row_bytes(const sk_pixmap_t* cpixmap) + // size_t sk_pixmap_get_row_bytes(sk_pixmap_t const * cpixmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11742,7 +11742,7 @@ private partial class Delegates { (sk_pixmap_get_row_bytes_delegate ??= GetSymbol ("sk_pixmap_get_row_bytes")).Invoke (cpixmap); #endif - // void* sk_pixmap_get_writable_addr(const sk_pixmap_t* cpixmap) + // void * sk_pixmap_get_writable_addr(sk_pixmap_t const * cpixmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11761,7 +11761,7 @@ private partial class Delegates { (sk_pixmap_get_writable_addr_delegate ??= GetSymbol ("sk_pixmap_get_writable_addr")).Invoke (cpixmap); #endif - // void* sk_pixmap_get_writeable_addr_with_xy(const sk_pixmap_t* cpixmap, int x, int y) + // void * sk_pixmap_get_writeable_addr_with_xy(sk_pixmap_t const * cpixmap, int x, int y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11780,7 +11780,7 @@ private partial class Delegates { (sk_pixmap_get_writeable_addr_with_xy_delegate ??= GetSymbol ("sk_pixmap_get_writeable_addr_with_xy")).Invoke (cpixmap, x, y); #endif - // sk_pixmap_t* sk_pixmap_new() + // sk_pixmap_t * sk_pixmap_new() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11799,7 +11799,7 @@ internal static sk_pixmap_t sk_pixmap_new () => (sk_pixmap_new_delegate ??= GetSymbol ("sk_pixmap_new")).Invoke (); #endif - // sk_pixmap_t* sk_pixmap_new_with_params(const sk_imageinfo_t* cinfo, const void* addr, size_t rowBytes) + // sk_pixmap_t * sk_pixmap_new_with_params(sk_imageinfo_t const * cinfo, void const * addr, size_t rowBytes) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11818,7 +11818,7 @@ internal static sk_pixmap_t sk_pixmap_new_with_params (SKImageInfoNative* cinfo, (sk_pixmap_new_with_params_delegate ??= GetSymbol ("sk_pixmap_new_with_params")).Invoke (cinfo, addr, rowBytes); #endif - // bool sk_pixmap_read_pixels(const sk_pixmap_t* cpixmap, const sk_imageinfo_t* dstInfo, void* dstPixels, size_t dstRowBytes, int srcX, int srcY) + // bool sk_pixmap_read_pixels(sk_pixmap_t const * cpixmap, sk_imageinfo_t const * dstInfo, void * dstPixels, size_t dstRowBytes, int srcX, int srcY) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11840,7 +11840,7 @@ internal static bool sk_pixmap_read_pixels (sk_pixmap_t cpixmap, SKImageInfoNati (sk_pixmap_read_pixels_delegate ??= GetSymbol ("sk_pixmap_read_pixels")).Invoke (cpixmap, dstInfo, dstPixels, dstRowBytes, srcX, srcY); #endif - // void sk_pixmap_reset(sk_pixmap_t* cpixmap) + // void sk_pixmap_reset(sk_pixmap_t * cpixmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11859,7 +11859,7 @@ internal static void sk_pixmap_reset (sk_pixmap_t cpixmap) => (sk_pixmap_reset_delegate ??= GetSymbol ("sk_pixmap_reset")).Invoke (cpixmap); #endif - // void sk_pixmap_reset_with_params(sk_pixmap_t* cpixmap, const sk_imageinfo_t* cinfo, const void* addr, size_t rowBytes) + // void sk_pixmap_reset_with_params(sk_pixmap_t * cpixmap, sk_imageinfo_t const * cinfo, void const * addr, size_t rowBytes) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11878,7 +11878,7 @@ internal static void sk_pixmap_reset_with_params (sk_pixmap_t cpixmap, SKImageIn (sk_pixmap_reset_with_params_delegate ??= GetSymbol ("sk_pixmap_reset_with_params")).Invoke (cpixmap, cinfo, addr, rowBytes); #endif - // bool sk_pixmap_scale_pixels(const sk_pixmap_t* cpixmap, const sk_pixmap_t* dst, const sk_sampling_options_t* sampling) + // bool sk_pixmap_scale_pixels(sk_pixmap_t const * cpixmap, sk_pixmap_t const * dst, sk_sampling_options_t const * sampling) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11900,7 +11900,7 @@ internal static bool sk_pixmap_scale_pixels (sk_pixmap_t cpixmap, sk_pixmap_t ds (sk_pixmap_scale_pixels_delegate ??= GetSymbol ("sk_pixmap_scale_pixels")).Invoke (cpixmap, dst, sampling); #endif - // void sk_pixmap_set_colorspace(sk_pixmap_t* cpixmap, sk_colorspace_t* colorspace) + // void sk_pixmap_set_colorspace(sk_pixmap_t * cpixmap, sk_colorspace_t * colorspace) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11919,7 +11919,7 @@ internal static void sk_pixmap_set_colorspace (sk_pixmap_t cpixmap, sk_colorspac (sk_pixmap_set_colorspace_delegate ??= GetSymbol ("sk_pixmap_set_colorspace")).Invoke (cpixmap, colorspace); #endif - // bool sk_pngencoder_encode(sk_wstream_t* dst, const sk_pixmap_t* src, const sk_pngencoder_options_t* options) + // bool sk_pngencoder_encode(sk_wstream_t * dst, sk_pixmap_t const * src, sk_pngencoder_options_t const * options) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11941,7 +11941,7 @@ internal static bool sk_pngencoder_encode (sk_wstream_t dst, sk_pixmap_t src, SK (sk_pngencoder_encode_delegate ??= GetSymbol ("sk_pngencoder_encode")).Invoke (dst, src, options); #endif - // void sk_swizzle_swap_rb(uint32_t* dest, const uint32_t* src, int count) + // void sk_swizzle_swap_rb(unsigned int * dest, unsigned int const * src, int count) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11960,7 +11960,7 @@ internal static void sk_swizzle_swap_rb (UInt32* dest, UInt32* src, Int32 count) (sk_swizzle_swap_rb_delegate ??= GetSymbol ("sk_swizzle_swap_rb")).Invoke (dest, src, count); #endif - // bool sk_webpencoder_encode(sk_wstream_t* dst, const sk_pixmap_t* src, const sk_webpencoder_options_t* options) + // bool sk_webpencoder_encode(sk_wstream_t * dst, sk_pixmap_t const * src, sk_webpencoder_options_t const * options) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -11986,7 +11986,7 @@ internal static bool sk_webpencoder_encode (sk_wstream_t dst, sk_pixmap_t src, S #region sk_region.h - // void sk_region_cliperator_delete(sk_region_cliperator_t* iter) + // void sk_region_cliperator_delete(sk_region_cliperator_t * iter) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12005,7 +12005,7 @@ internal static void sk_region_cliperator_delete (sk_region_cliperator_t iter) = (sk_region_cliperator_delete_delegate ??= GetSymbol ("sk_region_cliperator_delete")).Invoke (iter); #endif - // bool sk_region_cliperator_done(sk_region_cliperator_t* iter) + // bool sk_region_cliperator_done(sk_region_cliperator_t * iter) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12027,7 +12027,7 @@ internal static bool sk_region_cliperator_done (sk_region_cliperator_t iter) => (sk_region_cliperator_done_delegate ??= GetSymbol ("sk_region_cliperator_done")).Invoke (iter); #endif - // sk_region_cliperator_t* sk_region_cliperator_new(const sk_region_t* region, const sk_irect_t* clip) + // sk_region_cliperator_t * sk_region_cliperator_new(sk_region_t const * region, sk_irect_t const * clip) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12046,7 +12046,7 @@ internal static sk_region_cliperator_t sk_region_cliperator_new (sk_region_t reg (sk_region_cliperator_new_delegate ??= GetSymbol ("sk_region_cliperator_new")).Invoke (region, clip); #endif - // void sk_region_cliperator_next(sk_region_cliperator_t* iter) + // void sk_region_cliperator_next(sk_region_cliperator_t * iter) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12065,7 +12065,7 @@ internal static void sk_region_cliperator_next (sk_region_cliperator_t iter) => (sk_region_cliperator_next_delegate ??= GetSymbol ("sk_region_cliperator_next")).Invoke (iter); #endif - // void sk_region_cliperator_rect(const sk_region_cliperator_t* iter, sk_irect_t* rect) + // void sk_region_cliperator_rect(sk_region_cliperator_t const * iter, sk_irect_t * rect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12084,7 +12084,7 @@ internal static void sk_region_cliperator_rect (sk_region_cliperator_t iter, SKR (sk_region_cliperator_rect_delegate ??= GetSymbol ("sk_region_cliperator_rect")).Invoke (iter, rect); #endif - // bool sk_region_contains(const sk_region_t* r, const sk_region_t* region) + // bool sk_region_contains(sk_region_t const * r, sk_region_t const * region) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12106,7 +12106,7 @@ internal static bool sk_region_contains (sk_region_t r, sk_region_t region) => (sk_region_contains_delegate ??= GetSymbol ("sk_region_contains")).Invoke (r, region); #endif - // bool sk_region_contains_point(const sk_region_t* r, int x, int y) + // bool sk_region_contains_point(sk_region_t const * r, int x, int y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12128,7 +12128,7 @@ internal static bool sk_region_contains_point (sk_region_t r, Int32 x, Int32 y) (sk_region_contains_point_delegate ??= GetSymbol ("sk_region_contains_point")).Invoke (r, x, y); #endif - // bool sk_region_contains_rect(const sk_region_t* r, const sk_irect_t* rect) + // bool sk_region_contains_rect(sk_region_t const * r, sk_irect_t const * rect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12150,7 +12150,7 @@ internal static bool sk_region_contains_rect (sk_region_t r, SKRectI* rect) => (sk_region_contains_rect_delegate ??= GetSymbol ("sk_region_contains_rect")).Invoke (r, rect); #endif - // void sk_region_delete(sk_region_t* r) + // void sk_region_delete(sk_region_t * r) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12169,7 +12169,7 @@ internal static void sk_region_delete (sk_region_t r) => (sk_region_delete_delegate ??= GetSymbol ("sk_region_delete")).Invoke (r); #endif - // bool sk_region_get_boundary_path(const sk_region_t* r, sk_path_t* path) + // bool sk_region_get_boundary_path(sk_region_t const * r, sk_path_t * path) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12191,7 +12191,7 @@ internal static bool sk_region_get_boundary_path (sk_region_t r, sk_path_t path) (sk_region_get_boundary_path_delegate ??= GetSymbol ("sk_region_get_boundary_path")).Invoke (r, path); #endif - // void sk_region_get_bounds(const sk_region_t* r, sk_irect_t* rect) + // void sk_region_get_bounds(sk_region_t const * r, sk_irect_t * rect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12210,7 +12210,7 @@ internal static void sk_region_get_bounds (sk_region_t r, SKRectI* rect) => (sk_region_get_bounds_delegate ??= GetSymbol ("sk_region_get_bounds")).Invoke (r, rect); #endif - // bool sk_region_intersects(const sk_region_t* r, const sk_region_t* src) + // bool sk_region_intersects(sk_region_t const * r, sk_region_t const * src) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12232,7 +12232,7 @@ internal static bool sk_region_intersects (sk_region_t r, sk_region_t src) => (sk_region_intersects_delegate ??= GetSymbol ("sk_region_intersects")).Invoke (r, src); #endif - // bool sk_region_intersects_rect(const sk_region_t* r, const sk_irect_t* rect) + // bool sk_region_intersects_rect(sk_region_t const * r, sk_irect_t const * rect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12254,7 +12254,7 @@ internal static bool sk_region_intersects_rect (sk_region_t r, SKRectI* rect) => (sk_region_intersects_rect_delegate ??= GetSymbol ("sk_region_intersects_rect")).Invoke (r, rect); #endif - // bool sk_region_is_complex(const sk_region_t* r) + // bool sk_region_is_complex(sk_region_t const * r) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12276,7 +12276,7 @@ internal static bool sk_region_is_complex (sk_region_t r) => (sk_region_is_complex_delegate ??= GetSymbol ("sk_region_is_complex")).Invoke (r); #endif - // bool sk_region_is_empty(const sk_region_t* r) + // bool sk_region_is_empty(sk_region_t const * r) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12298,7 +12298,7 @@ internal static bool sk_region_is_empty (sk_region_t r) => (sk_region_is_empty_delegate ??= GetSymbol ("sk_region_is_empty")).Invoke (r); #endif - // bool sk_region_is_rect(const sk_region_t* r) + // bool sk_region_is_rect(sk_region_t const * r) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12320,7 +12320,7 @@ internal static bool sk_region_is_rect (sk_region_t r) => (sk_region_is_rect_delegate ??= GetSymbol ("sk_region_is_rect")).Invoke (r); #endif - // void sk_region_iterator_delete(sk_region_iterator_t* iter) + // void sk_region_iterator_delete(sk_region_iterator_t * iter) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12339,7 +12339,7 @@ internal static void sk_region_iterator_delete (sk_region_iterator_t iter) => (sk_region_iterator_delete_delegate ??= GetSymbol ("sk_region_iterator_delete")).Invoke (iter); #endif - // bool sk_region_iterator_done(const sk_region_iterator_t* iter) + // bool sk_region_iterator_done(sk_region_iterator_t const * iter) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12361,7 +12361,7 @@ internal static bool sk_region_iterator_done (sk_region_iterator_t iter) => (sk_region_iterator_done_delegate ??= GetSymbol ("sk_region_iterator_done")).Invoke (iter); #endif - // sk_region_iterator_t* sk_region_iterator_new(const sk_region_t* region) + // sk_region_iterator_t * sk_region_iterator_new(sk_region_t const * region) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12380,7 +12380,7 @@ internal static sk_region_iterator_t sk_region_iterator_new (sk_region_t region) (sk_region_iterator_new_delegate ??= GetSymbol ("sk_region_iterator_new")).Invoke (region); #endif - // void sk_region_iterator_next(sk_region_iterator_t* iter) + // void sk_region_iterator_next(sk_region_iterator_t * iter) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12399,7 +12399,7 @@ internal static void sk_region_iterator_next (sk_region_iterator_t iter) => (sk_region_iterator_next_delegate ??= GetSymbol ("sk_region_iterator_next")).Invoke (iter); #endif - // void sk_region_iterator_rect(const sk_region_iterator_t* iter, sk_irect_t* rect) + // void sk_region_iterator_rect(sk_region_iterator_t const * iter, sk_irect_t * rect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12418,7 +12418,7 @@ internal static void sk_region_iterator_rect (sk_region_iterator_t iter, SKRectI (sk_region_iterator_rect_delegate ??= GetSymbol ("sk_region_iterator_rect")).Invoke (iter, rect); #endif - // bool sk_region_iterator_rewind(sk_region_iterator_t* iter) + // bool sk_region_iterator_rewind(sk_region_iterator_t * iter) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12440,7 +12440,7 @@ internal static bool sk_region_iterator_rewind (sk_region_iterator_t iter) => (sk_region_iterator_rewind_delegate ??= GetSymbol ("sk_region_iterator_rewind")).Invoke (iter); #endif - // sk_region_t* sk_region_new() + // sk_region_t * sk_region_new() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12459,7 +12459,7 @@ internal static sk_region_t sk_region_new () => (sk_region_new_delegate ??= GetSymbol ("sk_region_new")).Invoke (); #endif - // bool sk_region_op(sk_region_t* r, const sk_region_t* region, sk_region_op_t op) + // bool sk_region_op(sk_region_t * r, sk_region_t const * region, sk_region_op_t op) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12481,7 +12481,7 @@ internal static bool sk_region_op (sk_region_t r, sk_region_t region, SKRegionOp (sk_region_op_delegate ??= GetSymbol ("sk_region_op")).Invoke (r, region, op); #endif - // bool sk_region_op_rect(sk_region_t* r, const sk_irect_t* rect, sk_region_op_t op) + // bool sk_region_op_rect(sk_region_t * r, sk_irect_t const * rect, sk_region_op_t op) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12503,7 +12503,7 @@ internal static bool sk_region_op_rect (sk_region_t r, SKRectI* rect, SKRegionOp (sk_region_op_rect_delegate ??= GetSymbol ("sk_region_op_rect")).Invoke (r, rect, op); #endif - // bool sk_region_quick_contains(const sk_region_t* r, const sk_irect_t* rect) + // bool sk_region_quick_contains(sk_region_t const * r, sk_irect_t const * rect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12525,7 +12525,7 @@ internal static bool sk_region_quick_contains (sk_region_t r, SKRectI* rect) => (sk_region_quick_contains_delegate ??= GetSymbol ("sk_region_quick_contains")).Invoke (r, rect); #endif - // bool sk_region_quick_reject(const sk_region_t* r, const sk_region_t* region) + // bool sk_region_quick_reject(sk_region_t const * r, sk_region_t const * region) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12547,7 +12547,7 @@ internal static bool sk_region_quick_reject (sk_region_t r, sk_region_t region) (sk_region_quick_reject_delegate ??= GetSymbol ("sk_region_quick_reject")).Invoke (r, region); #endif - // bool sk_region_quick_reject_rect(const sk_region_t* r, const sk_irect_t* rect) + // bool sk_region_quick_reject_rect(sk_region_t const * r, sk_irect_t const * rect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12569,7 +12569,7 @@ internal static bool sk_region_quick_reject_rect (sk_region_t r, SKRectI* rect) (sk_region_quick_reject_rect_delegate ??= GetSymbol ("sk_region_quick_reject_rect")).Invoke (r, rect); #endif - // bool sk_region_set_empty(sk_region_t* r) + // bool sk_region_set_empty(sk_region_t * r) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12591,7 +12591,7 @@ internal static bool sk_region_set_empty (sk_region_t r) => (sk_region_set_empty_delegate ??= GetSymbol ("sk_region_set_empty")).Invoke (r); #endif - // bool sk_region_set_path(sk_region_t* r, const sk_path_t* t, const sk_region_t* clip) + // bool sk_region_set_path(sk_region_t * r, sk_path_t const * t, sk_region_t const * clip) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12613,7 +12613,7 @@ internal static bool sk_region_set_path (sk_region_t r, sk_path_t t, sk_region_t (sk_region_set_path_delegate ??= GetSymbol ("sk_region_set_path")).Invoke (r, t, clip); #endif - // bool sk_region_set_rect(sk_region_t* r, const sk_irect_t* rect) + // bool sk_region_set_rect(sk_region_t * r, sk_irect_t const * rect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12635,7 +12635,7 @@ internal static bool sk_region_set_rect (sk_region_t r, SKRectI* rect) => (sk_region_set_rect_delegate ??= GetSymbol ("sk_region_set_rect")).Invoke (r, rect); #endif - // bool sk_region_set_rects(sk_region_t* r, const sk_irect_t* rects, int count) + // bool sk_region_set_rects(sk_region_t * r, sk_irect_t const * rects, int count) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12657,7 +12657,7 @@ internal static bool sk_region_set_rects (sk_region_t r, SKRectI* rects, Int32 c (sk_region_set_rects_delegate ??= GetSymbol ("sk_region_set_rects")).Invoke (r, rects, count); #endif - // bool sk_region_set_region(sk_region_t* r, const sk_region_t* region) + // bool sk_region_set_region(sk_region_t * r, sk_region_t const * region) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12679,7 +12679,7 @@ internal static bool sk_region_set_region (sk_region_t r, sk_region_t region) => (sk_region_set_region_delegate ??= GetSymbol ("sk_region_set_region")).Invoke (r, region); #endif - // void sk_region_spanerator_delete(sk_region_spanerator_t* iter) + // void sk_region_spanerator_delete(sk_region_spanerator_t * iter) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12698,7 +12698,7 @@ internal static void sk_region_spanerator_delete (sk_region_spanerator_t iter) = (sk_region_spanerator_delete_delegate ??= GetSymbol ("sk_region_spanerator_delete")).Invoke (iter); #endif - // sk_region_spanerator_t* sk_region_spanerator_new(const sk_region_t* region, int y, int left, int right) + // sk_region_spanerator_t * sk_region_spanerator_new(sk_region_t const * region, int y, int left, int right) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12717,7 +12717,7 @@ internal static sk_region_spanerator_t sk_region_spanerator_new (sk_region_t reg (sk_region_spanerator_new_delegate ??= GetSymbol ("sk_region_spanerator_new")).Invoke (region, y, left, right); #endif - // bool sk_region_spanerator_next(sk_region_spanerator_t* iter, int* left, int* right) + // bool sk_region_spanerator_next(sk_region_spanerator_t * iter, int * left, int * right) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12739,7 +12739,7 @@ internal static bool sk_region_spanerator_next (sk_region_spanerator_t iter, Int (sk_region_spanerator_next_delegate ??= GetSymbol ("sk_region_spanerator_next")).Invoke (iter, left, right); #endif - // void sk_region_translate(sk_region_t* r, int x, int y) + // void sk_region_translate(sk_region_t * r, int x, int y) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12762,7 +12762,7 @@ internal static void sk_region_translate (sk_region_t r, Int32 x, Int32 y) => #region sk_rrect.h - // bool sk_rrect_contains(const sk_rrect_t* rrect, const sk_rect_t* rect) + // bool sk_rrect_contains(sk_rrect_t const * rrect, sk_rect_t const * rect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12784,7 +12784,7 @@ internal static bool sk_rrect_contains (sk_rrect_t rrect, SKRect* rect) => (sk_rrect_contains_delegate ??= GetSymbol ("sk_rrect_contains")).Invoke (rrect, rect); #endif - // void sk_rrect_delete(const sk_rrect_t* rrect) + // void sk_rrect_delete(sk_rrect_t const * rrect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12803,7 +12803,7 @@ internal static void sk_rrect_delete (sk_rrect_t rrect) => (sk_rrect_delete_delegate ??= GetSymbol ("sk_rrect_delete")).Invoke (rrect); #endif - // float sk_rrect_get_height(const sk_rrect_t* rrect) + // float sk_rrect_get_height(sk_rrect_t const * rrect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12822,7 +12822,7 @@ internal static Single sk_rrect_get_height (sk_rrect_t rrect) => (sk_rrect_get_height_delegate ??= GetSymbol ("sk_rrect_get_height")).Invoke (rrect); #endif - // void sk_rrect_get_radii(const sk_rrect_t* rrect, sk_rrect_corner_t corner, sk_vector_t* radii) + // void sk_rrect_get_radii(sk_rrect_t const * rrect, sk_rrect_corner_t corner, sk_vector_t * radii) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12841,7 +12841,7 @@ internal static void sk_rrect_get_radii (sk_rrect_t rrect, SKRoundRectCorner cor (sk_rrect_get_radii_delegate ??= GetSymbol ("sk_rrect_get_radii")).Invoke (rrect, corner, radii); #endif - // void sk_rrect_get_rect(const sk_rrect_t* rrect, sk_rect_t* rect) + // void sk_rrect_get_rect(sk_rrect_t const * rrect, sk_rect_t * rect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12860,7 +12860,7 @@ internal static void sk_rrect_get_rect (sk_rrect_t rrect, SKRect* rect) => (sk_rrect_get_rect_delegate ??= GetSymbol ("sk_rrect_get_rect")).Invoke (rrect, rect); #endif - // sk_rrect_type_t sk_rrect_get_type(const sk_rrect_t* rrect) + // sk_rrect_type_t sk_rrect_get_type(sk_rrect_t const * rrect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12879,7 +12879,7 @@ internal static SKRoundRectType sk_rrect_get_type (sk_rrect_t rrect) => (sk_rrect_get_type_delegate ??= GetSymbol ("sk_rrect_get_type")).Invoke (rrect); #endif - // float sk_rrect_get_width(const sk_rrect_t* rrect) + // float sk_rrect_get_width(sk_rrect_t const * rrect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12898,7 +12898,7 @@ internal static Single sk_rrect_get_width (sk_rrect_t rrect) => (sk_rrect_get_width_delegate ??= GetSymbol ("sk_rrect_get_width")).Invoke (rrect); #endif - // void sk_rrect_inset(sk_rrect_t* rrect, float dx, float dy) + // void sk_rrect_inset(sk_rrect_t * rrect, float dx, float dy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12917,7 +12917,7 @@ internal static void sk_rrect_inset (sk_rrect_t rrect, Single dx, Single dy) => (sk_rrect_inset_delegate ??= GetSymbol ("sk_rrect_inset")).Invoke (rrect, dx, dy); #endif - // bool sk_rrect_is_valid(const sk_rrect_t* rrect) + // bool sk_rrect_is_valid(sk_rrect_t const * rrect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12939,7 +12939,7 @@ internal static bool sk_rrect_is_valid (sk_rrect_t rrect) => (sk_rrect_is_valid_delegate ??= GetSymbol ("sk_rrect_is_valid")).Invoke (rrect); #endif - // sk_rrect_t* sk_rrect_new() + // sk_rrect_t * sk_rrect_new() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12958,7 +12958,7 @@ internal static sk_rrect_t sk_rrect_new () => (sk_rrect_new_delegate ??= GetSymbol ("sk_rrect_new")).Invoke (); #endif - // sk_rrect_t* sk_rrect_new_copy(const sk_rrect_t* rrect) + // sk_rrect_t * sk_rrect_new_copy(sk_rrect_t const * rrect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12977,7 +12977,7 @@ internal static sk_rrect_t sk_rrect_new_copy (sk_rrect_t rrect) => (sk_rrect_new_copy_delegate ??= GetSymbol ("sk_rrect_new_copy")).Invoke (rrect); #endif - // void sk_rrect_offset(sk_rrect_t* rrect, float dx, float dy) + // void sk_rrect_offset(sk_rrect_t * rrect, float dx, float dy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -12996,7 +12996,7 @@ internal static void sk_rrect_offset (sk_rrect_t rrect, Single dx, Single dy) => (sk_rrect_offset_delegate ??= GetSymbol ("sk_rrect_offset")).Invoke (rrect, dx, dy); #endif - // void sk_rrect_outset(sk_rrect_t* rrect, float dx, float dy) + // void sk_rrect_outset(sk_rrect_t * rrect, float dx, float dy) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13015,7 +13015,7 @@ internal static void sk_rrect_outset (sk_rrect_t rrect, Single dx, Single dy) => (sk_rrect_outset_delegate ??= GetSymbol ("sk_rrect_outset")).Invoke (rrect, dx, dy); #endif - // void sk_rrect_set_empty(sk_rrect_t* rrect) + // void sk_rrect_set_empty(sk_rrect_t * rrect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13034,7 +13034,7 @@ internal static void sk_rrect_set_empty (sk_rrect_t rrect) => (sk_rrect_set_empty_delegate ??= GetSymbol ("sk_rrect_set_empty")).Invoke (rrect); #endif - // void sk_rrect_set_nine_patch(sk_rrect_t* rrect, const sk_rect_t* rect, float leftRad, float topRad, float rightRad, float bottomRad) + // void sk_rrect_set_nine_patch(sk_rrect_t * rrect, sk_rect_t const * rect, float leftRad, float topRad, float rightRad, float bottomRad) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13053,7 +13053,7 @@ internal static void sk_rrect_set_nine_patch (sk_rrect_t rrect, SKRect* rect, Si (sk_rrect_set_nine_patch_delegate ??= GetSymbol ("sk_rrect_set_nine_patch")).Invoke (rrect, rect, leftRad, topRad, rightRad, bottomRad); #endif - // void sk_rrect_set_oval(sk_rrect_t* rrect, const sk_rect_t* rect) + // void sk_rrect_set_oval(sk_rrect_t * rrect, sk_rect_t const * rect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13072,7 +13072,7 @@ internal static void sk_rrect_set_oval (sk_rrect_t rrect, SKRect* rect) => (sk_rrect_set_oval_delegate ??= GetSymbol ("sk_rrect_set_oval")).Invoke (rrect, rect); #endif - // void sk_rrect_set_rect(sk_rrect_t* rrect, const sk_rect_t* rect) + // void sk_rrect_set_rect(sk_rrect_t * rrect, sk_rect_t const * rect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13091,7 +13091,7 @@ internal static void sk_rrect_set_rect (sk_rrect_t rrect, SKRect* rect) => (sk_rrect_set_rect_delegate ??= GetSymbol ("sk_rrect_set_rect")).Invoke (rrect, rect); #endif - // void sk_rrect_set_rect_radii(sk_rrect_t* rrect, const sk_rect_t* rect, const sk_vector_t* radii) + // void sk_rrect_set_rect_radii(sk_rrect_t * rrect, sk_rect_t const * rect, sk_vector_t const * radii) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13110,7 +13110,7 @@ internal static void sk_rrect_set_rect_radii (sk_rrect_t rrect, SKRect* rect, SK (sk_rrect_set_rect_radii_delegate ??= GetSymbol ("sk_rrect_set_rect_radii")).Invoke (rrect, rect, radii); #endif - // void sk_rrect_set_rect_xy(sk_rrect_t* rrect, const sk_rect_t* rect, float xRad, float yRad) + // void sk_rrect_set_rect_xy(sk_rrect_t * rrect, sk_rect_t const * rect, float xRad, float yRad) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13129,7 +13129,7 @@ internal static void sk_rrect_set_rect_xy (sk_rrect_t rrect, SKRect* rect, Singl (sk_rrect_set_rect_xy_delegate ??= GetSymbol ("sk_rrect_set_rect_xy")).Invoke (rrect, rect, xRad, yRad); #endif - // bool sk_rrect_transform(sk_rrect_t* rrect, const sk_matrix_t* matrix, sk_rrect_t* dest) + // bool sk_rrect_transform(sk_rrect_t * rrect, sk_matrix_t const * matrix, sk_rrect_t * dest) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13155,7 +13155,7 @@ internal static bool sk_rrect_transform (sk_rrect_t rrect, SKMatrix* matrix, sk_ #region sk_runtimeeffect.h - // void sk_runtimeeffect_get_child_from_index(const sk_runtimeeffect_t* effect, int index, sk_runtimeeffect_child_t* cchild) + // void sk_runtimeeffect_get_child_from_index(sk_runtimeeffect_t const * effect, int index, sk_runtimeeffect_child_t * cchild) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13174,7 +13174,7 @@ internal static void sk_runtimeeffect_get_child_from_index (sk_runtimeeffect_t e (sk_runtimeeffect_get_child_from_index_delegate ??= GetSymbol ("sk_runtimeeffect_get_child_from_index")).Invoke (effect, index, cchild); #endif - // void sk_runtimeeffect_get_child_from_name(const sk_runtimeeffect_t* effect, const char* name, size_t len, sk_runtimeeffect_child_t* cchild) + // void sk_runtimeeffect_get_child_from_name(sk_runtimeeffect_t const * effect, char const * name, size_t len, sk_runtimeeffect_child_t * cchild) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13193,7 +13193,7 @@ internal static void sk_runtimeeffect_get_child_from_name (sk_runtimeeffect_t ef (sk_runtimeeffect_get_child_from_name_delegate ??= GetSymbol ("sk_runtimeeffect_get_child_from_name")).Invoke (effect, name, len, cchild); #endif - // void sk_runtimeeffect_get_child_name(const sk_runtimeeffect_t* effect, int index, sk_string_t* name) + // void sk_runtimeeffect_get_child_name(sk_runtimeeffect_t const * effect, int index, sk_string_t * name) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13212,7 +13212,7 @@ internal static void sk_runtimeeffect_get_child_name (sk_runtimeeffect_t effect, (sk_runtimeeffect_get_child_name_delegate ??= GetSymbol ("sk_runtimeeffect_get_child_name")).Invoke (effect, index, name); #endif - // size_t sk_runtimeeffect_get_children_size(const sk_runtimeeffect_t* effect) + // size_t sk_runtimeeffect_get_children_size(sk_runtimeeffect_t const * effect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13231,7 +13231,7 @@ private partial class Delegates { (sk_runtimeeffect_get_children_size_delegate ??= GetSymbol ("sk_runtimeeffect_get_children_size")).Invoke (effect); #endif - // size_t sk_runtimeeffect_get_uniform_byte_size(const sk_runtimeeffect_t* effect) + // size_t sk_runtimeeffect_get_uniform_byte_size(sk_runtimeeffect_t const * effect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13250,7 +13250,7 @@ private partial class Delegates { (sk_runtimeeffect_get_uniform_byte_size_delegate ??= GetSymbol ("sk_runtimeeffect_get_uniform_byte_size")).Invoke (effect); #endif - // void sk_runtimeeffect_get_uniform_from_index(const sk_runtimeeffect_t* effect, int index, sk_runtimeeffect_uniform_t* cuniform) + // void sk_runtimeeffect_get_uniform_from_index(sk_runtimeeffect_t const * effect, int index, sk_runtimeeffect_uniform_t * cuniform) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13269,7 +13269,7 @@ internal static void sk_runtimeeffect_get_uniform_from_index (sk_runtimeeffect_t (sk_runtimeeffect_get_uniform_from_index_delegate ??= GetSymbol ("sk_runtimeeffect_get_uniform_from_index")).Invoke (effect, index, cuniform); #endif - // void sk_runtimeeffect_get_uniform_from_name(const sk_runtimeeffect_t* effect, const char* name, size_t len, sk_runtimeeffect_uniform_t* cuniform) + // void sk_runtimeeffect_get_uniform_from_name(sk_runtimeeffect_t const * effect, char const * name, size_t len, sk_runtimeeffect_uniform_t * cuniform) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13288,7 +13288,7 @@ internal static void sk_runtimeeffect_get_uniform_from_name (sk_runtimeeffect_t (sk_runtimeeffect_get_uniform_from_name_delegate ??= GetSymbol ("sk_runtimeeffect_get_uniform_from_name")).Invoke (effect, name, len, cuniform); #endif - // void sk_runtimeeffect_get_uniform_name(const sk_runtimeeffect_t* effect, int index, sk_string_t* name) + // void sk_runtimeeffect_get_uniform_name(sk_runtimeeffect_t const * effect, int index, sk_string_t * name) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13307,7 +13307,7 @@ internal static void sk_runtimeeffect_get_uniform_name (sk_runtimeeffect_t effec (sk_runtimeeffect_get_uniform_name_delegate ??= GetSymbol ("sk_runtimeeffect_get_uniform_name")).Invoke (effect, index, name); #endif - // size_t sk_runtimeeffect_get_uniforms_size(const sk_runtimeeffect_t* effect) + // size_t sk_runtimeeffect_get_uniforms_size(sk_runtimeeffect_t const * effect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13326,7 +13326,7 @@ private partial class Delegates { (sk_runtimeeffect_get_uniforms_size_delegate ??= GetSymbol ("sk_runtimeeffect_get_uniforms_size")).Invoke (effect); #endif - // sk_blender_t* sk_runtimeeffect_make_blender(sk_runtimeeffect_t* effect, sk_data_t* uniforms, sk_flattenable_t** children, size_t childCount) + // sk_blender_t * sk_runtimeeffect_make_blender(sk_runtimeeffect_t * effect, sk_data_t * uniforms, sk_flattenable_t * * children, size_t childCount) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13345,7 +13345,7 @@ internal static sk_blender_t sk_runtimeeffect_make_blender (sk_runtimeeffect_t e (sk_runtimeeffect_make_blender_delegate ??= GetSymbol ("sk_runtimeeffect_make_blender")).Invoke (effect, uniforms, children, childCount); #endif - // sk_colorfilter_t* sk_runtimeeffect_make_color_filter(sk_runtimeeffect_t* effect, sk_data_t* uniforms, sk_flattenable_t** children, size_t childCount) + // sk_colorfilter_t * sk_runtimeeffect_make_color_filter(sk_runtimeeffect_t * effect, sk_data_t * uniforms, sk_flattenable_t * * children, size_t childCount) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13364,7 +13364,7 @@ internal static sk_colorfilter_t sk_runtimeeffect_make_color_filter (sk_runtimee (sk_runtimeeffect_make_color_filter_delegate ??= GetSymbol ("sk_runtimeeffect_make_color_filter")).Invoke (effect, uniforms, children, childCount); #endif - // sk_runtimeeffect_t* sk_runtimeeffect_make_for_blender(sk_string_t* sksl, sk_string_t* error) + // sk_runtimeeffect_t * sk_runtimeeffect_make_for_blender(sk_string_t * sksl, sk_string_t * error) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13383,7 +13383,7 @@ internal static sk_runtimeeffect_t sk_runtimeeffect_make_for_blender (sk_string_ (sk_runtimeeffect_make_for_blender_delegate ??= GetSymbol ("sk_runtimeeffect_make_for_blender")).Invoke (sksl, error); #endif - // sk_runtimeeffect_t* sk_runtimeeffect_make_for_color_filter(sk_string_t* sksl, sk_string_t* error) + // sk_runtimeeffect_t * sk_runtimeeffect_make_for_color_filter(sk_string_t * sksl, sk_string_t * error) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13402,7 +13402,7 @@ internal static sk_runtimeeffect_t sk_runtimeeffect_make_for_color_filter (sk_st (sk_runtimeeffect_make_for_color_filter_delegate ??= GetSymbol ("sk_runtimeeffect_make_for_color_filter")).Invoke (sksl, error); #endif - // sk_runtimeeffect_t* sk_runtimeeffect_make_for_shader(sk_string_t* sksl, sk_string_t* error) + // sk_runtimeeffect_t * sk_runtimeeffect_make_for_shader(sk_string_t * sksl, sk_string_t * error) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13421,7 +13421,7 @@ internal static sk_runtimeeffect_t sk_runtimeeffect_make_for_shader (sk_string_t (sk_runtimeeffect_make_for_shader_delegate ??= GetSymbol ("sk_runtimeeffect_make_for_shader")).Invoke (sksl, error); #endif - // sk_shader_t* sk_runtimeeffect_make_shader(sk_runtimeeffect_t* effect, sk_data_t* uniforms, sk_flattenable_t** children, size_t childCount, const sk_matrix_t* localMatrix) + // sk_shader_t * sk_runtimeeffect_make_shader(sk_runtimeeffect_t * effect, sk_data_t * uniforms, sk_flattenable_t * * children, size_t childCount, sk_matrix_t const * localMatrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13440,7 +13440,7 @@ internal static sk_shader_t sk_runtimeeffect_make_shader (sk_runtimeeffect_t eff (sk_runtimeeffect_make_shader_delegate ??= GetSymbol ("sk_runtimeeffect_make_shader")).Invoke (effect, uniforms, children, childCount, localMatrix); #endif - // void sk_runtimeeffect_unref(sk_runtimeeffect_t* effect) + // void sk_runtimeeffect_unref(sk_runtimeeffect_t * effect) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13463,7 +13463,7 @@ internal static void sk_runtimeeffect_unref (sk_runtimeeffect_t effect) => #region sk_shader.h - // sk_shader_t* sk_shader_new_blend(sk_blendmode_t mode, const sk_shader_t* dst, const sk_shader_t* src) + // sk_shader_t * sk_shader_new_blend(sk_blendmode_t mode, sk_shader_t const * dst, sk_shader_t const * src) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13482,7 +13482,7 @@ internal static sk_shader_t sk_shader_new_blend (SKBlendMode mode, sk_shader_t d (sk_shader_new_blend_delegate ??= GetSymbol ("sk_shader_new_blend")).Invoke (mode, dst, src); #endif - // sk_shader_t* sk_shader_new_blender(sk_blender_t* blender, const sk_shader_t* dst, const sk_shader_t* src) + // sk_shader_t * sk_shader_new_blender(sk_blender_t * blender, sk_shader_t const * dst, sk_shader_t const * src) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13501,7 +13501,7 @@ internal static sk_shader_t sk_shader_new_blender (sk_blender_t blender, sk_shad (sk_shader_new_blender_delegate ??= GetSymbol ("sk_shader_new_blender")).Invoke (blender, dst, src); #endif - // sk_shader_t* sk_shader_new_color(sk_color_t color) + // sk_shader_t * sk_shader_new_color(sk_color_t color) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13520,7 +13520,7 @@ internal static sk_shader_t sk_shader_new_color (UInt32 color) => (sk_shader_new_color_delegate ??= GetSymbol ("sk_shader_new_color")).Invoke (color); #endif - // sk_shader_t* sk_shader_new_color4f(const sk_color4f_t* color, const sk_colorspace_t* colorspace) + // sk_shader_t * sk_shader_new_color4f(sk_color4f_t const * color, sk_colorspace_t const * colorspace) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13539,7 +13539,7 @@ internal static sk_shader_t sk_shader_new_color4f (SKColorF* color, sk_colorspac (sk_shader_new_color4f_delegate ??= GetSymbol ("sk_shader_new_color4f")).Invoke (color, colorspace); #endif - // sk_shader_t* sk_shader_new_empty() + // sk_shader_t * sk_shader_new_empty() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13558,7 +13558,7 @@ internal static sk_shader_t sk_shader_new_empty () => (sk_shader_new_empty_delegate ??= GetSymbol ("sk_shader_new_empty")).Invoke (); #endif - // sk_shader_t* sk_shader_new_linear_gradient(const sk_point_t[2] points = 2, const sk_color_t[-1] colors, const float[-1] colorPos, int colorCount, sk_shader_tilemode_t tileMode, const sk_matrix_t* localMatrix) + // sk_shader_t * sk_shader_new_linear_gradient(sk_point_t const[2] points = 2, sk_color_t const[-1] colors, float const[-1] colorPos, int colorCount, sk_shader_tilemode_t tileMode, sk_matrix_t const * localMatrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13577,7 +13577,7 @@ internal static sk_shader_t sk_shader_new_linear_gradient (SKPoint* points, UInt (sk_shader_new_linear_gradient_delegate ??= GetSymbol ("sk_shader_new_linear_gradient")).Invoke (points, colors, colorPos, colorCount, tileMode, localMatrix); #endif - // sk_shader_t* sk_shader_new_linear_gradient_color4f(const sk_point_t[2] points = 2, const sk_color4f_t* colors, const sk_colorspace_t* colorspace, const float[-1] colorPos, int colorCount, sk_shader_tilemode_t tileMode, const sk_matrix_t* localMatrix) + // sk_shader_t * sk_shader_new_linear_gradient_color4f(sk_point_t const[2] points = 2, sk_color4f_t const * colors, sk_colorspace_t const * colorspace, float const[-1] colorPos, int colorCount, sk_shader_tilemode_t tileMode, sk_matrix_t const * localMatrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13596,7 +13596,7 @@ internal static sk_shader_t sk_shader_new_linear_gradient_color4f (SKPoint* poin (sk_shader_new_linear_gradient_color4f_delegate ??= GetSymbol ("sk_shader_new_linear_gradient_color4f")).Invoke (points, colors, colorspace, colorPos, colorCount, tileMode, localMatrix); #endif - // sk_shader_t* sk_shader_new_perlin_noise_fractal_noise(float baseFrequencyX, float baseFrequencyY, int numOctaves, float seed, const sk_isize_t* tileSize) + // sk_shader_t * sk_shader_new_perlin_noise_fractal_noise(float baseFrequencyX, float baseFrequencyY, int numOctaves, float seed, sk_isize_t const * tileSize) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13615,7 +13615,7 @@ internal static sk_shader_t sk_shader_new_perlin_noise_fractal_noise (Single bas (sk_shader_new_perlin_noise_fractal_noise_delegate ??= GetSymbol ("sk_shader_new_perlin_noise_fractal_noise")).Invoke (baseFrequencyX, baseFrequencyY, numOctaves, seed, tileSize); #endif - // sk_shader_t* sk_shader_new_perlin_noise_turbulence(float baseFrequencyX, float baseFrequencyY, int numOctaves, float seed, const sk_isize_t* tileSize) + // sk_shader_t * sk_shader_new_perlin_noise_turbulence(float baseFrequencyX, float baseFrequencyY, int numOctaves, float seed, sk_isize_t const * tileSize) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13634,7 +13634,7 @@ internal static sk_shader_t sk_shader_new_perlin_noise_turbulence (Single baseFr (sk_shader_new_perlin_noise_turbulence_delegate ??= GetSymbol ("sk_shader_new_perlin_noise_turbulence")).Invoke (baseFrequencyX, baseFrequencyY, numOctaves, seed, tileSize); #endif - // sk_shader_t* sk_shader_new_radial_gradient(const sk_point_t* center, float radius, const sk_color_t[-1] colors, const float[-1] colorPos, int colorCount, sk_shader_tilemode_t tileMode, const sk_matrix_t* localMatrix) + // sk_shader_t * sk_shader_new_radial_gradient(sk_point_t const * center, float radius, sk_color_t const[-1] colors, float const[-1] colorPos, int colorCount, sk_shader_tilemode_t tileMode, sk_matrix_t const * localMatrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13653,7 +13653,7 @@ internal static sk_shader_t sk_shader_new_radial_gradient (SKPoint* center, Sing (sk_shader_new_radial_gradient_delegate ??= GetSymbol ("sk_shader_new_radial_gradient")).Invoke (center, radius, colors, colorPos, colorCount, tileMode, localMatrix); #endif - // sk_shader_t* sk_shader_new_radial_gradient_color4f(const sk_point_t* center, float radius, const sk_color4f_t* colors, const sk_colorspace_t* colorspace, const float[-1] colorPos, int colorCount, sk_shader_tilemode_t tileMode, const sk_matrix_t* localMatrix) + // sk_shader_t * sk_shader_new_radial_gradient_color4f(sk_point_t const * center, float radius, sk_color4f_t const * colors, sk_colorspace_t const * colorspace, float const[-1] colorPos, int colorCount, sk_shader_tilemode_t tileMode, sk_matrix_t const * localMatrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13672,7 +13672,7 @@ internal static sk_shader_t sk_shader_new_radial_gradient_color4f (SKPoint* cent (sk_shader_new_radial_gradient_color4f_delegate ??= GetSymbol ("sk_shader_new_radial_gradient_color4f")).Invoke (center, radius, colors, colorspace, colorPos, colorCount, tileMode, localMatrix); #endif - // sk_shader_t* sk_shader_new_sweep_gradient(const sk_point_t* center, const sk_color_t[-1] colors, const float[-1] colorPos, int colorCount, sk_shader_tilemode_t tileMode, float startAngle, float endAngle, const sk_matrix_t* localMatrix) + // sk_shader_t * sk_shader_new_sweep_gradient(sk_point_t const * center, sk_color_t const[-1] colors, float const[-1] colorPos, int colorCount, sk_shader_tilemode_t tileMode, float startAngle, float endAngle, sk_matrix_t const * localMatrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13691,7 +13691,7 @@ internal static sk_shader_t sk_shader_new_sweep_gradient (SKPoint* center, UInt3 (sk_shader_new_sweep_gradient_delegate ??= GetSymbol ("sk_shader_new_sweep_gradient")).Invoke (center, colors, colorPos, colorCount, tileMode, startAngle, endAngle, localMatrix); #endif - // sk_shader_t* sk_shader_new_sweep_gradient_color4f(const sk_point_t* center, const sk_color4f_t* colors, const sk_colorspace_t* colorspace, const float[-1] colorPos, int colorCount, sk_shader_tilemode_t tileMode, float startAngle, float endAngle, const sk_matrix_t* localMatrix) + // sk_shader_t * sk_shader_new_sweep_gradient_color4f(sk_point_t const * center, sk_color4f_t const * colors, sk_colorspace_t const * colorspace, float const[-1] colorPos, int colorCount, sk_shader_tilemode_t tileMode, float startAngle, float endAngle, sk_matrix_t const * localMatrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13710,7 +13710,7 @@ internal static sk_shader_t sk_shader_new_sweep_gradient_color4f (SKPoint* cente (sk_shader_new_sweep_gradient_color4f_delegate ??= GetSymbol ("sk_shader_new_sweep_gradient_color4f")).Invoke (center, colors, colorspace, colorPos, colorCount, tileMode, startAngle, endAngle, localMatrix); #endif - // sk_shader_t* sk_shader_new_two_point_conical_gradient(const sk_point_t* start, float startRadius, const sk_point_t* end, float endRadius, const sk_color_t[-1] colors, const float[-1] colorPos, int colorCount, sk_shader_tilemode_t tileMode, const sk_matrix_t* localMatrix) + // sk_shader_t * sk_shader_new_two_point_conical_gradient(sk_point_t const * start, float startRadius, sk_point_t const * end, float endRadius, sk_color_t const[-1] colors, float const[-1] colorPos, int colorCount, sk_shader_tilemode_t tileMode, sk_matrix_t const * localMatrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13729,7 +13729,7 @@ internal static sk_shader_t sk_shader_new_two_point_conical_gradient (SKPoint* s (sk_shader_new_two_point_conical_gradient_delegate ??= GetSymbol ("sk_shader_new_two_point_conical_gradient")).Invoke (start, startRadius, end, endRadius, colors, colorPos, colorCount, tileMode, localMatrix); #endif - // sk_shader_t* sk_shader_new_two_point_conical_gradient_color4f(const sk_point_t* start, float startRadius, const sk_point_t* end, float endRadius, const sk_color4f_t* colors, const sk_colorspace_t* colorspace, const float[-1] colorPos, int colorCount, sk_shader_tilemode_t tileMode, const sk_matrix_t* localMatrix) + // sk_shader_t * sk_shader_new_two_point_conical_gradient_color4f(sk_point_t const * start, float startRadius, sk_point_t const * end, float endRadius, sk_color4f_t const * colors, sk_colorspace_t const * colorspace, float const[-1] colorPos, int colorCount, sk_shader_tilemode_t tileMode, sk_matrix_t const * localMatrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13748,7 +13748,7 @@ internal static sk_shader_t sk_shader_new_two_point_conical_gradient_color4f (SK (sk_shader_new_two_point_conical_gradient_color4f_delegate ??= GetSymbol ("sk_shader_new_two_point_conical_gradient_color4f")).Invoke (start, startRadius, end, endRadius, colors, colorspace, colorPos, colorCount, tileMode, localMatrix); #endif - // void sk_shader_ref(sk_shader_t* shader) + // void sk_shader_ref(sk_shader_t * shader) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13767,7 +13767,7 @@ internal static void sk_shader_ref (sk_shader_t shader) => (sk_shader_ref_delegate ??= GetSymbol ("sk_shader_ref")).Invoke (shader); #endif - // void sk_shader_unref(sk_shader_t* shader) + // void sk_shader_unref(sk_shader_t * shader) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13786,7 +13786,7 @@ internal static void sk_shader_unref (sk_shader_t shader) => (sk_shader_unref_delegate ??= GetSymbol ("sk_shader_unref")).Invoke (shader); #endif - // sk_shader_t* sk_shader_with_color_filter(const sk_shader_t* shader, const sk_colorfilter_t* filter) + // sk_shader_t * sk_shader_with_color_filter(sk_shader_t const * shader, sk_colorfilter_t const * filter) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13805,7 +13805,7 @@ internal static sk_shader_t sk_shader_with_color_filter (sk_shader_t shader, sk_ (sk_shader_with_color_filter_delegate ??= GetSymbol ("sk_shader_with_color_filter")).Invoke (shader, filter); #endif - // sk_shader_t* sk_shader_with_local_matrix(const sk_shader_t* shader, const sk_matrix_t* localMatrix) + // sk_shader_t * sk_shader_with_local_matrix(sk_shader_t const * shader, sk_matrix_t const * localMatrix) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13828,7 +13828,7 @@ internal static sk_shader_t sk_shader_with_local_matrix (sk_shader_t shader, SKM #region sk_stream.h - // void sk_dynamicmemorywstream_copy_to(sk_wstream_dynamicmemorystream_t* cstream, void* data) + // void sk_dynamicmemorywstream_copy_to(sk_wstream_dynamicmemorystream_t * cstream, void * data) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13847,7 +13847,7 @@ internal static void sk_dynamicmemorywstream_copy_to (sk_wstream_dynamicmemoryst (sk_dynamicmemorywstream_copy_to_delegate ??= GetSymbol ("sk_dynamicmemorywstream_copy_to")).Invoke (cstream, data); #endif - // void sk_dynamicmemorywstream_destroy(sk_wstream_dynamicmemorystream_t* cstream) + // void sk_dynamicmemorywstream_destroy(sk_wstream_dynamicmemorystream_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13866,7 +13866,7 @@ internal static void sk_dynamicmemorywstream_destroy (sk_wstream_dynamicmemoryst (sk_dynamicmemorywstream_destroy_delegate ??= GetSymbol ("sk_dynamicmemorywstream_destroy")).Invoke (cstream); #endif - // sk_data_t* sk_dynamicmemorywstream_detach_as_data(sk_wstream_dynamicmemorystream_t* cstream) + // sk_data_t * sk_dynamicmemorywstream_detach_as_data(sk_wstream_dynamicmemorystream_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13885,7 +13885,7 @@ internal static sk_data_t sk_dynamicmemorywstream_detach_as_data (sk_wstream_dyn (sk_dynamicmemorywstream_detach_as_data_delegate ??= GetSymbol ("sk_dynamicmemorywstream_detach_as_data")).Invoke (cstream); #endif - // sk_stream_asset_t* sk_dynamicmemorywstream_detach_as_stream(sk_wstream_dynamicmemorystream_t* cstream) + // sk_stream_asset_t * sk_dynamicmemorywstream_detach_as_stream(sk_wstream_dynamicmemorystream_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13904,7 +13904,7 @@ internal static sk_stream_asset_t sk_dynamicmemorywstream_detach_as_stream (sk_w (sk_dynamicmemorywstream_detach_as_stream_delegate ??= GetSymbol ("sk_dynamicmemorywstream_detach_as_stream")).Invoke (cstream); #endif - // sk_wstream_dynamicmemorystream_t* sk_dynamicmemorywstream_new() + // sk_wstream_dynamicmemorystream_t * sk_dynamicmemorywstream_new() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13923,7 +13923,7 @@ internal static sk_wstream_dynamicmemorystream_t sk_dynamicmemorywstream_new () (sk_dynamicmemorywstream_new_delegate ??= GetSymbol ("sk_dynamicmemorywstream_new")).Invoke (); #endif - // bool sk_dynamicmemorywstream_write_to_stream(sk_wstream_dynamicmemorystream_t* cstream, sk_wstream_t* dst) + // bool sk_dynamicmemorywstream_write_to_stream(sk_wstream_dynamicmemorystream_t * cstream, sk_wstream_t * dst) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13945,7 +13945,7 @@ internal static bool sk_dynamicmemorywstream_write_to_stream (sk_wstream_dynamic (sk_dynamicmemorywstream_write_to_stream_delegate ??= GetSymbol ("sk_dynamicmemorywstream_write_to_stream")).Invoke (cstream, dst); #endif - // void sk_filestream_destroy(sk_stream_filestream_t* cstream) + // void sk_filestream_destroy(sk_stream_filestream_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13964,7 +13964,7 @@ internal static void sk_filestream_destroy (sk_stream_filestream_t cstream) => (sk_filestream_destroy_delegate ??= GetSymbol ("sk_filestream_destroy")).Invoke (cstream); #endif - // bool sk_filestream_is_valid(sk_stream_filestream_t* cstream) + // bool sk_filestream_is_valid(sk_stream_filestream_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -13986,7 +13986,7 @@ internal static bool sk_filestream_is_valid (sk_stream_filestream_t cstream) => (sk_filestream_is_valid_delegate ??= GetSymbol ("sk_filestream_is_valid")).Invoke (cstream); #endif - // sk_stream_filestream_t* sk_filestream_new(const char* path) + // sk_stream_filestream_t * sk_filestream_new(char const * path) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14005,7 +14005,7 @@ internal static sk_stream_filestream_t sk_filestream_new (/* char */ void* path) (sk_filestream_new_delegate ??= GetSymbol ("sk_filestream_new")).Invoke (path); #endif - // void sk_filewstream_destroy(sk_wstream_filestream_t* cstream) + // void sk_filewstream_destroy(sk_wstream_filestream_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14024,7 +14024,7 @@ internal static void sk_filewstream_destroy (sk_wstream_filestream_t cstream) => (sk_filewstream_destroy_delegate ??= GetSymbol ("sk_filewstream_destroy")).Invoke (cstream); #endif - // bool sk_filewstream_is_valid(sk_wstream_filestream_t* cstream) + // bool sk_filewstream_is_valid(sk_wstream_filestream_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14046,7 +14046,7 @@ internal static bool sk_filewstream_is_valid (sk_wstream_filestream_t cstream) = (sk_filewstream_is_valid_delegate ??= GetSymbol ("sk_filewstream_is_valid")).Invoke (cstream); #endif - // sk_wstream_filestream_t* sk_filewstream_new(const char* path) + // sk_wstream_filestream_t * sk_filewstream_new(char const * path) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14065,7 +14065,7 @@ internal static sk_wstream_filestream_t sk_filewstream_new (/* char */ void* pat (sk_filewstream_new_delegate ??= GetSymbol ("sk_filewstream_new")).Invoke (path); #endif - // void sk_memorystream_destroy(sk_stream_memorystream_t* cstream) + // void sk_memorystream_destroy(sk_stream_memorystream_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14084,7 +14084,7 @@ internal static void sk_memorystream_destroy (sk_stream_memorystream_t cstream) (sk_memorystream_destroy_delegate ??= GetSymbol ("sk_memorystream_destroy")).Invoke (cstream); #endif - // sk_stream_memorystream_t* sk_memorystream_new() + // sk_stream_memorystream_t * sk_memorystream_new() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14103,7 +14103,7 @@ internal static sk_stream_memorystream_t sk_memorystream_new () => (sk_memorystream_new_delegate ??= GetSymbol ("sk_memorystream_new")).Invoke (); #endif - // sk_stream_memorystream_t* sk_memorystream_new_with_data(const void* data, size_t length, bool copyData) + // sk_stream_memorystream_t * sk_memorystream_new_with_data(void const * data, size_t length, bool copyData) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14122,7 +14122,7 @@ internal static sk_stream_memorystream_t sk_memorystream_new_with_data (void* da (sk_memorystream_new_with_data_delegate ??= GetSymbol ("sk_memorystream_new_with_data")).Invoke (data, length, copyData); #endif - // sk_stream_memorystream_t* sk_memorystream_new_with_length(size_t length) + // sk_stream_memorystream_t * sk_memorystream_new_with_length(size_t length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14141,7 +14141,7 @@ internal static sk_stream_memorystream_t sk_memorystream_new_with_length (/* siz (sk_memorystream_new_with_length_delegate ??= GetSymbol ("sk_memorystream_new_with_length")).Invoke (length); #endif - // sk_stream_memorystream_t* sk_memorystream_new_with_skdata(sk_data_t* data) + // sk_stream_memorystream_t * sk_memorystream_new_with_skdata(sk_data_t * data) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14160,7 +14160,7 @@ internal static sk_stream_memorystream_t sk_memorystream_new_with_skdata (sk_dat (sk_memorystream_new_with_skdata_delegate ??= GetSymbol ("sk_memorystream_new_with_skdata")).Invoke (data); #endif - // void sk_memorystream_set_memory(sk_stream_memorystream_t* cmemorystream, const void* data, size_t length, bool copyData) + // void sk_memorystream_set_memory(sk_stream_memorystream_t * cmemorystream, void const * data, size_t length, bool copyData) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14179,7 +14179,7 @@ internal static void sk_memorystream_set_memory (sk_stream_memorystream_t cmemor (sk_memorystream_set_memory_delegate ??= GetSymbol ("sk_memorystream_set_memory")).Invoke (cmemorystream, data, length, copyData); #endif - // void sk_stream_asset_destroy(sk_stream_asset_t* cstream) + // void sk_stream_asset_destroy(sk_stream_asset_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14198,7 +14198,7 @@ internal static void sk_stream_asset_destroy (sk_stream_asset_t cstream) => (sk_stream_asset_destroy_delegate ??= GetSymbol ("sk_stream_asset_destroy")).Invoke (cstream); #endif - // void sk_stream_destroy(sk_stream_t* cstream) + // void sk_stream_destroy(sk_stream_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14217,7 +14217,7 @@ internal static void sk_stream_destroy (sk_stream_t cstream) => (sk_stream_destroy_delegate ??= GetSymbol ("sk_stream_destroy")).Invoke (cstream); #endif - // sk_stream_t* sk_stream_duplicate(sk_stream_t* cstream) + // sk_stream_t * sk_stream_duplicate(sk_stream_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14236,7 +14236,7 @@ internal static sk_stream_t sk_stream_duplicate (sk_stream_t cstream) => (sk_stream_duplicate_delegate ??= GetSymbol ("sk_stream_duplicate")).Invoke (cstream); #endif - // sk_stream_t* sk_stream_fork(sk_stream_t* cstream) + // sk_stream_t * sk_stream_fork(sk_stream_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14255,7 +14255,7 @@ internal static sk_stream_t sk_stream_fork (sk_stream_t cstream) => (sk_stream_fork_delegate ??= GetSymbol ("sk_stream_fork")).Invoke (cstream); #endif - // size_t sk_stream_get_length(sk_stream_t* cstream) + // size_t sk_stream_get_length(sk_stream_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14274,7 +14274,7 @@ private partial class Delegates { (sk_stream_get_length_delegate ??= GetSymbol ("sk_stream_get_length")).Invoke (cstream); #endif - // const void* sk_stream_get_memory_base(sk_stream_t* cstream) + // void const * sk_stream_get_memory_base(sk_stream_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14293,7 +14293,7 @@ private partial class Delegates { (sk_stream_get_memory_base_delegate ??= GetSymbol ("sk_stream_get_memory_base")).Invoke (cstream); #endif - // size_t sk_stream_get_position(sk_stream_t* cstream) + // size_t sk_stream_get_position(sk_stream_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14312,7 +14312,7 @@ private partial class Delegates { (sk_stream_get_position_delegate ??= GetSymbol ("sk_stream_get_position")).Invoke (cstream); #endif - // bool sk_stream_has_length(sk_stream_t* cstream) + // bool sk_stream_has_length(sk_stream_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14334,7 +14334,7 @@ internal static bool sk_stream_has_length (sk_stream_t cstream) => (sk_stream_has_length_delegate ??= GetSymbol ("sk_stream_has_length")).Invoke (cstream); #endif - // bool sk_stream_has_position(sk_stream_t* cstream) + // bool sk_stream_has_position(sk_stream_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14356,7 +14356,7 @@ internal static bool sk_stream_has_position (sk_stream_t cstream) => (sk_stream_has_position_delegate ??= GetSymbol ("sk_stream_has_position")).Invoke (cstream); #endif - // bool sk_stream_is_at_end(sk_stream_t* cstream) + // bool sk_stream_is_at_end(sk_stream_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14378,7 +14378,7 @@ internal static bool sk_stream_is_at_end (sk_stream_t cstream) => (sk_stream_is_at_end_delegate ??= GetSymbol ("sk_stream_is_at_end")).Invoke (cstream); #endif - // bool sk_stream_move(sk_stream_t* cstream, int offset) + // bool sk_stream_move(sk_stream_t * cstream, long offset) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14400,7 +14400,7 @@ internal static bool sk_stream_move (sk_stream_t cstream, Int32 offset) => (sk_stream_move_delegate ??= GetSymbol ("sk_stream_move")).Invoke (cstream, offset); #endif - // size_t sk_stream_peek(sk_stream_t* cstream, void* buffer, size_t size) + // size_t sk_stream_peek(sk_stream_t * cstream, void * buffer, size_t size) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14419,7 +14419,7 @@ private partial class Delegates { (sk_stream_peek_delegate ??= GetSymbol ("sk_stream_peek")).Invoke (cstream, buffer, size); #endif - // size_t sk_stream_read(sk_stream_t* cstream, void* buffer, size_t size) + // size_t sk_stream_read(sk_stream_t * cstream, void * buffer, size_t size) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14438,7 +14438,7 @@ private partial class Delegates { (sk_stream_read_delegate ??= GetSymbol ("sk_stream_read")).Invoke (cstream, buffer, size); #endif - // bool sk_stream_read_bool(sk_stream_t* cstream, bool* buffer) + // bool sk_stream_read_bool(sk_stream_t * cstream, bool * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14460,7 +14460,7 @@ internal static bool sk_stream_read_bool (sk_stream_t cstream, Byte* buffer) => (sk_stream_read_bool_delegate ??= GetSymbol ("sk_stream_read_bool")).Invoke (cstream, buffer); #endif - // bool sk_stream_read_s16(sk_stream_t* cstream, int16_t* buffer) + // bool sk_stream_read_s16(sk_stream_t * cstream, short * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14482,7 +14482,7 @@ internal static bool sk_stream_read_s16 (sk_stream_t cstream, Int16* buffer) => (sk_stream_read_s16_delegate ??= GetSymbol ("sk_stream_read_s16")).Invoke (cstream, buffer); #endif - // bool sk_stream_read_s32(sk_stream_t* cstream, int32_t* buffer) + // bool sk_stream_read_s32(sk_stream_t * cstream, int * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14504,29 +14504,29 @@ internal static bool sk_stream_read_s32 (sk_stream_t cstream, Int32* buffer) => (sk_stream_read_s32_delegate ??= GetSymbol ("sk_stream_read_s32")).Invoke (cstream, buffer); #endif - // bool sk_stream_read_s8(sk_stream_t* cstream, int8_t* buffer) + // bool sk_stream_read_s8(sk_stream_t * cstream, char * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] [return: MarshalAs (UnmanagedType.I1)] - internal static partial bool sk_stream_read_s8 (sk_stream_t cstream, SByte* buffer); + internal static partial bool sk_stream_read_s8 (sk_stream_t cstream, /* char */ void* buffer); #else // !USE_LIBRARY_IMPORT [DllImport (SKIA, CallingConvention = CallingConvention.Cdecl)] [return: MarshalAs (UnmanagedType.I1)] - internal static extern bool sk_stream_read_s8 (sk_stream_t cstream, SByte* buffer); + internal static extern bool sk_stream_read_s8 (sk_stream_t cstream, /* char */ void* buffer); #endif #else private partial class Delegates { [UnmanagedFunctionPointer (CallingConvention.Cdecl)] [return: MarshalAs (UnmanagedType.I1)] - internal delegate bool sk_stream_read_s8 (sk_stream_t cstream, SByte* buffer); + internal delegate bool sk_stream_read_s8 (sk_stream_t cstream, /* char */ void* buffer); } private static Delegates.sk_stream_read_s8 sk_stream_read_s8_delegate; - internal static bool sk_stream_read_s8 (sk_stream_t cstream, SByte* buffer) => + internal static bool sk_stream_read_s8 (sk_stream_t cstream, /* char */ void* buffer) => (sk_stream_read_s8_delegate ??= GetSymbol ("sk_stream_read_s8")).Invoke (cstream, buffer); #endif - // bool sk_stream_read_u16(sk_stream_t* cstream, uint16_t* buffer) + // bool sk_stream_read_u16(sk_stream_t * cstream, unsigned short * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14548,7 +14548,7 @@ internal static bool sk_stream_read_u16 (sk_stream_t cstream, UInt16* buffer) => (sk_stream_read_u16_delegate ??= GetSymbol ("sk_stream_read_u16")).Invoke (cstream, buffer); #endif - // bool sk_stream_read_u32(sk_stream_t* cstream, uint32_t* buffer) + // bool sk_stream_read_u32(sk_stream_t * cstream, unsigned int * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14570,7 +14570,7 @@ internal static bool sk_stream_read_u32 (sk_stream_t cstream, UInt32* buffer) => (sk_stream_read_u32_delegate ??= GetSymbol ("sk_stream_read_u32")).Invoke (cstream, buffer); #endif - // bool sk_stream_read_u8(sk_stream_t* cstream, uint8_t* buffer) + // bool sk_stream_read_u8(sk_stream_t * cstream, unsigned char * buffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14592,7 +14592,7 @@ internal static bool sk_stream_read_u8 (sk_stream_t cstream, Byte* buffer) => (sk_stream_read_u8_delegate ??= GetSymbol ("sk_stream_read_u8")).Invoke (cstream, buffer); #endif - // bool sk_stream_rewind(sk_stream_t* cstream) + // bool sk_stream_rewind(sk_stream_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14614,7 +14614,7 @@ internal static bool sk_stream_rewind (sk_stream_t cstream) => (sk_stream_rewind_delegate ??= GetSymbol ("sk_stream_rewind")).Invoke (cstream); #endif - // bool sk_stream_seek(sk_stream_t* cstream, size_t position) + // bool sk_stream_seek(sk_stream_t * cstream, size_t position) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14636,7 +14636,7 @@ internal static bool sk_stream_seek (sk_stream_t cstream, /* size_t */ IntPtr po (sk_stream_seek_delegate ??= GetSymbol ("sk_stream_seek")).Invoke (cstream, position); #endif - // size_t sk_stream_skip(sk_stream_t* cstream, size_t size) + // size_t sk_stream_skip(sk_stream_t * cstream, size_t size) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14655,7 +14655,7 @@ private partial class Delegates { (sk_stream_skip_delegate ??= GetSymbol ("sk_stream_skip")).Invoke (cstream, size); #endif - // size_t sk_wstream_bytes_written(sk_wstream_t* cstream) + // size_t sk_wstream_bytes_written(sk_wstream_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14674,7 +14674,7 @@ private partial class Delegates { (sk_wstream_bytes_written_delegate ??= GetSymbol ("sk_wstream_bytes_written")).Invoke (cstream); #endif - // void sk_wstream_flush(sk_wstream_t* cstream) + // void sk_wstream_flush(sk_wstream_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14712,7 +14712,7 @@ internal static Int32 sk_wstream_get_size_of_packed_uint (/* size_t */ IntPtr va (sk_wstream_get_size_of_packed_uint_delegate ??= GetSymbol ("sk_wstream_get_size_of_packed_uint")).Invoke (value); #endif - // bool sk_wstream_newline(sk_wstream_t* cstream) + // bool sk_wstream_newline(sk_wstream_t * cstream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14734,7 +14734,7 @@ internal static bool sk_wstream_newline (sk_wstream_t cstream) => (sk_wstream_newline_delegate ??= GetSymbol ("sk_wstream_newline")).Invoke (cstream); #endif - // bool sk_wstream_write(sk_wstream_t* cstream, const void* buffer, size_t size) + // bool sk_wstream_write(sk_wstream_t * cstream, void const * buffer, size_t size) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14756,7 +14756,7 @@ internal static bool sk_wstream_write (sk_wstream_t cstream, void* buffer, /* si (sk_wstream_write_delegate ??= GetSymbol ("sk_wstream_write")).Invoke (cstream, buffer, size); #endif - // bool sk_wstream_write_16(sk_wstream_t* cstream, uint16_t value) + // bool sk_wstream_write_16(sk_wstream_t * cstream, unsigned short value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14778,7 +14778,7 @@ internal static bool sk_wstream_write_16 (sk_wstream_t cstream, UInt16 value) => (sk_wstream_write_16_delegate ??= GetSymbol ("sk_wstream_write_16")).Invoke (cstream, value); #endif - // bool sk_wstream_write_32(sk_wstream_t* cstream, uint32_t value) + // bool sk_wstream_write_32(sk_wstream_t * cstream, unsigned int value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14800,7 +14800,7 @@ internal static bool sk_wstream_write_32 (sk_wstream_t cstream, UInt32 value) => (sk_wstream_write_32_delegate ??= GetSymbol ("sk_wstream_write_32")).Invoke (cstream, value); #endif - // bool sk_wstream_write_8(sk_wstream_t* cstream, uint8_t value) + // bool sk_wstream_write_8(sk_wstream_t * cstream, unsigned char value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14822,7 +14822,7 @@ internal static bool sk_wstream_write_8 (sk_wstream_t cstream, Byte value) => (sk_wstream_write_8_delegate ??= GetSymbol ("sk_wstream_write_8")).Invoke (cstream, value); #endif - // bool sk_wstream_write_bigdec_as_text(sk_wstream_t* cstream, int64_t value, int minDigits) + // bool sk_wstream_write_bigdec_as_text(sk_wstream_t * cstream, long long value, int minDigits) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14844,7 +14844,7 @@ internal static bool sk_wstream_write_bigdec_as_text (sk_wstream_t cstream, Int6 (sk_wstream_write_bigdec_as_text_delegate ??= GetSymbol ("sk_wstream_write_bigdec_as_text")).Invoke (cstream, value, minDigits); #endif - // bool sk_wstream_write_bool(sk_wstream_t* cstream, bool value) + // bool sk_wstream_write_bool(sk_wstream_t * cstream, bool value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14866,7 +14866,7 @@ internal static bool sk_wstream_write_bool (sk_wstream_t cstream, [MarshalAs (Un (sk_wstream_write_bool_delegate ??= GetSymbol ("sk_wstream_write_bool")).Invoke (cstream, value); #endif - // bool sk_wstream_write_dec_as_text(sk_wstream_t* cstream, int32_t value) + // bool sk_wstream_write_dec_as_text(sk_wstream_t * cstream, int value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14888,7 +14888,7 @@ internal static bool sk_wstream_write_dec_as_text (sk_wstream_t cstream, Int32 v (sk_wstream_write_dec_as_text_delegate ??= GetSymbol ("sk_wstream_write_dec_as_text")).Invoke (cstream, value); #endif - // bool sk_wstream_write_hex_as_text(sk_wstream_t* cstream, uint32_t value, int minDigits) + // bool sk_wstream_write_hex_as_text(sk_wstream_t * cstream, unsigned int value, int minDigits) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14910,7 +14910,7 @@ internal static bool sk_wstream_write_hex_as_text (sk_wstream_t cstream, UInt32 (sk_wstream_write_hex_as_text_delegate ??= GetSymbol ("sk_wstream_write_hex_as_text")).Invoke (cstream, value, minDigits); #endif - // bool sk_wstream_write_packed_uint(sk_wstream_t* cstream, size_t value) + // bool sk_wstream_write_packed_uint(sk_wstream_t * cstream, size_t value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14932,7 +14932,7 @@ internal static bool sk_wstream_write_packed_uint (sk_wstream_t cstream, /* size (sk_wstream_write_packed_uint_delegate ??= GetSymbol ("sk_wstream_write_packed_uint")).Invoke (cstream, value); #endif - // bool sk_wstream_write_scalar(sk_wstream_t* cstream, float value) + // bool sk_wstream_write_scalar(sk_wstream_t * cstream, float value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14954,7 +14954,7 @@ internal static bool sk_wstream_write_scalar (sk_wstream_t cstream, Single value (sk_wstream_write_scalar_delegate ??= GetSymbol ("sk_wstream_write_scalar")).Invoke (cstream, value); #endif - // bool sk_wstream_write_scalar_as_text(sk_wstream_t* cstream, float value) + // bool sk_wstream_write_scalar_as_text(sk_wstream_t * cstream, float value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14976,7 +14976,7 @@ internal static bool sk_wstream_write_scalar_as_text (sk_wstream_t cstream, Sing (sk_wstream_write_scalar_as_text_delegate ??= GetSymbol ("sk_wstream_write_scalar_as_text")).Invoke (cstream, value); #endif - // bool sk_wstream_write_stream(sk_wstream_t* cstream, sk_stream_t* input, size_t length) + // bool sk_wstream_write_stream(sk_wstream_t * cstream, sk_stream_t * input, size_t length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -14998,7 +14998,7 @@ internal static bool sk_wstream_write_stream (sk_wstream_t cstream, sk_stream_t (sk_wstream_write_stream_delegate ??= GetSymbol ("sk_wstream_write_stream")).Invoke (cstream, input, length); #endif - // bool sk_wstream_write_text(sk_wstream_t* cstream, const char* value) + // bool sk_wstream_write_text(sk_wstream_t * cstream, char const * value) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15024,7 +15024,7 @@ internal static bool sk_wstream_write_text (sk_wstream_t cstream, [MarshalAs (Un #region sk_string.h - // void sk_string_destructor(const sk_string_t*) + // void sk_string_destructor(sk_string_t const *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15043,7 +15043,7 @@ internal static void sk_string_destructor (sk_string_t param0) => (sk_string_destructor_delegate ??= GetSymbol ("sk_string_destructor")).Invoke (param0); #endif - // const char* sk_string_get_c_str(const sk_string_t*) + // char const * sk_string_get_c_str(sk_string_t const *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15062,7 +15062,7 @@ private partial class Delegates { (sk_string_get_c_str_delegate ??= GetSymbol ("sk_string_get_c_str")).Invoke (param0); #endif - // size_t sk_string_get_size(const sk_string_t*) + // size_t sk_string_get_size(sk_string_t const *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15081,7 +15081,7 @@ private partial class Delegates { (sk_string_get_size_delegate ??= GetSymbol ("sk_string_get_size")).Invoke (param0); #endif - // sk_string_t* sk_string_new_empty() + // sk_string_t * sk_string_new_empty() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15100,7 +15100,7 @@ internal static sk_string_t sk_string_new_empty () => (sk_string_new_empty_delegate ??= GetSymbol ("sk_string_new_empty")).Invoke (); #endif - // sk_string_t* sk_string_new_with_copy(const char* src, size_t length) + // sk_string_t * sk_string_new_with_copy(char const * src, size_t length) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15123,7 +15123,7 @@ internal static sk_string_t sk_string_new_with_copy (/* char */ void* src, /* si #region sk_surface.h - // void sk_surface_draw(sk_surface_t* surface, sk_canvas_t* canvas, float x, float y, const sk_paint_t* paint) + // void sk_surface_draw(sk_surface_t * surface, sk_canvas_t * canvas, float x, float y, sk_paint_t const * paint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15142,7 +15142,7 @@ internal static void sk_surface_draw (sk_surface_t surface, sk_canvas_t canvas, (sk_surface_draw_delegate ??= GetSymbol ("sk_surface_draw")).Invoke (surface, canvas, x, y, paint); #endif - // sk_canvas_t* sk_surface_get_canvas(sk_surface_t*) + // sk_canvas_t * sk_surface_get_canvas(sk_surface_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15161,7 +15161,7 @@ internal static sk_canvas_t sk_surface_get_canvas (sk_surface_t param0) => (sk_surface_get_canvas_delegate ??= GetSymbol ("sk_surface_get_canvas")).Invoke (param0); #endif - // const sk_surfaceprops_t* sk_surface_get_props(sk_surface_t* surface) + // sk_surfaceprops_t const * sk_surface_get_props(sk_surface_t * surface) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15180,7 +15180,7 @@ internal static sk_surfaceprops_t sk_surface_get_props (sk_surface_t surface) => (sk_surface_get_props_delegate ??= GetSymbol ("sk_surface_get_props")).Invoke (surface); #endif - // gr_recording_context_t* sk_surface_get_recording_context(sk_surface_t* surface) + // gr_recording_context_t * sk_surface_get_recording_context(sk_surface_t * surface) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15199,7 +15199,7 @@ internal static gr_recording_context_t sk_surface_get_recording_context (sk_surf (sk_surface_get_recording_context_delegate ??= GetSymbol ("sk_surface_get_recording_context")).Invoke (surface); #endif - // sk_surface_t* sk_surface_new_backend_render_target(gr_recording_context_t* context, const gr_backendrendertarget_t* target, gr_surfaceorigin_t origin, sk_colortype_t colorType, sk_colorspace_t* colorspace, const sk_surfaceprops_t* props) + // sk_surface_t * sk_surface_new_backend_render_target(gr_recording_context_t * context, gr_backendrendertarget_t const * target, gr_surfaceorigin_t origin, sk_colortype_t colorType, sk_colorspace_t * colorspace, sk_surfaceprops_t const * props) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15218,7 +15218,7 @@ internal static sk_surface_t sk_surface_new_backend_render_target (gr_recording_ (sk_surface_new_backend_render_target_delegate ??= GetSymbol ("sk_surface_new_backend_render_target")).Invoke (context, target, origin, colorType, colorspace, props); #endif - // sk_surface_t* sk_surface_new_backend_texture(gr_recording_context_t* context, const gr_backendtexture_t* texture, gr_surfaceorigin_t origin, int samples, sk_colortype_t colorType, sk_colorspace_t* colorspace, const sk_surfaceprops_t* props) + // sk_surface_t * sk_surface_new_backend_texture(gr_recording_context_t * context, gr_backendtexture_t const * texture, gr_surfaceorigin_t origin, int samples, sk_colortype_t colorType, sk_colorspace_t * colorspace, sk_surfaceprops_t const * props) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15237,7 +15237,7 @@ internal static sk_surface_t sk_surface_new_backend_texture (gr_recording_contex (sk_surface_new_backend_texture_delegate ??= GetSymbol ("sk_surface_new_backend_texture")).Invoke (context, texture, origin, samples, colorType, colorspace, props); #endif - // sk_image_t* sk_surface_new_image_snapshot(sk_surface_t*) + // sk_image_t * sk_surface_new_image_snapshot(sk_surface_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15256,7 +15256,7 @@ internal static sk_image_t sk_surface_new_image_snapshot (sk_surface_t param0) = (sk_surface_new_image_snapshot_delegate ??= GetSymbol ("sk_surface_new_image_snapshot")).Invoke (param0); #endif - // sk_image_t* sk_surface_new_image_snapshot_with_crop(sk_surface_t* surface, const sk_irect_t* bounds) + // sk_image_t * sk_surface_new_image_snapshot_with_crop(sk_surface_t * surface, sk_irect_t const * bounds) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15275,7 +15275,7 @@ internal static sk_image_t sk_surface_new_image_snapshot_with_crop (sk_surface_t (sk_surface_new_image_snapshot_with_crop_delegate ??= GetSymbol ("sk_surface_new_image_snapshot_with_crop")).Invoke (surface, bounds); #endif - // sk_surface_t* sk_surface_new_metal_layer(gr_recording_context_t* context, const void* layer, gr_surfaceorigin_t origin, int sampleCount, sk_colortype_t colorType, sk_colorspace_t* colorspace, const sk_surfaceprops_t* props, const void** drawable) + // sk_surface_t * sk_surface_new_metal_layer(gr_recording_context_t * context, void const * layer, gr_surfaceorigin_t origin, int sampleCount, sk_colortype_t colorType, sk_colorspace_t * colorspace, sk_surfaceprops_t const * props, void const * * drawable) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15294,7 +15294,7 @@ internal static sk_surface_t sk_surface_new_metal_layer (gr_recording_context_t (sk_surface_new_metal_layer_delegate ??= GetSymbol ("sk_surface_new_metal_layer")).Invoke (context, layer, origin, sampleCount, colorType, colorspace, props, drawable); #endif - // sk_surface_t* sk_surface_new_metal_view(gr_recording_context_t* context, const void* mtkView, gr_surfaceorigin_t origin, int sampleCount, sk_colortype_t colorType, sk_colorspace_t* colorspace, const sk_surfaceprops_t* props) + // sk_surface_t * sk_surface_new_metal_view(gr_recording_context_t * context, void const * mtkView, gr_surfaceorigin_t origin, int sampleCount, sk_colortype_t colorType, sk_colorspace_t * colorspace, sk_surfaceprops_t const * props) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15313,7 +15313,7 @@ internal static sk_surface_t sk_surface_new_metal_view (gr_recording_context_t c (sk_surface_new_metal_view_delegate ??= GetSymbol ("sk_surface_new_metal_view")).Invoke (context, mtkView, origin, sampleCount, colorType, colorspace, props); #endif - // sk_surface_t* sk_surface_new_null(int width, int height) + // sk_surface_t * sk_surface_new_null(int width, int height) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15332,7 +15332,7 @@ internal static sk_surface_t sk_surface_new_null (Int32 width, Int32 height) => (sk_surface_new_null_delegate ??= GetSymbol ("sk_surface_new_null")).Invoke (width, height); #endif - // sk_surface_t* sk_surface_new_raster(const sk_imageinfo_t*, size_t rowBytes, const sk_surfaceprops_t*) + // sk_surface_t * sk_surface_new_raster(sk_imageinfo_t const *, size_t rowBytes, sk_surfaceprops_t const *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15351,7 +15351,7 @@ internal static sk_surface_t sk_surface_new_raster (SKImageInfoNative* param0, / (sk_surface_new_raster_delegate ??= GetSymbol ("sk_surface_new_raster")).Invoke (param0, rowBytes, param2); #endif - // sk_surface_t* sk_surface_new_raster_direct(const sk_imageinfo_t*, void* pixels, size_t rowBytes, const sk_surface_raster_release_proc releaseProc, void* context, const sk_surfaceprops_t* props) + // sk_surface_t * sk_surface_new_raster_direct(sk_imageinfo_t const *, void * pixels, size_t rowBytes, sk_surface_raster_release_proc const releaseProc, void * context, sk_surfaceprops_t const * props) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15370,7 +15370,7 @@ internal static sk_surface_t sk_surface_new_raster_direct (SKImageInfoNative* pa (sk_surface_new_raster_direct_delegate ??= GetSymbol ("sk_surface_new_raster_direct")).Invoke (param0, pixels, rowBytes, releaseProc, context, props); #endif - // sk_surface_t* sk_surface_new_render_target(gr_recording_context_t* context, bool budgeted, const sk_imageinfo_t* cinfo, int sampleCount, gr_surfaceorigin_t origin, const sk_surfaceprops_t* props, bool shouldCreateWithMips) + // sk_surface_t * sk_surface_new_render_target(gr_recording_context_t * context, bool budgeted, sk_imageinfo_t const * cinfo, int sampleCount, gr_surfaceorigin_t origin, sk_surfaceprops_t const * props, bool shouldCreateWithMips) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15389,7 +15389,7 @@ internal static sk_surface_t sk_surface_new_render_target (gr_recording_context_ (sk_surface_new_render_target_delegate ??= GetSymbol ("sk_surface_new_render_target")).Invoke (context, budgeted, cinfo, sampleCount, origin, props, shouldCreateWithMips); #endif - // bool sk_surface_peek_pixels(sk_surface_t* surface, sk_pixmap_t* pixmap) + // bool sk_surface_peek_pixels(sk_surface_t * surface, sk_pixmap_t * pixmap) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15411,7 +15411,7 @@ internal static bool sk_surface_peek_pixels (sk_surface_t surface, sk_pixmap_t p (sk_surface_peek_pixels_delegate ??= GetSymbol ("sk_surface_peek_pixels")).Invoke (surface, pixmap); #endif - // bool sk_surface_read_pixels(sk_surface_t* surface, sk_imageinfo_t* dstInfo, void* dstPixels, size_t dstRowBytes, int srcX, int srcY) + // bool sk_surface_read_pixels(sk_surface_t * surface, sk_imageinfo_t * dstInfo, void * dstPixels, size_t dstRowBytes, int srcX, int srcY) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15433,7 +15433,7 @@ internal static bool sk_surface_read_pixels (sk_surface_t surface, SKImageInfoNa (sk_surface_read_pixels_delegate ??= GetSymbol ("sk_surface_read_pixels")).Invoke (surface, dstInfo, dstPixels, dstRowBytes, srcX, srcY); #endif - // void sk_surface_unref(sk_surface_t*) + // void sk_surface_unref(sk_surface_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15452,7 +15452,7 @@ internal static void sk_surface_unref (sk_surface_t param0) => (sk_surface_unref_delegate ??= GetSymbol ("sk_surface_unref")).Invoke (param0); #endif - // void sk_surfaceprops_delete(sk_surfaceprops_t* props) + // void sk_surfaceprops_delete(sk_surfaceprops_t * props) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15471,7 +15471,7 @@ internal static void sk_surfaceprops_delete (sk_surfaceprops_t props) => (sk_surfaceprops_delete_delegate ??= GetSymbol ("sk_surfaceprops_delete")).Invoke (props); #endif - // uint32_t sk_surfaceprops_get_flags(sk_surfaceprops_t* props) + // unsigned int sk_surfaceprops_get_flags(sk_surfaceprops_t * props) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15490,7 +15490,7 @@ internal static UInt32 sk_surfaceprops_get_flags (sk_surfaceprops_t props) => (sk_surfaceprops_get_flags_delegate ??= GetSymbol ("sk_surfaceprops_get_flags")).Invoke (props); #endif - // sk_pixelgeometry_t sk_surfaceprops_get_pixel_geometry(sk_surfaceprops_t* props) + // sk_pixelgeometry_t sk_surfaceprops_get_pixel_geometry(sk_surfaceprops_t * props) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15509,7 +15509,7 @@ internal static SKPixelGeometry sk_surfaceprops_get_pixel_geometry (sk_surfacepr (sk_surfaceprops_get_pixel_geometry_delegate ??= GetSymbol ("sk_surfaceprops_get_pixel_geometry")).Invoke (props); #endif - // sk_surfaceprops_t* sk_surfaceprops_new(uint32_t flags, sk_pixelgeometry_t geometry) + // sk_surfaceprops_t * sk_surfaceprops_new(unsigned int flags, sk_pixelgeometry_t geometry) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15532,7 +15532,7 @@ internal static sk_surfaceprops_t sk_surfaceprops_new (UInt32 flags, SKPixelGeom #region sk_svg.h - // sk_canvas_t* sk_svgcanvas_create_with_stream(const sk_rect_t* bounds, sk_wstream_t* stream) + // sk_canvas_t * sk_svgcanvas_create_with_stream(sk_rect_t const * bounds, sk_wstream_t * stream) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15555,7 +15555,7 @@ internal static sk_canvas_t sk_svgcanvas_create_with_stream (SKRect* bounds, sk_ #region sk_textblob.h - // void sk_textblob_builder_alloc_run(sk_textblob_builder_t* builder, const sk_font_t* font, int count, float x, float y, const sk_rect_t* bounds, sk_textblob_builder_runbuffer_t* runbuffer) + // void sk_textblob_builder_alloc_run(sk_textblob_builder_t * builder, sk_font_t const * font, int count, float x, float y, sk_rect_t const * bounds, sk_textblob_builder_runbuffer_t * runbuffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15574,7 +15574,7 @@ internal static void sk_textblob_builder_alloc_run (sk_textblob_builder_t builde (sk_textblob_builder_alloc_run_delegate ??= GetSymbol ("sk_textblob_builder_alloc_run")).Invoke (builder, font, count, x, y, bounds, runbuffer); #endif - // void sk_textblob_builder_alloc_run_pos(sk_textblob_builder_t* builder, const sk_font_t* font, int count, const sk_rect_t* bounds, sk_textblob_builder_runbuffer_t* runbuffer) + // void sk_textblob_builder_alloc_run_pos(sk_textblob_builder_t * builder, sk_font_t const * font, int count, sk_rect_t const * bounds, sk_textblob_builder_runbuffer_t * runbuffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15593,7 +15593,7 @@ internal static void sk_textblob_builder_alloc_run_pos (sk_textblob_builder_t bu (sk_textblob_builder_alloc_run_pos_delegate ??= GetSymbol ("sk_textblob_builder_alloc_run_pos")).Invoke (builder, font, count, bounds, runbuffer); #endif - // void sk_textblob_builder_alloc_run_pos_h(sk_textblob_builder_t* builder, const sk_font_t* font, int count, float y, const sk_rect_t* bounds, sk_textblob_builder_runbuffer_t* runbuffer) + // void sk_textblob_builder_alloc_run_pos_h(sk_textblob_builder_t * builder, sk_font_t const * font, int count, float y, sk_rect_t const * bounds, sk_textblob_builder_runbuffer_t * runbuffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15612,7 +15612,7 @@ internal static void sk_textblob_builder_alloc_run_pos_h (sk_textblob_builder_t (sk_textblob_builder_alloc_run_pos_h_delegate ??= GetSymbol ("sk_textblob_builder_alloc_run_pos_h")).Invoke (builder, font, count, y, bounds, runbuffer); #endif - // void sk_textblob_builder_alloc_run_rsxform(sk_textblob_builder_t* builder, const sk_font_t* font, int count, const sk_rect_t* bounds, sk_textblob_builder_runbuffer_t* runbuffer) + // void sk_textblob_builder_alloc_run_rsxform(sk_textblob_builder_t * builder, sk_font_t const * font, int count, sk_rect_t const * bounds, sk_textblob_builder_runbuffer_t * runbuffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15631,7 +15631,7 @@ internal static void sk_textblob_builder_alloc_run_rsxform (sk_textblob_builder_ (sk_textblob_builder_alloc_run_rsxform_delegate ??= GetSymbol ("sk_textblob_builder_alloc_run_rsxform")).Invoke (builder, font, count, bounds, runbuffer); #endif - // void sk_textblob_builder_alloc_run_text(sk_textblob_builder_t* builder, const sk_font_t* font, int count, float x, float y, int textByteCount, const sk_rect_t* bounds, sk_textblob_builder_runbuffer_t* runbuffer) + // void sk_textblob_builder_alloc_run_text(sk_textblob_builder_t * builder, sk_font_t const * font, int count, float x, float y, int textByteCount, sk_rect_t const * bounds, sk_textblob_builder_runbuffer_t * runbuffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15650,7 +15650,7 @@ internal static void sk_textblob_builder_alloc_run_text (sk_textblob_builder_t b (sk_textblob_builder_alloc_run_text_delegate ??= GetSymbol ("sk_textblob_builder_alloc_run_text")).Invoke (builder, font, count, x, y, textByteCount, bounds, runbuffer); #endif - // void sk_textblob_builder_alloc_run_text_pos(sk_textblob_builder_t* builder, const sk_font_t* font, int count, int textByteCount, const sk_rect_t* bounds, sk_textblob_builder_runbuffer_t* runbuffer) + // void sk_textblob_builder_alloc_run_text_pos(sk_textblob_builder_t * builder, sk_font_t const * font, int count, int textByteCount, sk_rect_t const * bounds, sk_textblob_builder_runbuffer_t * runbuffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15669,7 +15669,7 @@ internal static void sk_textblob_builder_alloc_run_text_pos (sk_textblob_builder (sk_textblob_builder_alloc_run_text_pos_delegate ??= GetSymbol ("sk_textblob_builder_alloc_run_text_pos")).Invoke (builder, font, count, textByteCount, bounds, runbuffer); #endif - // void sk_textblob_builder_alloc_run_text_pos_h(sk_textblob_builder_t* builder, const sk_font_t* font, int count, float y, int textByteCount, const sk_rect_t* bounds, sk_textblob_builder_runbuffer_t* runbuffer) + // void sk_textblob_builder_alloc_run_text_pos_h(sk_textblob_builder_t * builder, sk_font_t const * font, int count, float y, int textByteCount, sk_rect_t const * bounds, sk_textblob_builder_runbuffer_t * runbuffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15688,7 +15688,7 @@ internal static void sk_textblob_builder_alloc_run_text_pos_h (sk_textblob_build (sk_textblob_builder_alloc_run_text_pos_h_delegate ??= GetSymbol ("sk_textblob_builder_alloc_run_text_pos_h")).Invoke (builder, font, count, y, textByteCount, bounds, runbuffer); #endif - // void sk_textblob_builder_alloc_run_text_rsxform(sk_textblob_builder_t* builder, const sk_font_t* font, int count, int textByteCount, const sk_rect_t* bounds, sk_textblob_builder_runbuffer_t* runbuffer) + // void sk_textblob_builder_alloc_run_text_rsxform(sk_textblob_builder_t * builder, sk_font_t const * font, int count, int textByteCount, sk_rect_t const * bounds, sk_textblob_builder_runbuffer_t * runbuffer) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15707,7 +15707,7 @@ internal static void sk_textblob_builder_alloc_run_text_rsxform (sk_textblob_bui (sk_textblob_builder_alloc_run_text_rsxform_delegate ??= GetSymbol ("sk_textblob_builder_alloc_run_text_rsxform")).Invoke (builder, font, count, textByteCount, bounds, runbuffer); #endif - // void sk_textblob_builder_delete(sk_textblob_builder_t* builder) + // void sk_textblob_builder_delete(sk_textblob_builder_t * builder) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15726,7 +15726,7 @@ internal static void sk_textblob_builder_delete (sk_textblob_builder_t builder) (sk_textblob_builder_delete_delegate ??= GetSymbol ("sk_textblob_builder_delete")).Invoke (builder); #endif - // sk_textblob_t* sk_textblob_builder_make(sk_textblob_builder_t* builder) + // sk_textblob_t * sk_textblob_builder_make(sk_textblob_builder_t * builder) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15745,7 +15745,7 @@ internal static sk_textblob_t sk_textblob_builder_make (sk_textblob_builder_t bu (sk_textblob_builder_make_delegate ??= GetSymbol ("sk_textblob_builder_make")).Invoke (builder); #endif - // sk_textblob_builder_t* sk_textblob_builder_new() + // sk_textblob_builder_t * sk_textblob_builder_new() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15764,7 +15764,7 @@ internal static sk_textblob_builder_t sk_textblob_builder_new () => (sk_textblob_builder_new_delegate ??= GetSymbol ("sk_textblob_builder_new")).Invoke (); #endif - // void sk_textblob_get_bounds(const sk_textblob_t* blob, sk_rect_t* bounds) + // void sk_textblob_get_bounds(sk_textblob_t const * blob, sk_rect_t * bounds) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15783,7 +15783,7 @@ internal static void sk_textblob_get_bounds (sk_textblob_t blob, SKRect* bounds) (sk_textblob_get_bounds_delegate ??= GetSymbol ("sk_textblob_get_bounds")).Invoke (blob, bounds); #endif - // int sk_textblob_get_intercepts(const sk_textblob_t* blob, const float[2] bounds = 2, float[-1] intervals, const sk_paint_t* paint) + // int sk_textblob_get_intercepts(sk_textblob_t const * blob, float const[2] bounds = 2, float[-1] intervals, sk_paint_t const * paint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15802,7 +15802,7 @@ internal static Int32 sk_textblob_get_intercepts (sk_textblob_t blob, Single* bo (sk_textblob_get_intercepts_delegate ??= GetSymbol ("sk_textblob_get_intercepts")).Invoke (blob, bounds, intervals, paint); #endif - // uint32_t sk_textblob_get_unique_id(const sk_textblob_t* blob) + // unsigned int sk_textblob_get_unique_id(sk_textblob_t const * blob) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15821,7 +15821,7 @@ internal static UInt32 sk_textblob_get_unique_id (sk_textblob_t blob) => (sk_textblob_get_unique_id_delegate ??= GetSymbol ("sk_textblob_get_unique_id")).Invoke (blob); #endif - // void sk_textblob_ref(const sk_textblob_t* blob) + // void sk_textblob_ref(sk_textblob_t const * blob) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15840,7 +15840,7 @@ internal static void sk_textblob_ref (sk_textblob_t blob) => (sk_textblob_ref_delegate ??= GetSymbol ("sk_textblob_ref")).Invoke (blob); #endif - // void sk_textblob_unref(const sk_textblob_t* blob) + // void sk_textblob_unref(sk_textblob_t const * blob) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15863,7 +15863,7 @@ internal static void sk_textblob_unref (sk_textblob_t blob) => #region sk_typeface.h - // int sk_fontmgr_count_families(sk_fontmgr_t*) + // int sk_fontmgr_count_families(sk_fontmgr_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15882,7 +15882,7 @@ internal static Int32 sk_fontmgr_count_families (sk_fontmgr_t param0) => (sk_fontmgr_count_families_delegate ??= GetSymbol ("sk_fontmgr_count_families")).Invoke (param0); #endif - // sk_fontmgr_t* sk_fontmgr_create_default() + // sk_fontmgr_t * sk_fontmgr_create_default() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15901,7 +15901,7 @@ internal static sk_fontmgr_t sk_fontmgr_create_default () => (sk_fontmgr_create_default_delegate ??= GetSymbol ("sk_fontmgr_create_default")).Invoke (); #endif - // sk_typeface_t* sk_fontmgr_create_from_data(sk_fontmgr_t*, sk_data_t* data, int index) + // sk_typeface_t * sk_fontmgr_create_from_data(sk_fontmgr_t *, sk_data_t * data, int index) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15920,7 +15920,7 @@ internal static sk_typeface_t sk_fontmgr_create_from_data (sk_fontmgr_t param0, (sk_fontmgr_create_from_data_delegate ??= GetSymbol ("sk_fontmgr_create_from_data")).Invoke (param0, data, index); #endif - // sk_typeface_t* sk_fontmgr_create_from_file(sk_fontmgr_t*, const char* path, int index) + // sk_typeface_t * sk_fontmgr_create_from_file(sk_fontmgr_t *, char const * path, int index) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15939,7 +15939,7 @@ internal static sk_typeface_t sk_fontmgr_create_from_file (sk_fontmgr_t param0, (sk_fontmgr_create_from_file_delegate ??= GetSymbol ("sk_fontmgr_create_from_file")).Invoke (param0, path, index); #endif - // sk_typeface_t* sk_fontmgr_create_from_stream(sk_fontmgr_t*, sk_stream_asset_t* stream, int index) + // sk_typeface_t * sk_fontmgr_create_from_stream(sk_fontmgr_t *, sk_stream_asset_t * stream, int index) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15958,7 +15958,7 @@ internal static sk_typeface_t sk_fontmgr_create_from_stream (sk_fontmgr_t param0 (sk_fontmgr_create_from_stream_delegate ??= GetSymbol ("sk_fontmgr_create_from_stream")).Invoke (param0, stream, index); #endif - // sk_fontstyleset_t* sk_fontmgr_create_styleset(sk_fontmgr_t*, int index) + // sk_fontstyleset_t * sk_fontmgr_create_styleset(sk_fontmgr_t *, int index) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15977,7 +15977,7 @@ internal static sk_fontstyleset_t sk_fontmgr_create_styleset (sk_fontmgr_t param (sk_fontmgr_create_styleset_delegate ??= GetSymbol ("sk_fontmgr_create_styleset")).Invoke (param0, index); #endif - // void sk_fontmgr_get_family_name(sk_fontmgr_t*, int index, sk_string_t* familyName) + // void sk_fontmgr_get_family_name(sk_fontmgr_t *, int index, sk_string_t * familyName) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -15996,7 +15996,7 @@ internal static void sk_fontmgr_get_family_name (sk_fontmgr_t param0, Int32 inde (sk_fontmgr_get_family_name_delegate ??= GetSymbol ("sk_fontmgr_get_family_name")).Invoke (param0, index, familyName); #endif - // sk_fontstyleset_t* sk_fontmgr_match_family(sk_fontmgr_t*, const char* familyName) + // sk_fontstyleset_t * sk_fontmgr_match_family(sk_fontmgr_t *, char const * familyName) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16015,7 +16015,7 @@ internal static sk_fontstyleset_t sk_fontmgr_match_family (sk_fontmgr_t param0, (sk_fontmgr_match_family_delegate ??= GetSymbol ("sk_fontmgr_match_family")).Invoke (param0, familyName); #endif - // sk_typeface_t* sk_fontmgr_match_family_style(sk_fontmgr_t*, const char* familyName, sk_fontstyle_t* style) + // sk_typeface_t * sk_fontmgr_match_family_style(sk_fontmgr_t *, char const * familyName, sk_fontstyle_t * style) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16034,7 +16034,7 @@ internal static sk_typeface_t sk_fontmgr_match_family_style (sk_fontmgr_t param0 (sk_fontmgr_match_family_style_delegate ??= GetSymbol ("sk_fontmgr_match_family_style")).Invoke (param0, familyName, style); #endif - // sk_typeface_t* sk_fontmgr_match_family_style_character(sk_fontmgr_t*, const char* familyName, sk_fontstyle_t* style, const char** bcp47, int bcp47Count, int32_t character) + // sk_typeface_t * sk_fontmgr_match_family_style_character(sk_fontmgr_t *, char const * familyName, sk_fontstyle_t * style, char const * * bcp47, int bcp47Count, int character) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16053,7 +16053,7 @@ internal static sk_typeface_t sk_fontmgr_match_family_style_character (sk_fontmg (sk_fontmgr_match_family_style_character_delegate ??= GetSymbol ("sk_fontmgr_match_family_style_character")).Invoke (param0, familyName, style, bcp47, bcp47Count, character); #endif - // sk_fontmgr_t* sk_fontmgr_ref_default() + // sk_fontmgr_t * sk_fontmgr_ref_default() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16072,7 +16072,7 @@ internal static sk_fontmgr_t sk_fontmgr_ref_default () => (sk_fontmgr_ref_default_delegate ??= GetSymbol ("sk_fontmgr_ref_default")).Invoke (); #endif - // void sk_fontmgr_unref(sk_fontmgr_t*) + // void sk_fontmgr_unref(sk_fontmgr_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16091,7 +16091,7 @@ internal static void sk_fontmgr_unref (sk_fontmgr_t param0) => (sk_fontmgr_unref_delegate ??= GetSymbol ("sk_fontmgr_unref")).Invoke (param0); #endif - // void sk_fontstyle_delete(sk_fontstyle_t* fs) + // void sk_fontstyle_delete(sk_fontstyle_t * fs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16110,7 +16110,7 @@ internal static void sk_fontstyle_delete (sk_fontstyle_t fs) => (sk_fontstyle_delete_delegate ??= GetSymbol ("sk_fontstyle_delete")).Invoke (fs); #endif - // sk_font_style_slant_t sk_fontstyle_get_slant(const sk_fontstyle_t* fs) + // sk_font_style_slant_t sk_fontstyle_get_slant(sk_fontstyle_t const * fs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16129,7 +16129,7 @@ internal static SKFontStyleSlant sk_fontstyle_get_slant (sk_fontstyle_t fs) => (sk_fontstyle_get_slant_delegate ??= GetSymbol ("sk_fontstyle_get_slant")).Invoke (fs); #endif - // int sk_fontstyle_get_weight(const sk_fontstyle_t* fs) + // int sk_fontstyle_get_weight(sk_fontstyle_t const * fs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16148,7 +16148,7 @@ internal static Int32 sk_fontstyle_get_weight (sk_fontstyle_t fs) => (sk_fontstyle_get_weight_delegate ??= GetSymbol ("sk_fontstyle_get_weight")).Invoke (fs); #endif - // int sk_fontstyle_get_width(const sk_fontstyle_t* fs) + // int sk_fontstyle_get_width(sk_fontstyle_t const * fs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16167,7 +16167,7 @@ internal static Int32 sk_fontstyle_get_width (sk_fontstyle_t fs) => (sk_fontstyle_get_width_delegate ??= GetSymbol ("sk_fontstyle_get_width")).Invoke (fs); #endif - // sk_fontstyle_t* sk_fontstyle_new(int weight, int width, sk_font_style_slant_t slant) + // sk_fontstyle_t * sk_fontstyle_new(int weight, int width, sk_font_style_slant_t slant) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16186,7 +16186,7 @@ internal static sk_fontstyle_t sk_fontstyle_new (Int32 weight, Int32 width, SKFo (sk_fontstyle_new_delegate ??= GetSymbol ("sk_fontstyle_new")).Invoke (weight, width, slant); #endif - // sk_fontstyleset_t* sk_fontstyleset_create_empty() + // sk_fontstyleset_t * sk_fontstyleset_create_empty() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16205,7 +16205,7 @@ internal static sk_fontstyleset_t sk_fontstyleset_create_empty () => (sk_fontstyleset_create_empty_delegate ??= GetSymbol ("sk_fontstyleset_create_empty")).Invoke (); #endif - // sk_typeface_t* sk_fontstyleset_create_typeface(sk_fontstyleset_t* fss, int index) + // sk_typeface_t * sk_fontstyleset_create_typeface(sk_fontstyleset_t * fss, int index) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16224,7 +16224,7 @@ internal static sk_typeface_t sk_fontstyleset_create_typeface (sk_fontstyleset_t (sk_fontstyleset_create_typeface_delegate ??= GetSymbol ("sk_fontstyleset_create_typeface")).Invoke (fss, index); #endif - // int sk_fontstyleset_get_count(sk_fontstyleset_t* fss) + // int sk_fontstyleset_get_count(sk_fontstyleset_t * fss) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16243,7 +16243,7 @@ internal static Int32 sk_fontstyleset_get_count (sk_fontstyleset_t fss) => (sk_fontstyleset_get_count_delegate ??= GetSymbol ("sk_fontstyleset_get_count")).Invoke (fss); #endif - // void sk_fontstyleset_get_style(sk_fontstyleset_t* fss, int index, sk_fontstyle_t* fs, sk_string_t* style) + // void sk_fontstyleset_get_style(sk_fontstyleset_t * fss, int index, sk_fontstyle_t * fs, sk_string_t * style) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16262,7 +16262,7 @@ internal static void sk_fontstyleset_get_style (sk_fontstyleset_t fss, Int32 ind (sk_fontstyleset_get_style_delegate ??= GetSymbol ("sk_fontstyleset_get_style")).Invoke (fss, index, fs, style); #endif - // sk_typeface_t* sk_fontstyleset_match_style(sk_fontstyleset_t* fss, sk_fontstyle_t* style) + // sk_typeface_t * sk_fontstyleset_match_style(sk_fontstyleset_t * fss, sk_fontstyle_t * style) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16281,7 +16281,7 @@ internal static sk_typeface_t sk_fontstyleset_match_style (sk_fontstyleset_t fss (sk_fontstyleset_match_style_delegate ??= GetSymbol ("sk_fontstyleset_match_style")).Invoke (fss, style); #endif - // void sk_fontstyleset_unref(sk_fontstyleset_t* fss) + // void sk_fontstyleset_unref(sk_fontstyleset_t * fss) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16300,7 +16300,7 @@ internal static void sk_fontstyleset_unref (sk_fontstyleset_t fss) => (sk_fontstyleset_unref_delegate ??= GetSymbol ("sk_fontstyleset_unref")).Invoke (fss); #endif - // sk_data_t* sk_typeface_copy_table_data(const sk_typeface_t* typeface, sk_font_table_tag_t tag) + // sk_data_t * sk_typeface_copy_table_data(sk_typeface_t const * typeface, sk_font_table_tag_t tag) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16319,7 +16319,7 @@ internal static sk_data_t sk_typeface_copy_table_data (sk_typeface_t typeface, U (sk_typeface_copy_table_data_delegate ??= GetSymbol ("sk_typeface_copy_table_data")).Invoke (typeface, tag); #endif - // int sk_typeface_count_glyphs(const sk_typeface_t* typeface) + // int sk_typeface_count_glyphs(sk_typeface_t const * typeface) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16338,7 +16338,7 @@ internal static Int32 sk_typeface_count_glyphs (sk_typeface_t typeface) => (sk_typeface_count_glyphs_delegate ??= GetSymbol ("sk_typeface_count_glyphs")).Invoke (typeface); #endif - // int sk_typeface_count_tables(const sk_typeface_t* typeface) + // int sk_typeface_count_tables(sk_typeface_t const * typeface) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16357,7 +16357,7 @@ internal static Int32 sk_typeface_count_tables (sk_typeface_t typeface) => (sk_typeface_count_tables_delegate ??= GetSymbol ("sk_typeface_count_tables")).Invoke (typeface); #endif - // sk_typeface_t* sk_typeface_create_default() + // sk_typeface_t * sk_typeface_create_default() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16376,7 +16376,7 @@ internal static sk_typeface_t sk_typeface_create_default () => (sk_typeface_create_default_delegate ??= GetSymbol ("sk_typeface_create_default")).Invoke (); #endif - // sk_typeface_t* sk_typeface_create_from_data(sk_data_t* data, int index) + // sk_typeface_t * sk_typeface_create_from_data(sk_data_t * data, int index) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16395,7 +16395,7 @@ internal static sk_typeface_t sk_typeface_create_from_data (sk_data_t data, Int3 (sk_typeface_create_from_data_delegate ??= GetSymbol ("sk_typeface_create_from_data")).Invoke (data, index); #endif - // sk_typeface_t* sk_typeface_create_from_file(const char* path, int index) + // sk_typeface_t * sk_typeface_create_from_file(char const * path, int index) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16414,7 +16414,7 @@ internal static sk_typeface_t sk_typeface_create_from_file (/* char */ void* pat (sk_typeface_create_from_file_delegate ??= GetSymbol ("sk_typeface_create_from_file")).Invoke (path, index); #endif - // sk_typeface_t* sk_typeface_create_from_name(const char* familyName, const sk_fontstyle_t* style) + // sk_typeface_t * sk_typeface_create_from_name(char const * familyName, sk_fontstyle_t const * style) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16433,7 +16433,7 @@ internal static sk_typeface_t sk_typeface_create_from_name (IntPtr familyName, s (sk_typeface_create_from_name_delegate ??= GetSymbol ("sk_typeface_create_from_name")).Invoke (familyName, style); #endif - // sk_typeface_t* sk_typeface_create_from_stream(sk_stream_asset_t* stream, int index) + // sk_typeface_t * sk_typeface_create_from_stream(sk_stream_asset_t * stream, int index) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16452,7 +16452,7 @@ internal static sk_typeface_t sk_typeface_create_from_stream (sk_stream_asset_t (sk_typeface_create_from_stream_delegate ??= GetSymbol ("sk_typeface_create_from_stream")).Invoke (stream, index); #endif - // sk_string_t* sk_typeface_get_family_name(const sk_typeface_t* typeface) + // sk_string_t * sk_typeface_get_family_name(sk_typeface_t const * typeface) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16471,7 +16471,7 @@ internal static sk_string_t sk_typeface_get_family_name (sk_typeface_t typeface) (sk_typeface_get_family_name_delegate ??= GetSymbol ("sk_typeface_get_family_name")).Invoke (typeface); #endif - // sk_font_style_slant_t sk_typeface_get_font_slant(const sk_typeface_t* typeface) + // sk_font_style_slant_t sk_typeface_get_font_slant(sk_typeface_t const * typeface) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16490,7 +16490,7 @@ internal static SKFontStyleSlant sk_typeface_get_font_slant (sk_typeface_t typef (sk_typeface_get_font_slant_delegate ??= GetSymbol ("sk_typeface_get_font_slant")).Invoke (typeface); #endif - // int sk_typeface_get_font_weight(const sk_typeface_t* typeface) + // int sk_typeface_get_font_weight(sk_typeface_t const * typeface) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16509,7 +16509,7 @@ internal static Int32 sk_typeface_get_font_weight (sk_typeface_t typeface) => (sk_typeface_get_font_weight_delegate ??= GetSymbol ("sk_typeface_get_font_weight")).Invoke (typeface); #endif - // int sk_typeface_get_font_width(const sk_typeface_t* typeface) + // int sk_typeface_get_font_width(sk_typeface_t const * typeface) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16528,7 +16528,7 @@ internal static Int32 sk_typeface_get_font_width (sk_typeface_t typeface) => (sk_typeface_get_font_width_delegate ??= GetSymbol ("sk_typeface_get_font_width")).Invoke (typeface); #endif - // sk_fontstyle_t* sk_typeface_get_fontstyle(const sk_typeface_t* typeface) + // sk_fontstyle_t * sk_typeface_get_fontstyle(sk_typeface_t const * typeface) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16547,7 +16547,7 @@ internal static sk_fontstyle_t sk_typeface_get_fontstyle (sk_typeface_t typeface (sk_typeface_get_fontstyle_delegate ??= GetSymbol ("sk_typeface_get_fontstyle")).Invoke (typeface); #endif - // bool sk_typeface_get_kerning_pair_adjustments(const sk_typeface_t* typeface, const uint16_t[-1] glyphs, int count, int32_t[-1] adjustments) + // bool sk_typeface_get_kerning_pair_adjustments(sk_typeface_t const * typeface, unsigned short const[-1] glyphs, int count, int[-1] adjustments) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16569,7 +16569,7 @@ internal static bool sk_typeface_get_kerning_pair_adjustments (sk_typeface_t typ (sk_typeface_get_kerning_pair_adjustments_delegate ??= GetSymbol ("sk_typeface_get_kerning_pair_adjustments")).Invoke (typeface, glyphs, count, adjustments); #endif - // sk_string_t* sk_typeface_get_post_script_name(const sk_typeface_t* typeface) + // sk_string_t * sk_typeface_get_post_script_name(sk_typeface_t const * typeface) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16588,7 +16588,7 @@ internal static sk_string_t sk_typeface_get_post_script_name (sk_typeface_t type (sk_typeface_get_post_script_name_delegate ??= GetSymbol ("sk_typeface_get_post_script_name")).Invoke (typeface); #endif - // size_t sk_typeface_get_table_data(const sk_typeface_t* typeface, sk_font_table_tag_t tag, size_t offset, size_t length, void* data) + // size_t sk_typeface_get_table_data(sk_typeface_t const * typeface, sk_font_table_tag_t tag, size_t offset, size_t length, void * data) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16607,7 +16607,7 @@ private partial class Delegates { (sk_typeface_get_table_data_delegate ??= GetSymbol ("sk_typeface_get_table_data")).Invoke (typeface, tag, offset, length, data); #endif - // size_t sk_typeface_get_table_size(const sk_typeface_t* typeface, sk_font_table_tag_t tag) + // size_t sk_typeface_get_table_size(sk_typeface_t const * typeface, sk_font_table_tag_t tag) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16626,7 +16626,7 @@ private partial class Delegates { (sk_typeface_get_table_size_delegate ??= GetSymbol ("sk_typeface_get_table_size")).Invoke (typeface, tag); #endif - // int sk_typeface_get_table_tags(const sk_typeface_t* typeface, sk_font_table_tag_t[-1] tags) + // int sk_typeface_get_table_tags(sk_typeface_t const * typeface, sk_font_table_tag_t[-1] tags) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16645,7 +16645,7 @@ internal static Int32 sk_typeface_get_table_tags (sk_typeface_t typeface, UInt32 (sk_typeface_get_table_tags_delegate ??= GetSymbol ("sk_typeface_get_table_tags")).Invoke (typeface, tags); #endif - // int sk_typeface_get_units_per_em(const sk_typeface_t* typeface) + // int sk_typeface_get_units_per_em(sk_typeface_t const * typeface) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16664,7 +16664,7 @@ internal static Int32 sk_typeface_get_units_per_em (sk_typeface_t typeface) => (sk_typeface_get_units_per_em_delegate ??= GetSymbol ("sk_typeface_get_units_per_em")).Invoke (typeface); #endif - // bool sk_typeface_is_fixed_pitch(const sk_typeface_t* typeface) + // bool sk_typeface_is_fixed_pitch(sk_typeface_t const * typeface) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16686,7 +16686,7 @@ internal static bool sk_typeface_is_fixed_pitch (sk_typeface_t typeface) => (sk_typeface_is_fixed_pitch_delegate ??= GetSymbol ("sk_typeface_is_fixed_pitch")).Invoke (typeface); #endif - // sk_stream_asset_t* sk_typeface_open_stream(const sk_typeface_t* typeface, int* ttcIndex) + // sk_stream_asset_t * sk_typeface_open_stream(sk_typeface_t const * typeface, int * ttcIndex) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16705,7 +16705,7 @@ internal static sk_stream_asset_t sk_typeface_open_stream (sk_typeface_t typefac (sk_typeface_open_stream_delegate ??= GetSymbol ("sk_typeface_open_stream")).Invoke (typeface, ttcIndex); #endif - // sk_typeface_t* sk_typeface_ref_default() + // sk_typeface_t * sk_typeface_ref_default() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16724,7 +16724,7 @@ internal static sk_typeface_t sk_typeface_ref_default () => (sk_typeface_ref_default_delegate ??= GetSymbol ("sk_typeface_ref_default")).Invoke (); #endif - // uint16_t sk_typeface_unichar_to_glyph(const sk_typeface_t* typeface, const int32_t unichar) + // unsigned short sk_typeface_unichar_to_glyph(sk_typeface_t const * typeface, int const unichar) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16743,7 +16743,7 @@ internal static UInt16 sk_typeface_unichar_to_glyph (sk_typeface_t typeface, Int (sk_typeface_unichar_to_glyph_delegate ??= GetSymbol ("sk_typeface_unichar_to_glyph")).Invoke (typeface, unichar); #endif - // void sk_typeface_unichars_to_glyphs(const sk_typeface_t* typeface, const int32_t[-1] unichars, int count, uint16_t[-1] glyphs) + // void sk_typeface_unichars_to_glyphs(sk_typeface_t const * typeface, int const[-1] unichars, int count, unsigned short[-1] glyphs) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16762,7 +16762,7 @@ internal static void sk_typeface_unichars_to_glyphs (sk_typeface_t typeface, Int (sk_typeface_unichars_to_glyphs_delegate ??= GetSymbol ("sk_typeface_unichars_to_glyphs")).Invoke (typeface, unichars, count, glyphs); #endif - // void sk_typeface_unref(sk_typeface_t* typeface) + // void sk_typeface_unref(sk_typeface_t * typeface) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16785,7 +16785,7 @@ internal static void sk_typeface_unref (sk_typeface_t typeface) => #region sk_vertices.h - // sk_vertices_t* sk_vertices_make_copy(sk_vertices_vertex_mode_t vmode, int vertexCount, const sk_point_t* positions, const sk_point_t* texs, const sk_color_t* colors, int indexCount, const uint16_t* indices) + // sk_vertices_t * sk_vertices_make_copy(sk_vertices_vertex_mode_t vmode, int vertexCount, sk_point_t const * positions, sk_point_t const * texs, sk_color_t const * colors, int indexCount, unsigned short const * indices) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16804,7 +16804,7 @@ internal static sk_vertices_t sk_vertices_make_copy (SKVertexMode vmode, Int32 v (sk_vertices_make_copy_delegate ??= GetSymbol ("sk_vertices_make_copy")).Invoke (vmode, vertexCount, positions, texs, colors, indexCount, indices); #endif - // void sk_vertices_ref(sk_vertices_t* cvertices) + // void sk_vertices_ref(sk_vertices_t * cvertices) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16823,7 +16823,7 @@ internal static void sk_vertices_ref (sk_vertices_t cvertices) => (sk_vertices_ref_delegate ??= GetSymbol ("sk_vertices_ref")).Invoke (cvertices); #endif - // void sk_vertices_unref(sk_vertices_t* cvertices) + // void sk_vertices_unref(sk_vertices_t * cvertices) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16846,7 +16846,7 @@ internal static void sk_vertices_unref (sk_vertices_t cvertices) => #region sk_compatpaint.h - // sk_compatpaint_t* sk_compatpaint_clone(const sk_compatpaint_t* paint) + // sk_compatpaint_t * sk_compatpaint_clone(sk_compatpaint_t const * paint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16865,7 +16865,7 @@ internal static sk_compatpaint_t sk_compatpaint_clone (sk_compatpaint_t paint) = (sk_compatpaint_clone_delegate ??= GetSymbol ("sk_compatpaint_clone")).Invoke (paint); #endif - // void sk_compatpaint_delete(sk_compatpaint_t* paint) + // void sk_compatpaint_delete(sk_compatpaint_t * paint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16884,7 +16884,7 @@ internal static void sk_compatpaint_delete (sk_compatpaint_t paint) => (sk_compatpaint_delete_delegate ??= GetSymbol ("sk_compatpaint_delete")).Invoke (paint); #endif - // int sk_compatpaint_get_filter_quality(const sk_compatpaint_t* paint) + // int sk_compatpaint_get_filter_quality(sk_compatpaint_t const * paint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16903,7 +16903,7 @@ internal static Int32 sk_compatpaint_get_filter_quality (sk_compatpaint_t paint) (sk_compatpaint_get_filter_quality_delegate ??= GetSymbol ("sk_compatpaint_get_filter_quality")).Invoke (paint); #endif - // sk_font_t* sk_compatpaint_get_font(sk_compatpaint_t* paint) + // sk_font_t * sk_compatpaint_get_font(sk_compatpaint_t * paint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16922,7 +16922,7 @@ internal static sk_font_t sk_compatpaint_get_font (sk_compatpaint_t paint) => (sk_compatpaint_get_font_delegate ??= GetSymbol ("sk_compatpaint_get_font")).Invoke (paint); #endif - // bool sk_compatpaint_get_lcd_render_text(const sk_compatpaint_t* paint) + // bool sk_compatpaint_get_lcd_render_text(sk_compatpaint_t const * paint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16944,7 +16944,7 @@ internal static bool sk_compatpaint_get_lcd_render_text (sk_compatpaint_t paint) (sk_compatpaint_get_lcd_render_text_delegate ??= GetSymbol ("sk_compatpaint_get_lcd_render_text")).Invoke (paint); #endif - // sk_text_align_t sk_compatpaint_get_text_align(const sk_compatpaint_t* paint) + // sk_text_align_t sk_compatpaint_get_text_align(sk_compatpaint_t const * paint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16963,7 +16963,7 @@ internal static SKTextAlign sk_compatpaint_get_text_align (sk_compatpaint_t pain (sk_compatpaint_get_text_align_delegate ??= GetSymbol ("sk_compatpaint_get_text_align")).Invoke (paint); #endif - // sk_text_encoding_t sk_compatpaint_get_text_encoding(const sk_compatpaint_t* paint) + // sk_text_encoding_t sk_compatpaint_get_text_encoding(sk_compatpaint_t const * paint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -16982,7 +16982,7 @@ internal static SKTextEncoding sk_compatpaint_get_text_encoding (sk_compatpaint_ (sk_compatpaint_get_text_encoding_delegate ??= GetSymbol ("sk_compatpaint_get_text_encoding")).Invoke (paint); #endif - // sk_font_t* sk_compatpaint_make_font(sk_compatpaint_t* paint) + // sk_font_t * sk_compatpaint_make_font(sk_compatpaint_t * paint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -17001,7 +17001,7 @@ internal static sk_font_t sk_compatpaint_make_font (sk_compatpaint_t paint) => (sk_compatpaint_make_font_delegate ??= GetSymbol ("sk_compatpaint_make_font")).Invoke (paint); #endif - // sk_compatpaint_t* sk_compatpaint_new() + // sk_compatpaint_t * sk_compatpaint_new() #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -17020,7 +17020,7 @@ internal static sk_compatpaint_t sk_compatpaint_new () => (sk_compatpaint_new_delegate ??= GetSymbol ("sk_compatpaint_new")).Invoke (); #endif - // sk_compatpaint_t* sk_compatpaint_new_with_font(const sk_font_t* font) + // sk_compatpaint_t * sk_compatpaint_new_with_font(sk_font_t const * font) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -17039,7 +17039,7 @@ internal static sk_compatpaint_t sk_compatpaint_new_with_font (sk_font_t font) = (sk_compatpaint_new_with_font_delegate ??= GetSymbol ("sk_compatpaint_new_with_font")).Invoke (font); #endif - // void sk_compatpaint_reset(sk_compatpaint_t* paint) + // void sk_compatpaint_reset(sk_compatpaint_t * paint) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -17058,7 +17058,7 @@ internal static void sk_compatpaint_reset (sk_compatpaint_t paint) => (sk_compatpaint_reset_delegate ??= GetSymbol ("sk_compatpaint_reset")).Invoke (paint); #endif - // void sk_compatpaint_set_filter_quality(sk_compatpaint_t* paint, int quality) + // void sk_compatpaint_set_filter_quality(sk_compatpaint_t * paint, int quality) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -17077,7 +17077,7 @@ internal static void sk_compatpaint_set_filter_quality (sk_compatpaint_t paint, (sk_compatpaint_set_filter_quality_delegate ??= GetSymbol ("sk_compatpaint_set_filter_quality")).Invoke (paint, quality); #endif - // void sk_compatpaint_set_is_antialias(sk_compatpaint_t* paint, bool antialias) + // void sk_compatpaint_set_is_antialias(sk_compatpaint_t * paint, bool antialias) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -17096,7 +17096,7 @@ internal static void sk_compatpaint_set_is_antialias (sk_compatpaint_t paint, [M (sk_compatpaint_set_is_antialias_delegate ??= GetSymbol ("sk_compatpaint_set_is_antialias")).Invoke (paint, antialias); #endif - // void sk_compatpaint_set_lcd_render_text(sk_compatpaint_t* paint, bool lcdRenderText) + // void sk_compatpaint_set_lcd_render_text(sk_compatpaint_t * paint, bool lcdRenderText) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -17115,7 +17115,7 @@ internal static void sk_compatpaint_set_lcd_render_text (sk_compatpaint_t paint, (sk_compatpaint_set_lcd_render_text_delegate ??= GetSymbol ("sk_compatpaint_set_lcd_render_text")).Invoke (paint, lcdRenderText); #endif - // void sk_compatpaint_set_text_align(sk_compatpaint_t* paint, sk_text_align_t align) + // void sk_compatpaint_set_text_align(sk_compatpaint_t * paint, sk_text_align_t align) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -17134,7 +17134,7 @@ internal static void sk_compatpaint_set_text_align (sk_compatpaint_t paint, SKTe (sk_compatpaint_set_text_align_delegate ??= GetSymbol ("sk_compatpaint_set_text_align")).Invoke (paint, align); #endif - // void sk_compatpaint_set_text_encoding(sk_compatpaint_t* paint, sk_text_encoding_t encoding) + // void sk_compatpaint_set_text_encoding(sk_compatpaint_t * paint, sk_text_encoding_t encoding) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -17157,7 +17157,7 @@ internal static void sk_compatpaint_set_text_encoding (sk_compatpaint_t paint, S #region sk_manageddrawable.h - // sk_manageddrawable_t* sk_manageddrawable_new(void* context) + // sk_manageddrawable_t * sk_manageddrawable_new(void * context) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -17195,7 +17195,7 @@ internal static void sk_manageddrawable_set_procs (SKManagedDrawableDelegates pr (sk_manageddrawable_set_procs_delegate ??= GetSymbol ("sk_manageddrawable_set_procs")).Invoke (procs); #endif - // void sk_manageddrawable_unref(sk_manageddrawable_t*) + // void sk_manageddrawable_unref(sk_manageddrawable_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -17218,7 +17218,7 @@ internal static void sk_manageddrawable_unref (sk_manageddrawable_t param0) => #region sk_managedstream.h - // void sk_managedstream_destroy(sk_stream_managedstream_t* s) + // void sk_managedstream_destroy(sk_stream_managedstream_t * s) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -17237,7 +17237,7 @@ internal static void sk_managedstream_destroy (sk_stream_managedstream_t s) => (sk_managedstream_destroy_delegate ??= GetSymbol ("sk_managedstream_destroy")).Invoke (s); #endif - // sk_stream_managedstream_t* sk_managedstream_new(void* context) + // sk_stream_managedstream_t * sk_managedstream_new(void * context) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -17275,7 +17275,7 @@ internal static void sk_managedstream_set_procs (SKManagedStreamDelegates procs) (sk_managedstream_set_procs_delegate ??= GetSymbol ("sk_managedstream_set_procs")).Invoke (procs); #endif - // void sk_managedwstream_destroy(sk_wstream_managedstream_t* s) + // void sk_managedwstream_destroy(sk_wstream_managedstream_t * s) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -17294,7 +17294,7 @@ internal static void sk_managedwstream_destroy (sk_wstream_managedstream_t s) => (sk_managedwstream_destroy_delegate ??= GetSymbol ("sk_managedwstream_destroy")).Invoke (s); #endif - // sk_wstream_managedstream_t* sk_managedwstream_new(void* context) + // sk_wstream_managedstream_t * sk_managedwstream_new(void * context) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -17336,7 +17336,7 @@ internal static void sk_managedwstream_set_procs (SKManagedWStreamDelegates proc #region sk_managedtracememorydump.h - // void sk_managedtracememorydump_delete(sk_managedtracememorydump_t*) + // void sk_managedtracememorydump_delete(sk_managedtracememorydump_t *) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -17355,7 +17355,7 @@ internal static void sk_managedtracememorydump_delete (sk_managedtracememorydump (sk_managedtracememorydump_delete_delegate ??= GetSymbol ("sk_managedtracememorydump_delete")).Invoke (param0); #endif - // sk_managedtracememorydump_t* sk_managedtracememorydump_new(bool detailed, bool dumpWrapped, void* context) + // sk_managedtracememorydump_t * sk_managedtracememorydump_new(bool detailed, bool dumpWrapped, void * context) #if !USE_DELEGATES #if USE_LIBRARY_IMPORT [LibraryImport (SKIA)] @@ -17404,146 +17404,146 @@ internal static void sk_managedtracememorydump_set_procs (SKManagedTraceMemoryDu #if !USE_LIBRARY_IMPORT namespace SkiaSharp { - // typedef void (*)()* gr_gl_func_ptr + // typedef void (*)() * gr_gl_func_ptr [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate void GRGlFuncPtr(); - // typedef gr_gl_func_ptr (*)(void* ctx, const char* name)* gr_gl_get_proc + // typedef gr_gl_func_ptr (*)(void * ctx, char const * name) * gr_gl_get_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate IntPtr GRGlGetProcProxyDelegate(void* ctx, /* char */ void* name); - // typedef void (*)()* gr_vk_func_ptr + // typedef void (*)() * gr_vk_func_ptr [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate void GRVkFuncPtr(); - // typedef gr_vk_func_ptr (*)(void* ctx, const char* name, vk_instance_t* instance, vk_device_t* device)* gr_vk_get_proc + // typedef gr_vk_func_ptr (*)(void * ctx, char const * name, vk_instance_t * instance, vk_device_t * device) * gr_vk_get_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate IntPtr GRVkGetProcProxyDelegate(void* ctx, /* char */ void* name, vk_instance_t instance, vk_device_t device); - // typedef void (*)(void* addr, void* context)* sk_bitmap_release_proc + // typedef void (*)(void * addr, void * context) * sk_bitmap_release_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate void SKBitmapReleaseProxyDelegate(void* addr, void* context); - // typedef void (*)(const void* ptr, void* context)* sk_data_release_proc + // typedef void (*)(void const * ptr, void * context) * sk_data_release_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate void SKDataReleaseProxyDelegate(void* ptr, void* context); - // typedef void (*)(const sk_path_t* pathOrNull, const sk_matrix_t* matrix, void* context)* sk_glyph_path_proc + // typedef void (*)(sk_path_t const * pathOrNull, sk_matrix_t const * matrix, void * context) * sk_glyph_path_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate void SKGlyphPathProxyDelegate(sk_path_t pathOrNull, SKMatrix* matrix, void* context); - // typedef void (*)(const void* addr, void* context)* sk_image_raster_release_proc + // typedef void (*)(void const * addr, void * context) * sk_image_raster_release_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate void SKImageRasterReleaseProxyDelegate(void* addr, void* context); - // typedef void (*)(void* context)* sk_image_texture_release_proc + // typedef void (*)(void * context) * sk_image_texture_release_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate void SKImageTextureReleaseProxyDelegate(void* context); - // typedef size_t (*)(sk_manageddrawable_t* d, void* context)* sk_manageddrawable_approximateBytesUsed_proc + // typedef size_t (*)(sk_manageddrawable_t * d, void * context) * sk_manageddrawable_approximateBytesUsed_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate /* size_t */ IntPtr SKManagedDrawableApproximateBytesUsedProxyDelegate(sk_manageddrawable_t d, void* context); - // typedef void (*)(sk_manageddrawable_t* d, void* context)* sk_manageddrawable_destroy_proc + // typedef void (*)(sk_manageddrawable_t * d, void * context) * sk_manageddrawable_destroy_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate void SKManagedDrawableDestroyProxyDelegate(sk_manageddrawable_t d, void* context); - // typedef void (*)(sk_manageddrawable_t* d, void* context, sk_canvas_t* ccanvas)* sk_manageddrawable_draw_proc + // typedef void (*)(sk_manageddrawable_t * d, void * context, sk_canvas_t * ccanvas) * sk_manageddrawable_draw_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate void SKManagedDrawableDrawProxyDelegate(sk_manageddrawable_t d, void* context, sk_canvas_t ccanvas); - // typedef void (*)(sk_manageddrawable_t* d, void* context, sk_rect_t* rect)* sk_manageddrawable_getBounds_proc + // typedef void (*)(sk_manageddrawable_t * d, void * context, sk_rect_t * rect) * sk_manageddrawable_getBounds_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate void SKManagedDrawableGetBoundsProxyDelegate(sk_manageddrawable_t d, void* context, SKRect* rect); - // typedef sk_picture_t* (*)(sk_manageddrawable_t* d, void* context)* sk_manageddrawable_makePictureSnapshot_proc + // typedef sk_picture_t * (*)(sk_manageddrawable_t * d, void * context) * sk_manageddrawable_makePictureSnapshot_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate sk_picture_t SKManagedDrawableMakePictureSnapshotProxyDelegate(sk_manageddrawable_t d, void* context); - // typedef void (*)(sk_stream_managedstream_t* s, void* context)* sk_managedstream_destroy_proc + // typedef void (*)(sk_stream_managedstream_t * s, void * context) * sk_managedstream_destroy_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate void SKManagedStreamDestroyProxyDelegate(sk_stream_managedstream_t s, void* context); - // typedef sk_stream_managedstream_t* (*)(const sk_stream_managedstream_t* s, void* context)* sk_managedstream_duplicate_proc + // typedef sk_stream_managedstream_t * (*)(sk_stream_managedstream_t const * s, void * context) * sk_managedstream_duplicate_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate sk_stream_managedstream_t SKManagedStreamDuplicateProxyDelegate(sk_stream_managedstream_t s, void* context); - // typedef sk_stream_managedstream_t* (*)(const sk_stream_managedstream_t* s, void* context)* sk_managedstream_fork_proc + // typedef sk_stream_managedstream_t * (*)(sk_stream_managedstream_t const * s, void * context) * sk_managedstream_fork_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate sk_stream_managedstream_t SKManagedStreamForkProxyDelegate(sk_stream_managedstream_t s, void* context); - // typedef size_t (*)(const sk_stream_managedstream_t* s, void* context)* sk_managedstream_getLength_proc + // typedef size_t (*)(sk_stream_managedstream_t const * s, void * context) * sk_managedstream_getLength_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate /* size_t */ IntPtr SKManagedStreamGetLengthProxyDelegate(sk_stream_managedstream_t s, void* context); - // typedef size_t (*)(const sk_stream_managedstream_t* s, void* context)* sk_managedstream_getPosition_proc + // typedef size_t (*)(sk_stream_managedstream_t const * s, void * context) * sk_managedstream_getPosition_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate /* size_t */ IntPtr SKManagedStreamGetPositionProxyDelegate(sk_stream_managedstream_t s, void* context); - // typedef bool (*)(const sk_stream_managedstream_t* s, void* context)* sk_managedstream_hasLength_proc + // typedef bool (*)(sk_stream_managedstream_t const * s, void * context) * sk_managedstream_hasLength_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] [return: MarshalAs (UnmanagedType.I1)] internal unsafe delegate bool SKManagedStreamHasLengthProxyDelegate(sk_stream_managedstream_t s, void* context); - // typedef bool (*)(const sk_stream_managedstream_t* s, void* context)* sk_managedstream_hasPosition_proc + // typedef bool (*)(sk_stream_managedstream_t const * s, void * context) * sk_managedstream_hasPosition_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] [return: MarshalAs (UnmanagedType.I1)] internal unsafe delegate bool SKManagedStreamHasPositionProxyDelegate(sk_stream_managedstream_t s, void* context); - // typedef bool (*)(const sk_stream_managedstream_t* s, void* context)* sk_managedstream_isAtEnd_proc + // typedef bool (*)(sk_stream_managedstream_t const * s, void * context) * sk_managedstream_isAtEnd_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] [return: MarshalAs (UnmanagedType.I1)] internal unsafe delegate bool SKManagedStreamIsAtEndProxyDelegate(sk_stream_managedstream_t s, void* context); - // typedef bool (*)(sk_stream_managedstream_t* s, void* context, int offset)* sk_managedstream_move_proc + // typedef bool (*)(sk_stream_managedstream_t * s, void * context, long offset) * sk_managedstream_move_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] [return: MarshalAs (UnmanagedType.I1)] internal unsafe delegate bool SKManagedStreamMoveProxyDelegate(sk_stream_managedstream_t s, void* context, Int32 offset); - // typedef size_t (*)(const sk_stream_managedstream_t* s, void* context, void* buffer, size_t size)* sk_managedstream_peek_proc + // typedef size_t (*)(sk_stream_managedstream_t const * s, void * context, void * buffer, size_t size) * sk_managedstream_peek_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate /* size_t */ IntPtr SKManagedStreamPeekProxyDelegate(sk_stream_managedstream_t s, void* context, void* buffer, /* size_t */ IntPtr size); - // typedef size_t (*)(sk_stream_managedstream_t* s, void* context, void* buffer, size_t size)* sk_managedstream_read_proc + // typedef size_t (*)(sk_stream_managedstream_t * s, void * context, void * buffer, size_t size) * sk_managedstream_read_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate /* size_t */ IntPtr SKManagedStreamReadProxyDelegate(sk_stream_managedstream_t s, void* context, void* buffer, /* size_t */ IntPtr size); - // typedef bool (*)(sk_stream_managedstream_t* s, void* context)* sk_managedstream_rewind_proc + // typedef bool (*)(sk_stream_managedstream_t * s, void * context) * sk_managedstream_rewind_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] [return: MarshalAs (UnmanagedType.I1)] internal unsafe delegate bool SKManagedStreamRewindProxyDelegate(sk_stream_managedstream_t s, void* context); - // typedef bool (*)(sk_stream_managedstream_t* s, void* context, size_t position)* sk_managedstream_seek_proc + // typedef bool (*)(sk_stream_managedstream_t * s, void * context, size_t position) * sk_managedstream_seek_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] [return: MarshalAs (UnmanagedType.I1)] internal unsafe delegate bool SKManagedStreamSeekProxyDelegate(sk_stream_managedstream_t s, void* context, /* size_t */ IntPtr position); - // typedef void (*)(sk_managedtracememorydump_t* d, void* context, const char* dumpName, const char* valueName, const char* units, uint64_t value)* sk_managedtraceMemoryDump_dumpNumericValue_proc + // typedef void (*)(sk_managedtracememorydump_t * d, void * context, char const * dumpName, char const * valueName, char const * units, unsigned long long value) * sk_managedtraceMemoryDump_dumpNumericValue_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate void SKManagedTraceMemoryDumpDumpNumericValueProxyDelegate(sk_managedtracememorydump_t d, void* context, /* char */ void* dumpName, /* char */ void* valueName, /* char */ void* units, UInt64 value); - // typedef void (*)(sk_managedtracememorydump_t* d, void* context, const char* dumpName, const char* valueName, const char* value)* sk_managedtraceMemoryDump_dumpStringValue_proc + // typedef void (*)(sk_managedtracememorydump_t * d, void * context, char const * dumpName, char const * valueName, char const * value) * sk_managedtraceMemoryDump_dumpStringValue_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate void SKManagedTraceMemoryDumpDumpStringValueProxyDelegate(sk_managedtracememorydump_t d, void* context, /* char */ void* dumpName, /* char */ void* valueName, /* char */ void* value); - // typedef size_t (*)(const sk_wstream_managedstream_t* s, void* context)* sk_managedwstream_bytesWritten_proc + // typedef size_t (*)(sk_wstream_managedstream_t const * s, void * context) * sk_managedwstream_bytesWritten_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate /* size_t */ IntPtr SKManagedWStreamBytesWrittenProxyDelegate(sk_wstream_managedstream_t s, void* context); - // typedef void (*)(sk_wstream_managedstream_t* s, void* context)* sk_managedwstream_destroy_proc + // typedef void (*)(sk_wstream_managedstream_t * s, void * context) * sk_managedwstream_destroy_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate void SKManagedWStreamDestroyProxyDelegate(sk_wstream_managedstream_t s, void* context); - // typedef void (*)(sk_wstream_managedstream_t* s, void* context)* sk_managedwstream_flush_proc + // typedef void (*)(sk_wstream_managedstream_t * s, void * context) * sk_managedwstream_flush_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate void SKManagedWStreamFlushProxyDelegate(sk_wstream_managedstream_t s, void* context); - // typedef bool (*)(sk_wstream_managedstream_t* s, void* context, const void* buffer, size_t size)* sk_managedwstream_write_proc + // typedef bool (*)(sk_wstream_managedstream_t * s, void * context, void const * buffer, size_t size) * sk_managedwstream_write_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] [return: MarshalAs (UnmanagedType.I1)] internal unsafe delegate bool SKManagedWStreamWriteProxyDelegate(sk_wstream_managedstream_t s, void* context, void* buffer, /* size_t */ IntPtr size); - // typedef void (*)(void* addr, void* context)* sk_surface_raster_release_proc + // typedef void (*)(void * addr, void * context) * sk_surface_raster_release_proc [UnmanagedFunctionPointer (CallingConvention.Cdecl)] internal unsafe delegate void SKSurfaceRasterReleaseProxyDelegate(void* addr, void* context); @@ -17608,16 +17608,16 @@ public readonly override int GetHashCode () // gr_d3d_backendcontext_t [StructLayout (LayoutKind.Sequential)] internal unsafe partial struct GRD3DBackendContextNative : IEquatable { - // public d3d_dxgi_adapter_t* fAdapter + // public d3d_dxgi_adapter_t * fAdapter public d3d_dxgi_adapter_t fAdapter; - // public d3d_d12_device_t* fDevice + // public d3d_d12_device_t * fDevice public d3d_d12_device_t fDevice; - // public d3d_d12_command_queue_t* fQueue + // public d3d_d12_command_queue_t * fQueue public d3d_d12_command_queue_t fQueue; - // public gr_d3d_memory_allocator_t* fMemoryAllocator + // public gr_d3d_memory_allocator_t * fMemoryAllocator public gr_d3d_memory_allocator_t fMemoryAllocator; // public bool fProtectedContext @@ -17653,22 +17653,22 @@ public readonly override int GetHashCode () // gr_d3d_textureresourceinfo_t [StructLayout (LayoutKind.Sequential)] internal unsafe partial struct GRD3DTextureResourceInfoNative : IEquatable { - // public d3d_d12_resource_t* fResource + // public d3d_d12_resource_t * fResource public d3d_d12_resource_t fResource; - // public d3d_alloc_t* fAlloc + // public d3d_alloc_t * fAlloc public d3d_alloc_t fAlloc; - // public uint32_t fResourceState + // public unsigned int fResourceState public UInt32 fResourceState; - // public uint32_t fFormat + // public unsigned int fFormat public UInt32 fFormat; - // public uint32_t fSampleCount + // public unsigned int fSampleCount public UInt32 fSampleCount; - // public uint32_t fLevelCount + // public unsigned int fLevelCount public UInt32 fLevelCount; // public unsigned int fSampleQualityPattern @@ -17816,7 +17816,7 @@ public readonly override int GetHashCode () // gr_mtl_textureinfo_t [StructLayout (LayoutKind.Sequential)] internal unsafe partial struct GRMtlTextureInfoNative : IEquatable { - // public const void* fTexture + // public void const * fTexture public void* fTexture; public readonly bool Equals (GRMtlTextureInfoNative obj) => @@ -17845,28 +17845,28 @@ public readonly override int GetHashCode () // gr_vk_alloc_t [StructLayout (LayoutKind.Sequential)] public unsafe partial struct GRVkAlloc : IEquatable { - // public uint64_t fMemory + // public unsigned long long fMemory private UInt64 fMemory; public UInt64 Memory { readonly get => fMemory; set => fMemory = value; } - // public uint64_t fOffset + // public unsigned long long fOffset private UInt64 fOffset; public UInt64 Offset { readonly get => fOffset; set => fOffset = value; } - // public uint64_t fSize + // public unsigned long long fSize private UInt64 fSize; public UInt64 Size { readonly get => fSize; set => fSize = value; } - // public uint32_t fFlags + // public unsigned int fFlags private UInt32 fFlags; public UInt32 Flags { readonly get => fFlags; @@ -17914,46 +17914,46 @@ public readonly override int GetHashCode () // gr_vk_backendcontext_t [StructLayout (LayoutKind.Sequential)] internal unsafe partial struct GRVkBackendContextNative : IEquatable { - // public vk_instance_t* fInstance + // public vk_instance_t * fInstance public vk_instance_t fInstance; - // public vk_physical_device_t* fPhysicalDevice + // public vk_physical_device_t * fPhysicalDevice public vk_physical_device_t fPhysicalDevice; - // public vk_device_t* fDevice + // public vk_device_t * fDevice public vk_device_t fDevice; - // public vk_queue_t* fQueue + // public vk_queue_t * fQueue public vk_queue_t fQueue; - // public uint32_t fGraphicsQueueIndex + // public unsigned int fGraphicsQueueIndex public UInt32 fGraphicsQueueIndex; - // public uint32_t fMinAPIVersion + // public unsigned int fMinAPIVersion public UInt32 fMinAPIVersion; - // public uint32_t fInstanceVersion + // public unsigned int fInstanceVersion public UInt32 fInstanceVersion; - // public uint32_t fMaxAPIVersion + // public unsigned int fMaxAPIVersion public UInt32 fMaxAPIVersion; - // public uint32_t fExtensions + // public unsigned int fExtensions public UInt32 fExtensions; - // public const gr_vk_extensions_t* fVkExtensions + // public gr_vk_extensions_t const * fVkExtensions public gr_vk_extensions_t fVkExtensions; - // public uint32_t fFeatures + // public unsigned int fFeatures public UInt32 fFeatures; - // public const vk_physical_device_features_t* fDeviceFeatures + // public vk_physical_device_features_t const * fDeviceFeatures public vk_physical_device_features_t fDeviceFeatures; - // public const vk_physical_device_features_2_t* fDeviceFeatures2 + // public vk_physical_device_features_2_t const * fDeviceFeatures2 public vk_physical_device_features_2_t fDeviceFeatures2; - // public gr_vk_memory_allocator_t* fMemoryAllocator + // public gr_vk_memory_allocator_t * fMemoryAllocator public gr_vk_memory_allocator_t fMemoryAllocator; // public gr_vk_get_proc fGetProc @@ -17963,7 +17963,7 @@ internal unsafe partial struct GRVkBackendContextNative : IEquatable { - // public uint64_t fImage + // public unsigned long long fImage private UInt64 fImage; public UInt64 Image { readonly get => fImage; @@ -18029,49 +18029,49 @@ public GRVkAlloc Alloc { set => fAlloc = value; } - // public uint32_t fImageTiling + // public unsigned int fImageTiling private UInt32 fImageTiling; public UInt32 ImageTiling { readonly get => fImageTiling; set => fImageTiling = value; } - // public uint32_t fImageLayout + // public unsigned int fImageLayout private UInt32 fImageLayout; public UInt32 ImageLayout { readonly get => fImageLayout; set => fImageLayout = value; } - // public uint32_t fFormat + // public unsigned int fFormat private UInt32 fFormat; public UInt32 Format { readonly get => fFormat; set => fFormat = value; } - // public uint32_t fImageUsageFlags + // public unsigned int fImageUsageFlags private UInt32 fImageUsageFlags; public UInt32 ImageUsageFlags { readonly get => fImageUsageFlags; set => fImageUsageFlags = value; } - // public uint32_t fSampleCount + // public unsigned int fSampleCount private UInt32 fSampleCount; public UInt32 SampleCount { readonly get => fSampleCount; set => fSampleCount = value; } - // public uint32_t fLevelCount + // public unsigned int fLevelCount private UInt32 fLevelCount; public UInt32 LevelCount { readonly get => fLevelCount; set => fLevelCount = value; } - // public uint32_t fCurrentQueueFamily + // public unsigned int fCurrentQueueFamily private UInt32 fCurrentQueueFamily; public UInt32 CurrentQueueFamily { readonly get => fCurrentQueueFamily; @@ -18092,7 +18092,7 @@ public GrVkYcbcrConversionInfo YcbcrConversionInfo { set => fYcbcrConversionInfo = value; } - // public uint32_t fSharingMode + // public unsigned int fSharingMode private UInt32 fSharingMode; public UInt32 SharingMode { readonly get => fSharingMode; @@ -18136,63 +18136,63 @@ public readonly override int GetHashCode () // gr_vk_ycbcrconversioninfo_t [StructLayout (LayoutKind.Sequential)] public unsafe partial struct GrVkYcbcrConversionInfo : IEquatable { - // public uint32_t fFormat + // public unsigned int fFormat private UInt32 fFormat; public UInt32 Format { readonly get => fFormat; set => fFormat = value; } - // public uint64_t fExternalFormat + // public unsigned long long fExternalFormat private UInt64 fExternalFormat; public UInt64 ExternalFormat { readonly get => fExternalFormat; set => fExternalFormat = value; } - // public uint32_t fYcbcrModel + // public unsigned int fYcbcrModel private UInt32 fYcbcrModel; public UInt32 YcbcrModel { readonly get => fYcbcrModel; set => fYcbcrModel = value; } - // public uint32_t fYcbcrRange + // public unsigned int fYcbcrRange private UInt32 fYcbcrRange; public UInt32 YcbcrRange { readonly get => fYcbcrRange; set => fYcbcrRange = value; } - // public uint32_t fXChromaOffset + // public unsigned int fXChromaOffset private UInt32 fXChromaOffset; public UInt32 XChromaOffset { readonly get => fXChromaOffset; set => fXChromaOffset = value; } - // public uint32_t fYChromaOffset + // public unsigned int fYChromaOffset private UInt32 fYChromaOffset; public UInt32 YChromaOffset { readonly get => fYChromaOffset; set => fYChromaOffset = value; } - // public uint32_t fChromaFilter + // public unsigned int fChromaFilter private UInt32 fChromaFilter; public UInt32 ChromaFilter { readonly get => fChromaFilter; set => fChromaFilter = value; } - // public uint32_t fForceExplicitReconstruction + // public unsigned int fForceExplicitReconstruction private UInt32 fForceExplicitReconstruction; public UInt32 ForceExplicitReconstruction { readonly get => fForceExplicitReconstruction; set => fForceExplicitReconstruction = value; } - // public uint32_t fFormatFeatures + // public unsigned int fFormatFeatures private UInt32 fFormatFeatures; public UInt32 FormatFeatures { readonly get => fFormatFeatures; @@ -18233,13 +18233,13 @@ public readonly override int GetHashCode () // sk_canvas_savelayerrec_t [StructLayout (LayoutKind.Sequential)] internal unsafe partial struct SKCanvasSaveLayerRecNative : IEquatable { - // public sk_rect_t* fBounds + // public sk_rect_t * fBounds public SKRect* fBounds; - // public sk_paint_t* fPaint + // public sk_paint_t * fPaint public sk_paint_t fPaint; - // public sk_imagefilter_t* fBackdrop + // public sk_imagefilter_t * fBackdrop public sk_imagefilter_t fBackdrop; // public sk_canvas_savelayerrec_flags_t fFlags @@ -18366,7 +18366,7 @@ internal unsafe partial struct SKCodecOptionsInternal : IEquatable { - // public int16_t fTimeZoneMinutes + // public short fTimeZoneMinutes public Int16 fTimeZoneMinutes; - // public uint16_t fYear + // public unsigned short fYear public UInt16 fYear; - // public uint8_t fMonth + // public unsigned char fMonth public Byte fMonth; - // public uint8_t fDayOfWeek + // public unsigned char fDayOfWeek public Byte fDayOfWeek; - // public uint8_t fDay + // public unsigned char fDay public Byte fDay; - // public uint8_t fHour + // public unsigned char fHour public Byte fHour; - // public uint8_t fMinute + // public unsigned char fMinute public Byte fMinute; - // public uint8_t fSecond + // public unsigned char fSecond public Byte fSecond; public readonly bool Equals (SKTimeDateTimeInternal obj) => @@ -18772,28 +18772,28 @@ public readonly override int GetHashCode () // sk_document_pdf_metadata_t [StructLayout (LayoutKind.Sequential)] internal unsafe partial struct SKDocumentPdfMetadataInternal : IEquatable { - // public sk_string_t* fTitle + // public sk_string_t * fTitle public sk_string_t fTitle; - // public sk_string_t* fAuthor + // public sk_string_t * fAuthor public sk_string_t fAuthor; - // public sk_string_t* fSubject + // public sk_string_t * fSubject public sk_string_t fSubject; - // public sk_string_t* fKeywords + // public sk_string_t * fKeywords public sk_string_t fKeywords; - // public sk_string_t* fCreator + // public sk_string_t * fCreator public sk_string_t fCreator; - // public sk_string_t* fProducer + // public sk_string_t * fProducer public sk_string_t fProducer; - // public sk_document_pdf_datetime_t* fCreation + // public sk_document_pdf_datetime_t * fCreation public SKTimeDateTimeInternal* fCreation; - // public sk_document_pdf_datetime_t* fModified + // public sk_document_pdf_datetime_t * fModified public SKTimeDateTimeInternal* fModified; // public float fRasterDPI @@ -18841,7 +18841,7 @@ public readonly override int GetHashCode () // sk_fontmetrics_t [StructLayout (LayoutKind.Sequential)] public unsafe partial struct SKFontMetrics : IEquatable { - // public uint32_t fFlags + // public unsigned int fFlags private UInt32 fFlags; // public float fTop @@ -18979,13 +18979,13 @@ public readonly override int GetHashCode () // sk_imageinfo_t [StructLayout (LayoutKind.Sequential)] internal unsafe partial struct SKImageInfoNative : IEquatable { - // public sk_colorspace_t* colorspace + // public sk_colorspace_t * colorspace public sk_colorspace_t colorspace; - // public int32_t width + // public int width public Int32 width; - // public int32_t height + // public int height public Int32 height; // public sk_colortype_t colorType @@ -19024,14 +19024,14 @@ public readonly override int GetHashCode () // sk_ipoint_t [StructLayout (LayoutKind.Sequential)] public unsafe partial struct SKPointI : IEquatable { - // public int32_t x + // public int x private Int32 x; public Int32 X { readonly get => x; set => x = value; } - // public int32_t y + // public int y private Int32 y; public Int32 Y { readonly get => y; @@ -19065,28 +19065,28 @@ public readonly override int GetHashCode () // sk_irect_t [StructLayout (LayoutKind.Sequential)] public unsafe partial struct SKRectI : IEquatable { - // public int32_t left + // public int left private Int32 left; public Int32 Left { readonly get => left; set => left = value; } - // public int32_t top + // public int top private Int32 top; public Int32 Top { readonly get => top; set => top = value; } - // public int32_t right + // public int right private Int32 right; public Int32 Right { readonly get => right; set => right = value; } - // public int32_t bottom + // public int bottom private Int32 bottom; public Int32 Bottom { readonly get => bottom; @@ -19122,14 +19122,14 @@ public readonly override int GetHashCode () // sk_isize_t [StructLayout (LayoutKind.Sequential)] public unsafe partial struct SKSizeI : IEquatable { - // public int32_t w + // public int w private Int32 w; public Int32 Width { readonly get => w; set => w = value; } - // public int32_t h + // public int h private Int32 h; public Int32 Height { readonly get => h; @@ -19172,13 +19172,13 @@ public readonly override int GetHashCode () // public sk_jpegencoder_alphaoption_t fAlphaOption private readonly SKJpegEncoderAlphaOption fAlphaOption; - // public const sk_data_t* xmpMetadata + // public sk_data_t const * xmpMetadata private readonly sk_data_t xmpMetadata; - // public const sk_colorspace_icc_profile_t* fICCProfile + // public sk_colorspace_icc_profile_t const * fICCProfile private readonly sk_colorspace_icc_profile_t fICCProfile; - // public const char* fICCProfileDescription + // public char const * fICCProfileDescription private readonly /* char */ void* fICCProfileDescription; public readonly bool Equals (SKJpegEncoderOptions obj) => @@ -19212,13 +19212,13 @@ public readonly override int GetHashCode () // sk_lattice_t [StructLayout (LayoutKind.Sequential)] internal unsafe partial struct SKLatticeInternal : IEquatable { - // public const int* fXDivs + // public int const * fXDivs public Int32* fXDivs; - // public const int* fYDivs + // public int const * fYDivs public Int32* fYDivs; - // public const sk_lattice_recttype_t* fRectTypes + // public sk_lattice_recttype_t const * fRectTypes public SKLatticeRectType* fRectTypes; // public int fXCount @@ -19227,10 +19227,10 @@ internal unsafe partial struct SKLatticeInternal : IEquatable // public int fYCount public Int32 fYCount; - // public const sk_irect_t* fBounds + // public sk_irect_t const * fBounds public SKRectI* fBounds; - // public const sk_color_t* fColors + // public sk_color_t const * fColors public UInt32* fColors; public readonly bool Equals (SKLatticeInternal obj) => @@ -19813,13 +19813,13 @@ public readonly override int GetHashCode () // public int fZLibLevel private readonly Int32 fZLibLevel; - // public void* fComments + // public void * fComments private readonly void* fComments; - // public const sk_colorspace_icc_profile_t* fICCProfile + // public sk_colorspace_icc_profile_t const * fICCProfile private readonly sk_colorspace_icc_profile_t fICCProfile; - // public const char* fICCProfileDescription + // public char const * fICCProfileDescription private readonly /* char */ void* fICCProfileDescription; public readonly bool Equals (SKPngEncoderOptions obj) => @@ -20056,7 +20056,7 @@ public readonly override int GetHashCode () // sk_runtimeeffect_child_t [StructLayout (LayoutKind.Sequential)] internal unsafe partial struct SKRuntimeEffectChildNative : IEquatable { - // public const char* fName + // public char const * fName public /* char */ void* fName; // public size_t fNameLength @@ -20097,7 +20097,7 @@ public readonly override int GetHashCode () // sk_runtimeeffect_uniform_t [StructLayout (LayoutKind.Sequential)] internal unsafe partial struct SKRuntimeEffectUniformNative : IEquatable { - // public const char* fName + // public char const * fName public /* char */ void* fName; // public size_t fNameLength @@ -20237,16 +20237,16 @@ public readonly override int GetHashCode () // sk_textblob_builder_runbuffer_t [StructLayout (LayoutKind.Sequential)] internal unsafe partial struct SKRunBufferInternal : IEquatable { - // public void* glyphs + // public void * glyphs public void* glyphs; - // public void* pos + // public void * pos public void* pos; - // public void* utf8text + // public void * utf8text public void* utf8text; - // public void* clusters + // public void * clusters public void* clusters; public readonly bool Equals (SKRunBufferInternal obj) => @@ -20284,10 +20284,10 @@ public readonly override int GetHashCode () // public float fQuality private readonly Single fQuality; - // public const sk_colorspace_icc_profile_t* fICCProfile + // public sk_colorspace_icc_profile_t const * fICCProfile private readonly sk_colorspace_icc_profile_t fICCProfile; - // public const char* fICCProfileDescription + // public char const * fICCProfileDescription private readonly /* char */ void* fICCProfileDescription; public readonly bool Equals (SKWebpEncoderOptions obj) => diff --git a/binding/libHarfBuzzSharp.json b/binding/libHarfBuzzSharp.json index 2ba856d24a6..522a6254470 100644 --- a/binding/libHarfBuzzSharp.json +++ b/binding/libHarfBuzzSharp.json @@ -3,6 +3,12 @@ "dllName": "HARFBUZZ", "namespace": "HarfBuzzSharp", "namespaces": { + "hb_paint_": { + "exclude": true + }, + "hb_color_line_": { + "exclude": true + }, "hb_ot_": { "prefix": "OpenType" }, @@ -28,12 +34,33 @@ "src/hb-deprecated.h", "src/hb-shape-plan.h", "src/hb-ot-deprecated.h", - "src/hb-ot-var.h" + "src/hb-ot-var.h", + "src/hb-paint.h" ], "types": [ "hb_segment_properties_t", "hb_user_data_key_t", - "_hb_var_int_t" + "_hb_var_int_t", + "hb_color_line_t", + "hb_color_stop_t", + "hb_paint_funcs_t", + "hb_color_line_get_color_stops_func_t", + "hb_color_line_get_extend_func_t", + "hb_paint_push_transform_func_t", + "hb_paint_pop_transform_func_t", + "hb_paint_color_func_t", + "hb_paint_image_func_t", + "hb_paint_linear_gradient_func_t", + "hb_paint_radial_gradient_func_t", + "hb_paint_sweep_gradient_func_t", + "hb_paint_push_clip_glyph_func_t", + "hb_paint_push_clip_rectangle_func_t", + "hb_paint_pop_clip_func_t", + "hb_paint_push_group_func_t", + "hb_paint_pop_group_func_t", + "hb_paint_custom_palette_color_func_t", + "hb_paint_composite_mode_t", + "hb_paint_extend_t" ] }, "mappings": { @@ -172,6 +199,11 @@ "_HB_OT_VAR_AXIS_FLAG_MAX_VALUE": "" } }, + "hb_style_tag_t": { + "members": { + "_HB_STYLE_TAG_MAX_VALUE": "" + } + }, "hb_unicode_combining_class_t": { "members": { "HB_UNICODE_COMBINING_CLASS_CCC10": "CCC10", @@ -287,6 +319,75 @@ }, "hb_font_get_glyph_func_t": { "generateProxy": false + }, + "hb_draw_close_path_func_t": { + "generateProxy": false + }, + "hb_draw_cubic_to_func_t": { + "generateProxy": false + }, + "hb_draw_line_to_func_t": { + "generateProxy": false + }, + "hb_draw_move_to_func_t": { + "generateProxy": false + }, + "hb_draw_quadratic_to_func_t": { + "generateProxy": false + }, + "hb_font_get_glyph_shape_func_t": { + "generateProxy": false + }, + "hb_font_draw_glyph_func_t": { + "generateProxy": false + }, + "hb_font_paint_glyph_func_t": { + "generateProxy": false + }, + "hb_color_line_get_color_stops_func_t": { + "generateProxy": false + }, + "hb_color_line_get_extend_func_t": { + "generateProxy": false + }, + "hb_paint_push_transform_func_t": { + "generateProxy": false + }, + "hb_paint_pop_transform_func_t": { + "generateProxy": false + }, + "hb_paint_push_clip_glyph_func_t": { + "generateProxy": false + }, + "hb_paint_push_clip_rectangle_func_t": { + "generateProxy": false + }, + "hb_paint_pop_clip_func_t": { + "generateProxy": false + }, + "hb_paint_color_func_t": { + "generateProxy": false + }, + "hb_paint_image_func_t": { + "generateProxy": false + }, + "hb_paint_linear_gradient_func_t": { + "generateProxy": false + }, + "hb_paint_radial_gradient_func_t": { + "generateProxy": false + }, + "hb_paint_sweep_gradient_func_t": { + "generateProxy": false + }, + "hb_paint_push_group_func_t": { + "generateProxy": false + }, + "hb_paint_pop_group_func_t": { + "generateProxy": false + }, + "hb_paint_custom_palette_color_func_t": { + "generateProxy": false } } } diff --git a/binding/libSkiaSharp.json b/binding/libSkiaSharp.json index f0f1914eccf..e56f700d89b 100644 --- a/binding/libSkiaSharp.json +++ b/binding/libSkiaSharp.json @@ -499,6 +499,16 @@ "1": "[MarshalAs (UnmanagedType.LPStr)] String" } }, + "sk_stream_move": { + "parameters": { + "1": "Int32" + } + }, + "sk_managedstream_move_proc": { + "parameters": { + "2": "Int32" + } + }, "sk_image_raster_release_proc": { "proxySuffixes": [ "", "ForCoTaskMem" diff --git a/documentation/binding-generation.md b/documentation/binding-generation.md new file mode 100644 index 00000000000..43ef6732623 --- /dev/null +++ b/documentation/binding-generation.md @@ -0,0 +1,557 @@ +# Binding Generation Guide + +This document describes how SkiaSharp's P/Invoke bindings are generated from C headers using the `SkiaSharpGenerator` tool. + +## Overview + +The binding generation system parses C headers (for Skia, HarfBuzz, etc.) and generates C# P/Invoke code. The process is controlled by JSON configuration files that specify type mappings, function customizations, and exclusions. + +**Key Components:** +- `utils/SkiaSharpGenerator/` — The generator tool source code +- `binding/*.json` — Configuration files for each binding library +- `binding/*/*.generated.cs` — Output files (auto-generated, do not edit manually) + +**Note:** The generated P/Invoke class is always `internal unsafe partial class`. P/Invoke function names are kept as the original C names and are not cleaned or renamed. + +## Running the Generator + +### Generate All Bindings + +```bash +pwsh ./utils/generate.ps1 +``` + +### Generate a Single Binding + +```bash +pwsh ./utils/generate.ps1 -Config libHarfBuzzSharp.json +``` + +Valid config options: +- `libHarfBuzzSharp.json` — HarfBuzzSharp bindings +- `libSkiaSharp.json` — Main SkiaSharp bindings +- `libSkiaSharp.Skottie.json` — Skottie animation bindings +- `libSkiaSharp.SceneGraph.json` — Scene graph bindings +- `libSkiaSharp.Resources.json` — Resources bindings + +### Direct Invocation + +```bash +dotnet run --project=utils/SkiaSharpGenerator/SkiaSharpGenerator.csproj -- generate \ + --config binding/libHarfBuzzSharp.json \ + --root externals/skia/third_party/externals/harfbuzz \ + --output binding/HarfBuzzSharp/HarfBuzzApi.generated.cs +``` + +## Configuration File Structure + +The JSON configuration files control every aspect of binding generation. Here's the complete schema with all available options: + +```json +{ + "dllName": "HARFBUZZ", // DLL constant name used in [DllImport] + "namespace": "HarfBuzzSharp", // Root C# namespace + "className": "HarfBuzzApi", // Name of the class containing P/Invoke methods + "includeDirs": ["src"], // Additional include directories for C parser + "headers": { ... }, // Header files to parse + "source": { ... }, // Source file patterns (for reference) + "namespaces": { ... }, // Prefix-to-namespace mappings + "exclude": { ... }, // Files and types to exclude + "mappings": { + "types": { ... }, // Type customizations + "functions": { ... } // Function customizations + } +} +``` + +## Configuration Options Reference + +### Top-Level Options + +| Option | Type | Description | +|--------|------|-------------| +| `dllName` | string | The constant name used in `[DllImport(DLLNAME)]`. Should match a constant defined in the hand-written code. | +| `namespace` | string | The root C# namespace for all generated code. | +| `className` | string | The name of the partial class that contains all P/Invoke method declarations. | +| `includeDirs` | string[] | Additional directories to add to the C parser's include path, relative to the source root. | + +### headers + +Specifies which header files to parse. The key is a directory path (relative to source root), and the value is an array of glob patterns. + +```json +"headers": { + "src": ["hb.h", "hb-ot.h"], + "include/c": ["sk_*", "gr_*"] +} +``` + +The generator will: +1. Add each key directory to the include path +2. Find all files matching the patterns in that directory +3. Parse those files with CppAst + +### source + +Specifies source file patterns for the **verify** command. The verifier checks that header declarations have corresponding implementations in these source files. + +```json +"source": { + "src": ["hb-*"] +} +``` + +**Note:** Patterns use `Directory.EnumerateFiles` semantics (simple `*` and `?` wildcards within the directory), not recursive `**` globs. + +### namespaces + +Maps C name prefixes to C# namespace and naming customizations. This affects: +- **Type names:** The `prefix` is prepended after removing the C prefix +- **Type namespaces:** Types are placed in `{namespace}.{cs}` sub-namespace +- **Exclusion:** Types/functions with matching prefix can be excluded entirely + +**Note:** Namespace mappings affect generated *types* (structs, enums, delegates), not P/Invoke functions. P/Invoke functions always remain in the root namespace class with their original C names. + +```json +"namespaces": { + "hb_ot_": { + "prefix": "OpenType", + "cs": "OpenType" + }, + "hb_": { + "prefix": "" + }, + "sk_": { + "prefix": "SK", + "exclude": true + } +} +``` + +| Property | Type | Description | +|----------|------|-------------| +| `prefix` | string | String to prepend to cleaned type names after removing the C prefix. | +| `cs` | string | C# sub-namespace name. Generated types go into `{namespace}.{cs}`. | +| `exclude` | bool | If `true`, types/functions with this prefix are excluded from generation (except `using` aliases for opaque handles). | + +**Important:** Namespace mappings are checked in order. More specific prefixes (like `hb_ot_`) should come before less specific ones (like `hb_`). + +### exclude + +Specifies files and types to exclude from generation. + +```json +"exclude": { + "files": [ + "src/hb-deprecated.h", + "src/hb-shape-plan.h" + ], + "types": [ + "hb_segment_properties_t", + "hb_user_data_key_t" + ] +} +``` + +| Property | Type | Description | +|----------|------|-------------| +| `files` | string[] | Header files to skip entirely. Paths are relative to source root. | +| `types` | string[] | Type names to exclude. Pointer variants (`T*`, `T**`) are automatically excluded too. Functions using these types as parameters are also skipped. | + +**When to use exclusions:** +- Deprecated APIs that shouldn't be exposed +- Types that require complex manual interop +- Internal implementation types not meant for public use + +**Note:** Excluded types still have their `using Type = System.IntPtr;` aliases generated for opaque handles. The exclusion primarily affects struct/enum generation and functions using those types as parameters. + +### mappings.types + +Customizes how C types are mapped to C# types. This is the most commonly used section. + +```json +"mappings": { + "types": { + "hb_bool_t": { + "cs": "Boolean" + }, + "hb_buffer_flags_t": { + "flags": true, + "members": { + "HB_BUFFER_FLAG_BOT": "BeginningOfText", + "HB_BUFFER_FLAG_EOT": "EndOfText" + } + } + } +} +``` + +#### Type Mapping Options + +| Property | Type | Default | Description | +|----------|------|---------|-------------| +| `cs` | string | (auto) | The C# type name to use. If not specified, the generator cleans the C name automatically. | +| `internal` | bool | `false` | If `true`, generates `internal` visibility instead of `public`. Internal structs have public fields but no public properties. | +| `flags` | bool | `false` | If `true`, adds `[Flags]` attribute to the generated enum. | +| `obsolete` | bool | `false` | If `true`, adds `[Obsolete]` attribute. **Only applies to enums.** | +| `properties` | bool | `true` | If `true`, generates public properties for struct fields (unless `internal` is also true). If `false`, only backing fields are generated with no public properties. | +| `generate` | bool | `true` | If `false`, skips generating this type. **Only applies to enums.** For structs, use `exclude.types` instead. | +| `readonly` | bool | `false` | If `true`, generates the struct as `readonly struct` and properties as `readonly`. | +| `equality` | bool | `true` | If `true`, generates `IEquatable` implementation with `Equals()`, `GetHashCode()`, and `==`/`!=` operators. **Only applies to structs.** | +| `members` | object | `{}` | Maps C enum/struct member names to C# names. Empty string `""` hides the property (but the backing field is still generated for structs). | + +#### Type Mapping Examples + +**Simple type alias:** +```json +"hb_codepoint_t": { + "cs": "UInt32" +} +``` + +**Enum with flags and renamed members:** +```json +"hb_buffer_flags_t": { + "flags": true, + "members": { + "HB_BUFFER_FLAG_BOT": "BeginningOfText", + "_HB_BUFFER_FLAG_MAX_VALUE": "" // Exclude this member + } +} +``` + +**Internal struct without properties:** +```json +"sk_imageinfo_t": { + "cs": "SKImageInfoNative", + "internal": true +} +``` + +**Readonly struct:** +```json +"sk_color4f_t": { + "cs": "SKColorF", + "readonly": true, + "members": { + "fR": "Red", + "fG": "Green", + "fB": "Blue", + "fA": "Alpha" + } +} +``` + +**Skip generation (manual definition):** +```json +"hb_script_t": { + "cs": "UInt32", + "generate": false +} +``` + +### mappings.functions + +Customizes how C functions and function pointer types are mapped. + +```json +"mappings": { + "functions": { + "hb_blob_create_from_file": { + "parameters": { + "0": "[MarshalAs (UnmanagedType.LPStr)] String" + } + }, + "hb_destroy_func_t": { + "proxySuffixes": ["", "ForMulti"] + } + } +} +``` + +#### Function Mapping Options + +| Property | Type | Default | Description | +|----------|------|---------|-------------| +| `cs` | string | (auto) | The C# name to use for **callback typedefs and delegate proxies only**. Does not rename P/Invoke functions. | +| `parameters` | object | `{}` | Maps parameter index to C# type override. Use `"-1"` for return type. | +| `generateProxy` | bool/null | null (treated as true) | If `false`, skips generating the delegate proxy for this callback type. | +| `proxySuffixes` | string[]/null | null (treated as `[""]`) | Generates multiple proxy implementations with different suffixes. Useful when the same callback needs different implementations. | + +**Important:** The `cs` property in function mappings only affects **callback typedef names** and **delegate proxy names**. P/Invoke function names are never renamed — they always use the original C function name. + +#### Function Mapping Examples + +**Override parameter type for marshaling:** +```json +"hb_blob_create_from_file": { + "parameters": { + "0": "[MarshalAs (UnmanagedType.LPStr)] String" + } +} +``` + +**Override return type:** +```json +"hb_unicode_combining_class_func_t": { + "parameters": { + "-1": "int" + } +} +``` + +**Skip proxy generation:** +```json +"hb_buffer_message_func_t": { + "generateProxy": false +} +``` + +**Multiple proxy implementations:** +```json +"hb_destroy_func_t": { + "proxySuffixes": ["", "ForMulti"] +} +``` + +This generates both `DestroyProxy` and `DestroyProxyForMulti` implementations. + +## Generator Internals + +### Name Cleaning + +The generator automatically cleans C names to produce idiomatic C# names. The algorithm handles both type names and enum field names differently. + +#### Type Name Cleaning (`CleanName`) + +1. **Trim leading underscores** (`_type` → `type`) +2. **Remove `_t` suffix** for types (`hb_buffer_t` → `hb_buffer`) +3. **Remove `_func`/`_proc` suffix** and add `ProxyDelegate` suffix +4. **Remove namespace prefix** and add configured prefix (`hb_buffer` → `Buffer` if `hb_` prefix maps to `""`) +5. **Convert to PascalCase**: + - For mixed-case names: split on uppercase boundaries then underscores + - For all-lowercase/uppercase: split on underscores +6. **Remove initial `f` segment** for struct fields (e.g., `fRed` → `Red`) + +#### Enum Field Cleaning (`CleanEnumFieldName`) + +1. **Remove enum type prefix/suffix** from the field name +2. **Handle `_flags` enum special case** (also checks for `_flag` variant) +3. **Strip `_sk_` or `_gr_` trailing segments** (Skia-specific workaround) +4. **Apply `CleanName`** to the result + +Example: For enum `hb_buffer_flags_t` with member `HB_BUFFER_FLAGS_BOT`: +- Strips `hb_buffer_flags` prefix → `_BOT` +- CleanName → `Bot` + +#### Keyword Escaping + +C# keywords in parameter names are automatically prefixed with `@`: +- `out` → `@out` +- `in` → `@in` +- `ref` → `@ref` +- `var` → `@var` + +### Standard Type Mappings + +The generator has built-in mappings for standard C types. Here are the key mappings (see `BaseTool.cs:124-169` for the complete list): + +| C Type | C# Type | +|--------|---------| +| `uint8_t` | `Byte` | +| `uint16_t` | `UInt16` | +| `uint32_t` | `UInt32` | +| `uint64_t` | `UInt64` | +| `int8_t` | `SByte` | +| `int16_t` | `Int16` | +| `int32_t` | `Int32` | +| `int64_t` | `Int64` | +| `size_t` | `/* size_t */ IntPtr` | +| `usize_t` | `/* usize_t */ UIntPtr` | +| `intptr_t` | `IntPtr` | +| `uintptr_t` | `UIntPtr` | +| `bool` | `Byte` | +| `float` | `Single` | +| `double` | `Double` | +| `char` | `/* char */ void` | +| `void` | `void` | + +**Note:** `bool` is mapped to `Byte` in the standard mappings. The marshaling attribute `[MarshalAs(UnmanagedType.I1)] bool` is added separately during P/Invoke function generation when the parameter or return type is boolean. + +**Note:** `char`, `unsigned char`, and `signed char` map to `void` (with comments), so pointers like `char*` become `void*`. Use parameter overrides for string marshaling. + +### Automatic Field Visibility + +Struct fields have automatic visibility rules: +- Fields starting with `_private_` are made private (prefix is stripped from the name) +- Fields starting with `reserved` are made private + +### Generated Code Structure + +For each library, the generator produces: + +1. **Class declarations** — `using` aliases for opaque handle types +2. **P/Invoke functions** — Static methods in the API class (names kept as C originals) +3. **Delegates** — Managed delegate types for callbacks +4. **Structs** — Value types for C structs +5. **Enums** — C# enums for C enums +6. **Delegate proxies** — Helper implementations for common callback patterns + +### Build Configurations + +The generated code supports three compilation modes via preprocessor defines: + +1. **`USE_LIBRARY_IMPORT`** — Uses `[LibraryImport]` attribute (.NET 7+) +2. **Default (no define)** — Uses `[DllImport]` with `CallingConvention.Cdecl` +3. **`USE_DELEGATES`** — Uses runtime delegate loading via `UnmanagedFunctionPointer` + +**Note:** For WASM compatibility, function pointer parameters in P/Invoke signatures are converted to `void*` even when `USE_LIBRARY_IMPORT` is enabled. + +## Common Patterns + +### Adding a New Type Alias + +For simple typedefs that should map directly to a C# primitive: + +```json +"hb_tag_t": { + "cs": "UInt32" +} +``` + +### Making an Enum Flags-based + +```json +"hb_buffer_serialize_flags_t": { + "flags": true, + "cs": "SerializeFlag" +} +``` + +### Excluding Deprecated APIs + +Add to the exclude section: + +```json +"exclude": { + "files": ["src/hb-deprecated.h"] +} +``` + +### Handling String Parameters + +C functions with `const char*` parameters need marshaling: + +```json +"hb_language_from_string": { + "parameters": { + "0": "[MarshalAs (UnmanagedType.LPStr)] String" + } +} +``` + +### Hiding Struct Member Properties + +For structs where some member properties should not be exposed (the backing field is still generated): + +```json +"hb_glyph_info_t": { + "members": { + "var1": "", + "var2": "" + } +} +``` + +Empty string means "hide the property" — the private backing field is still generated for correct struct layout. + +### Creating Internal-Only Types + +For types used only internally by the binding layer: + +```json +"sk_codec_options_t": { + "cs": "SKCodecOptionsInternal", + "internal": true +} +``` + +**Note:** Internal structs have public fields but no public properties, regardless of the `properties` setting. + +## Troubleshooting + +### Parser Errors + +If the generator fails with parse errors: + +1. Ensure all header dependencies are available +2. Check `includeDirs` includes all necessary paths +3. On macOS, ensure Xcode Command Line Tools are installed + +### Missing Types + +If a type isn't generated: + +1. Check if it's in an excluded file +2. Check if it's in an excluded namespace +3. Check if it uses an excluded type as a parameter + +### Name Conflicts + +If a generated name conflicts with a C# keyword or existing type: + +1. Use the `cs` property to specify a different name +2. For parameters, the generator automatically prefixes with `@` for keywords like `out`, `in`, `ref`, `var` + +## Version-Specific Notes + +### HarfBuzz Binding + +The HarfBuzz binding configuration excludes: +- `hb-deprecated.h` — Deprecated APIs +- `hb-shape-plan.h` — Complex internal type +- `hb-ot-deprecated.h` — Deprecated OpenType APIs +- `hb-ot-var.h` — Variable font APIs (complex) + +Key type aliases: +- `hb_bool_t` → `Boolean` +- `hb_codepoint_t` → `UInt32` +- `hb_position_t` → `Int32` +- `hb_tag_t` → `UInt32` +- `hb_language_t` → `IntPtr` (opaque pointer) + +## Workflow: Updating Bindings + +1. **Update the native library** in `externals/skia/DEPS` +2. **Sync dependencies**: `dotnet cake --target=git-sync-deps` +3. **Run the generator**: `pwsh ./utils/generate.ps1 -Config .json` +4. **Review the diff** in the generated file +5. **Adjust configuration** if new types/functions need customization +6. **Repeat steps 3-5** until the output is correct +7. **Build and test**: `dotnet build` and `dotnet test` +8. **Commit** both the config changes and generated output + +## See Also + +- `utils/SkiaSharpGenerator/ConfigJson/` — Configuration model source +- `utils/SkiaSharpGenerator/Generate/Generator.cs` — Generation logic +- `utils/SkiaSharpGenerator/BaseTool.cs` — Type mapping and cleaning logic + +## CppAst Parser Configuration + +The binding generator uses CppAst (version 0.24.0) to parse C headers. The generator automatically configures the parser with appropriate system include paths. + +### Cross-Platform Include Paths + +The generator automatically detects and configures system include paths: + +**macOS:** +- Clang include path: `/Library/Developer/CommandLineTools/usr/lib/clang//include` +- SDK include path: `/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include` or Xcode SDK path + +**Linux:** +- `/usr/include` +- `/usr/local/include` + +**Windows:** +- Windows Kits ucrt path: `Program Files/Windows Kits/10/Include//ucrt` diff --git a/documentation/harfbuzz-binding-migration-plan.md b/documentation/harfbuzz-binding-migration-plan.md new file mode 100644 index 00000000000..a59b4bb5e10 --- /dev/null +++ b/documentation/harfbuzz-binding-migration-plan.md @@ -0,0 +1,262 @@ +# HarfBuzz Binding Migration Plan + +## Overview + +**Goal:** Update the HarfBuzzSharp bindings from version 2.8.2 to 8.3.0 incrementally, documenting the binding generation process along the way. + +**Current State:** ✅ **COMPLETE** +- Generated bindings based on: HarfBuzz 8.3.0 (`894a1f72ee93a1fd8dc1d9218cb3fd8f048be29a`) +- Note: Using 8.3.0 instead of 8.3.1 due to libclang parsing issue with inttypes.h change + +**Branch:** `dev/harfbuzz-binding-update` + +--- + +## Phase 1: Documentation Creation ✅ COMPLETE + +### Objective +Create comprehensive documentation for the binding generation system before starting migration work. + +### Output +`documentation/binding-generation.md` ✅ + +### Tasks + +- [x] Analyze generator code structure in `utils/SkiaSharpGenerator/` + - [x] `ConfigJson/Config.cs` - Main configuration model + - [x] `ConfigJson/TypeMapping.cs` - Type mapping options + - [x] `ConfigJson/FunctionMapping.cs` - Function mapping options + - [x] `ConfigJson/Mappings.cs` - Container for type/function mappings + - [x] `ConfigJson/Exclude.cs` - Exclusion configuration + - [x] `ConfigJson/NamespaceMapping.cs` - Namespace mapping options + - [x] `Generate/Generator.cs` - Main generation logic + +- [x] Study existing JSON configuration files + - [x] `binding/libHarfBuzzSharp.json` + - [x] `binding/libSkiaSharp.json` + - [x] `binding/libSkiaSharp.Resources.json` + - [x] `binding/libSkiaSharp.SceneGraph.json` + - [x] `binding/libSkiaSharp.Skottie.json` + +- [x] Document all configuration options with examples +- [x] Document the generation workflow + +--- + +## Phase 2: Documentation Review & Validation ✅ COMPLETE + +### Objective +Validate documentation accuracy using multiple AI models, ensuring all statements are backed by actual code. + +### Models Used +1. claude-opus-4.5 ✅ +2. claude-sonnet-4 ✅ +3. gpt-5.2 ✅ +4. gpt-5.1 ✅ +5. gemini-3-pro-preview ✅ + +### Key Findings +- Namespace `exclude` feature discovered and documented +- Many standard type mappings added to documentation +- `generate`/`obsolete` clarified as enum-only options +- `members` with empty string behavior clarified + +- [ ] Compile findings from all reviews +- [ ] Update documentation to address issues found +- [ ] Final validation pass + +--- + +## Phase 3: Baseline Verification ✅ COMPLETE + +### Objective +Establish a verified baseline at HarfBuzz 2.8.2 to confirm the current generated code matches expectations. + +### Tasks + +- [x] Create and push branch `dev/harfbuzz-binding-update` +- [x] Update DEPS to HarfBuzz 2.8.2 +- [x] Sync dependencies and regenerate +- [x] Verify no changes to generated file ✅ +- [x] Build and run tests (106/106 passed) ✅ +- [x] Commit baseline + +--- + +## Phase 4: Incremental Version Bumps ✅ COMPLETE + +### Objective +Progressively update bindings through each major HarfBuzz version, adding tests and documenting changes. + +### Version Progression (Completed) + +| Step | Version | Status | Key Changes | +|------|---------|--------|-------------| +| 0 | 2.8.2 | ✅ Baseline | - | +| 1 | 2.9.1 | ✅ Complete | `hb_set_invert` | +| 2 | 3.4.0 | ✅ Complete | Buffer similar, style APIs, synthetic slant | +| 3 | 4.4.1 | ✅ Complete | Draw API (`hb_draw_funcs_*`) | +| 4 | 5.3.1 | ✅ Complete | `hb_language_matches`, optical bound API | +| 5 | 6.0.0 | ✅ No API changes | (Subsetting only) | +| 6 | 7.3.0 | ✅ Complete | Paint API (excluded via namespace) | +| 7 | 8.3.0* | ✅ Complete | `baseline2`, `font_extents` APIs | + +*Note: Using 8.3.0 instead of 8.3.1 due to libclang inttypes.h parsing issue +git push origin dev/harfbuzz-binding-update +``` + +### Detailed Version Tasks + +#### 2.9.1 (Last 2.x) +- [ ] Update DEPS to 2.9.1 +- [ ] Run git-sync-deps +- [ ] Review NEWS for 2.9.0 and 2.9.1 changes +- [ ] Run generator +- [ ] Review diff +- [ ] Update config if needed +- [ ] Build and test +- [ ] Add tests for new APIs +- [ ] Commit and push + +#### 3.4.0 (Last 3.x) +- [ ] Update DEPS to 3.4.0 +- [ ] Run git-sync-deps +- [ ] Review NEWS for 3.0.0 through 3.4.0 changes +- [ ] Run generator +- [ ] Review diff (expect more changes - major version) +- [ ] Update config if needed +- [ ] Build and test +- [ ] Add tests for new APIs +- [ ] Commit and push + +#### 4.4.1 (Last 4.x) +- [ ] Update DEPS to 4.4.1 +- [ ] Run git-sync-deps +- [ ] Review NEWS for 4.0.0 through 4.4.1 changes +- [ ] Run generator +- [ ] Review diff +- [ ] Update config if needed +- [ ] Build and test +- [ ] Add tests for new APIs +- [ ] Commit and push + +#### 5.3.1 (Last 5.x) +- [ ] Update DEPS to 5.3.1 +- [ ] Run git-sync-deps +- [ ] Review NEWS for 5.0.0 through 5.3.1 changes +- [ ] Run generator +- [ ] Review diff +- [ ] Update config if needed +- [ ] Build and test +- [ ] Add tests for new APIs +- [ ] Commit and push + +#### 6.0.0 (Only 6.x) +- [ ] Update DEPS to 6.0.0 +- [ ] Run git-sync-deps +- [ ] Review NEWS for 6.0.0 changes +- [ ] Run generator +- [ ] Review diff +- [ ] Update config if needed +- [ ] Build and test +- [ ] Add tests for new APIs +- [ ] Commit and push + +#### 7.3.0 (Last 7.x) +- [ ] Update DEPS to 7.3.0 +- [ ] Run git-sync-deps +- [ ] Review NEWS for 7.0.0 through 7.3.0 changes +- [ ] Run generator +- [ ] Review diff +- [ ] Update config if needed +- [ ] Build and test +- [ ] Add tests for new APIs +- [ ] Commit and push + +#### 8.3.1 (Target) +- [ ] Update DEPS to 8.3.1 (restore original commit) +- [ ] Run git-sync-deps +- [ ] Review NEWS for 8.0.0 through 8.3.1 changes +- [ ] Run generator +- [ ] Review diff +- [ ] Update config if needed +- [ ] Build and test +- [ ] Add tests for new APIs +- [ ] Commit and push + +--- + +## Phase 5: Skipped API Documentation ✅ COMPLETE + +### Objective +Document any APIs that were excluded during migration, with rationale and future implementation plans. + +### Output +`documentation/harfbuzz-skipped-apis.md` ✅ + +### Excluded API Categories +- Paint API (`hb_paint_*`, `hb_color_line_*`) - complex callbacks with struct-embedded function pointers +- Draw API callbacks - proxy generation skipped due to complexity +- Deprecated APIs - excluded via file +- Shape Plan API - excluded via file +- Variation API (hb-ot-var) - excluded via file + +--- + +## Summary + +### Commits Made +1. `c6c6a174` - docs: add binding generation documentation and migration plan +2. `f66a53ba` - feat(harfbuzz): update bindings to 2.9.1 +3. `befdb35e` - feat(harfbuzz): update bindings to 3.4.0 +4. `9dc5b763` - feat(harfbuzz): update bindings to 4.4.1 +5. `6418f493` - feat(harfbuzz): update bindings to 5.3.1 +6. `89651699` - feat(harfbuzz): update bindings to 7.3.0 +7. `0bdf7329` - feat(harfbuzz): update bindings to 8.3.0 +8. `83eb73cc` - feat(harfbuzz): add C# wrappers and tests for new APIs +9. `996f918b` - feat(harfbuzz): add variable font and additional APIs +10. `22f0bc25` - docs: document 8.3.1 parsing issue and attempted solutions +11. `32e4faf3` - refactor(harfbuzz): split HBNewApiTest.cs into appropriate test files +12. `00ab5c57` - feat(harfbuzz): add Face.GetName and Face.TryGetName for OpenType names +13. `e0581af7` - feat(harfbuzz): add Font Ppem/Ptem and Face OpenType layout APIs + +### New C# APIs Added +- `Language.Matches(Language)` - prefix matching for languages +- `Buffer.CreateSimilar(Buffer)` - create buffer with same settings +- `Font.SyntheticSlant` - get/set synthetic slant for oblique fonts +- `Font.SetVariations(Variation[])` - set multiple variation axes +- `Font.SetVariations(ReadOnlySpan)` - span overload +- `Font.SetVariation(uint tag, float value)` - set single axis by numeric tag +- `Font.SetVariation(string tag, float value)` - set single axis by string name +- `Font.SetSyntheticBold(float x, float y, bool inPlace)` - synthetic emboldening +- `Font.GetSyntheticBold(out float x, out float y, out bool inPlace)` - get emboldening +- `Font.NamedInstance` - get/set named instance index +- `Font.GetPpem(out int, out int)` - get pixels per em +- `Font.SetPpem(int, int)` - set pixels per em +- `Font.Ptem` property - point size for optical sizing +- `Face.GetName(OpenTypeNameId)` - get font name from OpenType name table +- `Face.GetName(OpenTypeNameId, Language)` - with language parameter +- `Face.TryGetName(OpenTypeNameId, out string)` - returns false if not found +- `Face.TryGetName(OpenTypeNameId, Language, out string)` - with language parameter +- `Face.GetAllNameEntries()` - enumerate all name table entries +- `Face.GetOpenTypeLayoutScriptTags(tableTag)` - scripts in GSUB/GPOS +- `Face.GetOpenTypeLayoutFeatureTags(tableTag)` - features in GSUB/GPOS +- `Face.TryGetOpenTypeLayoutFeatureNameIds()` - feature name IDs for UI + +### New Types Added +- `OpenTypeLayoutTableTag` enum (Gsub, Gpos) +- `OpenTypeFeatureNameIds` struct + +### Configuration Changes +- Added namespace exclusions: `hb_paint_`, `hb_color_line_` +- Added type exclusions for Paint API related types +- Added `generateProxy: false` for Draw API callbacks + +### Test Results +- All 155 HarfBuzz tests pass (106 original + 49 new) + +### Documentation Created +- `documentation/binding-generation.md` - comprehensive generator documentation +- `documentation/harfbuzz-binding-migration-plan.md` - this plan +- `documentation/harfbuzz-migration-log.md` - progress tracking +- `documentation/harfbuzz-skipped-apis.md` - excluded API documentation diff --git a/documentation/harfbuzz-migration-log.md b/documentation/harfbuzz-migration-log.md new file mode 100644 index 00000000000..7a838a4c107 --- /dev/null +++ b/documentation/harfbuzz-migration-log.md @@ -0,0 +1,165 @@ +# HarfBuzz Binding Migration Log + +This file tracks progress through the migration for transparency and resumability. + +--- + +## Session Start +- **Started:** 2026-02-01T23:20:04Z +- **Target:** HarfBuzz 2.8.2 → 8.3.1 +- **Branch:** `dev/harfbuzz-binding-update` + +--- + +## Current State + +**Phase:** 1 - Documentation Creation +**Status:** Starting +**Last Action:** Created tracking files + +--- + +## Progress Log + +### 2026-02-01T23:20 - Session Start +- Created migration plan: `documentation/harfbuzz-binding-migration-plan.md` +- Created this log file: `documentation/harfbuzz-migration-log.md` +- Starting Phase 1: Documentation Creation + +### 2026-02-01T23:25 - Phase 1 In Progress +- Analyzed all generator code files +- Studied all JSON config files +- Created comprehensive `documentation/binding-generation.md` + +### 2026-02-01T23:30 - Phase 1 Complete +- `documentation/binding-generation.md` created with full documentation +- Starting Phase 2: Multi-model documentation review + +--- + +## Phase 1: Documentation Creation + +### Generator Code Analysis +- [x] `ConfigJson/Config.cs` +- [x] `ConfigJson/TypeMapping.cs` +- [x] `ConfigJson/FunctionMapping.cs` +- [x] `ConfigJson/Mappings.cs` +- [x] `ConfigJson/Exclude.cs` +- [x] `ConfigJson/NamespaceMapping.cs` +- [x] `Generate/Generator.cs` + +### JSON Config Study +- [x] `binding/libHarfBuzzSharp.json` +- [x] `binding/libSkiaSharp.json` +- [x] `binding/libSkiaSharp.Resources.json` +- [x] `binding/libSkiaSharp.SceneGraph.json` +- [x] `binding/libSkiaSharp.Skottie.json` + +--- + +## Phase 2: Documentation Review + +### Model Reviews +- [x] claude-opus-4.5 - Complete +- [x] claude-sonnet-4 - Complete +- [x] gpt-5.2 - Complete +- [x] gpt-5.1 - Complete +- [x] gemini-3-pro-preview - Complete + +### Key Findings from Reviews + +1. **`namespaces` clarification**: Only affects types (structs/enums/delegates), not P/Invoke function names +2. **`generate` and `obsolete`**: Only apply to enums, not structs +3. **`members` with empty string**: Hides property but field is still generated for struct layout +4. **`mappings.functions.cs`**: Only renames callback typedefs/proxies, not P/Invoke functions +5. **Excluded types**: Pointer variants (`T*`, `T**`) are automatically excluded too +6. **`source` config**: Used by verify command, not just for documentation +7. **Name cleaning**: Has additional rules for `_private_` prefix, `reserved` fields, `f` prefix removal +8. **Standard type mappings**: Table was incomplete (missing `usize_t`, `intptr_t`, `char` variants) +9. **Build configurations**: Clarified as preprocessor defines, not build modes +10. **WASM compatibility**: Function pointers converted to `void*` for compatibility + +### Documentation Updated +- All inaccuracies corrected +- Missing information added +- Examples clarified + +--- + +## Phase 3: Baseline Verification +- [x] Branch created and pushed +- [x] DEPS updated to 2.8.2 +- [x] git-sync-deps run +- [x] Generator run +- [x] No changes verified ✓ +- [x] Tests pass (106/106) +- [x] Committed (docs only - baseline verified) + +--- + +## Phase 4: Version Bumps + +| Version | DEPS Updated | Synced | Generated | Config Updated | Built | Tests Pass | Tests Added | Committed | +|---------|--------------|--------|-----------|----------------|-------|------------|-------------|-----------| +| 2.9.1 | [x] | [x] | [x] | N/A | [x] | [x] | N/A | [x] | +| 3.4.0 | [x] | [x] | [x] | [x] | [x] | [x] | N/A | [x] | +| 4.4.1 | [x] | [x] | [x] | [x] | [x] | [x] | N/A | [x] | +| 5.3.1 | [x] | [x] | [x] | N/A | [x] | [x] | N/A | [x] | +| 6.0.0 | [x] | [x] | [x] | N/A | [x] | [x] | N/A (no API change) | N/A (no API change) | +| 7.3.0 | [x] | [x] | [x] | [x] | [x] | [x] | N/A | [x] | +| 8.3.0* | [x] | [x] | [x] | N/A | [x] | [x] | [ ] | [x] | + +*Note: Using 8.3.0 instead of 8.3.1 due to libclang parsing issue with inttypes.h change + +--- + +## Phase 5: Skipped APIs +- [x] Documentation created (`documentation/harfbuzz-skipped-apis.md`) + +--- + +## Key Findings + +### Namespace Exclude Feature +- The `namespaces` config supports an `exclude: true` option to exclude entire API families +- This is the cleanest way to exclude complex callback-based APIs like Paint +- Works by filtering types and functions whose names start with the prefix + +### API Changes Across Versions +| Version | Major API Additions | Notable Changes | +|---------|--------------------|--------------------| +| 2.9.1 | `hb_set_invert` | - | +| 3.4.0 | Buffer similar, style APIs, synthetic slant | - | +| 4.4.1 | Draw API (`hb_draw_funcs_*`) | Callback-based drawing | +| 5.3.1 | `hb_language_matches`, optical bound API | - | +| 6.0.0 | (Subsetting APIs only, not parsed) | No public API changes | +| 7.3.0 | Paint API | Complex ColorLine callbacks excluded | +| 8.3.0 | `baseline2`, `font_extents` APIs | Removed deprecated `glyph_shape` | + +### Generator Limitations Discovered +1. Struct fields with function pointer types cause issues between USE_LIBRARY_IMPORT and standard mode +2. libclang `#include_next` chains can fail to resolve SDK headers +3. Excluding files only works for directly enumerated files, not transitively included ones + +--- + +## Issues Encountered + +### 1. Paint API with ColorLine struct (7.3.0) +- **Problem:** HarfBuzz 7.3.0 introduced Paint API with `hb_color_line_t` struct containing function pointer fields +- **Impact:** Generator creates delegate types for non-USE_LIBRARY_IMPORT builds but struct properties reference delegate types that aren't defined in USE_LIBRARY_IMPORT mode +- **Solution:** Used namespace exclusion (`hb_paint_`, `hb_color_line_`) to exclude all Paint-related types and functions +- **APIs affected:** All `hb_paint_*` functions, `hb_color_line_*` types + +### 2. libclang inttypes.h parsing failure (8.3.1) +- **Problem:** HarfBuzz 8.3.1 changed from `#include ` to `#include ` in hb-common.h +- **Impact:** libclang's `inttypes.h` uses `#include_next` which fails to find SDK's implementation +- **Solution:** Use 8.3.0 instead (identical API, only C implementation difference) +- **Alternative (not pursued):** Adding SDK include path caused system types (pthread) to be parsed + +--- + +## Files Modified + +(Will be populated as files are changed) + diff --git a/documentation/harfbuzz-migration-state.json b/documentation/harfbuzz-migration-state.json new file mode 100644 index 00000000000..051ebb8c1ff --- /dev/null +++ b/documentation/harfbuzz-migration-state.json @@ -0,0 +1,55 @@ +{ + "session_start": "2026-02-01T23:20:04Z", + "current_phase": 1, + "current_task": "documentation_creation", + "branch": "dev/harfbuzz-binding-update", + "branch_created": false, + "target_version": "8.3.1", + "baseline_version": "2.8.2", + + "phase1": { + "status": "in_progress", + "generator_code_analyzed": [], + "json_configs_studied": [], + "documentation_created": false + }, + + "phase2": { + "status": "not_started", + "reviews_completed": [], + "documentation_updated": false + }, + + "phase3": { + "status": "not_started", + "deps_updated": false, + "synced": false, + "generated": false, + "verified_no_changes": false, + "tests_pass": false, + "committed": false + }, + + "phase4": { + "status": "not_started", + "versions": { + "2.9.1": { "completed": false, "apis_added": [], "tests_added": [], "config_changes": [] }, + "3.4.0": { "completed": false, "apis_added": [], "tests_added": [], "config_changes": [] }, + "4.4.1": { "completed": false, "apis_added": [], "tests_added": [], "config_changes": [] }, + "5.3.1": { "completed": false, "apis_added": [], "tests_added": [], "config_changes": [] }, + "6.0.0": { "completed": false, "apis_added": [], "tests_added": [], "config_changes": [] }, + "7.3.0": { "completed": false, "apis_added": [], "tests_added": [], "config_changes": [] }, + "8.3.1": { "completed": false, "apis_added": [], "tests_added": [], "config_changes": [] } + } + }, + + "phase5": { + "status": "not_started", + "skipped_apis": [], + "documentation_created": false + }, + + "skipped_apis": [], + "key_findings": [], + "issues": [] +} diff --git a/documentation/harfbuzz-skipped-apis.md b/documentation/harfbuzz-skipped-apis.md new file mode 100644 index 00000000000..45fa367212b --- /dev/null +++ b/documentation/harfbuzz-skipped-apis.md @@ -0,0 +1,270 @@ +# HarfBuzz Skipped APIs + +This document lists all HarfBuzz APIs that were excluded from the C# bindings and the rationale for each. + +--- + +## Summary + +| Category | Count | Reason | +|----------|-------|--------| +| Paint API | ~25+ functions | Complex ColorLine callback struct | +| Deprecated | ~10 functions | Excluded via file | +| Shape Plan | ~8 functions | Excluded via file | +| Variation (hb-ot-var) | ~15 functions | Excluded via file | + +--- + +## Paint API (`hb_paint_*`, `hb_color_line_*`) + +**Excluded via namespace:** `hb_paint_`, `hb_color_line_` + +### Why Excluded + +The Paint API introduced in HarfBuzz 7.0.0 provides a way to render COLRv1 color fonts. However, the API design uses a callback-based approach with the `hb_color_line_t` struct, which contains function pointer fields: + +```c +typedef struct hb_color_line_t { + void *data; + hb_color_line_get_color_stops_func_t get_color_stops; + void *get_color_stops_user_data; + hb_color_line_get_extend_func_t get_extend; + void *get_extend_user_data; +} hb_color_line_t; +``` + +This causes issues with the binding generator because: +1. In `USE_LIBRARY_IMPORT` mode, function pointers are represented as `delegate* unmanaged[Cdecl]<...>` +2. In standard mode, they're represented as managed delegate types +3. The struct property accessors reference the managed delegate type even in `USE_LIBRARY_IMPORT` mode, causing compilation errors + +### Excluded Types + +| Type | Description | +|------|-------------| +| `hb_color_line_t` | Color line with gradient stops | +| `hb_color_stop_t` | Individual color stop | +| `hb_paint_funcs_t` | Paint callbacks container | +| `hb_paint_extend_t` | Gradient extend mode enum | +| `hb_paint_composite_mode_t` | Compositing mode enum | +| `hb_color_line_get_color_stops_func_t` | Callback typedef | +| `hb_color_line_get_extend_func_t` | Callback typedef | +| All `hb_paint_*_func_t` | Callback typedefs | + +### Excluded Functions + +All functions in `hb-paint.h`: +- `hb_paint_funcs_create` +- `hb_paint_funcs_get_empty` +- `hb_paint_funcs_reference` +- `hb_paint_funcs_destroy` +- `hb_paint_funcs_set_user_data` +- `hb_paint_funcs_get_user_data` +- `hb_paint_funcs_make_immutable` +- `hb_paint_funcs_is_immutable` +- `hb_paint_funcs_set_push_transform_func` +- `hb_paint_funcs_set_pop_transform_func` +- `hb_paint_funcs_set_color_func` +- `hb_paint_funcs_set_image_func` +- `hb_paint_funcs_set_linear_gradient_func` +- `hb_paint_funcs_set_radial_gradient_func` +- `hb_paint_funcs_set_sweep_gradient_func` +- `hb_paint_funcs_set_push_clip_glyph_func` +- `hb_paint_funcs_set_push_clip_rectangle_func` +- `hb_paint_funcs_set_pop_clip_func` +- `hb_paint_funcs_set_push_group_func` +- `hb_paint_funcs_set_pop_group_func` +- `hb_paint_funcs_set_custom_palette_color_func` +- `hb_font_paint_glyph` + +### How to Potentially Generate + +**Option 1: Custom P/Invoke wrapper** +Write manual C# code that marshals the struct with function pointers using `Marshal.GetDelegateForFunctionPointer` and `Marshal.GetFunctionPointerForDelegate`. + +**Option 2: Modify generator** +Add support for struct fields that are function pointers, generating appropriate marshaling code for both modes. + +**Option 3: C shim layer** +Create a C shim that provides a simpler callback interface without embedded function pointers in structs. + +--- + +## Draw API Callbacks + +**Status:** Functions generated, but proxy implementations skipped + +The Draw API provides glyph outline drawing callbacks. The functions are generated but the managed proxy delegates (for easy C# consumption) are skipped. + +### Proxy Generation Skipped + +| Typedef | Why Skipped | +|---------|-------------| +| `hb_draw_close_path_func_t` | Complex callback with draw state | +| `hb_draw_cubic_to_func_t` | Complex callback with draw state | +| `hb_draw_line_to_func_t` | Complex callback with draw state | +| `hb_draw_move_to_func_t` | Complex callback with draw state | +| `hb_draw_quadratic_to_func_t` | Complex callback with draw state | + +### How to Use + +The raw P/Invoke functions are available. To use them: +1. Create a managed delegate matching the signature +2. Use `Marshal.GetFunctionPointerForDelegate` to get the function pointer +3. Pass to `hb_draw_funcs_set_*` functions + +--- + +## Deprecated APIs + +**Excluded via file:** `src/hb-deprecated.h`, `src/hb-ot-deprecated.h` + +### Why Excluded + +These contain deprecated functions that have replacements. Including them would: +1. Add unnecessary API surface +2. Confuse users about which APIs to use +3. Risk breaking changes when deprecation becomes removal + +### Notable Deprecated Functions + +| Function | Replacement | +|----------|-------------| +| `hb_font_get_glyph_shape` | `hb_font_draw_glyph` | +| `hb_font_funcs_set_glyph_shape_func` | `hb_font_funcs_set_draw_glyph_func` | +| Various font funcs | Newer callback-based APIs | + +--- + +## Shape Plan API + +**Excluded via file:** `src/hb-shape-plan.h` + +### Why Excluded + +The shape plan API is an advanced optimization API that caches shaping plans. Most users don't need it because: +1. HarfBuzz internally caches plans automatically +2. The API is complex and easy to misuse +3. Incorrect use can lead to wrong shaping results + +### Excluded Functions + +- `hb_shape_plan_create` +- `hb_shape_plan_create_cached` +- `hb_shape_plan_create2` +- `hb_shape_plan_get_empty` +- `hb_shape_plan_reference` +- `hb_shape_plan_destroy` +- `hb_shape_plan_set_user_data` +- `hb_shape_plan_get_user_data` +- `hb_shape_plan_execute` +- `hb_shape_plan_get_shaper` + +### How to Potentially Generate + +The API is straightforward P/Invoke. To add: +1. Remove `src/hb-shape-plan.h` from `exclude.files` +2. Regenerate +3. Create a C# wrapper class with proper disposal + +--- + +## Variation API (hb-ot-var) + +**Excluded via file:** `src/hb-ot-var.h` + +### Why Excluded + +Variable font (OpenType Font Variations) support is partially available through other APIs but the full variation API was excluded because: +1. Complex axis and instance management +2. Some functions require understanding of OpenType font tables +3. Limited testing capability without variable fonts + +### Excluded Functions + +- `hb_ot_var_has_data` +- `hb_ot_var_get_axis_count` +- `hb_ot_var_get_axis_infos` +- `hb_ot_var_find_axis_info` +- `hb_ot_var_get_named_instance_count` +- `hb_ot_var_named_instance_get_subfamily_name_id` +- `hb_ot_var_named_instance_get_postscript_name_id` +- `hb_ot_var_named_instance_get_design_coords` +- `hb_ot_var_normalize_variations` +- `hb_ot_var_normalize_coords` + +### How to Potentially Generate + +1. Remove `src/hb-ot-var.h` from `exclude.files` +2. Add type mappings for `hb_ot_var_axis_info_t`, `hb_ot_var_axis_flags_t` +3. Regenerate +4. Create C# wrapper classes for axis information + +--- + +## Internal/Private Types + +These types are excluded because they're internal implementation details: + +| Type | Reason | +|------|--------| +| `hb_segment_properties_t` | Internal shaping state | +| `hb_user_data_key_t` | User data mechanism (advanced) | +| `_hb_var_int_t` | Internal union type | + +--- + +## Generator Limitations Requiring Future Work + +### 1. Function Pointer Fields in Structs + +**Current limitation:** When a struct has function pointer fields, the generator creates incompatible code between `USE_LIBRARY_IMPORT` and standard modes. + +**Fix needed:** Generate mode-specific struct definitions or use `IntPtr` for function pointer fields with manual marshaling. + +### 2. Callback Proxy Generation + +**Current limitation:** Complex callbacks with void pointer user data and nested callbacks are hard to wrap in managed code. + +**Fix needed:** Add support for generating proxy implementations with GCHandle-based user data management. + +### 3. Header Include Chain + +**Current limitation:** Excluding a header file only works for directly enumerated files, not transitively included ones. + +**Fix needed:** Track the source file of each declaration and filter based on that. + +--- + +## Generator Parsing Issue (8.3.1) - RESOLVED + +### Problem (Historical) +HarfBuzz 8.3.1 changed from `#include ` to `#include ` in hb-common.h. +The bundled clang's `inttypes.h` uses `#include_next` which failed to find the SDK implementation. + +### Resolution +Upgraded CppAst to 0.24.0 and added cross-platform system include path detection: +- **macOS:** Adds SDK include path (`/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include`) +- **Linux:** Adds `/usr/include` and `/usr/local/include` +- **Windows:** Adds Windows Kits ucrt path + +Additional fixes for CppAst 0.24.0 compatibility: +- Handle trailing `const` in type names (e.g., `hb_blob_t const *` → `hb_blob_t*`) +- Normalize pointer spacing (`hb_blob_t *` → `hb_blob_t*`) +- Added type mappings for `unsigned char` → `Byte`, `signed char` → `SByte` +- Added type mappings for `unsigned long long` and `signed long long` +- Added explicit parameter mapping for `sk_stream_move` to maintain `Int32` for cross-platform ABI + +### Minor Remaining Differences +After upgrade, there are minor cosmetic differences in generated output: +- Some `int8_t` parameters appear as `/* char */ void*` instead of `SByte*` due to typedef resolution +- These are functionally equivalent for P/Invoke purposes + +--- + +## Version Information + +- **Generated from:** HarfBuzz 8.3.0 (can now support 8.3.1+) +- **Target versions covered:** 2.8.2 through 8.3.1+ +- **Generator:** CppAst 0.24.0 +- **Last updated:** During CppAst upgrade diff --git a/nuget.config b/nuget.config index c9e22607af6..e2bd6742d31 100644 --- a/nuget.config +++ b/nuget.config @@ -2,6 +2,7 @@ + diff --git a/tests/Tests/HarfBuzzSharp/HBBufferTest.cs b/tests/Tests/HarfBuzzSharp/HBBufferTest.cs index 416225e6869..f29e692a4ac 100644 --- a/tests/Tests/HarfBuzzSharp/HBBufferTest.cs +++ b/tests/Tests/HarfBuzzSharp/HBBufferTest.cs @@ -296,5 +296,81 @@ public void ShouldDeserializeGlyphs() Assert.Equal(28u, buffer.GlyphInfos[3].Codepoint); } } + + // Buffer.CreateSimilar tests (added in HarfBuzz 3.4.0) + + [SkippableFact] + public void CreateSimilarCreatesNewBuffer() + { + using (var original = new Buffer()) + { + original.Direction = Direction.RightToLeft; + original.Script = Script.Arabic; + original.Language = new Language("ar"); + original.ClusterLevel = ClusterLevel.MonotoneGraphemes; + original.ContentType = ContentType.Unicode; + + using (var similar = Buffer.CreateSimilar(original)) + { + Assert.NotNull(similar); + Assert.NotSame(original, similar); + Assert.NotEqual(original.Handle, similar.Handle); + + // Verify that properties are NOT copied + Assert.Equal(ContentType.Invalid, similar.ContentType); + } + } + } + + [SkippableFact] + public void CreateSimilarPreservesClusterLevel() + { + using (var original = new Buffer()) + { + // CreateSimilar copies: flags, cluster_level, replacement, invisible, not_found, unicode + // It does NOT copy: Direction, Script, Language, content + original.ClusterLevel = ClusterLevel.MonotoneGraphemes; + + using (var similar = Buffer.CreateSimilar(original)) + { + // ClusterLevel should be copied + Assert.Equal(ClusterLevel.MonotoneGraphemes, similar.ClusterLevel); + } + } + } + + [SkippableFact] + public void CreateSimilarDoesNotCopyDirectionScriptLanguage() + { + using (var original = new Buffer()) + { + original.Direction = Direction.RightToLeft; + original.Script = Script.Arabic; + original.Language = new Language("ar"); + + using (var similar = Buffer.CreateSimilar(original)) + { + // Direction, Script, Language are NOT copied by CreateSimilar + Assert.Equal(Direction.Invalid, similar.Direction); + Assert.Equal(Script.Invalid, similar.Script); + } + } + } + + [SkippableFact] + public void CreateSimilarDoesNotCopyContent() + { + using (var original = new Buffer()) + { + original.Direction = Direction.LeftToRight; + original.AddUtf8("Hello"); + + using (var similar = Buffer.CreateSimilar(original)) + { + // Content should NOT be copied + Assert.Equal(0, similar.Length); + } + } + } } } diff --git a/tests/Tests/HarfBuzzSharp/HBCommonTest.cs b/tests/Tests/HarfBuzzSharp/HBCommonTest.cs index f5356c776c2..9ffe12e2f99 100644 --- a/tests/Tests/HarfBuzzSharp/HBCommonTest.cs +++ b/tests/Tests/HarfBuzzSharp/HBCommonTest.cs @@ -31,5 +31,90 @@ public void LanguageShouldBeEqual() Assert.Equal(langA, langB); } + + [SkippableFact] + public void LanguageMatchesWorksForExactMatch() + { + var langEn = new Language("en"); + + Assert.True(langEn.Matches(langEn)); + } + + [SkippableFact] + public void LanguageMatchesWorksForPrefix() + { + var langEn = new Language("en"); + var langEnUs = new Language("en-us"); + + // "en" matches "en-us" because "en" is a prefix + Assert.True(langEn.Matches(langEnUs)); + } + + [SkippableFact] + public void LanguageMatchesReturnsFalseForDifferentLanguages() + { + var langEn = new Language("en"); + var langFr = new Language("fr"); + + Assert.False(langEn.Matches(langFr)); + } + + [SkippableFact] + public void LanguageMatchesThrowsOnNull() + { + var langEn = new Language("en"); + Assert.Throws(() => langEn.Matches(null)); + } + + // Tag tests + + [SkippableFact] + public void TagParseWorks() + { + var tag = Tag.Parse("wght"); + Assert.Equal("wght", tag.ToString()); + } + + [SkippableFact] + public void TagParsePadsShortStrings() + { + var tag = Tag.Parse("ab"); + Assert.Equal("ab ", tag.ToString()); + } + + [SkippableFact] + public void TagParseTruncatesLongStrings() + { + var tag = Tag.Parse("weight"); + Assert.Equal("weig", tag.ToString()); + } + + // Variation tests + + [SkippableFact] + public void VariationStructCanBeCreated() + { + var variation = new Variation + { + Tag = Tag.Parse("wght"), + Value = 700f + }; + + Assert.Equal((uint)Tag.Parse("wght"), variation.Tag); + Assert.Equal(700f, variation.Value); + } + + [SkippableFact] + public void VariationStructEquality() + { + var v1 = new Variation { Tag = Tag.Parse("wght"), Value = 700f }; + var v2 = new Variation { Tag = Tag.Parse("wght"), Value = 700f }; + var v3 = new Variation { Tag = Tag.Parse("wdth"), Value = 700f }; + var v4 = new Variation { Tag = Tag.Parse("wght"), Value = 400f }; + + Assert.Equal(v1, v2); + Assert.NotEqual(v1, v3); + Assert.NotEqual(v1, v4); + } } } diff --git a/tests/Tests/HarfBuzzSharp/HBFaceTest.cs b/tests/Tests/HarfBuzzSharp/HBFaceTest.cs index 45e0944515b..9b3ec24088f 100644 --- a/tests/Tests/HarfBuzzSharp/HBFaceTest.cs +++ b/tests/Tests/HarfBuzzSharp/HBFaceTest.cs @@ -142,5 +142,174 @@ public void EmptyFacesAreNotDisposed() Assert.False(emptyFace.IsDisposed()); Assert.NotEqual(IntPtr.Zero, emptyFace.Handle); } + + // OpenType Name Table Tests + + [SkippableFact] + public void GetNameReturnsFullFontName() + { + using (var face = new Face(Blob, 0)) + { + var fullName = face.GetName(OpenTypeNameId.FullName); + // Returns empty string if not found, not null + Assert.NotNull(fullName); + // Note: SpiderSymbol font may not have name table entries + } + } + + [SkippableFact] + public void GetNameReturnsFontFamily() + { + using (var face = new Face(Blob, 0)) + { + var familyName = face.GetName(OpenTypeNameId.FontFamily); + // Returns empty string if not found, not null + Assert.NotNull(familyName); + } + } + + [SkippableFact] + public void GetNameReturnsEmptyStringForInvalidId() + { + using (var face = new Face(Blob, 0)) + { + var name = face.GetName(OpenTypeNameId.Invalid); + Assert.Equal(string.Empty, name); + } + } + + [SkippableFact] + public void TryGetNameReturnsFalseWhenNotFound() + { + using (var face = new Face(Blob, 0)) + { + // Invalid ID should return false + var result = face.TryGetName(OpenTypeNameId.Invalid, out var name); + Assert.False(result); + Assert.Null(name); + } + } + + [SkippableFact] + public void TryGetNameReturnsFalseForInvalidId() + { + using (var face = new Face(Blob, 0)) + { + var result = face.TryGetName(OpenTypeNameId.Invalid, out var name); + Assert.False(result); + Assert.Null(name); + } + } + + [SkippableFact] + public void GetNameWithLanguageWorks() + { + using (var face = new Face(Blob, 0)) + { + var name = face.GetName(OpenTypeNameId.FontFamily, Language.Default); + Assert.NotNull(name); + } + } + + [SkippableFact] + public void GetNameThrowsOnNullLanguage() + { + using (var face = new Face(Blob, 0)) + { + Assert.Throws(() => face.GetName(OpenTypeNameId.FontFamily, null)); + } + } + + [SkippableFact] + public void TryGetNameThrowsOnNullLanguage() + { + using (var face = new Face(Blob, 0)) + { + Assert.Throws(() => face.TryGetName(OpenTypeNameId.FontFamily, null, out _)); + } + } + + // OpenType Name Entry tests + + [SkippableFact] + public void GetAllNameEntriesReturnsEntries() + { + using (var face = new Face(Blob, 0)) + { + var entries = face.GetAllNameEntries(); + Assert.NotNull(entries); + Assert.NotEmpty(entries); + } + } + + [SkippableFact] + public void GetAllNameEntriesContainsFamilyName() + { + using (var face = new Face(Blob, 0)) + { + var entries = face.GetAllNameEntries(); + // Should contain at least a font family entry + Assert.Contains(entries, e => e.NameId == OpenTypeNameId.FontFamily); + } + } + + // OpenType Layout Script tests + + [SkippableFact] + public void GetOpenTypeLayoutScriptTagsReturnsArray() + { + using (var face = new Face(Blob, 0)) + { + var scripts = face.GetOpenTypeLayoutScriptTags(OpenTypeLayoutTableTag.Gsub); + Assert.NotNull(scripts); + // Font may or may not have GSUB scripts + } + } + + [SkippableFact] + public void GetOpenTypeLayoutScriptTagsGposReturnsArray() + { + using (var face = new Face(Blob, 0)) + { + var scripts = face.GetOpenTypeLayoutScriptTags(OpenTypeLayoutTableTag.Gpos); + Assert.NotNull(scripts); + // Font may or may not have GPOS scripts + } + } + + // OpenType Layout Feature tests + + [SkippableFact] + public void GetOpenTypeLayoutFeatureTagsReturnsArray() + { + using (var face = new Face(Blob, 0)) + { + var features = face.GetOpenTypeLayoutFeatureTags(OpenTypeLayoutTableTag.Gsub); + Assert.NotNull(features); + // Font may or may not have GSUB features + } + } + + [SkippableFact] + public void GetOpenTypeLayoutFeatureTagsGposReturnsArray() + { + using (var face = new Face(Blob, 0)) + { + var features = face.GetOpenTypeLayoutFeatureTags(OpenTypeLayoutTableTag.Gpos); + Assert.NotNull(features); + // Font may or may not have GPOS features + } + } + + [SkippableFact] + public void TryGetOpenTypeLayoutFeatureNameIdsReturnsFalseForInvalidIndex() + { + using (var face = new Face(Blob, 0)) + { + // Use a very large index that won't exist + var result = face.TryGetOpenTypeLayoutFeatureNameIds(OpenTypeLayoutTableTag.Gsub, 99999, out var nameIds); + Assert.False(result); + } + } } } diff --git a/tests/Tests/HarfBuzzSharp/HBFontTest.cs b/tests/Tests/HarfBuzzSharp/HBFontTest.cs index 32088a4460d..ba549d9249e 100644 --- a/tests/Tests/HarfBuzzSharp/HBFontTest.cs +++ b/tests/Tests/HarfBuzzSharp/HBFontTest.cs @@ -234,5 +234,261 @@ public void ShouldGetOpenTypeMetrics(OpenTypeMetricsTag tag, int expected) Assert.Equal(expected, position); } } + + // Synthetic slant tests (added in HarfBuzz 3.3.0) + + [SkippableFact] + public void SyntheticSlantDefaultsToZero() + { + using (var face = new Face(Blob, 0)) + using (var font = new Font(face)) + { + Assert.Equal(0f, font.SyntheticSlant); + } + } + + [SkippableFact] + public void SyntheticSlantCanBeSet() + { + using (var face = new Face(Blob, 0)) + using (var font = new Font(face)) + { + font.SyntheticSlant = 0.25f; + Assert.Equal(0.25f, font.SyntheticSlant); + } + } + + [SkippableFact] + public void SyntheticSlantCanBeSetToNegative() + { + using (var face = new Face(Blob, 0)) + using (var font = new Font(face)) + { + font.SyntheticSlant = -0.5f; + Assert.Equal(-0.5f, font.SyntheticSlant); + } + } + + // Synthetic bold tests (added in HarfBuzz 7.0.0) + + [SkippableFact] + public void SyntheticBoldDefaultsToZero() + { + using (var face = new Face(Blob, 0)) + using (var font = new Font(face)) + { + font.GetSyntheticBold(out var xEmbolden, out var yEmbolden, out var inPlace); + Assert.Equal(0f, xEmbolden); + Assert.Equal(0f, yEmbolden); + Assert.True(inPlace); + } + } + + [SkippableFact] + public void SetSyntheticBoldWorks() + { + using (var face = new Face(Blob, 0)) + using (var font = new Font(face)) + { + font.SetSyntheticBold(0.02f, 0.04f, false); + font.GetSyntheticBold(out var x, out var y, out var inPlace); + Assert.Equal(0.02, (double)x, 4); + Assert.Equal(0.04, (double)y, 4); + Assert.False(inPlace); + } + } + + [SkippableFact] + public void SetSyntheticBoldInPlaceWorks() + { + using (var face = new Face(Blob, 0)) + using (var font = new Font(face)) + { + font.SetSyntheticBold(0.05f, 0.05f, true); + font.GetSyntheticBold(out var x, out var y, out var inPlace); + Assert.Equal(0.05, (double)x, 4); + Assert.Equal(0.05, (double)y, 4); + Assert.True(inPlace); + } + } + + // Variable font tests (added in HarfBuzz 1.4.2+, expanded in later versions) + + [SkippableFact] + public void SetVariationsWithEmptyArrayDoesNotThrow() + { + using (var face = new Face(Blob, 0)) + using (var font = new Font(face)) + { + font.SetVariations(Array.Empty()); + } + } + + [SkippableFact] + public void SetVariationsWorksWithSingleVariation() + { + using (var face = new Face(Blob, 0)) + using (var font = new Font(face)) + { + var variations = new[] { new Variation { Tag = Tag.Parse("wght"), Value = 700f } }; + font.SetVariations(variations); + } + } + + [SkippableFact] + public void SetVariationsWorksWithMultipleVariations() + { + using (var face = new Face(Blob, 0)) + using (var font = new Font(face)) + { + var variations = new[] + { + new Variation { Tag = Tag.Parse("wght"), Value = 700f }, + new Variation { Tag = Tag.Parse("wdth"), Value = 100f } + }; + font.SetVariations(variations); + } + } + + [SkippableFact] + public void SetVariationWithNumericTagWorks() + { + using (var face = new Face(Blob, 0)) + using (var font = new Font(face)) + { + font.SetVariation(Tag.Parse("wght"), 400f); + } + } + + [SkippableFact] + public void SetVariationWithStringTagWorks() + { + using (var face = new Face(Blob, 0)) + using (var font = new Font(face)) + { + font.SetVariation("wght", 600f); + } + } + + [SkippableFact] + public void SetVariationWithStringTagThrowsOnNull() + { + using (var face = new Face(Blob, 0)) + using (var font = new Font(face)) + { + Assert.Throws(() => font.SetVariation(null, 400f)); + } + } + + [SkippableFact] + public void SetVariationWithStringTagThrowsOnInvalidLength() + { + using (var face = new Face(Blob, 0)) + using (var font = new Font(face)) + { + Assert.Throws(() => font.SetVariation("", 400f)); + Assert.Throws(() => font.SetVariation("w", 400f)); + Assert.Throws(() => font.SetVariation("wg", 400f)); + Assert.Throws(() => font.SetVariation("wgh", 400f)); + } + } + + // Named instance tests (added in HarfBuzz 7.0.0) + + [SkippableFact] + public void NamedInstanceDefaultsToUnset() + { + using (var face = new Face(Blob, 0)) + using (var font = new Font(face)) + { + // Default is HB_FONT_NO_VAR_NAMED_INSTANCE (0xFFFFFFFF) + Assert.Equal(0xFFFFFFFF, font.NamedInstance); + } + } + + [SkippableFact] + public void NamedInstanceCanBeSet() + { + using (var face = new Face(Blob, 0)) + using (var font = new Font(face)) + { + font.NamedInstance = 0; + Assert.Equal(0u, font.NamedInstance); + } + } + + // Ppem tests + + [SkippableFact] + public void PpemDefaultsToZero() + { + using (var face = new Face(Blob, 0)) + using (var font = new Font(face)) + { + font.GetPpem(out var xPpem, out var yPpem); + Assert.Equal(0, xPpem); + Assert.Equal(0, yPpem); + } + } + + [SkippableFact] + public void SetPpemWorks() + { + using (var face = new Face(Blob, 0)) + using (var font = new Font(face)) + { + font.SetPpem(16, 16); + font.GetPpem(out var xPpem, out var yPpem); + Assert.Equal(16, xPpem); + Assert.Equal(16, yPpem); + } + } + + [SkippableFact] + public void SetPpemWithDifferentValues() + { + using (var face = new Face(Blob, 0)) + using (var font = new Font(face)) + { + font.SetPpem(12, 24); + font.GetPpem(out var xPpem, out var yPpem); + Assert.Equal(12, xPpem); + Assert.Equal(24, yPpem); + } + } + + // Ptem tests + + [SkippableFact] + public void PtemDefaultsToZero() + { + using (var face = new Face(Blob, 0)) + using (var font = new Font(face)) + { + Assert.Equal(0f, font.Ptem); + } + } + + [SkippableFact] + public void PtemCanBeSet() + { + using (var face = new Face(Blob, 0)) + using (var font = new Font(face)) + { + font.Ptem = 12.0f; + Assert.Equal(12.0f, font.Ptem); + } + } + + [SkippableFact] + public void PtemCanBeSetToLargeValue() + { + using (var face = new Face(Blob, 0)) + using (var font = new Font(face)) + { + font.Ptem = 72.0f; + Assert.Equal(72.0f, font.Ptem); + } + } } } diff --git a/utils/SkiaSharpGenerator/BaseTool.cs b/utils/SkiaSharpGenerator/BaseTool.cs index 715e1aaf173..cc92f49fb76 100644 --- a/utils/SkiaSharpGenerator/BaseTool.cs +++ b/utils/SkiaSharpGenerator/BaseTool.cs @@ -74,6 +74,59 @@ protected void ParseSkiaHeaders() { Log?.LogWarning("Clang include folder not found, parsing may fail."); } + + // Add SDK include path for #include_next to work with inttypes.h + var sdkPaths = new[] + { + "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include", + "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include" + }; + foreach (var sdkPath in sdkPaths) + { + if (Directory.Exists(sdkPath)) + { + Log?.LogVerbose($"Found SDK include folder: {sdkPath}"); + options.SystemIncludeFolders.Add(sdkPath); + break; + } + } + } + else if (OperatingSystem.IsLinux()) + { + // Common Linux system include paths + var linuxIncludePaths = new[] + { + "/usr/include", + "/usr/local/include" + }; + foreach (var includePath in linuxIncludePaths) + { + if (Directory.Exists(includePath)) + { + options.SystemIncludeFolders.Add(includePath); + } + } + } + else if (OperatingSystem.IsWindows()) + { + // On Windows, MSVC include paths are typically auto-detected by libclang + // but we can add common paths if needed + var programFiles = Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles); + var windowsKitInclude = Path.Combine(programFiles, "Windows Kits", "10", "Include"); + if (Directory.Exists(windowsKitInclude)) + { + var versions = Directory.GetDirectories(windowsKitInclude) + .OrderByDescending(d => d) + .FirstOrDefault(); + if (versions is not null) + { + var ucrtPath = Path.Combine(versions, "ucrt"); + if (Directory.Exists(ucrtPath)) + { + options.SystemIncludeFolders.Add(ucrtPath); + } + } + } } foreach (var header in config.IncludeDirs) @@ -139,9 +192,9 @@ protected void LoadStandardMappings() // standard types: { "bool", nameof(Byte) }, - { "char", "/* char */ void" }, - { "unsigned char", "/* unsigned char */ void" }, - { "signed char", "/* signed char */ void" }, + { "char", "/* char */ void" }, // kept as void for string pointers; explicit int8_t/signed char uses SByte + { "unsigned char", nameof(Byte) }, + { "signed char", nameof(SByte) }, { "short", nameof(Int16) }, { "short int", nameof(Int16) }, { "signed short", nameof(Int16) }, @@ -159,8 +212,12 @@ protected void LoadStandardMappings() { "long long int", nameof(Int64) }, { "signed long", nameof(Int64) }, { "signed long int", nameof(Int64) }, + { "signed long long", nameof(Int64) }, + { "signed long long int", nameof(Int64) }, { "unsigned long", nameof(UInt64) }, { "unsigned long int", nameof(UInt64) }, + { "unsigned long long", nameof(UInt64) }, + { "unsigned long long int", nameof(UInt64) }, { "float", nameof(Single) }, { "double", nameof(Double) }, // TODO: long double, wchar_t ? @@ -313,8 +370,9 @@ protected static string GetCppType(CppType type) { var typeName = type.GetDisplayName(); - // remove the const + // remove the const (both prefix "const " and suffix " const") typeName = typeName.Replace("const ", ""); + typeName = typeName.Replace(" const", ""); // replace the [] with a * int start; @@ -324,6 +382,10 @@ protected static string GetCppType(CppType type) typeName = typeName[..start] + "*" + typeName[(end + 1)..]; } + // CppAst 0.24+ adds spaces around pointers (e.g., "hb_blob_t *" instead of "hb_blob_t*") + // Normalize by removing spaces before asterisks to match our type mappings + typeName = typeName.Replace(" *", "*"); + return typeName; } diff --git a/utils/SkiaSharpGenerator/SkiaSharpGenerator.csproj b/utils/SkiaSharpGenerator/SkiaSharpGenerator.csproj index e7322d2549c..31b711c76e3 100644 --- a/utils/SkiaSharpGenerator/SkiaSharpGenerator.csproj +++ b/utils/SkiaSharpGenerator/SkiaSharpGenerator.csproj @@ -13,7 +13,7 @@ - +