blob: 63467f80dfdfebc20627c4d1cd3ed7b451af6296 [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
52hb_gobject_face_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040053#define HB_GOBJECT_TYPE_FACE (hb_gobject_face_get_type ())
54
Behdad Esfahbode0939d82018-02-23 13:19:34 -080055HB_EXTERN GType
56hb_gobject_font_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040057#define HB_GOBJECT_TYPE_FONT (hb_gobject_font_get_type ())
58
Behdad Esfahbode0939d82018-02-23 13:19:34 -080059HB_EXTERN GType
60hb_gobject_font_funcs_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040061#define HB_GOBJECT_TYPE_FONT_FUNCS (hb_gobject_font_funcs_get_type ())
62
Behdad Esfahbode0939d82018-02-23 13:19:34 -080063HB_EXTERN GType
64hb_gobject_set_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040065#define HB_GOBJECT_TYPE_SET (hb_gobject_set_get_type ())
66
Behdad Esfahbode0939d82018-02-23 13:19:34 -080067HB_EXTERN GType
Behdad Esfahbodd7a15792018-07-31 22:28:28 -070068hb_gobject_map_get_type (void);
Behdad Esfahbod7a4d5762018-08-01 00:19:25 -070069#define HB_GOBJECT_TYPE_MAP (hb_gobject_map_get_type ())
Behdad Esfahbodd7a15792018-07-31 22:28:28 -070070
71HB_EXTERN GType
Behdad Esfahbode0939d82018-02-23 13:19:34 -080072hb_gobject_shape_plan_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040073#define HB_GOBJECT_TYPE_SHAPE_PLAN (hb_gobject_shape_plan_get_type ())
74
Behdad Esfahbode0939d82018-02-23 13:19:34 -080075HB_EXTERN GType
76hb_gobject_unicode_funcs_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040077#define HB_GOBJECT_TYPE_UNICODE_FUNCS (hb_gobject_unicode_funcs_get_type ())
78
79/* Value types */
80
Behdad Esfahbode0939d82018-02-23 13:19:34 -080081HB_EXTERN GType
82hb_gobject_feature_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040083#define HB_GOBJECT_TYPE_FEATURE (hb_gobject_feature_get_type ())
84
Behdad Esfahbode0939d82018-02-23 13:19:34 -080085HB_EXTERN GType
86hb_gobject_glyph_info_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040087#define HB_GOBJECT_TYPE_GLYPH_INFO (hb_gobject_glyph_info_get_type ())
88
Behdad Esfahbode0939d82018-02-23 13:19:34 -080089HB_EXTERN GType
90hb_gobject_glyph_position_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040091#define HB_GOBJECT_TYPE_GLYPH_POSITION (hb_gobject_glyph_position_get_type ())
92
Behdad Esfahbode0939d82018-02-23 13:19:34 -080093HB_EXTERN GType
94hb_gobject_segment_properties_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040095#define HB_GOBJECT_TYPE_SEGMENT_PROPERTIES (hb_gobject_segment_properties_get_type ())
96
Behdad Esfahbode0939d82018-02-23 13:19:34 -080097HB_EXTERN GType
98hb_gobject_user_data_key_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040099#define HB_GOBJECT_TYPE_USER_DATA_KEY (hb_gobject_user_data_key_get_type ())
100
Behdad Esfahbode0939d82018-02-23 13:19:34 -0800101HB_EXTERN GType
102hb_gobject_ot_math_glyph_variant_get_type (void);
Ebrahim Byagowi5845e5c2018-02-11 12:03:33 +0330103#define HB_GOBJECT_TYPE_OT_MATH_GLYPH_VARIANT (hb_gobject_ot_math_glyph_variant_get_type ())
Behdad Esfahboda981d792018-02-10 15:17:28 -0600104
Behdad Esfahbode0939d82018-02-23 13:19:34 -0800105HB_EXTERN GType
106hb_gobject_ot_math_glyph_part_get_type (void);
Ebrahim Byagowi5845e5c2018-02-11 12:03:33 +0330107#define HB_GOBJECT_TYPE_OT_MATH_GLYPH_PART (hb_gobject_ot_math_glyph_part_get_type ())
Behdad Esfahboda981d792018-02-10 15:17:28 -0600108
Behdad Esfahbod71439a82013-08-26 20:56:58 -0400109
110HB_END_DECLS
111
112#endif /* HB_GOBJECT_H */