blob: 800beede0f1c647c2698a5c20416f53863ea7153 [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 **/
Behdad Esfahbode0939d82018-02-23 13:19:34 -080048HB_EXTERN GType
49hb_gobject_blob_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040050#define HB_GOBJECT_TYPE_BLOB (hb_gobject_blob_get_type ())
51
Sascha Brawer01c3a882015-06-01 13:22:01 +020052/**
Behdad Esfahbod70e72e52016-06-28 21:00:37 -070053 * hb_gobject_buffer_get_type:
54 *
Sascha Brawer01c3a882015-06-01 13:22:01 +020055 * Since: 0.9.2
56 **/
Behdad Esfahbode0939d82018-02-23 13:19:34 -080057HB_EXTERN GType
58hb_gobject_buffer_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040059#define HB_GOBJECT_TYPE_BUFFER (hb_gobject_buffer_get_type ())
60
Sascha Brawer01c3a882015-06-01 13:22:01 +020061/**
Behdad Esfahbod70e72e52016-06-28 21:00:37 -070062 * hb_gobject_face_get_type:
63 *
Sascha Brawer01c3a882015-06-01 13:22:01 +020064 * Since: 0.9.2
65 **/
Behdad Esfahbode0939d82018-02-23 13:19:34 -080066HB_EXTERN GType
67hb_gobject_face_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040068#define HB_GOBJECT_TYPE_FACE (hb_gobject_face_get_type ())
69
Sascha Brawer01c3a882015-06-01 13:22:01 +020070/**
Behdad Esfahbod70e72e52016-06-28 21:00:37 -070071 * hb_gobject_font_get_type:
72 *
Sascha Brawer01c3a882015-06-01 13:22:01 +020073 * Since: 0.9.2
74 **/
Behdad Esfahbode0939d82018-02-23 13:19:34 -080075HB_EXTERN GType
76hb_gobject_font_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040077#define HB_GOBJECT_TYPE_FONT (hb_gobject_font_get_type ())
78
Sascha Brawer01c3a882015-06-01 13:22:01 +020079/**
Behdad Esfahbod70e72e52016-06-28 21:00:37 -070080 * hb_gobject_font_funcs_get_type:
81 *
Sascha Brawer01c3a882015-06-01 13:22:01 +020082 * Since: 0.9.2
83 **/
Behdad Esfahbode0939d82018-02-23 13:19:34 -080084HB_EXTERN GType
85hb_gobject_font_funcs_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040086#define HB_GOBJECT_TYPE_FONT_FUNCS (hb_gobject_font_funcs_get_type ())
87
Behdad Esfahbode0939d82018-02-23 13:19:34 -080088HB_EXTERN GType
89hb_gobject_set_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040090#define HB_GOBJECT_TYPE_SET (hb_gobject_set_get_type ())
91
Behdad Esfahbode0939d82018-02-23 13:19:34 -080092HB_EXTERN GType
Behdad Esfahbodd7a15792018-07-31 22:28:28 -070093hb_gobject_map_get_type (void);
Behdad Esfahbod7a4d5762018-08-01 00:19:25 -070094#define HB_GOBJECT_TYPE_MAP (hb_gobject_map_get_type ())
Behdad Esfahbodd7a15792018-07-31 22:28:28 -070095
96HB_EXTERN GType
Behdad Esfahbode0939d82018-02-23 13:19:34 -080097hb_gobject_shape_plan_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -040098#define HB_GOBJECT_TYPE_SHAPE_PLAN (hb_gobject_shape_plan_get_type ())
99
Sascha Brawer01c3a882015-06-01 13:22:01 +0200100/**
Behdad Esfahbod70e72e52016-06-28 21:00:37 -0700101 * hb_gobject_unicode_funcs_get_type:
102 *
Sascha Brawer01c3a882015-06-01 13:22:01 +0200103 * Since: 0.9.2
104 **/
Behdad Esfahbode0939d82018-02-23 13:19:34 -0800105HB_EXTERN GType
106hb_gobject_unicode_funcs_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -0400107#define HB_GOBJECT_TYPE_UNICODE_FUNCS (hb_gobject_unicode_funcs_get_type ())
108
109/* Value types */
110
Behdad Esfahbode0939d82018-02-23 13:19:34 -0800111HB_EXTERN GType
112hb_gobject_feature_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -0400113#define HB_GOBJECT_TYPE_FEATURE (hb_gobject_feature_get_type ())
114
Behdad Esfahbode0939d82018-02-23 13:19:34 -0800115HB_EXTERN GType
116hb_gobject_glyph_info_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -0400117#define HB_GOBJECT_TYPE_GLYPH_INFO (hb_gobject_glyph_info_get_type ())
118
Behdad Esfahbode0939d82018-02-23 13:19:34 -0800119HB_EXTERN GType
120hb_gobject_glyph_position_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -0400121#define HB_GOBJECT_TYPE_GLYPH_POSITION (hb_gobject_glyph_position_get_type ())
122
Behdad Esfahbode0939d82018-02-23 13:19:34 -0800123HB_EXTERN GType
124hb_gobject_segment_properties_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -0400125#define HB_GOBJECT_TYPE_SEGMENT_PROPERTIES (hb_gobject_segment_properties_get_type ())
126
Behdad Esfahbode0939d82018-02-23 13:19:34 -0800127HB_EXTERN GType
128hb_gobject_user_data_key_get_type (void);
Behdad Esfahbod71439a82013-08-26 20:56:58 -0400129#define HB_GOBJECT_TYPE_USER_DATA_KEY (hb_gobject_user_data_key_get_type ())
130
Behdad Esfahbode0939d82018-02-23 13:19:34 -0800131HB_EXTERN GType
132hb_gobject_ot_math_glyph_variant_get_type (void);
Ebrahim Byagowi5845e5c2018-02-11 12:03:33 +0330133#define HB_GOBJECT_TYPE_OT_MATH_GLYPH_VARIANT (hb_gobject_ot_math_glyph_variant_get_type ())
Behdad Esfahboda981d792018-02-10 15:17:28 -0600134
Behdad Esfahbode0939d82018-02-23 13:19:34 -0800135HB_EXTERN GType
136hb_gobject_ot_math_glyph_part_get_type (void);
Ebrahim Byagowi5845e5c2018-02-11 12:03:33 +0330137#define HB_GOBJECT_TYPE_OT_MATH_GLYPH_PART (hb_gobject_ot_math_glyph_part_get_type ())
Behdad Esfahboda981d792018-02-10 15:17:28 -0600138
Behdad Esfahbod71439a82013-08-26 20:56:58 -0400139
140HB_END_DECLS
141
142#endif /* HB_GOBJECT_H */