1 /* GObject - GLib Type, Object, Parameter and Signal Library 2 * Copyright (C) 2000-2001 Red Hat, Inc. 3 * 4 * This library is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU Lesser General Public 6 * License as published by the Free Software Foundation; either 7 * version 2.1 of the License, or (at your option) any later version. 8 * 9 * This library is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 * Lesser General Public License for more details. 13 * 14 * You should have received a copy of the GNU Lesser General 15 * Public License along with this library; if not, see <http://www.gnu.org/licenses/>. 16 */ 17 #ifndef __GLIB_TYPES_H__ 18 #define __GLIB_TYPES_H__ 19 20 #if !defined (__GLIB_GOBJECT_H_INSIDE__) && !defined (GOBJECT_COMPILATION) && !defined(GLIB_COMPILATION) 21 #error "Only <glib-object.h> can be included directly." 22 #endif 23 24 #include <glib.h> 25 26 G_BEGIN_DECLS 27 28 /* A hack necesssary to preprocess this file with g-ir-scanner */ 29 #ifdef __GI_SCANNER__ 30 typedef gsize GType; 31 #endif 32 33 /* --- GLib boxed types --- */ 34 /** 35 * G_TYPE_DATE: 36 * 37 * The #GType for #GDate. 38 */ 39 #define G_TYPE_DATE (g_date_get_type ()) 40 41 /** 42 * G_TYPE_STRV: 43 * 44 * The #GType for a boxed type holding a %NULL-terminated array of strings. 45 * 46 * The code fragments in the following example show the use of a property of 47 * type #G_TYPE_STRV with g_object_class_install_property(), g_object_set() 48 * and g_object_get(). 49 * 50 * |[ 51 * g_object_class_install_property (object_class, 52 * PROP_AUTHORS, 53 * g_param_spec_boxed ("authors", 54 * _("Authors"), 55 * _("List of authors"), 56 * G_TYPE_STRV, 57 * G_PARAM_READWRITE)); 58 * 59 * gchar *authors[] = { "Owen", "Tim", NULL }; 60 * g_object_set (obj, "authors", authors, NULL); 61 * 62 * gchar *writers[]; 63 * g_object_get (obj, "authors", &writers, NULL); 64 * /* do something with writers */ 65 * g_strfreev (writers); 66 * ]| 67 * 68 * Since: 2.4 69 */ 70 #define G_TYPE_STRV (g_strv_get_type ()) 71 72 /** 73 * G_TYPE_GSTRING: 74 * 75 * The #GType for #GString. 76 */ 77 #define G_TYPE_GSTRING (g_gstring_get_type ()) 78 79 /** 80 * G_TYPE_HASH_TABLE: 81 * 82 * The #GType for a boxed type holding a #GHashTable reference. 83 * 84 * Since: 2.10 85 */ 86 #define G_TYPE_HASH_TABLE (g_hash_table_get_type ()) 87 88 /** 89 * G_TYPE_REGEX: 90 * 91 * The #GType for a boxed type holding a #GRegex reference. 92 * 93 * Since: 2.14 94 */ 95 #define G_TYPE_REGEX (g_regex_get_type ()) 96 97 /** 98 * G_TYPE_MATCH_INFO: 99 * 100 * The #GType for a boxed type holding a #GMatchInfo reference. 101 * 102 * Since: 2.30 103 */ 104 #define G_TYPE_MATCH_INFO (g_match_info_get_type ()) 105 106 /** 107 * G_TYPE_ARRAY: 108 * 109 * The #GType for a boxed type holding a #GArray reference. 110 * 111 * Since: 2.22 112 */ 113 #define G_TYPE_ARRAY (g_array_get_type ()) 114 115 /** 116 * G_TYPE_BYTE_ARRAY: 117 * 118 * The #GType for a boxed type holding a #GByteArray reference. 119 * 120 * Since: 2.22 121 */ 122 #define G_TYPE_BYTE_ARRAY (g_byte_array_get_type ()) 123 124 /** 125 * G_TYPE_PTR_ARRAY: 126 * 127 * The #GType for a boxed type holding a #GPtrArray reference. 128 * 129 * Since: 2.22 130 */ 131 #define G_TYPE_PTR_ARRAY (g_ptr_array_get_type ()) 132 133 /** 134 * G_TYPE_BYTES: 135 * 136 * The #GType for #GBytes. 137 * 138 * Since: 2.32 139 */ 140 #define G_TYPE_BYTES (g_bytes_get_type ()) 141 142 /** 143 * G_TYPE_VARIANT_TYPE: 144 * 145 * The #GType for a boxed type holding a #GVariantType. 146 * 147 * Since: 2.24 148 */ 149 #define G_TYPE_VARIANT_TYPE (g_variant_type_get_gtype ()) 150 151 /** 152 * G_TYPE_ERROR: 153 * 154 * The #GType for a boxed type holding a #GError. 155 * 156 * Since: 2.26 157 */ 158 #define G_TYPE_ERROR (g_error_get_type ()) 159 160 /** 161 * G_TYPE_DATE_TIME: 162 * 163 * The #GType for a boxed type holding a #GDateTime. 164 * 165 * Since: 2.26 166 */ 167 #define G_TYPE_DATE_TIME (g_date_time_get_type ()) 168 169 /** 170 * G_TYPE_TIME_ZONE: 171 * 172 * The #GType for a boxed type holding a #GTimeZone. 173 * 174 * Since: 2.34 175 */ 176 #define G_TYPE_TIME_ZONE (g_time_zone_get_type ()) 177 178 /** 179 * G_TYPE_IO_CHANNEL: 180 * 181 * The #GType for #GIOChannel. 182 */ 183 #define G_TYPE_IO_CHANNEL (g_io_channel_get_type ()) 184 185 /** 186 * G_TYPE_IO_CONDITION: 187 * 188 * The #GType for #GIOCondition. 189 */ 190 #define G_TYPE_IO_CONDITION (g_io_condition_get_type ()) 191 192 /** 193 * G_TYPE_VARIANT_BUILDER: 194 * 195 * The #GType for a boxed type holding a #GVariantBuilder. 196 * 197 * Since: 2.30 198 */ 199 #define G_TYPE_VARIANT_BUILDER (g_variant_builder_get_type ()) 200 201 /** 202 * G_TYPE_VARIANT_DICT: 203 * 204 * The #GType for a boxed type holding a #GVariantDict. 205 * 206 * Since: 2.40 207 */ 208 #define G_TYPE_VARIANT_DICT (g_variant_dict_get_type ()) 209 210 /** 211 * G_TYPE_MAIN_LOOP: 212 * 213 * The #GType for a boxed type holding a #GMainLoop. 214 * 215 * Since: 2.30 216 */ 217 #define G_TYPE_MAIN_LOOP (g_main_loop_get_type ()) 218 219 /** 220 * G_TYPE_MAIN_CONTEXT: 221 * 222 * The #GType for a boxed type holding a #GMainContext. 223 * 224 * Since: 2.30 225 */ 226 #define G_TYPE_MAIN_CONTEXT (g_main_context_get_type ()) 227 228 /** 229 * G_TYPE_SOURCE: 230 * 231 * The #GType for a boxed type holding a #GSource. 232 * 233 * Since: 2.30 234 */ 235 #define G_TYPE_SOURCE (g_source_get_type ()) 236 237 /** 238 * G_TYPE_POLLFD: 239 * 240 * The #GType for a boxed type holding a #GPollFD. 241 * 242 * Since: 2.36 243 */ 244 #define G_TYPE_POLLFD (g_pollfd_get_type ()) 245 246 /** 247 * G_TYPE_MARKUP_PARSE_CONTEXT: 248 * 249 * The #GType for a boxed type holding a #GMarkupParseContext. 250 * 251 * Since: 2.36 252 */ 253 #define G_TYPE_MARKUP_PARSE_CONTEXT (g_markup_parse_context_get_type ()) 254 255 /** 256 * G_TYPE_KEY_FILE: 257 * 258 * The #GType for a boxed type holding a #GKeyFile. 259 * 260 * Since: 2.32 261 */ 262 #define G_TYPE_KEY_FILE (g_key_file_get_type ()) 263 264 /** 265 * G_TYPE_MAPPED_FILE: 266 * 267 * The #GType for a boxed type holding a #GMappedFile. 268 * 269 * Since: 2.40 270 */ 271 #define G_TYPE_MAPPED_FILE (g_mapped_file_get_type ()) 272 273 /** 274 * G_TYPE_THREAD: 275 * 276 * The #GType for a boxed type holding a #GThread. 277 * 278 * Since: 2.36 279 */ 280 #define G_TYPE_THREAD (g_thread_get_type ()) 281 282 /** 283 * G_TYPE_CHECKSUM: 284 * 285 * The #GType for a boxed type holding a #GChecksum. 286 * 287 * Since: 2.36 288 */ 289 #define G_TYPE_CHECKSUM (g_checksum_get_type ()) 290 291 /** 292 * G_TYPE_OPTION_GROUP: 293 * 294 * The #GType for a boxed type holding a #GOptionGroup. 295 * 296 * Since: 2.44 297 */ 298 #define G_TYPE_OPTION_GROUP (g_option_group_get_type ()) 299 300 /** 301 * G_TYPE_URI: 302 * 303 * The #GType for a boxed type holding a #GUri. 304 * 305 * Since: 2.66 306 */ 307 #define G_TYPE_URI (g_uri_get_type ()) 308 309 /** 310 * G_TYPE_TREE: 311 * 312 * The #GType for #GTree. 313 * 314 * Since: 2.68 315 */ 316 #define G_TYPE_TREE (g_tree_get_type ()) 317 318 GLIB_AVAILABLE_IN_ALL 319 GType g_date_get_type (void) G_GNUC_CONST; 320 GLIB_AVAILABLE_IN_ALL 321 GType g_strv_get_type (void) G_GNUC_CONST; 322 GLIB_AVAILABLE_IN_ALL 323 GType g_gstring_get_type (void) G_GNUC_CONST; 324 GLIB_AVAILABLE_IN_ALL 325 GType g_hash_table_get_type (void) G_GNUC_CONST; 326 GLIB_AVAILABLE_IN_ALL 327 GType g_array_get_type (void) G_GNUC_CONST; 328 GLIB_AVAILABLE_IN_ALL 329 GType g_byte_array_get_type (void) G_GNUC_CONST; 330 GLIB_AVAILABLE_IN_ALL 331 GType g_ptr_array_get_type (void) G_GNUC_CONST; 332 GLIB_AVAILABLE_IN_ALL 333 GType g_bytes_get_type (void) G_GNUC_CONST; 334 GLIB_AVAILABLE_IN_ALL 335 GType g_variant_type_get_gtype (void) G_GNUC_CONST; 336 GLIB_AVAILABLE_IN_ALL 337 GType g_regex_get_type (void) G_GNUC_CONST; 338 GLIB_AVAILABLE_IN_2_30 339 GType g_match_info_get_type (void) G_GNUC_CONST; 340 GLIB_AVAILABLE_IN_ALL 341 GType g_error_get_type (void) G_GNUC_CONST; 342 GLIB_AVAILABLE_IN_ALL 343 GType g_date_time_get_type (void) G_GNUC_CONST; 344 GLIB_AVAILABLE_IN_ALL 345 GType g_time_zone_get_type (void) G_GNUC_CONST; 346 GLIB_AVAILABLE_IN_ALL 347 GType g_io_channel_get_type (void) G_GNUC_CONST; 348 GLIB_AVAILABLE_IN_ALL 349 GType g_io_condition_get_type (void) G_GNUC_CONST; 350 GLIB_AVAILABLE_IN_ALL 351 GType g_variant_builder_get_type (void) G_GNUC_CONST; 352 GLIB_AVAILABLE_IN_2_40 353 GType g_variant_dict_get_type (void) G_GNUC_CONST; 354 GLIB_AVAILABLE_IN_ALL 355 GType g_key_file_get_type (void) G_GNUC_CONST; 356 GLIB_AVAILABLE_IN_2_30 357 GType g_main_loop_get_type (void) G_GNUC_CONST; 358 GLIB_AVAILABLE_IN_2_30 359 GType g_main_context_get_type (void) G_GNUC_CONST; 360 GLIB_AVAILABLE_IN_2_30 361 GType g_source_get_type (void) G_GNUC_CONST; 362 GLIB_AVAILABLE_IN_2_36 363 GType g_pollfd_get_type (void) G_GNUC_CONST; 364 GLIB_AVAILABLE_IN_2_36 365 GType g_thread_get_type (void) G_GNUC_CONST; 366 GLIB_AVAILABLE_IN_2_36 367 GType g_checksum_get_type (void) G_GNUC_CONST; 368 GLIB_AVAILABLE_IN_2_36 369 GType g_markup_parse_context_get_type (void) G_GNUC_CONST; 370 GLIB_AVAILABLE_IN_2_40 371 GType g_mapped_file_get_type (void) G_GNUC_CONST; 372 GLIB_AVAILABLE_IN_2_44 373 GType g_option_group_get_type (void) G_GNUC_CONST; 374 GLIB_AVAILABLE_IN_2_66 375 GType g_uri_get_type (void) G_GNUC_CONST; 376 GLIB_AVAILABLE_IN_2_68 377 GType g_tree_get_type (void) G_GNUC_CONST; 378 379 GLIB_DEPRECATED_FOR('G_TYPE_VARIANT') 380 GType g_variant_get_gtype (void) G_GNUC_CONST; 381 382 G_END_DECLS 383 384 #endif /* __GLIB_TYPES_H__ */ 385