jdk/src/java.desktop/share/native/libfontmanager/harfbuzz/hb-unicode.h
changeset 40435 553eb1a50733
parent 34414 e496a8d8fc8a
equal deleted inserted replaced
40434:49d6193f196f 40435:553eb1a50733
   172 
   172 
   173 
   173 
   174 /*
   174 /*
   175  * just give me the best implementation you've got there.
   175  * just give me the best implementation you've got there.
   176  */
   176  */
   177 hb_unicode_funcs_t *
   177 HB_EXTERN hb_unicode_funcs_t *
   178 hb_unicode_funcs_get_default (void);
   178 hb_unicode_funcs_get_default (void);
   179 
   179 
   180 
   180 
   181 hb_unicode_funcs_t *
   181 HB_EXTERN hb_unicode_funcs_t *
   182 hb_unicode_funcs_create (hb_unicode_funcs_t *parent);
   182 hb_unicode_funcs_create (hb_unicode_funcs_t *parent);
   183 
   183 
   184 hb_unicode_funcs_t *
   184 HB_EXTERN hb_unicode_funcs_t *
   185 hb_unicode_funcs_get_empty (void);
   185 hb_unicode_funcs_get_empty (void);
   186 
   186 
   187 hb_unicode_funcs_t *
   187 HB_EXTERN hb_unicode_funcs_t *
   188 hb_unicode_funcs_reference (hb_unicode_funcs_t *ufuncs);
   188 hb_unicode_funcs_reference (hb_unicode_funcs_t *ufuncs);
   189 
   189 
   190 void
   190 HB_EXTERN void
   191 hb_unicode_funcs_destroy (hb_unicode_funcs_t *ufuncs);
   191 hb_unicode_funcs_destroy (hb_unicode_funcs_t *ufuncs);
   192 
   192 
   193 hb_bool_t
   193 HB_EXTERN hb_bool_t
   194 hb_unicode_funcs_set_user_data (hb_unicode_funcs_t *ufuncs,
   194 hb_unicode_funcs_set_user_data (hb_unicode_funcs_t *ufuncs,
   195                                 hb_user_data_key_t *key,
   195                                 hb_user_data_key_t *key,
   196                                 void *              data,
   196                                 void *              data,
   197                                 hb_destroy_func_t   destroy,
   197                                 hb_destroy_func_t   destroy,
   198                                 hb_bool_t           replace);
   198                                 hb_bool_t           replace);
   199 
   199 
   200 
   200 
   201 void *
   201 HB_EXTERN void *
   202 hb_unicode_funcs_get_user_data (hb_unicode_funcs_t *ufuncs,
   202 hb_unicode_funcs_get_user_data (hb_unicode_funcs_t *ufuncs,
   203                                 hb_user_data_key_t *key);
   203                                 hb_user_data_key_t *key);
   204 
   204 
   205 
   205 
   206 void
   206 HB_EXTERN void
   207 hb_unicode_funcs_make_immutable (hb_unicode_funcs_t *ufuncs);
   207 hb_unicode_funcs_make_immutable (hb_unicode_funcs_t *ufuncs);
   208 
   208 
   209 hb_bool_t
   209 HB_EXTERN hb_bool_t
   210 hb_unicode_funcs_is_immutable (hb_unicode_funcs_t *ufuncs);
   210 hb_unicode_funcs_is_immutable (hb_unicode_funcs_t *ufuncs);
   211 
   211 
   212 hb_unicode_funcs_t *
   212 HB_EXTERN hb_unicode_funcs_t *
   213 hb_unicode_funcs_get_parent (hb_unicode_funcs_t *ufuncs);
   213 hb_unicode_funcs_get_parent (hb_unicode_funcs_t *ufuncs);
   214 
   214 
   215 
   215 
   216 /*
   216 /*
   217  * funcs
   217  * funcs
   283  *
   283  *
   284  *
   284  *
   285  *
   285  *
   286  * Since: 0.9.2
   286  * Since: 0.9.2
   287  **/
   287  **/
   288 void
   288 HB_EXTERN void
   289 hb_unicode_funcs_set_combining_class_func (hb_unicode_funcs_t *ufuncs,
   289 hb_unicode_funcs_set_combining_class_func (hb_unicode_funcs_t *ufuncs,
   290                                            hb_unicode_combining_class_func_t func,
   290                                            hb_unicode_combining_class_func_t func,
   291                                            void *user_data, hb_destroy_func_t destroy);
   291                                            void *user_data, hb_destroy_func_t destroy);
   292 
   292 
   293 /**
   293 /**
   299  *
   299  *
   300  *
   300  *
   301  *
   301  *
   302  * Since: 0.9.2
   302  * Since: 0.9.2
   303  **/
   303  **/
   304 void
   304 HB_EXTERN void
   305 hb_unicode_funcs_set_eastasian_width_func (hb_unicode_funcs_t *ufuncs,
   305 hb_unicode_funcs_set_eastasian_width_func (hb_unicode_funcs_t *ufuncs,
   306                                            hb_unicode_eastasian_width_func_t func,
   306                                            hb_unicode_eastasian_width_func_t func,
   307                                            void *user_data, hb_destroy_func_t destroy);
   307                                            void *user_data, hb_destroy_func_t destroy);
   308 
   308 
   309 /**
   309 /**
   315  *
   315  *
   316  *
   316  *
   317  *
   317  *
   318  * Since: 0.9.2
   318  * Since: 0.9.2
   319  **/
   319  **/
   320 void
   320 HB_EXTERN void
   321 hb_unicode_funcs_set_general_category_func (hb_unicode_funcs_t *ufuncs,
   321 hb_unicode_funcs_set_general_category_func (hb_unicode_funcs_t *ufuncs,
   322                                             hb_unicode_general_category_func_t func,
   322                                             hb_unicode_general_category_func_t func,
   323                                             void *user_data, hb_destroy_func_t destroy);
   323                                             void *user_data, hb_destroy_func_t destroy);
   324 
   324 
   325 /**
   325 /**
   331  *
   331  *
   332  *
   332  *
   333  *
   333  *
   334  * Since: 0.9.2
   334  * Since: 0.9.2
   335  **/
   335  **/
   336 void
   336 HB_EXTERN void
   337 hb_unicode_funcs_set_mirroring_func (hb_unicode_funcs_t *ufuncs,
   337 hb_unicode_funcs_set_mirroring_func (hb_unicode_funcs_t *ufuncs,
   338                                      hb_unicode_mirroring_func_t func,
   338                                      hb_unicode_mirroring_func_t func,
   339                                      void *user_data, hb_destroy_func_t destroy);
   339                                      void *user_data, hb_destroy_func_t destroy);
   340 
   340 
   341 /**
   341 /**
   347  *
   347  *
   348  *
   348  *
   349  *
   349  *
   350  * Since: 0.9.2
   350  * Since: 0.9.2
   351  **/
   351  **/
   352 void
   352 HB_EXTERN void
   353 hb_unicode_funcs_set_script_func (hb_unicode_funcs_t *ufuncs,
   353 hb_unicode_funcs_set_script_func (hb_unicode_funcs_t *ufuncs,
   354                                   hb_unicode_script_func_t func,
   354                                   hb_unicode_script_func_t func,
   355                                   void *user_data, hb_destroy_func_t destroy);
   355                                   void *user_data, hb_destroy_func_t destroy);
   356 
   356 
   357 /**
   357 /**
   363  *
   363  *
   364  *
   364  *
   365  *
   365  *
   366  * Since: 0.9.2
   366  * Since: 0.9.2
   367  **/
   367  **/
   368 void
   368 HB_EXTERN void
   369 hb_unicode_funcs_set_compose_func (hb_unicode_funcs_t *ufuncs,
   369 hb_unicode_funcs_set_compose_func (hb_unicode_funcs_t *ufuncs,
   370                                    hb_unicode_compose_func_t func,
   370                                    hb_unicode_compose_func_t func,
   371                                    void *user_data, hb_destroy_func_t destroy);
   371                                    void *user_data, hb_destroy_func_t destroy);
   372 
   372 
   373 /**
   373 /**
   379  *
   379  *
   380  *
   380  *
   381  *
   381  *
   382  * Since: 0.9.2
   382  * Since: 0.9.2
   383  **/
   383  **/
   384 void
   384 HB_EXTERN void
   385 hb_unicode_funcs_set_decompose_func (hb_unicode_funcs_t *ufuncs,
   385 hb_unicode_funcs_set_decompose_func (hb_unicode_funcs_t *ufuncs,
   386                                      hb_unicode_decompose_func_t func,
   386                                      hb_unicode_decompose_func_t func,
   387                                      void *user_data, hb_destroy_func_t destroy);
   387                                      void *user_data, hb_destroy_func_t destroy);
   388 
   388 
   389 /**
   389 /**
   395  *
   395  *
   396  *
   396  *
   397  *
   397  *
   398  * Since: 0.9.2
   398  * Since: 0.9.2
   399  **/
   399  **/
   400 void
   400 HB_EXTERN void
   401 hb_unicode_funcs_set_decompose_compatibility_func (hb_unicode_funcs_t *ufuncs,
   401 hb_unicode_funcs_set_decompose_compatibility_func (hb_unicode_funcs_t *ufuncs,
   402                                                    hb_unicode_decompose_compatibility_func_t func,
   402                                                    hb_unicode_decompose_compatibility_func_t func,
   403                                                    void *user_data, hb_destroy_func_t destroy);
   403                                                    void *user_data, hb_destroy_func_t destroy);
   404 
   404 
   405 /* accessors */
   405 /* accessors */
   406 
   406 
   407 /**
   407 /**
   408  * Since: 0.9.2
   408  * hb_unicode_combining_class:
   409  **/
   409  *
   410 hb_unicode_combining_class_t
   410  * Since: 0.9.2
       
   411  **/
       
   412 HB_EXTERN hb_unicode_combining_class_t
   411 hb_unicode_combining_class (hb_unicode_funcs_t *ufuncs,
   413 hb_unicode_combining_class (hb_unicode_funcs_t *ufuncs,
   412                             hb_codepoint_t unicode);
   414                             hb_codepoint_t unicode);
   413 
   415 
   414 /**
   416 /**
   415  * Since: 0.9.2
   417  * hb_unicode_eastasian_width:
   416  **/
   418  *
   417 unsigned int
   419  * Since: 0.9.2
       
   420  **/
       
   421 HB_EXTERN unsigned int
   418 hb_unicode_eastasian_width (hb_unicode_funcs_t *ufuncs,
   422 hb_unicode_eastasian_width (hb_unicode_funcs_t *ufuncs,
   419                             hb_codepoint_t unicode);
   423                             hb_codepoint_t unicode);
   420 
   424 
   421 /**
   425 /**
   422  * Since: 0.9.2
   426  * hb_unicode_general_category:
   423  **/
   427  *
   424 hb_unicode_general_category_t
   428  * Since: 0.9.2
       
   429  **/
       
   430 HB_EXTERN hb_unicode_general_category_t
   425 hb_unicode_general_category (hb_unicode_funcs_t *ufuncs,
   431 hb_unicode_general_category (hb_unicode_funcs_t *ufuncs,
   426                              hb_codepoint_t unicode);
   432                              hb_codepoint_t unicode);
   427 
   433 
   428 /**
   434 /**
   429  * Since: 0.9.2
   435  * hb_unicode_mirroring:
   430  **/
   436  *
   431 hb_codepoint_t
   437  * Since: 0.9.2
       
   438  **/
       
   439 HB_EXTERN hb_codepoint_t
   432 hb_unicode_mirroring (hb_unicode_funcs_t *ufuncs,
   440 hb_unicode_mirroring (hb_unicode_funcs_t *ufuncs,
   433                       hb_codepoint_t unicode);
   441                       hb_codepoint_t unicode);
   434 
   442 
   435 /**
   443 /**
   436  * Since: 0.9.2
   444  * hb_unicode_script:
   437  **/
   445  *
   438 hb_script_t
   446  * Since: 0.9.2
       
   447  **/
       
   448 HB_EXTERN hb_script_t
   439 hb_unicode_script (hb_unicode_funcs_t *ufuncs,
   449 hb_unicode_script (hb_unicode_funcs_t *ufuncs,
   440                    hb_codepoint_t unicode);
   450                    hb_codepoint_t unicode);
   441 
   451 
   442 /**
   452 HB_EXTERN hb_bool_t
   443  * Since: 0.9.2
       
   444  **/
       
   445 hb_bool_t
       
   446 hb_unicode_compose (hb_unicode_funcs_t *ufuncs,
   453 hb_unicode_compose (hb_unicode_funcs_t *ufuncs,
   447                     hb_codepoint_t      a,
   454                     hb_codepoint_t      a,
   448                     hb_codepoint_t      b,
   455                     hb_codepoint_t      b,
   449                     hb_codepoint_t     *ab);
   456                     hb_codepoint_t     *ab);
   450 
   457 
   451 /**
   458 HB_EXTERN hb_bool_t
   452  * Since: 0.9.2
       
   453  **/
       
   454 hb_bool_t
       
   455 hb_unicode_decompose (hb_unicode_funcs_t *ufuncs,
   459 hb_unicode_decompose (hb_unicode_funcs_t *ufuncs,
   456                       hb_codepoint_t      ab,
   460                       hb_codepoint_t      ab,
   457                       hb_codepoint_t     *a,
   461                       hb_codepoint_t     *a,
   458                       hb_codepoint_t     *b);
   462                       hb_codepoint_t     *b);
   459 
   463 
   460 /**
   464 HB_EXTERN unsigned int
   461  * Since: 0.9.2
       
   462  **/
       
   463 unsigned int
       
   464 hb_unicode_decompose_compatibility (hb_unicode_funcs_t *ufuncs,
   465 hb_unicode_decompose_compatibility (hb_unicode_funcs_t *ufuncs,
   465                                     hb_codepoint_t      u,
   466                                     hb_codepoint_t      u,
   466                                     hb_codepoint_t     *decomposed);
   467                                     hb_codepoint_t     *decomposed);
   467 
   468 
   468 HB_END_DECLS
   469 HB_END_DECLS