< prev index next >
src/java.desktop/share/native/libfontmanager/harfbuzz/hb-shape-plan.hh
Print this page
*** 1,7 ****
/*
! * Copyright © 2012 Google, Inc.
*
* This is part of HarfBuzz, a text shaping library.
*
* Permission is hereby granted, without written agreement and without
* license or royalty fees, to use, copy, modify, and distribute this
--- 1,7 ----
/*
! * Copyright © 2012,2018 Google, Inc.
*
* This is part of HarfBuzz, a text shaping library.
*
* Permission is hereby granted, without written agreement and without
* license or royalty fees, to use, copy, modify, and distribute this
*** 22,67 ****
* PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
*
* Google Author(s): Behdad Esfahbod
*/
! #ifndef HB_SHAPE_PLAN_PRIVATE_HH
! #define HB_SHAPE_PLAN_PRIVATE_HH
! #include "hb-private.hh"
! #include "hb-object-private.hh"
! #include "hb-shaper-private.hh"
! struct hb_shape_plan_t
{
- hb_object_header_t header;
- ASSERT_POD ();
-
- hb_bool_t default_shaper_list;
- hb_face_t *face_unsafe; /* We don't carry a reference to face. */
hb_segment_properties_t props;
hb_shape_func_t *shaper_func;
const char *shaper_name;
! hb_feature_t *user_features;
! unsigned int num_user_features;
! int *coords;
! unsigned int num_coords;
! struct hb_shaper_data_t shaper_data;
};
! #define HB_SHAPER_DATA_CREATE_FUNC_EXTRA_ARGS \
! , const hb_feature_t *user_features \
! , unsigned int num_user_features \
! , const int *coords \
! , unsigned int num_coords
! #define HB_SHAPER_IMPLEMENT(shaper) HB_SHAPER_DATA_PROTOTYPE(shaper, shape_plan);
! #include "hb-shaper-list.hh"
! #undef HB_SHAPER_IMPLEMENT
! #undef HB_SHAPER_DATA_CREATE_FUNC_EXTRA_ARGS
! #endif /* HB_SHAPE_PLAN_PRIVATE_HH */
--- 22,72 ----
* PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
*
* Google Author(s): Behdad Esfahbod
*/
! #ifndef HB_SHAPE_PLAN_HH
! #define HB_SHAPE_PLAN_HH
! #include "hb.hh"
! #include "hb-shaper.hh"
! #include "hb-ot-shape.hh"
! struct hb_shape_plan_key_t
{
hb_segment_properties_t props;
+ const hb_feature_t *user_features;
+ unsigned int num_user_features;
+
+ hb_ot_shape_plan_key_t ot;
+
hb_shape_func_t *shaper_func;
const char *shaper_name;
! HB_INTERNAL inline bool init (bool copy,
! hb_face_t *face,
! const hb_segment_properties_t *props,
! const hb_feature_t *user_features,
! unsigned int num_user_features,
! const int *coords,
! unsigned int num_coords,
! const char * const *shaper_list);
!
! HB_INTERNAL inline void free () { ::free ((void *) user_features); }
! HB_INTERNAL bool user_features_match (const hb_shape_plan_key_t *other);
! HB_INTERNAL bool equal (const hb_shape_plan_key_t *other);
};
! struct hb_shape_plan_t
! {
! hb_object_header_t header;
! hb_face_t *face_unsafe; /* We don't carry a reference to face. */
! hb_shape_plan_key_t key;
! hb_ot_shape_plan_t ot;
! };
! #endif /* HB_SHAPE_PLAN_HH */
< prev index next >