Index: third_party/harfbuzz-ng/src/hb-ot-layout-gdef-table.hh |
diff --git a/third_party/harfbuzz-ng/src/hb-ot-layout-gdef-private.hh b/third_party/harfbuzz-ng/src/hb-ot-layout-gdef-table.hh |
similarity index 83% |
rename from third_party/harfbuzz-ng/src/hb-ot-layout-gdef-private.hh |
rename to third_party/harfbuzz-ng/src/hb-ot-layout-gdef-table.hh |
index 4172a7cb1f000d6a5bfc5ca2dd461c4f0c7729d5..ee9c508c6dcb5c718024259ccc6e6e9cd7cc9282 100644 |
--- a/third_party/harfbuzz-ng/src/hb-ot-layout-gdef-private.hh |
+++ b/third_party/harfbuzz-ng/src/hb-ot-layout-gdef-table.hh |
@@ -1,6 +1,6 @@ |
/* |
- * Copyright (C) 2007,2008,2009 Red Hat, Inc. |
- * Copyright (C) 2010 Google, Inc. |
+ * Copyright © 2007,2008,2009 Red Hat, Inc. |
+ * Copyright © 2010,2011 Google, Inc. |
* |
* This is part of HarfBuzz, a text shaping library. |
* |
@@ -26,14 +26,13 @@ |
* Google Author(s): Behdad Esfahbod |
*/ |
-#ifndef HB_OT_LAYOUT_GDEF_PRIVATE_HH |
-#define HB_OT_LAYOUT_GDEF_PRIVATE_HH |
+#ifndef HB_OT_LAYOUT_GDEF_TABLE_HH |
+#define HB_OT_LAYOUT_GDEF_TABLE_HH |
#include "hb-ot-layout-common-private.hh" |
-#include "hb-font-private.h" |
+#include "hb-font-private.hh" |
-HB_BEGIN_DECLS |
/* |
@@ -96,9 +95,9 @@ struct CaretValueFormat1 |
friend struct CaretValue; |
private: |
- inline int get_caret_value (hb_ot_layout_context_t *c, hb_direction_t direction, hb_codepoint_t glyph_id HB_UNUSED) const |
+ inline hb_position_t get_caret_value (hb_font_t *font, hb_direction_t direction, hb_codepoint_t glyph_id HB_UNUSED) const |
{ |
- return HB_DIRECTION_IS_HORIZONTAL (direction) ? c->scale_x (coordinate) : c->scale_y (coordinate); |
+ return HB_DIRECTION_IS_HORIZONTAL (direction) ? font->em_scale_x (coordinate) : font->em_scale_y (coordinate); |
} |
inline bool sanitize (hb_sanitize_context_t *c) { |
@@ -118,10 +117,10 @@ struct CaretValueFormat2 |
friend struct CaretValue; |
private: |
- inline int get_caret_value (hb_ot_layout_context_t *c, hb_direction_t direction, hb_codepoint_t glyph_id) const |
+ inline hb_position_t get_caret_value (hb_font_t *font, hb_direction_t direction, hb_codepoint_t glyph_id) const |
{ |
hb_position_t x, y; |
- if (hb_font_get_contour_point (c->font, c->face, caretValuePoint, glyph_id, &x, &y)) |
+ if (hb_font_get_glyph_contour_point_for_origin (font, glyph_id, caretValuePoint, direction, &x, &y)) |
return HB_DIRECTION_IS_HORIZONTAL (direction) ? x : y; |
else |
return 0; |
@@ -143,11 +142,11 @@ struct CaretValueFormat3 |
{ |
friend struct CaretValue; |
- inline int get_caret_value (hb_ot_layout_context_t *c, hb_direction_t direction, hb_codepoint_t glyph_id) const |
+ inline hb_position_t get_caret_value (hb_font_t *font, hb_direction_t direction, hb_codepoint_t glyph_id HB_UNUSED) const |
{ |
return HB_DIRECTION_IS_HORIZONTAL (direction) ? |
- c->scale_x (coordinate) + (this+deviceTable).get_x_delta (c) : |
- c->scale_y (coordinate) + (this+deviceTable).get_y_delta (c); |
+ font->em_scale_x (coordinate) + (this+deviceTable).get_x_delta (font) : |
+ font->em_scale_y (coordinate) + (this+deviceTable).get_y_delta (font); |
} |
inline bool sanitize (hb_sanitize_context_t *c) { |
@@ -169,12 +168,12 @@ struct CaretValueFormat3 |
struct CaretValue |
{ |
- inline int get_caret_value (hb_ot_layout_context_t *c, hb_direction_t direction, hb_codepoint_t glyph_id) const |
+ inline hb_position_t get_caret_value (hb_font_t *font, hb_direction_t direction, hb_codepoint_t glyph_id) const |
{ |
switch (u.format) { |
- case 1: return u.format1.get_caret_value (c, direction, glyph_id); |
- case 2: return u.format2.get_caret_value (c, direction, glyph_id); |
- case 3: return u.format3.get_caret_value (c, direction, glyph_id); |
+ case 1: return u.format1.get_caret_value (font, direction, glyph_id); |
+ case 2: return u.format2.get_caret_value (font, direction, glyph_id); |
+ case 3: return u.format3.get_caret_value (font, direction, glyph_id); |
default:return 0; |
} |
} |
@@ -203,18 +202,18 @@ struct CaretValue |
struct LigGlyph |
{ |
- inline unsigned int get_lig_carets (hb_ot_layout_context_t *c, |
+ inline unsigned int get_lig_carets (hb_font_t *font, |
hb_direction_t direction, |
hb_codepoint_t glyph_id, |
unsigned int start_offset, |
unsigned int *caret_count /* IN/OUT */, |
- int *caret_array /* OUT */) const |
+ hb_position_t *caret_array /* OUT */) const |
{ |
if (caret_count) { |
const OffsetTo<CaretValue> *array = carets.sub_array (start_offset, caret_count); |
unsigned int count = *caret_count; |
for (unsigned int i = 0; i < count; i++) |
- caret_array[i] = (this+array[i]).get_caret_value (c, direction, glyph_id); |
+ caret_array[i] = (this+array[i]).get_caret_value (font, direction, glyph_id); |
} |
return carets.len; |
@@ -236,12 +235,12 @@ struct LigGlyph |
struct LigCaretList |
{ |
- inline unsigned int get_lig_carets (hb_ot_layout_context_t *c, |
+ inline unsigned int get_lig_carets (hb_font_t *font, |
hb_direction_t direction, |
hb_codepoint_t glyph_id, |
unsigned int start_offset, |
unsigned int *caret_count /* IN/OUT */, |
- int *caret_array /* OUT */) const |
+ hb_position_t *caret_array /* OUT */) const |
{ |
unsigned int index = (this+coverage) (glyph_id); |
if (index == NOT_COVERED) |
@@ -251,7 +250,7 @@ struct LigCaretList |
return 0; |
} |
const LigGlyph &lig_glyph = this+ligGlyph[index]; |
- return lig_glyph.get_lig_carets (c, direction, glyph_id, start_offset, caret_count, caret_array); |
+ return lig_glyph.get_lig_carets (font, direction, glyph_id, start_offset, caret_count, caret_array); |
} |
inline bool sanitize (hb_sanitize_context_t *c) { |
@@ -321,7 +320,7 @@ struct MarkGlyphSets |
/* |
- * GDEF |
+ * GDEF -- The Glyph Definition Table |
*/ |
struct GDEF |
@@ -352,17 +351,17 @@ struct GDEF |
{ return (this+attachList).get_attach_points (glyph_id, start_offset, point_count, point_array); } |
inline bool has_lig_carets (void) const { return ligCaretList != 0; } |
- inline unsigned int get_lig_carets (hb_ot_layout_context_t *c, |
+ inline unsigned int get_lig_carets (hb_font_t *font, |
hb_direction_t direction, |
hb_codepoint_t glyph_id, |
unsigned int start_offset, |
unsigned int *caret_count /* IN/OUT */, |
- int *caret_array /* OUT */) const |
- { return (this+ligCaretList).get_lig_carets (c, direction, glyph_id, start_offset, caret_count, caret_array); } |
+ hb_position_t *caret_array /* OUT */) const |
+ { return (this+ligCaretList).get_lig_carets (font, direction, glyph_id, start_offset, caret_count, caret_array); } |
- inline bool has_mark_sets (void) const { return version >= 0x00010002 && markGlyphSetsDef[0] != 0; } |
+ inline bool has_mark_sets (void) const { return version.to_int () >= 0x00010002 && markGlyphSetsDef[0] != 0; } |
inline bool mark_set_covers (unsigned int set_index, hb_codepoint_t glyph_id) const |
- { return version >= 0x00010002 && (this+markGlyphSetsDef[0]).covers (set_index, glyph_id); } |
+ { return version.to_int () >= 0x00010002 && (this+markGlyphSetsDef[0]).covers (set_index, glyph_id); } |
inline bool sanitize (hb_sanitize_context_t *c) { |
TRACE_SANITIZE (); |
@@ -371,7 +370,7 @@ struct GDEF |
&& attachList.sanitize (c, this) |
&& ligCaretList.sanitize (c, this) |
&& markAttachClassDef.sanitize (c, this) |
- && (version < 0x00010002 || markGlyphSetsDef[0].sanitize (c, this)); |
+ && (version.to_int () < 0x00010002 || markGlyphSetsDef[0].sanitize (c, this)); |
} |
@@ -424,6 +423,5 @@ struct GDEF |
}; |
-HB_END_DECLS |
-#endif /* HB_OT_LAYOUT_GDEF_PRIVATE_HH */ |
+#endif /* HB_OT_LAYOUT_GDEF_TABLE_HH */ |