sdk-world v2026.11.05
PS2 SDK - world tier (copyleft-allowed, non-essential packages)
Loading...
Searching...
No Matches
ft-hb.h
Go to the documentation of this file.
1/****************************************************************************
2 *
3 * ft-hb.h
4 *
5 * FreeType-HarfBuzz bridge (specification).
6 *
7 * Copyright (C) 2025 by
8 * Behdad Esfahbod.
9 *
10 * This file is part of the FreeType project, and may only be used,
11 * modified, and distributed under the terms of the FreeType project
12 * license, LICENSE.TXT. By continuing to use, modify, or distribute
13 * this file you indicate that you have read the license and
14 * understand and accept it fully.
15 *
16 */
17
18
23#ifndef FT_HB_H
24#define FT_HB_H
25
27#include <freetype/freetype.h>
28
29
30FT_BEGIN_HEADER
31
32#ifdef FT_CONFIG_OPTION_USE_HARFBUZZ
33
34# include "ft-hb-types.h"
35
36# ifdef FT_CONFIG_OPTION_USE_HARFBUZZ_DYNAMIC
37
38# define HB_EXTERN( ret, name, args ) \
39 typedef ret (*ft_ ## name ## _func_t) args;
40# include "ft-hb-decls.h"
41# undef HB_EXTERN
42
43 typedef struct ft_hb_funcs_t
44 {
45# define HB_EXTERN( ret, name, args ) \
46 ft_ ## name ## _func_t name;
47# include "ft-hb-decls.h"
48# undef HB_EXTERN
49 } ft_hb_funcs_t;
50
51 struct AF_ModuleRec_;
52
53 FT_LOCAL( void )
54 ft_hb_funcs_init( struct AF_ModuleRec_ *af_module );
55
56 FT_LOCAL( void )
57 ft_hb_funcs_done( struct AF_ModuleRec_ *af_module );
58
59# define hb( x ) globals->module->hb_funcs->hb_ ## x
60
61# else /* !FT_CONFIG_OPTION_USE_HARFBUZZ_DYNAMIC */
62
63# define HB_EXTERN( ret, name, args ) \
64 ret name args;
65# include "ft-hb-decls.h"
66# undef HB_EXTERN
67
68# define hb( x ) hb_ ## x
69
70# endif /* !FT_CONFIG_OPTION_USE_HARFBUZZ_DYNAMIC */
71
72#endif /* FT_CONFIG_OPTION_USE_HARFBUZZ */
73
74
75 struct AF_FaceGlobalsRec_;
76
77 FT_LOCAL( FT_Bool )
78 ft_hb_enabled( struct AF_FaceGlobalsRec_ *globals );
79
80
81FT_END_HEADER
82
83#endif /* FT_HB_H */
84
85
86/* END */