blob: e76ac1e54289541b66843b833ee0093a4f9a772f [file] [log] [blame]
Behdad Esfahbod71439a82013-08-26 20:56:58 -04001/*
Chun-wei Fan62fb6732020-03-13 12:18:09 +08002 * Copyright (C) 2011 Google, Inc.
Behdad Esfahbod71439a82013-08-26 20:56:58 -04003 *
4 * This is part of HarfBuzz, a text shaping library.
5 *
6 * Permission is hereby granted, without written agreement and without
7 * license or royalty fees, to use, copy, modify, and distribute this
8 * software and its documentation for any purpose, provided that the
9 * above copyright notice and the following two paragraphs appear in
10 * all copies of this software.
11 *
12 * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
13 * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
14 * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
15 * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
16 * DAMAGE.
17 *
18 * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
19 * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
20 * FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
21 * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
22 * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
23 *
24 * Google Author(s): Behdad Esfahbod
25 */
26
Khaled Hosny7b9e23f2021-02-10 23:37:43 +020027#if !defined(HB_GOBJECT_H_IN) && !defined(HB_NO_SINGLE_HEADER_ERROR)
Behdad Esfahbod71439a82013-08-26 20:56:58 -040028#error "Include <hb-gobject.h> instead."
29#endif
30
31#ifndef HB_GOBJECT_STRUCTS_H
32#define HB_GOBJECT_STRUCTS_H
33
34#include "hb.h"
35
36#include <glib-object.h>
37
38HB_BEGIN_DECLS
39
40
41/* Object types */
42
Behdad Esfahbode0939d82018-02-23 13:19:34 -080043HB_EXTERN GType
44hb_gobject_blob_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040045#define HB_GOBJECT_TYPE_BLOB (hb_gobject_blob_get_type ())
46
Behdad Esfahbode0939d82018-02-23 13:19:34 -080047HB_EXTERN GType
48hb_gobject_buffer_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040049#define HB_GOBJECT_TYPE_BUFFER (hb_gobject_buffer_get_type ())
50
Behdad Esfahbode0939d82018-02-23 13:19:34 -080051HB_EXTERN GType
Khaled Hosnyf9428742022-02-12 01:43:11 +020052hb_gobject_draw_funcs_get_type (void);
53#define HB_GOBJECT_TYPE_DRAW_FUNCS (hb_gobject_draw_funcs_get_type ())
54
55HB_EXTERN GType
Matthias Clasenefe13a12022-12-14 09:50:52 -050056hb_gobject_paint_funcs_get_type (void);
57#define HB_GOBJECT_TYPE_PAINT_FUNCS (hb_gobject_paint_funcs_get_type ())
58
59HB_EXTERN GType
Behdad Esfahbode0939d82018-02-23 13:19:34 -080060hb_gobject_face_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040061#define HB_GOBJECT_TYPE_FACE (hb_gobject_face_get_type ())
62
Behdad Esfahbode0939d82018-02-23 13:19:34 -080063HB_EXTERN GType
64hb_gobject_font_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040065#define HB_GOBJECT_TYPE_FONT (hb_gobject_font_get_type ())
66
Behdad Esfahbode0939d82018-02-23 13:19:34 -080067HB_EXTERN GType
68hb_gobject_font_funcs_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040069#define HB_GOBJECT_TYPE_FONT_FUNCS (hb_gobject_font_funcs_get_type ())
70
Behdad Esfahbode0939d82018-02-23 13:19:34 -080071HB_EXTERN GType
72hb_gobject_set_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040073#define HB_GOBJECT_TYPE_SET (hb_gobject_set_get_type ())
74
Behdad Esfahbode0939d82018-02-23 13:19:34 -080075HB_EXTERN GType
Behdad Esfahbodd7a15792018-07-31 22:28:28 -070076hb_gobject_map_get_type (void);
Behdad Esfahbod7a4d5762018-08-01 00:19:25 -070077#define HB_GOBJECT_TYPE_MAP (hb_gobject_map_get_type ())
Behdad Esfahbodd7a15792018-07-31 22:28:28 -070078
79HB_EXTERN GType
Behdad Esfahbode0939d82018-02-23 13:19:34 -080080hb_gobject_shape_plan_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040081#define HB_GOBJECT_TYPE_SHAPE_PLAN (hb_gobject_shape_plan_get_type ())
82
Behdad Esfahbode0939d82018-02-23 13:19:34 -080083HB_EXTERN GType
84hb_gobject_unicode_funcs_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040085#define HB_GOBJECT_TYPE_UNICODE_FUNCS (hb_gobject_unicode_funcs_get_type ())
86
87/* Value types */
88
Behdad Esfahbode0939d82018-02-23 13:19:34 -080089HB_EXTERN GType
90hb_gobject_feature_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040091#define HB_GOBJECT_TYPE_FEATURE (hb_gobject_feature_get_type ())
92
Behdad Esfahbode0939d82018-02-23 13:19:34 -080093HB_EXTERN GType
94hb_gobject_glyph_info_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040095#define HB_GOBJECT_TYPE_GLYPH_INFO (hb_gobject_glyph_info_get_type ())
96
Behdad Esfahbode0939d82018-02-23 13:19:34 -080097HB_EXTERN GType
98hb_gobject_glyph_position_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040099#define HB_GOBJECT_TYPE_GLYPH_POSITION (hb_gobject_glyph_position_get_type ())
100
Behdad Esfahbode0939d82018-02-23 13:19:34 -0800101HB_EXTERN GType
102hb_gobject_segment_properties_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -0400103#define HB_GOBJECT_TYPE_SEGMENT_PROPERTIES (hb_gobject_segment_properties_get_type ())
104
Behdad Esfahbode0939d82018-02-23 13:19:34 -0800105HB_EXTERN GType
106hb_gobject_user_data_key_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -0400107#define HB_GOBJECT_TYPE_USER_DATA_KEY (hb_gobject_user_data_key_get_type ())
108
Behdad Esfahbode0939d82018-02-23 13:19:34 -0800109HB_EXTERN GType
110hb_gobject_ot_math_glyph_variant_get_type (void);
Ebrahim Byagowi5845e5c2018-02-11 12:03:33 +0330111#define HB_GOBJECT_TYPE_OT_MATH_GLYPH_VARIANT (hb_gobject_ot_math_glyph_variant_get_type ())
Behdad Esfahboda981d792018-02-10 15:17:28 -0600112
Behdad Esfahbode0939d82018-02-23 13:19:34 -0800113HB_EXTERN GType
114hb_gobject_ot_math_glyph_part_get_type (void);
Ebrahim Byagowi5845e5c2018-02-11 12:03:33 +0330115#define HB_GOBJECT_TYPE_OT_MATH_GLYPH_PART (hb_gobject_ot_math_glyph_part_get_type ())
Behdad Esfahboda981d792018-02-10 15:17:28 -0600116
Behdad Esfahbod71439a82013-08-26 20:56:58 -0400117
118HB_END_DECLS
119
120#endif /* HB_GOBJECT_H */