1f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)/*
2f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) * Copyright © 2011  Google, Inc.
3f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) *
4f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) *  This is part of HarfBuzz, a text shaping library.
5f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) *
6f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) * Permission is hereby granted, without written agreement and without
7f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) * license or royalty fees, to use, copy, modify, and distribute this
8f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) * software and its documentation for any purpose, provided that the
9f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) * above copyright notice and the following two paragraphs appear in
10f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) * all copies of this software.
11f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) *
12f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
13f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
14f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
15f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
16f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) * DAMAGE.
17f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) *
18f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
19f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
20f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) * FITNESS FOR A PARTICULAR PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS
21f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
22f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
23f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) *
24f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) * Google Author(s): Behdad Esfahbod
25f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) */
26f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
27f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#ifndef HB_GOBJECT_H_IN
28f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#error "Include <hb-gobject.h> instead."
29f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#endif
30f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
31f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#ifndef HB_GOBJECT_STRUCTS_H
32f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#define HB_GOBJECT_STRUCTS_H
33f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
34f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#include "hb.h"
35f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
36f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#include <glib-object.h>
37f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
38f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)HB_BEGIN_DECLS
39f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
40f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
41f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)/* Object types */
42f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
43f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)GType hb_gobject_blob_get_type (void);
44f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#define HB_GOBJECT_TYPE_BLOB (hb_gobject_blob_get_type ())
45f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
46f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)GType hb_gobject_buffer_get_type (void);
47f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#define HB_GOBJECT_TYPE_BUFFER (hb_gobject_buffer_get_type ())
48f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
49f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)GType hb_gobject_face_get_type (void);
50f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#define HB_GOBJECT_TYPE_FACE (hb_gobject_face_get_type ())
51f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
52f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)GType hb_gobject_font_get_type (void);
53f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#define HB_GOBJECT_TYPE_FONT (hb_gobject_font_get_type ())
54f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
55f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)GType hb_gobject_font_funcs_get_type (void);
56f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#define HB_GOBJECT_TYPE_FONT_FUNCS (hb_gobject_font_funcs_get_type ())
57f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
58f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)GType hb_gobject_set_get_type (void);
59f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#define HB_GOBJECT_TYPE_SET (hb_gobject_set_get_type ())
60f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
61f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)GType hb_gobject_shape_plan_get_type (void);
62f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#define HB_GOBJECT_TYPE_SHAPE_PLAN (hb_gobject_shape_plan_get_type ())
63f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
64f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)GType hb_gobject_unicode_funcs_get_type (void);
65f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#define HB_GOBJECT_TYPE_UNICODE_FUNCS (hb_gobject_unicode_funcs_get_type ())
66f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
67f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)/* Value types */
68f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
69f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)GType hb_gobject_feature_get_type (void);
70f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#define HB_GOBJECT_TYPE_FEATURE (hb_gobject_feature_get_type ())
71f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
72f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)GType hb_gobject_glyph_info_get_type (void);
73f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#define HB_GOBJECT_TYPE_GLYPH_INFO (hb_gobject_glyph_info_get_type ())
74f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
75f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)GType hb_gobject_glyph_position_get_type (void);
76f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#define HB_GOBJECT_TYPE_GLYPH_POSITION (hb_gobject_glyph_position_get_type ())
77f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
78f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)GType hb_gobject_segment_properties_get_type (void);
79f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#define HB_GOBJECT_TYPE_SEGMENT_PROPERTIES (hb_gobject_segment_properties_get_type ())
80f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
81f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)GType hb_gobject_user_data_key_get_type (void);
82f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#define HB_GOBJECT_TYPE_USER_DATA_KEY (hb_gobject_user_data_key_get_type ())
83f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
84f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)/* Currently gobject-introspection doesn't understand that hb_language_t
85f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) * can be passed by-value.  As such we box it up.  May remove in the
86f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) * future.
87f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) *
88f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) *   https://bugzilla.gnome.org/show_bug.cgi?id=707656
89f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) */
90f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)GType hb_gobject_language_get_type (void);
91f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#define HB_GOBJECT_TYPE_LANGUAGE (hb_gobject_language_get_type ())
92f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
93f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)HB_END_DECLS
94f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
95f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#endif /* HB_GOBJECT_H */
96