blob: 3b057d561bc98f9c420f15a248edfb42115d618e [file] [log] [blame]
Behdad Esfahbod71439a82013-08-26 20:56:58 -04001/*
2 * Copyright © 2011 Google, Inc.
3 *
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
27#ifndef HB_GOBJECT_H_IN
28#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
Sascha Brawer01c3a882015-06-01 13:22:01 +020043/**
Behdad Esfahbod70e72e52016-06-28 21:00:37 -070044 * hb_gobject_blob_get_type:
45 *
Sascha Brawer01c3a882015-06-01 13:22:01 +020046 * Since: 0.9.2
47 **/
Chun-wei Fan835bbdc2015-11-19 18:34:12 +080048HB_EXTERN GType hb_gobject_blob_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040049#define HB_GOBJECT_TYPE_BLOB (hb_gobject_blob_get_type ())
50
Sascha Brawer01c3a882015-06-01 13:22:01 +020051/**
Behdad Esfahbod70e72e52016-06-28 21:00:37 -070052 * hb_gobject_buffer_get_type:
53 *
Sascha Brawer01c3a882015-06-01 13:22:01 +020054 * Since: 0.9.2
55 **/
Chun-wei Fan835bbdc2015-11-19 18:34:12 +080056HB_EXTERN GType hb_gobject_buffer_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040057#define HB_GOBJECT_TYPE_BUFFER (hb_gobject_buffer_get_type ())
58
Sascha Brawer01c3a882015-06-01 13:22:01 +020059/**
Behdad Esfahbod70e72e52016-06-28 21:00:37 -070060 * hb_gobject_face_get_type:
61 *
Sascha Brawer01c3a882015-06-01 13:22:01 +020062 * Since: 0.9.2
63 **/
Chun-wei Fan835bbdc2015-11-19 18:34:12 +080064HB_EXTERN GType hb_gobject_face_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040065#define HB_GOBJECT_TYPE_FACE (hb_gobject_face_get_type ())
66
Sascha Brawer01c3a882015-06-01 13:22:01 +020067/**
Behdad Esfahbod70e72e52016-06-28 21:00:37 -070068 * hb_gobject_font_get_type:
69 *
Sascha Brawer01c3a882015-06-01 13:22:01 +020070 * Since: 0.9.2
71 **/
Chun-wei Fan835bbdc2015-11-19 18:34:12 +080072HB_EXTERN GType hb_gobject_font_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040073#define HB_GOBJECT_TYPE_FONT (hb_gobject_font_get_type ())
74
Sascha Brawer01c3a882015-06-01 13:22:01 +020075/**
Behdad Esfahbod70e72e52016-06-28 21:00:37 -070076 * hb_gobject_font_funcs_get_type:
77 *
Sascha Brawer01c3a882015-06-01 13:22:01 +020078 * Since: 0.9.2
79 **/
Chun-wei Fan835bbdc2015-11-19 18:34:12 +080080HB_EXTERN GType hb_gobject_font_funcs_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040081#define HB_GOBJECT_TYPE_FONT_FUNCS (hb_gobject_font_funcs_get_type ())
82
Chun-wei Fan835bbdc2015-11-19 18:34:12 +080083HB_EXTERN GType hb_gobject_set_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040084#define HB_GOBJECT_TYPE_SET (hb_gobject_set_get_type ())
85
Chun-wei Fan835bbdc2015-11-19 18:34:12 +080086HB_EXTERN GType hb_gobject_shape_plan_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040087#define HB_GOBJECT_TYPE_SHAPE_PLAN (hb_gobject_shape_plan_get_type ())
88
Sascha Brawer01c3a882015-06-01 13:22:01 +020089/**
Behdad Esfahbod70e72e52016-06-28 21:00:37 -070090 * hb_gobject_unicode_funcs_get_type:
91 *
Sascha Brawer01c3a882015-06-01 13:22:01 +020092 * Since: 0.9.2
93 **/
Chun-wei Fan835bbdc2015-11-19 18:34:12 +080094HB_EXTERN GType hb_gobject_unicode_funcs_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040095#define HB_GOBJECT_TYPE_UNICODE_FUNCS (hb_gobject_unicode_funcs_get_type ())
96
97/* Value types */
98
Chun-wei Fan835bbdc2015-11-19 18:34:12 +080099HB_EXTERN GType hb_gobject_feature_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -0400100#define HB_GOBJECT_TYPE_FEATURE (hb_gobject_feature_get_type ())
101
Chun-wei Fan835bbdc2015-11-19 18:34:12 +0800102HB_EXTERN GType hb_gobject_glyph_info_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -0400103#define HB_GOBJECT_TYPE_GLYPH_INFO (hb_gobject_glyph_info_get_type ())
104
Chun-wei Fan835bbdc2015-11-19 18:34:12 +0800105HB_EXTERN GType hb_gobject_glyph_position_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -0400106#define HB_GOBJECT_TYPE_GLYPH_POSITION (hb_gobject_glyph_position_get_type ())
107
Chun-wei Fan835bbdc2015-11-19 18:34:12 +0800108HB_EXTERN GType hb_gobject_segment_properties_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -0400109#define HB_GOBJECT_TYPE_SEGMENT_PROPERTIES (hb_gobject_segment_properties_get_type ())
110
Chun-wei Fan835bbdc2015-11-19 18:34:12 +0800111HB_EXTERN GType hb_gobject_user_data_key_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -0400112#define HB_GOBJECT_TYPE_USER_DATA_KEY (hb_gobject_user_data_key_get_type ())
113
Behdad Esfahboda981d792018-02-10 15:17:28 -0600114HB_EXTERN GType hb_gobject_ot_math_glyph_variant_get_type (void);
115#define HB_GOBJECT_TYPE_USER_DATA_KEY (hb_gobject_ot_math_glyph_variant_get_type ())
116
117HB_EXTERN GType hb_gobject_ot_math_glyph_part_get_type (void);
118#define HB_GOBJECT_TYPE_USER_DATA_KEY (hb_gobject_ot_math_glyph_part_get_type ())
119
Behdad Esfahbod71439a82013-08-26 20:56:58 -0400120
121HB_END_DECLS
122
123#endif /* HB_GOBJECT_H */