1 | /* Pango |
2 | * pango-ot-private.h: Implementation details for Pango OpenType code |
3 | * |
4 | * Copyright (C) 2000 Red Hat Software |
5 | * |
6 | * This library is free software; you can redistribute it and/or |
7 | * modify it under the terms of the GNU Library General Public |
8 | * License as published by the Free Software Foundation; either |
9 | * version 2 of the License, or (at your option) any later version. |
10 | * |
11 | * This library is distributed in the hope that it will be useful, |
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
14 | * Library General Public License for more details. |
15 | * |
16 | * You should have received a copy of the GNU Library General Public |
17 | * License along with this library; if not, write to the |
18 | * Free Software Foundation, Inc., 59 Temple Place - Suite 330, |
19 | * Boston, MA 02111-1307, USA. |
20 | */ |
21 | |
22 | #ifndef __PANGO_OT_PRIVATE_H__ |
23 | #define __PANGO_OT_PRIVATE_H__ |
24 | |
25 | #include <glib.h> |
26 | #include <glib-object.h> |
27 | |
28 | #include <pango/pango-ot.h> |
29 | #include <hb-ot.h> |
30 | #include <hb-ft.h> |
31 | |
32 | #include "pangofc-private.h" |
33 | |
34 | G_BEGIN_DECLS |
35 | |
36 | typedef struct _PangoOTInfoClass PangoOTInfoClass; |
37 | |
38 | /** |
39 | * PangoOTInfo: |
40 | * |
41 | * The `PangoOTInfo` struct contains the various |
42 | * tables associated with an OpenType font. It contains only private fields and |
43 | * should only be accessed via the pango_ot_info_… functions |
44 | * which are documented below. To obtain a `PangoOTInfo`, |
45 | * use pango_ot_info_get(). |
46 | */ |
47 | struct _PangoOTInfo |
48 | { |
49 | GObject parent_instance; |
50 | |
51 | FT_Face face; |
52 | hb_face_t *hb_face; |
53 | }; |
54 | |
55 | struct _PangoOTInfoClass |
56 | { |
57 | GObjectClass parent_class; |
58 | }; |
59 | |
60 | |
61 | typedef struct _PangoOTRulesetClass PangoOTRulesetClass; |
62 | |
63 | struct _PangoOTRuleset |
64 | { |
65 | GObject parent_instance; |
66 | }; |
67 | |
68 | struct _PangoOTRulesetClass |
69 | { |
70 | GObjectClass parent_class; |
71 | }; |
72 | |
73 | /** |
74 | * PangoOTBuffer: |
75 | * |
76 | * The `PangoOTBuffer` structure is used to store strings of glyphs associated |
77 | * with a `PangoFcFont`, suitable for OpenType layout processing. It contains |
78 | * only private fields and should only be accessed via the |
79 | * pango_ot_buffer_… functions which are documented below. |
80 | * To obtain a `PangoOTBuffer`, use pango_ot_buffer_new(). |
81 | */ |
82 | struct _PangoOTBuffer |
83 | { |
84 | hb_buffer_t *buffer; |
85 | }; |
86 | |
87 | G_END_DECLS |
88 | |
89 | #endif /* __PANGO_OT_PRIVATE_H__ */ |
90 | |