| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright © 2009,2010 Red Hat, Inc. | 2 * Copyright © 2009,2010 Red Hat, Inc. |
| 3 * Copyright © 2010,2011,2012,2013 Google, Inc. | 3 * Copyright © 2010,2011,2012,2013 Google, Inc. |
| 4 * | 4 * |
| 5 * This is part of HarfBuzz, a text shaping library. | 5 * This is part of HarfBuzz, a text shaping library. |
| 6 * | 6 * |
| 7 * Permission is hereby granted, without written agreement and without | 7 * Permission is hereby granted, without written agreement and without |
| 8 * license or royalty fees, to use, copy, modify, and distribute this | 8 * license or royalty fees, to use, copy, modify, and distribute this |
| 9 * software and its documentation for any purpose, provided that the | 9 * software and its documentation for any purpose, provided that the |
| 10 * above copyright notice and the following two paragraphs appear in | 10 * above copyright notice and the following two paragraphs appear in |
| (...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 111 return; | 111 return; |
| 112 } | 112 } |
| 113 assert (stage <= stages[table_index].len); | 113 assert (stage <= stages[table_index].len); |
| 114 unsigned int start = stage ? stages[table_index][stage - 1].last_lookup : 0; | 114 unsigned int start = stage ? stages[table_index][stage - 1].last_lookup : 0; |
| 115 unsigned int end = stage < stages[table_index].len ? stages[table_index][s
tage].last_lookup : lookups[table_index].len; | 115 unsigned int end = stage < stages[table_index].len ? stages[table_index][s
tage].last_lookup : lookups[table_index].len; |
| 116 *plookups = &lookups[table_index][start]; | 116 *plookups = &lookups[table_index][start]; |
| 117 *lookup_count = end - start; | 117 *lookup_count = end - start; |
| 118 } | 118 } |
| 119 | 119 |
| 120 HB_INTERNAL void collect_lookups (unsigned int table_index, hb_set_t *lookups)
const; | 120 HB_INTERNAL void collect_lookups (unsigned int table_index, hb_set_t *lookups)
const; |
| 121 HB_INTERNAL inline void apply (unsigned int table_index, | 121 template <typename Proxy> |
| 122 » » » » const struct hb_ot_shape_plan_t *plan, | 122 HB_INTERNAL inline void apply (const Proxy &proxy, |
| 123 » » » » hb_font_t *font, | 123 » » » » const struct hb_ot_shape_plan_t *plan, hb_font_
t *font, hb_buffer_t *buffer) const; |
| 124 » » » » hb_buffer_t *buffer) const; | |
| 125 HB_INTERNAL void substitute (const struct hb_ot_shape_plan_t *plan, hb_font_t
*font, hb_buffer_t *buffer) const; | 124 HB_INTERNAL void substitute (const struct hb_ot_shape_plan_t *plan, hb_font_t
*font, hb_buffer_t *buffer) const; |
| 126 HB_INTERNAL void position (const struct hb_ot_shape_plan_t *plan, hb_font_t *f
ont, hb_buffer_t *buffer) const; | 125 HB_INTERNAL void position (const struct hb_ot_shape_plan_t *plan, hb_font_t *f
ont, hb_buffer_t *buffer) const; |
| 127 | 126 |
| 128 inline void finish (void) { | 127 inline void finish (void) { |
| 129 features.finish (); | 128 features.finish (); |
| 130 for (unsigned int table_index = 0; table_index < 2; table_index++) | 129 for (unsigned int table_index = 0; table_index < 2; table_index++) |
| 131 { | 130 { |
| 132 lookups[table_index].finish (); | 131 lookups[table_index].finish (); |
| 133 stages[table_index].finish (); | 132 stages[table_index].finish (); |
| 134 } | 133 } |
| (...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 239 private: | 238 private: |
| 240 | 239 |
| 241 unsigned int current_stage[2]; /* GSUB/GPOS */ | 240 unsigned int current_stage[2]; /* GSUB/GPOS */ |
| 242 hb_prealloced_array_t<feature_info_t, 32> feature_infos; | 241 hb_prealloced_array_t<feature_info_t, 32> feature_infos; |
| 243 hb_prealloced_array_t<stage_info_t, 8> stages[2]; /* GSUB/GPOS */ | 242 hb_prealloced_array_t<stage_info_t, 8> stages[2]; /* GSUB/GPOS */ |
| 244 }; | 243 }; |
| 245 | 244 |
| 246 | 245 |
| 247 | 246 |
| 248 #endif /* HB_OT_MAP_PRIVATE_HH */ | 247 #endif /* HB_OT_MAP_PRIVATE_HH */ |
| OLD | NEW |