• Home
  • Raw
  • Download

Lines Matching refs:buffer

657   hb_buffer_t *buffer;  in hb_buffer_create()  local
659 if (!(buffer = hb_object_create<hb_buffer_t> ())) in hb_buffer_create()
662 buffer->max_len = HB_BUFFER_MAX_LEN_DEFAULT; in hb_buffer_create()
663 buffer->max_ops = HB_BUFFER_MAX_OPS_DEFAULT; in hb_buffer_create()
665 buffer->reset (); in hb_buffer_create()
667 return buffer; in hb_buffer_create()
698 hb_buffer_reference (hb_buffer_t *buffer) in hb_buffer_reference() argument
700 return hb_object_reference (buffer); in hb_buffer_reference()
714 hb_buffer_destroy (hb_buffer_t *buffer) in hb_buffer_destroy() argument
716 if (!hb_object_destroy (buffer)) return; in hb_buffer_destroy()
718 hb_unicode_funcs_destroy (buffer->unicode); in hb_buffer_destroy()
720 free (buffer->info); in hb_buffer_destroy()
721 free (buffer->pos); in hb_buffer_destroy()
723 if (buffer->message_destroy) in hb_buffer_destroy()
724 buffer->message_destroy (buffer->message_data); in hb_buffer_destroy()
727 free (buffer); in hb_buffer_destroy()
745 hb_buffer_set_user_data (hb_buffer_t *buffer, in hb_buffer_set_user_data() argument
751 return hb_object_set_user_data (buffer, key, data, destroy, replace); in hb_buffer_set_user_data()
767 hb_buffer_get_user_data (hb_buffer_t *buffer, in hb_buffer_get_user_data() argument
770 return hb_object_get_user_data (buffer, key); in hb_buffer_get_user_data()
785 hb_buffer_set_content_type (hb_buffer_t *buffer, in hb_buffer_set_content_type() argument
788 buffer->content_type = content_type; in hb_buffer_set_content_type()
804 hb_buffer_get_content_type (hb_buffer_t *buffer) in hb_buffer_get_content_type() argument
806 return buffer->content_type; in hb_buffer_get_content_type()
821 hb_buffer_set_unicode_funcs (hb_buffer_t *buffer, in hb_buffer_set_unicode_funcs() argument
824 if (unlikely (hb_object_is_immutable (buffer))) in hb_buffer_set_unicode_funcs()
831 hb_unicode_funcs_destroy (buffer->unicode); in hb_buffer_set_unicode_funcs()
832 buffer->unicode = unicode_funcs; in hb_buffer_set_unicode_funcs()
846 hb_buffer_get_unicode_funcs (hb_buffer_t *buffer) in hb_buffer_get_unicode_funcs() argument
848 return buffer->unicode; in hb_buffer_get_unicode_funcs()
867 hb_buffer_set_direction (hb_buffer_t *buffer, in hb_buffer_set_direction() argument
871 if (unlikely (hb_object_is_immutable (buffer))) in hb_buffer_set_direction()
874 buffer->props.direction = direction; in hb_buffer_set_direction()
889 hb_buffer_get_direction (hb_buffer_t *buffer) in hb_buffer_get_direction() argument
891 return buffer->props.direction; in hb_buffer_get_direction()
912 hb_buffer_set_script (hb_buffer_t *buffer, in hb_buffer_set_script() argument
915 if (unlikely (hb_object_is_immutable (buffer))) in hb_buffer_set_script()
918 buffer->props.script = script; in hb_buffer_set_script()
933 hb_buffer_get_script (hb_buffer_t *buffer) in hb_buffer_get_script() argument
935 return buffer->props.script; in hb_buffer_get_script()
956 hb_buffer_set_language (hb_buffer_t *buffer, in hb_buffer_set_language() argument
959 if (unlikely (hb_object_is_immutable (buffer))) in hb_buffer_set_language()
962 buffer->props.language = language; in hb_buffer_set_language()
977 hb_buffer_get_language (hb_buffer_t *buffer) in hb_buffer_get_language() argument
979 return buffer->props.language; in hb_buffer_get_language()
994 hb_buffer_set_segment_properties (hb_buffer_t *buffer, in hb_buffer_set_segment_properties() argument
997 if (unlikely (hb_object_is_immutable (buffer))) in hb_buffer_set_segment_properties()
1000 buffer->props = *props; in hb_buffer_set_segment_properties()
1013 hb_buffer_get_segment_properties (hb_buffer_t *buffer, in hb_buffer_get_segment_properties() argument
1016 *props = buffer->props; in hb_buffer_get_segment_properties()
1030 hb_buffer_set_flags (hb_buffer_t *buffer, in hb_buffer_set_flags() argument
1033 if (unlikely (hb_object_is_immutable (buffer))) in hb_buffer_set_flags()
1036 buffer->flags = flags; in hb_buffer_set_flags()
1051 hb_buffer_get_flags (hb_buffer_t *buffer) in hb_buffer_get_flags() argument
1053 return buffer->flags; in hb_buffer_get_flags()
1068 hb_buffer_set_cluster_level (hb_buffer_t *buffer, in hb_buffer_set_cluster_level() argument
1071 if (unlikely (hb_object_is_immutable (buffer))) in hb_buffer_set_cluster_level()
1074 buffer->cluster_level = cluster_level; in hb_buffer_set_cluster_level()
1090 hb_buffer_get_cluster_level (hb_buffer_t *buffer) in hb_buffer_get_cluster_level() argument
1092 return buffer->cluster_level; in hb_buffer_get_cluster_level()
1109 hb_buffer_set_replacement_codepoint (hb_buffer_t *buffer, in hb_buffer_set_replacement_codepoint() argument
1112 if (unlikely (hb_object_is_immutable (buffer))) in hb_buffer_set_replacement_codepoint()
1115 buffer->replacement = replacement; in hb_buffer_set_replacement_codepoint()
1131 hb_buffer_get_replacement_codepoint (hb_buffer_t *buffer) in hb_buffer_get_replacement_codepoint() argument
1133 return buffer->replacement; in hb_buffer_get_replacement_codepoint()
1150 hb_buffer_set_invisible_glyph (hb_buffer_t *buffer, in hb_buffer_set_invisible_glyph() argument
1153 if (unlikely (hb_object_is_immutable (buffer))) in hb_buffer_set_invisible_glyph()
1156 buffer->invisible = invisible; in hb_buffer_set_invisible_glyph()
1171 hb_buffer_get_invisible_glyph (hb_buffer_t *buffer) in hb_buffer_get_invisible_glyph() argument
1173 return buffer->invisible; in hb_buffer_get_invisible_glyph()
1187 hb_buffer_reset (hb_buffer_t *buffer) in hb_buffer_reset() argument
1189 if (unlikely (hb_object_is_immutable (buffer))) in hb_buffer_reset()
1192 buffer->reset (); in hb_buffer_reset()
1205 hb_buffer_clear_contents (hb_buffer_t *buffer) in hb_buffer_clear_contents() argument
1207 if (unlikely (hb_object_is_immutable (buffer))) in hb_buffer_clear_contents()
1210 buffer->clear (); in hb_buffer_clear_contents()
1226 hb_buffer_pre_allocate (hb_buffer_t *buffer, unsigned int size) in hb_buffer_pre_allocate() argument
1228 return buffer->ensure (size); in hb_buffer_pre_allocate()
1243 hb_buffer_allocation_successful (hb_buffer_t *buffer) in hb_buffer_allocation_successful() argument
1245 return buffer->successful; in hb_buffer_allocation_successful()
1266 hb_buffer_add (hb_buffer_t *buffer, in hb_buffer_add() argument
1270 buffer->add (codepoint, cluster); in hb_buffer_add()
1271 buffer->clear_context (1); in hb_buffer_add()
1288 hb_buffer_set_length (hb_buffer_t *buffer, in hb_buffer_set_length() argument
1291 if (unlikely (hb_object_is_immutable (buffer))) in hb_buffer_set_length()
1294 if (unlikely (!buffer->ensure (length))) in hb_buffer_set_length()
1298 if (length > buffer->len) { in hb_buffer_set_length()
1299 memset (buffer->info + buffer->len, 0, sizeof (buffer->info[0]) * (length - buffer->len)); in hb_buffer_set_length()
1300 if (buffer->have_positions) in hb_buffer_set_length()
1301 memset (buffer->pos + buffer->len, 0, sizeof (buffer->pos[0]) * (length - buffer->len)); in hb_buffer_set_length()
1304 buffer->len = length; in hb_buffer_set_length()
1308 buffer->content_type = HB_BUFFER_CONTENT_TYPE_INVALID; in hb_buffer_set_length()
1309 buffer->clear_context (0); in hb_buffer_set_length()
1311 buffer->clear_context (1); in hb_buffer_set_length()
1329 hb_buffer_get_length (hb_buffer_t *buffer) in hb_buffer_get_length() argument
1331 return buffer->len; in hb_buffer_get_length()
1349 hb_buffer_get_glyph_infos (hb_buffer_t *buffer, in hb_buffer_get_glyph_infos() argument
1353 *length = buffer->len; in hb_buffer_get_glyph_infos()
1355 return (hb_glyph_info_t *) buffer->info; in hb_buffer_get_glyph_infos()
1373 hb_buffer_get_glyph_positions (hb_buffer_t *buffer, in hb_buffer_get_glyph_positions() argument
1376 if (!buffer->have_positions) in hb_buffer_get_glyph_positions()
1377 buffer->clear_positions (); in hb_buffer_get_glyph_positions()
1380 *length = buffer->len; in hb_buffer_get_glyph_positions()
1382 return (hb_glyph_position_t *) buffer->pos; in hb_buffer_get_glyph_positions()
1399 hb_buffer_has_positions (hb_buffer_t *buffer) in hb_buffer_has_positions() argument
1401 return buffer->have_positions; in hb_buffer_has_positions()
1430 hb_buffer_reverse (hb_buffer_t *buffer) in hb_buffer_reverse() argument
1432 buffer->reverse (); in hb_buffer_reverse()
1446 hb_buffer_reverse_range (hb_buffer_t *buffer, in hb_buffer_reverse_range() argument
1449 buffer->reverse_range (start, end); in hb_buffer_reverse_range()
1463 hb_buffer_reverse_clusters (hb_buffer_t *buffer) in hb_buffer_reverse_clusters() argument
1465 buffer->reverse_clusters (); in hb_buffer_reverse_clusters()
1497 hb_buffer_guess_segment_properties (hb_buffer_t *buffer) in hb_buffer_guess_segment_properties() argument
1499 buffer->guess_segment_properties (); in hb_buffer_guess_segment_properties()
1504 hb_buffer_add_utf (hb_buffer_t *buffer, in hb_buffer_add_utf() argument
1511 const hb_codepoint_t replacement = buffer->replacement; in hb_buffer_add_utf()
1513 buffer->assert_unicode (); in hb_buffer_add_utf()
1515 if (unlikely (hb_object_is_immutable (buffer))) in hb_buffer_add_utf()
1526 !buffer->ensure (buffer->len + item_length * sizeof (T) / 4))) in hb_buffer_add_utf()
1536 if (!buffer->len && item_offset > 0) in hb_buffer_add_utf()
1539 buffer->clear_context (0); in hb_buffer_add_utf()
1542 while (start < prev && buffer->context_len[0] < buffer->CONTEXT_LENGTH) in hb_buffer_add_utf()
1546 buffer->context[0][buffer->context_len[0]++] = u; in hb_buffer_add_utf()
1557 buffer->add (u, old_next - (const T *) text); in hb_buffer_add_utf()
1561 buffer->clear_context (1); in hb_buffer_add_utf()
1563 while (next < end && buffer->context_len[1] < buffer->CONTEXT_LENGTH) in hb_buffer_add_utf()
1567 buffer->context[1][buffer->context_len[1]++] = u; in hb_buffer_add_utf()
1570 buffer->content_type = HB_BUFFER_CONTENT_TYPE_UNICODE; in hb_buffer_add_utf()
1591 hb_buffer_add_utf8 (hb_buffer_t *buffer, in hb_buffer_add_utf8() argument
1597 …hb_buffer_add_utf<hb_utf8_t> (buffer, (const uint8_t *) text, text_length, item_offset, item_lengt… in hb_buffer_add_utf8()
1617 hb_buffer_add_utf16 (hb_buffer_t *buffer, in hb_buffer_add_utf16() argument
1623 hb_buffer_add_utf<hb_utf16_t> (buffer, text, text_length, item_offset, item_length); in hb_buffer_add_utf16()
1643 hb_buffer_add_utf32 (hb_buffer_t *buffer, in hb_buffer_add_utf32() argument
1649 hb_buffer_add_utf<hb_utf32_t> (buffer, text, text_length, item_offset, item_length); in hb_buffer_add_utf32()
1670 hb_buffer_add_latin1 (hb_buffer_t *buffer, in hb_buffer_add_latin1() argument
1676 hb_buffer_add_utf<hb_latin1_t> (buffer, text, text_length, item_offset, item_length); in hb_buffer_add_latin1()
1704 hb_buffer_add_codepoints (hb_buffer_t *buffer, in hb_buffer_add_codepoints() argument
1710 hb_buffer_add_utf<hb_utf32_novalidate_t> (buffer, text, text_length, item_offset, item_length); in hb_buffer_add_codepoints()
1726 hb_buffer_append (hb_buffer_t *buffer, in hb_buffer_append() argument
1731 assert (!buffer->have_output && !source->have_output); in hb_buffer_append()
1732 assert (buffer->have_positions == source->have_positions || in hb_buffer_append()
1733 !buffer->len || !source->len); in hb_buffer_append()
1734 assert (buffer->content_type == source->content_type || in hb_buffer_append()
1735 !buffer->len || !source->len); in hb_buffer_append()
1744 if (buffer->len + (end - start) < buffer->len) /* Overflows. */ in hb_buffer_append()
1746 buffer->successful = false; in hb_buffer_append()
1750 unsigned int orig_len = buffer->len; in hb_buffer_append()
1751 hb_buffer_set_length (buffer, buffer->len + (end - start)); in hb_buffer_append()
1752 if (unlikely (!buffer->successful)) in hb_buffer_append()
1756 buffer->content_type = source->content_type; in hb_buffer_append()
1757 if (!buffer->have_positions && source->have_positions) in hb_buffer_append()
1758 buffer->clear_positions (); in hb_buffer_append()
1760 memcpy (buffer->info + orig_len, source->info + start, (end - start) * sizeof (buffer->info[0])); in hb_buffer_append()
1761 if (buffer->have_positions) in hb_buffer_append()
1762 memcpy (buffer->pos + orig_len, source->pos + start, (end - start) * sizeof (buffer->pos[0])); in hb_buffer_append()
1774 normalize_glyphs_cluster (hb_buffer_t *buffer, in normalize_glyphs_cluster() argument
1779 hb_glyph_position_t *pos = buffer->pos; in normalize_glyphs_cluster()
1808 …hb_stable_sort (buffer->info + start, end - start - 1, compare_info_codepoint, buffer->pos + start… in normalize_glyphs_cluster()
1817 …hb_stable_sort (buffer->info + start + 1, end - start - 1, compare_info_codepoint, buffer->pos + s… in normalize_glyphs_cluster()
1833 hb_buffer_normalize_glyphs (hb_buffer_t *buffer) in hb_buffer_normalize_glyphs() argument
1835 assert (buffer->have_positions); in hb_buffer_normalize_glyphs()
1837 buffer->assert_glyphs (); in hb_buffer_normalize_glyphs()
1839 bool backward = HB_DIRECTION_IS_BACKWARD (buffer->props.direction); in hb_buffer_normalize_glyphs()
1841 foreach_cluster (buffer, start, end) in hb_buffer_normalize_glyphs()
1842 normalize_glyphs_cluster (buffer, start, end, backward); in hb_buffer_normalize_glyphs()
1885 hb_buffer_diff (hb_buffer_t *buffer, in hb_buffer_diff() argument
1890 if (buffer->content_type != reference->content_type && buffer->len && reference->len) in hb_buffer_diff()
1898 if (buffer->len != count) in hb_buffer_diff()
1920 const hb_glyph_info_t *buf_info = buffer->info; in hb_buffer_diff()
1938 if (buffer->content_type == HB_BUFFER_CONTENT_TYPE_GLYPHS) in hb_buffer_diff()
1940 assert (buffer->have_positions); in hb_buffer_diff()
1941 const hb_glyph_position_t *buf_pos = buffer->pos; in hb_buffer_diff()
1979 hb_buffer_set_message_func (hb_buffer_t *buffer, in hb_buffer_set_message_func() argument
1983 if (buffer->message_destroy) in hb_buffer_set_message_func()
1984 buffer->message_destroy (buffer->message_data); in hb_buffer_set_message_func()
1987 buffer->message_func = func; in hb_buffer_set_message_func()
1988 buffer->message_data = user_data; in hb_buffer_set_message_func()
1989 buffer->message_destroy = destroy; in hb_buffer_set_message_func()
1991 buffer->message_func = nullptr; in hb_buffer_set_message_func()
1992 buffer->message_data = nullptr; in hb_buffer_set_message_func()
1993 buffer->message_destroy = nullptr; in hb_buffer_set_message_func()