1 /* 2 * This file is part of gtkD. 3 * 4 * gtkD is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU Lesser General Public License 6 * as published by the Free Software Foundation; either version 3 7 * of the License, or (at your option) any later version, with 8 * some exceptions, please read the COPYING file. 9 * 10 * gtkD is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU Lesser General Public License for more details. 14 * 15 * You should have received a copy of the GNU Lesser General Public License 16 * along with gtkD; if not, write to the Free Software 17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA 18 */ 19 20 // generated automatically - do not change 21 // find conversion definition on APILookup.txt 22 // implement new conversion functionalities on the wrap.utils pakage 23 24 25 module gio.c.types; 26 27 public import glib.c.types; 28 public import gobject.c.types; 29 30 31 /** 32 * Flags used when creating a #GAppInfo. 33 */ 34 public enum GAppInfoCreateFlags 35 { 36 /** 37 * No flags. 38 */ 39 NONE = 0, 40 /** 41 * Application opens in a terminal window. 42 */ 43 NEEDS_TERMINAL = 1, 44 /** 45 * Application supports URI arguments. 46 */ 47 SUPPORTS_URIS = 2, 48 /** 49 * Application supports startup notification. Since 2.26 50 */ 51 SUPPORTS_STARTUP_NOTIFICATION = 4, 52 } 53 alias GAppInfoCreateFlags AppInfoCreateFlags; 54 55 /** 56 * Flags used to define the behaviour of a #GApplication. 57 * 58 * Since: 2.28 59 */ 60 public enum GApplicationFlags 61 { 62 /** 63 * Default 64 */ 65 FLAGS_NONE = 0, 66 /** 67 * Run as a service. In this mode, registration 68 * fails if the service is already running, and the application 69 * will initially wait up to 10 seconds for an initial activation 70 * message to arrive. 71 */ 72 IS_SERVICE = 1, 73 /** 74 * Don't try to become the primary instance. 75 */ 76 IS_LAUNCHER = 2, 77 /** 78 * This application handles opening files (in 79 * the primary instance). Note that this flag only affects the default 80 * implementation of local_command_line(), and has no effect if 81 * %G_APPLICATION_HANDLES_COMMAND_LINE is given. 82 * See g_application_run() for details. 83 */ 84 HANDLES_OPEN = 4, 85 /** 86 * This application handles command line 87 * arguments (in the primary instance). Note that this flag only affect 88 * the default implementation of local_command_line(). 89 * See g_application_run() for details. 90 */ 91 HANDLES_COMMAND_LINE = 8, 92 /** 93 * Send the environment of the 94 * launching process to the primary instance. Set this flag if your 95 * application is expected to behave differently depending on certain 96 * environment variables. For instance, an editor might be expected 97 * to use the `GIT_COMMITTER_NAME` environment variable 98 * when editing a git commit message. The environment is available 99 * to the #GApplication::command-line signal handler, via 100 * g_application_command_line_getenv(). 101 */ 102 SEND_ENVIRONMENT = 16, 103 /** 104 * Make no attempts to do any of the typical 105 * single-instance application negotiation, even if the application 106 * ID is given. The application neither attempts to become the 107 * owner of the application ID nor does it check if an existing 108 * owner already exists. Everything occurs in the local process. 109 * Since: 2.30. 110 */ 111 NON_UNIQUE = 32, 112 /** 113 * Allow users to override the 114 * application ID from the command line with `--gapplication-app-id`. 115 * Since: 2.48 116 */ 117 CAN_OVERRIDE_APP_ID = 64, 118 /** 119 * Allow another instance to take over 120 * the bus name. Since: 2.60 121 */ 122 ALLOW_REPLACEMENT = 128, 123 /** 124 * Take over from another instance. This flag is 125 * usually set by passing `--gapplication-replace` on the commandline. 126 * Since: 2.60 127 */ 128 REPLACE = 256, 129 } 130 alias GApplicationFlags ApplicationFlags; 131 132 /** 133 * #GAskPasswordFlags are used to request specific information from the 134 * user, or to notify the user of their choices in an authentication 135 * situation. 136 */ 137 public enum GAskPasswordFlags 138 { 139 /** 140 * operation requires a password. 141 */ 142 NEED_PASSWORD = 1, 143 /** 144 * operation requires a username. 145 */ 146 NEED_USERNAME = 2, 147 /** 148 * operation requires a domain. 149 */ 150 NEED_DOMAIN = 4, 151 /** 152 * operation supports saving settings. 153 */ 154 SAVING_SUPPORTED = 8, 155 /** 156 * operation supports anonymous users. 157 */ 158 ANONYMOUS_SUPPORTED = 16, 159 /** 160 * operation takes TCRYPT parameters (Since: 2.58) 161 */ 162 TCRYPT = 32, 163 } 164 alias GAskPasswordFlags AskPasswordFlags; 165 166 /** 167 * Flags used in g_bus_own_name(). 168 * 169 * Since: 2.26 170 */ 171 public enum GBusNameOwnerFlags 172 { 173 /** 174 * No flags set. 175 */ 176 NONE = 0, 177 /** 178 * Allow another message bus connection to claim the name. 179 */ 180 ALLOW_REPLACEMENT = 1, 181 /** 182 * If another message bus connection owns the name and have 183 * specified #G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT, then take the name from the other connection. 184 */ 185 REPLACE = 2, 186 /** 187 * If another message bus connection owns the name, immediately 188 * return an error from g_bus_own_name() rather than entering the waiting queue for that name. (Since 2.54) 189 */ 190 DO_NOT_QUEUE = 4, 191 } 192 alias GBusNameOwnerFlags BusNameOwnerFlags; 193 194 /** 195 * Flags used in g_bus_watch_name(). 196 * 197 * Since: 2.26 198 */ 199 public enum GBusNameWatcherFlags 200 { 201 /** 202 * No flags set. 203 */ 204 NONE = 0, 205 /** 206 * If no-one owns the name when 207 * beginning to watch the name, ask the bus to launch an owner for the 208 * name. 209 */ 210 AUTO_START = 1, 211 } 212 alias GBusNameWatcherFlags BusNameWatcherFlags; 213 214 /** 215 * An enumeration for well-known message buses. 216 * 217 * Since: 2.26 218 */ 219 public enum GBusType 220 { 221 /** 222 * An alias for the message bus that activated the process, if any. 223 */ 224 STARTER = -1, 225 /** 226 * Not a message bus. 227 */ 228 NONE = 0, 229 /** 230 * The system-wide message bus. 231 */ 232 SYSTEM = 1, 233 /** 234 * The login session message bus. 235 */ 236 SESSION = 2, 237 } 238 alias GBusType BusType; 239 240 /** 241 * Flags used when calling a g_converter_convert(). 242 * 243 * Since: 2.24 244 */ 245 public enum GConverterFlags 246 { 247 /** 248 * No flags. 249 */ 250 NONE = 0, 251 /** 252 * At end of input data 253 */ 254 INPUT_AT_END = 1, 255 /** 256 * Flush data 257 */ 258 FLUSH = 2, 259 } 260 alias GConverterFlags ConverterFlags; 261 262 /** 263 * Results returned from g_converter_convert(). 264 * 265 * Since: 2.24 266 */ 267 public enum GConverterResult 268 { 269 /** 270 * There was an error during conversion. 271 */ 272 ERROR = 0, 273 /** 274 * Some data was consumed or produced 275 */ 276 CONVERTED = 1, 277 /** 278 * The conversion is finished 279 */ 280 FINISHED = 2, 281 /** 282 * Flushing is finished 283 */ 284 FLUSHED = 3, 285 } 286 alias GConverterResult ConverterResult; 287 288 /** 289 * Enumeration describing different kinds of native credential types. 290 * 291 * Since: 2.26 292 */ 293 public enum GCredentialsType 294 { 295 /** 296 * Indicates an invalid native credential type. 297 */ 298 INVALID = 0, 299 /** 300 * The native credentials type is a `struct ucred`. 301 */ 302 LINUX_UCRED = 1, 303 /** 304 * The native credentials type is a `struct cmsgcred`. 305 */ 306 FREEBSD_CMSGCRED = 2, 307 /** 308 * The native credentials type is a `struct sockpeercred`. Added in 2.30. 309 */ 310 OPENBSD_SOCKPEERCRED = 3, 311 /** 312 * The native credentials type is a `ucred_t`. Added in 2.40. 313 */ 314 SOLARIS_UCRED = 4, 315 /** 316 * The native credentials type is a `struct unpcbid`. Added in 2.42. 317 */ 318 NETBSD_UNPCBID = 5, 319 /** 320 * The native credentials type is a `struct xucred`. Added in 2.66. 321 */ 322 APPLE_XUCRED = 6, 323 } 324 alias GCredentialsType CredentialsType; 325 326 /** 327 * Flags used in g_dbus_connection_call() and similar APIs. 328 * 329 * Since: 2.26 330 */ 331 public enum GDBusCallFlags 332 { 333 /** 334 * No flags set. 335 */ 336 NONE = 0, 337 /** 338 * The bus must not launch 339 * an owner for the destination name in response to this method 340 * invocation. 341 */ 342 NO_AUTO_START = 1, 343 /** 344 * the caller is prepared to 345 * wait for interactive authorization. Since 2.46. 346 */ 347 ALLOW_INTERACTIVE_AUTHORIZATION = 2, 348 } 349 alias GDBusCallFlags DBusCallFlags; 350 351 /** 352 * Capabilities negotiated with the remote peer. 353 * 354 * Since: 2.26 355 */ 356 public enum GDBusCapabilityFlags 357 { 358 /** 359 * No flags set. 360 */ 361 NONE = 0, 362 /** 363 * The connection 364 * supports exchanging UNIX file descriptors with the remote peer. 365 */ 366 UNIX_FD_PASSING = 1, 367 } 368 alias GDBusCapabilityFlags DBusCapabilityFlags; 369 370 /** 371 * Flags used when creating a new #GDBusConnection. 372 * 373 * Since: 2.26 374 */ 375 public enum GDBusConnectionFlags 376 { 377 /** 378 * No flags set. 379 */ 380 NONE = 0, 381 /** 382 * Perform authentication against server. 383 */ 384 AUTHENTICATION_CLIENT = 1, 385 /** 386 * Perform authentication against client. 387 */ 388 AUTHENTICATION_SERVER = 2, 389 /** 390 * When 391 * authenticating as a server, allow the anonymous authentication 392 * method. 393 */ 394 AUTHENTICATION_ALLOW_ANONYMOUS = 4, 395 /** 396 * Pass this flag if connecting to a peer that is a 397 * message bus. This means that the Hello() method will be invoked as part of the connection setup. 398 */ 399 MESSAGE_BUS_CONNECTION = 8, 400 /** 401 * If set, processing of D-Bus messages is 402 * delayed until g_dbus_connection_start_message_processing() is called. 403 */ 404 DELAY_MESSAGE_PROCESSING = 16, 405 /** 406 * When authenticating 407 * as a server, require the UID of the peer to be the same as the UID of the server. (Since: 2.68) 408 */ 409 AUTHENTICATION_REQUIRE_SAME_USER = 32, 410 } 411 alias GDBusConnectionFlags DBusConnectionFlags; 412 413 /** 414 * Error codes for the %G_DBUS_ERROR error domain. 415 * 416 * Since: 2.26 417 */ 418 public enum GDBusError 419 { 420 /** 421 * A generic error; "something went wrong" - see the error message for 422 * more. 423 */ 424 FAILED = 0, 425 /** 426 * There was not enough memory to complete an operation. 427 */ 428 NO_MEMORY = 1, 429 /** 430 * The bus doesn't know how to launch a service to supply the bus name 431 * you wanted. 432 */ 433 SERVICE_UNKNOWN = 2, 434 /** 435 * The bus name you referenced doesn't exist (i.e. no application owns 436 * it). 437 */ 438 NAME_HAS_NO_OWNER = 3, 439 /** 440 * No reply to a message expecting one, usually means a timeout occurred. 441 */ 442 NO_REPLY = 4, 443 /** 444 * Something went wrong reading or writing to a socket, for example. 445 */ 446 IO_ERROR = 5, 447 /** 448 * A D-Bus bus address was malformed. 449 */ 450 BAD_ADDRESS = 6, 451 /** 452 * Requested operation isn't supported (like ENOSYS on UNIX). 453 */ 454 NOT_SUPPORTED = 7, 455 /** 456 * Some limited resource is exhausted. 457 */ 458 LIMITS_EXCEEDED = 8, 459 /** 460 * Security restrictions don't allow doing what you're trying to do. 461 */ 462 ACCESS_DENIED = 9, 463 /** 464 * Authentication didn't work. 465 */ 466 AUTH_FAILED = 10, 467 /** 468 * Unable to connect to server (probably caused by ECONNREFUSED on a 469 * socket). 470 */ 471 NO_SERVER = 11, 472 /** 473 * Certain timeout errors, possibly ETIMEDOUT on a socket. Note that 474 * %G_DBUS_ERROR_NO_REPLY is used for message reply timeouts. Warning: 475 * this is confusingly-named given that %G_DBUS_ERROR_TIMED_OUT also 476 * exists. We can't fix it for compatibility reasons so just be 477 * careful. 478 */ 479 TIMEOUT = 12, 480 /** 481 * No network access (probably ENETUNREACH on a socket). 482 */ 483 NO_NETWORK = 13, 484 /** 485 * Can't bind a socket since its address is in use (i.e. EADDRINUSE). 486 */ 487 ADDRESS_IN_USE = 14, 488 /** 489 * The connection is disconnected and you're trying to use it. 490 */ 491 DISCONNECTED = 15, 492 /** 493 * Invalid arguments passed to a method call. 494 */ 495 INVALID_ARGS = 16, 496 /** 497 * Missing file. 498 */ 499 FILE_NOT_FOUND = 17, 500 /** 501 * Existing file and the operation you're using does not silently overwrite. 502 */ 503 FILE_EXISTS = 18, 504 /** 505 * Method name you invoked isn't known by the object you invoked it on. 506 */ 507 UNKNOWN_METHOD = 19, 508 /** 509 * Certain timeout errors, e.g. while starting a service. Warning: this is 510 * confusingly-named given that %G_DBUS_ERROR_TIMEOUT also exists. We 511 * can't fix it for compatibility reasons so just be careful. 512 */ 513 TIMED_OUT = 20, 514 /** 515 * Tried to remove or modify a match rule that didn't exist. 516 */ 517 MATCH_RULE_NOT_FOUND = 21, 518 /** 519 * The match rule isn't syntactically valid. 520 */ 521 MATCH_RULE_INVALID = 22, 522 /** 523 * While starting a new process, the exec() call failed. 524 */ 525 SPAWN_EXEC_FAILED = 23, 526 /** 527 * While starting a new process, the fork() call failed. 528 */ 529 SPAWN_FORK_FAILED = 24, 530 /** 531 * While starting a new process, the child exited with a status code. 532 */ 533 SPAWN_CHILD_EXITED = 25, 534 /** 535 * While starting a new process, the child exited on a signal. 536 */ 537 SPAWN_CHILD_SIGNALED = 26, 538 /** 539 * While starting a new process, something went wrong. 540 */ 541 SPAWN_FAILED = 27, 542 /** 543 * We failed to setup the environment correctly. 544 */ 545 SPAWN_SETUP_FAILED = 28, 546 /** 547 * We failed to setup the config parser correctly. 548 */ 549 SPAWN_CONFIG_INVALID = 29, 550 /** 551 * Bus name was not valid. 552 */ 553 SPAWN_SERVICE_INVALID = 30, 554 /** 555 * Service file not found in system-services directory. 556 */ 557 SPAWN_SERVICE_NOT_FOUND = 31, 558 /** 559 * Permissions are incorrect on the setuid helper. 560 */ 561 SPAWN_PERMISSIONS_INVALID = 32, 562 /** 563 * Service file invalid (Name, User or Exec missing). 564 */ 565 SPAWN_FILE_INVALID = 33, 566 /** 567 * Tried to get a UNIX process ID and it wasn't available. 568 */ 569 SPAWN_NO_MEMORY = 34, 570 /** 571 * Tried to get a UNIX process ID and it wasn't available. 572 */ 573 UNIX_PROCESS_ID_UNKNOWN = 35, 574 /** 575 * A type signature is not valid. 576 */ 577 INVALID_SIGNATURE = 36, 578 /** 579 * A file contains invalid syntax or is otherwise broken. 580 */ 581 INVALID_FILE_CONTENT = 37, 582 /** 583 * Asked for SELinux security context and it wasn't available. 584 */ 585 SELINUX_SECURITY_CONTEXT_UNKNOWN = 38, 586 /** 587 * Asked for ADT audit data and it wasn't available. 588 */ 589 ADT_AUDIT_DATA_UNKNOWN = 39, 590 /** 591 * There's already an object with the requested object path. 592 */ 593 OBJECT_PATH_IN_USE = 40, 594 /** 595 * Object you invoked a method on isn't known. Since 2.42 596 */ 597 UNKNOWN_OBJECT = 41, 598 /** 599 * Interface you invoked a method on isn't known by the object. Since 2.42 600 */ 601 UNKNOWN_INTERFACE = 42, 602 /** 603 * Property you tried to access isn't known by the object. Since 2.42 604 */ 605 UNKNOWN_PROPERTY = 43, 606 /** 607 * Property you tried to set is read-only. Since 2.42 608 */ 609 PROPERTY_READ_ONLY = 44, 610 } 611 alias GDBusError DBusError; 612 613 /** 614 * Flags describing the behavior of a #GDBusInterfaceSkeleton instance. 615 * 616 * Since: 2.30 617 */ 618 public enum GDBusInterfaceSkeletonFlags 619 { 620 /** 621 * No flags set. 622 */ 623 NONE = 0, 624 /** 625 * Each method invocation is handled in 626 * a thread dedicated to the invocation. This means that the method implementation can use blocking IO 627 * without blocking any other part of the process. It also means that the method implementation must 628 * use locking to access data structures used by other threads. 629 */ 630 HANDLE_METHOD_INVOCATIONS_IN_THREAD = 1, 631 } 632 alias GDBusInterfaceSkeletonFlags DBusInterfaceSkeletonFlags; 633 634 /** 635 * Enumeration used to describe the byte order of a D-Bus message. 636 * 637 * Since: 2.26 638 */ 639 public enum GDBusMessageByteOrder 640 { 641 /** 642 * The byte order is big endian. 643 */ 644 BIG_ENDIAN = 66, 645 /** 646 * The byte order is little endian. 647 */ 648 LITTLE_ENDIAN = 108, 649 } 650 alias GDBusMessageByteOrder DBusMessageByteOrder; 651 652 /** 653 * Message flags used in #GDBusMessage. 654 * 655 * Since: 2.26 656 */ 657 public enum GDBusMessageFlags 658 { 659 /** 660 * No flags set. 661 */ 662 NONE = 0, 663 /** 664 * A reply is not expected. 665 */ 666 NO_REPLY_EXPECTED = 1, 667 /** 668 * The bus must not launch an 669 * owner for the destination name in response to this message. 670 */ 671 NO_AUTO_START = 2, 672 /** 673 * If set on a method 674 * call, this flag means that the caller is prepared to wait for interactive 675 * authorization. Since 2.46. 676 */ 677 ALLOW_INTERACTIVE_AUTHORIZATION = 4, 678 } 679 alias GDBusMessageFlags DBusMessageFlags; 680 681 /** 682 * Header fields used in #GDBusMessage. 683 * 684 * Since: 2.26 685 */ 686 public enum GDBusMessageHeaderField 687 { 688 /** 689 * Not a valid header field. 690 */ 691 INVALID = 0, 692 /** 693 * The object path. 694 */ 695 PATH = 1, 696 /** 697 * The interface name. 698 */ 699 INTERFACE = 2, 700 /** 701 * The method or signal name. 702 */ 703 MEMBER = 3, 704 /** 705 * The name of the error that occurred. 706 */ 707 ERROR_NAME = 4, 708 /** 709 * The serial number the message is a reply to. 710 */ 711 REPLY_SERIAL = 5, 712 /** 713 * The name the message is intended for. 714 */ 715 DESTINATION = 6, 716 /** 717 * Unique name of the sender of the message (filled in by the bus). 718 */ 719 SENDER = 7, 720 /** 721 * The signature of the message body. 722 */ 723 SIGNATURE = 8, 724 /** 725 * The number of UNIX file descriptors that accompany the message. 726 */ 727 NUM_UNIX_FDS = 9, 728 } 729 alias GDBusMessageHeaderField DBusMessageHeaderField; 730 731 /** 732 * Message types used in #GDBusMessage. 733 * 734 * Since: 2.26 735 */ 736 public enum GDBusMessageType 737 { 738 /** 739 * Message is of invalid type. 740 */ 741 INVALID = 0, 742 /** 743 * Method call. 744 */ 745 METHOD_CALL = 1, 746 /** 747 * Method reply. 748 */ 749 METHOD_RETURN = 2, 750 /** 751 * Error reply. 752 */ 753 ERROR = 3, 754 /** 755 * Signal emission. 756 */ 757 SIGNAL = 4, 758 } 759 alias GDBusMessageType DBusMessageType; 760 761 /** 762 * Flags used when constructing a #GDBusObjectManagerClient. 763 * 764 * Since: 2.30 765 */ 766 public enum GDBusObjectManagerClientFlags 767 { 768 /** 769 * No flags set. 770 */ 771 NONE = 0, 772 /** 773 * If not set and the 774 * manager is for a well-known name, then request the bus to launch 775 * an owner for the name if no-one owns the name. This flag can only 776 * be used in managers for well-known names. 777 */ 778 DO_NOT_AUTO_START = 1, 779 } 780 alias GDBusObjectManagerClientFlags DBusObjectManagerClientFlags; 781 782 /** 783 * Flags describing the access control of a D-Bus property. 784 * 785 * Since: 2.26 786 */ 787 public enum GDBusPropertyInfoFlags 788 { 789 /** 790 * No flags set. 791 */ 792 NONE = 0, 793 /** 794 * Property is readable. 795 */ 796 READABLE = 1, 797 /** 798 * Property is writable. 799 */ 800 WRITABLE = 2, 801 } 802 alias GDBusPropertyInfoFlags DBusPropertyInfoFlags; 803 804 /** 805 * Flags used when constructing an instance of a #GDBusProxy derived class. 806 * 807 * Since: 2.26 808 */ 809 public enum GDBusProxyFlags 810 { 811 /** 812 * No flags set. 813 */ 814 NONE = 0, 815 /** 816 * Don't load properties. 817 */ 818 DO_NOT_LOAD_PROPERTIES = 1, 819 /** 820 * Don't connect to signals on the remote object. 821 */ 822 DO_NOT_CONNECT_SIGNALS = 2, 823 /** 824 * If the proxy is for a well-known name, 825 * do not ask the bus to launch an owner during proxy initialization or a method call. 826 * This flag is only meaningful in proxies for well-known names. 827 */ 828 DO_NOT_AUTO_START = 4, 829 /** 830 * If set, the property value for any __invalidated property__ will be (asynchronously) retrieved upon receiving the [`PropertiesChanged`](http://dbus.freedesktop.org/doc/dbus-specification.html#standard-interfaces-properties) D-Bus signal and the property will not cause emission of the #GDBusProxy::g-properties-changed signal. When the value is received the #GDBusProxy::g-properties-changed signal is emitted for the property along with the retrieved value. Since 2.32. 831 */ 832 GET_INVALIDATED_PROPERTIES = 8, 833 /** 834 * If the proxy is for a well-known name, 835 * do not ask the bus to launch an owner during proxy initialization, but allow it to be 836 * autostarted by a method call. This flag is only meaningful in proxies for well-known names, 837 * and only if %G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START is not also specified. 838 */ 839 DO_NOT_AUTO_START_AT_CONSTRUCTION = 16, 840 } 841 alias GDBusProxyFlags DBusProxyFlags; 842 843 /** 844 * Flags used when sending #GDBusMessages on a #GDBusConnection. 845 * 846 * Since: 2.26 847 */ 848 public enum GDBusSendMessageFlags 849 { 850 /** 851 * No flags set. 852 */ 853 NONE = 0, 854 /** 855 * Do not automatically 856 * assign a serial number from the #GDBusConnection object when 857 * sending a message. 858 */ 859 PRESERVE_SERIAL = 1, 860 } 861 alias GDBusSendMessageFlags DBusSendMessageFlags; 862 863 /** 864 * Flags used when creating a #GDBusServer. 865 * 866 * Since: 2.26 867 */ 868 public enum GDBusServerFlags 869 { 870 /** 871 * No flags set. 872 */ 873 NONE = 0, 874 /** 875 * All #GDBusServer::new-connection 876 * signals will run in separated dedicated threads (see signal for 877 * details). 878 */ 879 RUN_IN_THREAD = 1, 880 /** 881 * Allow the anonymous 882 * authentication method. 883 */ 884 AUTHENTICATION_ALLOW_ANONYMOUS = 2, 885 /** 886 * Require the UID of the 887 * peer to be the same as the UID of the server when authenticating. (Since: 2.68) 888 */ 889 AUTHENTICATION_REQUIRE_SAME_USER = 4, 890 } 891 alias GDBusServerFlags DBusServerFlags; 892 893 /** 894 * Flags used when subscribing to signals via g_dbus_connection_signal_subscribe(). 895 * 896 * Since: 2.26 897 */ 898 public enum GDBusSignalFlags 899 { 900 /** 901 * No flags set. 902 */ 903 NONE = 0, 904 /** 905 * Don't actually send the AddMatch 906 * D-Bus call for this signal subscription. This gives you more control 907 * over which match rules you add (but you must add them manually). 908 */ 909 NO_MATCH_RULE = 1, 910 /** 911 * Match first arguments that 912 * contain a bus or interface name with the given namespace. 913 */ 914 MATCH_ARG0_NAMESPACE = 2, 915 /** 916 * Match first arguments that 917 * contain an object path that is either equivalent to the given path, 918 * or one of the paths is a subpath of the other. 919 */ 920 MATCH_ARG0_PATH = 4, 921 } 922 alias GDBusSignalFlags DBusSignalFlags; 923 924 /** 925 * Flags passed to g_dbus_connection_register_subtree(). 926 * 927 * Since: 2.26 928 */ 929 public enum GDBusSubtreeFlags 930 { 931 /** 932 * No flags set. 933 */ 934 NONE = 0, 935 /** 936 * Method calls to objects not in the enumerated range 937 * will still be dispatched. This is useful if you want 938 * to dynamically spawn objects in the subtree. 939 */ 940 DISPATCH_TO_UNENUMERATED_NODES = 1, 941 } 942 alias GDBusSubtreeFlags DBusSubtreeFlags; 943 944 /** 945 * #GDataStreamByteOrder is used to ensure proper endianness of streaming data sources 946 * across various machine architectures. 947 */ 948 public enum GDataStreamByteOrder 949 { 950 /** 951 * Selects Big Endian byte order. 952 */ 953 BIG_ENDIAN = 0, 954 /** 955 * Selects Little Endian byte order. 956 */ 957 LITTLE_ENDIAN = 1, 958 /** 959 * Selects endianness based on host machine's architecture. 960 */ 961 HOST_ENDIAN = 2, 962 } 963 alias GDataStreamByteOrder DataStreamByteOrder; 964 965 /** 966 * #GDataStreamNewlineType is used when checking for or setting the line endings for a given file. 967 */ 968 public enum GDataStreamNewlineType 969 { 970 /** 971 * Selects "LF" line endings, common on most modern UNIX platforms. 972 */ 973 LF = 0, 974 /** 975 * Selects "CR" line endings. 976 */ 977 CR = 1, 978 /** 979 * Selects "CR, LF" line ending, common on Microsoft Windows. 980 */ 981 CR_LF = 2, 982 /** 983 * Automatically try to handle any line ending type. 984 */ 985 ANY = 3, 986 } 987 alias GDataStreamNewlineType DataStreamNewlineType; 988 989 /** 990 * Flags used when starting a drive. 991 * 992 * Since: 2.22 993 */ 994 public enum GDriveStartFlags 995 { 996 /** 997 * No flags set. 998 */ 999 NONE = 0, 1000 } 1001 alias GDriveStartFlags DriveStartFlags; 1002 1003 /** 1004 * Enumeration describing how a drive can be started/stopped. 1005 * 1006 * Since: 2.22 1007 */ 1008 public enum GDriveStartStopType 1009 { 1010 /** 1011 * Unknown or drive doesn't support 1012 * start/stop. 1013 */ 1014 UNKNOWN = 0, 1015 /** 1016 * The stop method will physically 1017 * shut down the drive and e.g. power down the port the drive is 1018 * attached to. 1019 */ 1020 SHUTDOWN = 1, 1021 /** 1022 * The start/stop methods are used 1023 * for connecting/disconnect to the drive over the network. 1024 */ 1025 NETWORK = 2, 1026 /** 1027 * The start/stop methods will 1028 * assemble/disassemble a virtual drive from several physical 1029 * drives. 1030 */ 1031 MULTIDISK = 3, 1032 /** 1033 * The start/stop methods will 1034 * unlock/lock the disk (for example using the ATA <quote>SECURITY 1035 * UNLOCK DEVICE</quote> command) 1036 */ 1037 PASSWORD = 4, 1038 } 1039 alias GDriveStartStopType DriveStartStopType; 1040 1041 /** 1042 * GEmblemOrigin is used to add information about the origin of the emblem 1043 * to #GEmblem. 1044 * 1045 * Since: 2.18 1046 */ 1047 public enum GEmblemOrigin 1048 { 1049 /** 1050 * Emblem of unknown origin 1051 */ 1052 UNKNOWN = 0, 1053 /** 1054 * Emblem adds device-specific information 1055 */ 1056 DEVICE = 1, 1057 /** 1058 * Emblem depicts live metadata, such as "readonly" 1059 */ 1060 LIVEMETADATA = 2, 1061 /** 1062 * Emblem comes from a user-defined tag, e.g. set by nautilus (in the future) 1063 */ 1064 TAG = 3, 1065 } 1066 alias GEmblemOrigin EmblemOrigin; 1067 1068 /** 1069 * Flags specifying the behaviour of an attribute. 1070 */ 1071 public enum GFileAttributeInfoFlags 1072 { 1073 /** 1074 * no flags set. 1075 */ 1076 NONE = 0, 1077 /** 1078 * copy the attribute values when the file is copied. 1079 */ 1080 COPY_WITH_FILE = 1, 1081 /** 1082 * copy the attribute values when the file is moved. 1083 */ 1084 COPY_WHEN_MOVED = 2, 1085 } 1086 alias GFileAttributeInfoFlags FileAttributeInfoFlags; 1087 1088 /** 1089 * Used by g_file_set_attributes_from_info() when setting file attributes. 1090 */ 1091 public enum GFileAttributeStatus 1092 { 1093 /** 1094 * Attribute value is unset (empty). 1095 */ 1096 UNSET = 0, 1097 /** 1098 * Attribute value is set. 1099 */ 1100 SET = 1, 1101 /** 1102 * Indicates an error in setting the value. 1103 */ 1104 ERROR_SETTING = 2, 1105 } 1106 alias GFileAttributeStatus FileAttributeStatus; 1107 1108 /** 1109 * The data types for file attributes. 1110 */ 1111 public enum GFileAttributeType 1112 { 1113 /** 1114 * indicates an invalid or uninitialized type. 1115 */ 1116 INVALID = 0, 1117 /** 1118 * a null terminated UTF8 string. 1119 */ 1120 STRING = 1, 1121 /** 1122 * a zero terminated string of non-zero bytes. 1123 */ 1124 BYTE_STRING = 2, 1125 /** 1126 * a boolean value. 1127 */ 1128 BOOLEAN = 3, 1129 /** 1130 * an unsigned 4-byte/32-bit integer. 1131 */ 1132 UINT32 = 4, 1133 /** 1134 * a signed 4-byte/32-bit integer. 1135 */ 1136 INT32 = 5, 1137 /** 1138 * an unsigned 8-byte/64-bit integer. 1139 */ 1140 UINT64 = 6, 1141 /** 1142 * a signed 8-byte/64-bit integer. 1143 */ 1144 INT64 = 7, 1145 /** 1146 * a #GObject. 1147 */ 1148 OBJECT = 8, 1149 /** 1150 * a %NULL terminated char **. Since 2.22 1151 */ 1152 STRINGV = 9, 1153 } 1154 alias GFileAttributeType FileAttributeType; 1155 1156 /** 1157 * Flags used when copying or moving files. 1158 */ 1159 public enum GFileCopyFlags 1160 { 1161 /** 1162 * No flags set. 1163 */ 1164 NONE = 0, 1165 /** 1166 * Overwrite any existing files 1167 */ 1168 OVERWRITE = 1, 1169 /** 1170 * Make a backup of any existing files. 1171 */ 1172 BACKUP = 2, 1173 /** 1174 * Don't follow symlinks. 1175 */ 1176 NOFOLLOW_SYMLINKS = 4, 1177 /** 1178 * Copy all file metadata instead of just default set used for copy (see #GFileInfo). 1179 */ 1180 ALL_METADATA = 8, 1181 /** 1182 * Don't use copy and delete fallback if native move not supported. 1183 */ 1184 NO_FALLBACK_FOR_MOVE = 16, 1185 /** 1186 * Leaves target file with default perms, instead of setting the source file perms. 1187 */ 1188 TARGET_DEFAULT_PERMS = 32, 1189 } 1190 alias GFileCopyFlags FileCopyFlags; 1191 1192 /** 1193 * Flags used when an operation may create a file. 1194 */ 1195 public enum GFileCreateFlags 1196 { 1197 /** 1198 * No flags set. 1199 */ 1200 NONE = 0, 1201 /** 1202 * Create a file that can only be 1203 * accessed by the current user. 1204 */ 1205 PRIVATE = 1, 1206 /** 1207 * Replace the destination 1208 * as if it didn't exist before. Don't try to keep any old 1209 * permissions, replace instead of following links. This 1210 * is generally useful if you're doing a "copy over" 1211 * rather than a "save new version of" replace operation. 1212 * You can think of it as "unlink destination" before 1213 * writing to it, although the implementation may not 1214 * be exactly like that. This flag can only be used with 1215 * g_file_replace() and its variants, including g_file_replace_contents(). 1216 * Since 2.20 1217 */ 1218 REPLACE_DESTINATION = 2, 1219 } 1220 alias GFileCreateFlags FileCreateFlags; 1221 1222 /** 1223 * Flags that can be used with g_file_measure_disk_usage(). 1224 * 1225 * Since: 2.38 1226 */ 1227 public enum GFileMeasureFlags 1228 { 1229 /** 1230 * No flags set. 1231 */ 1232 NONE = 0, 1233 /** 1234 * Report any error encountered 1235 * while traversing the directory tree. Normally errors are only 1236 * reported for the toplevel file. 1237 */ 1238 REPORT_ANY_ERROR = 2, 1239 /** 1240 * Tally usage based on apparent file 1241 * sizes. Normally, the block-size is used, if available, as this is a 1242 * more accurate representation of disk space used. 1243 * Compare with `du --apparent-size`. 1244 */ 1245 APPARENT_SIZE = 4, 1246 /** 1247 * Do not cross mount point boundaries. 1248 * Compare with `du -x`. 1249 */ 1250 NO_XDEV = 8, 1251 } 1252 alias GFileMeasureFlags FileMeasureFlags; 1253 1254 /** 1255 * Specifies what type of event a monitor event is. 1256 */ 1257 public enum GFileMonitorEvent 1258 { 1259 /** 1260 * a file changed. 1261 */ 1262 CHANGED = 0, 1263 /** 1264 * a hint that this was probably the last change in a set of changes. 1265 */ 1266 CHANGES_DONE_HINT = 1, 1267 /** 1268 * a file was deleted. 1269 */ 1270 DELETED = 2, 1271 /** 1272 * a file was created. 1273 */ 1274 CREATED = 3, 1275 /** 1276 * a file attribute was changed. 1277 */ 1278 ATTRIBUTE_CHANGED = 4, 1279 /** 1280 * the file location will soon be unmounted. 1281 */ 1282 PRE_UNMOUNT = 5, 1283 /** 1284 * the file location was unmounted. 1285 */ 1286 UNMOUNTED = 6, 1287 /** 1288 * the file was moved -- only sent if the 1289 * (deprecated) %G_FILE_MONITOR_SEND_MOVED flag is set 1290 */ 1291 MOVED = 7, 1292 /** 1293 * the file was renamed within the 1294 * current directory -- only sent if the %G_FILE_MONITOR_WATCH_MOVES 1295 * flag is set. Since: 2.46. 1296 */ 1297 RENAMED = 8, 1298 /** 1299 * the file was moved into the 1300 * monitored directory from another location -- only sent if the 1301 * %G_FILE_MONITOR_WATCH_MOVES flag is set. Since: 2.46. 1302 */ 1303 MOVED_IN = 9, 1304 /** 1305 * the file was moved out of the 1306 * monitored directory to another location -- only sent if the 1307 * %G_FILE_MONITOR_WATCH_MOVES flag is set. Since: 2.46 1308 */ 1309 MOVED_OUT = 10, 1310 } 1311 alias GFileMonitorEvent FileMonitorEvent; 1312 1313 /** 1314 * Flags used to set what a #GFileMonitor will watch for. 1315 */ 1316 public enum GFileMonitorFlags 1317 { 1318 /** 1319 * No flags set. 1320 */ 1321 NONE = 0, 1322 /** 1323 * Watch for mount events. 1324 */ 1325 WATCH_MOUNTS = 1, 1326 /** 1327 * Pair DELETED and CREATED events caused 1328 * by file renames (moves) and send a single G_FILE_MONITOR_EVENT_MOVED 1329 * event instead (NB: not supported on all backends; the default 1330 * behaviour -without specifying this flag- is to send single DELETED 1331 * and CREATED events). Deprecated since 2.46: use 1332 * %G_FILE_MONITOR_WATCH_MOVES instead. 1333 */ 1334 SEND_MOVED = 2, 1335 /** 1336 * Watch for changes to the file made 1337 * via another hard link. Since 2.36. 1338 */ 1339 WATCH_HARD_LINKS = 4, 1340 /** 1341 * Watch for rename operations on a 1342 * monitored directory. This causes %G_FILE_MONITOR_EVENT_RENAMED, 1343 * %G_FILE_MONITOR_EVENT_MOVED_IN and %G_FILE_MONITOR_EVENT_MOVED_OUT 1344 * events to be emitted when possible. Since: 2.46. 1345 */ 1346 WATCH_MOVES = 8, 1347 } 1348 alias GFileMonitorFlags FileMonitorFlags; 1349 1350 /** 1351 * Flags used when querying a #GFileInfo. 1352 */ 1353 public enum GFileQueryInfoFlags 1354 { 1355 /** 1356 * No flags set. 1357 */ 1358 NONE = 0, 1359 /** 1360 * Don't follow symlinks. 1361 */ 1362 NOFOLLOW_SYMLINKS = 1, 1363 } 1364 alias GFileQueryInfoFlags FileQueryInfoFlags; 1365 1366 /** 1367 * Indicates the file's on-disk type. 1368 * 1369 * On Windows systems a file will never have %G_FILE_TYPE_SYMBOLIC_LINK type; 1370 * use #GFileInfo and %G_FILE_ATTRIBUTE_STANDARD_IS_SYMLINK to determine 1371 * whether a file is a symlink or not. This is due to the fact that NTFS does 1372 * not have a single filesystem object type for symbolic links - it has 1373 * files that symlink to files, and directories that symlink to directories. 1374 * #GFileType enumeration cannot precisely represent this important distinction, 1375 * which is why all Windows symlinks will continue to be reported as 1376 * %G_FILE_TYPE_REGULAR or %G_FILE_TYPE_DIRECTORY. 1377 */ 1378 public enum GFileType 1379 { 1380 /** 1381 * File's type is unknown. 1382 */ 1383 UNKNOWN = 0, 1384 /** 1385 * File handle represents a regular file. 1386 */ 1387 REGULAR = 1, 1388 /** 1389 * File handle represents a directory. 1390 */ 1391 DIRECTORY = 2, 1392 /** 1393 * File handle represents a symbolic link 1394 * (Unix systems). 1395 */ 1396 SYMBOLIC_LINK = 3, 1397 /** 1398 * File is a "special" file, such as a socket, fifo, 1399 * block device, or character device. 1400 */ 1401 SPECIAL = 4, 1402 /** 1403 * File is a shortcut (Windows systems). 1404 */ 1405 SHORTCUT = 5, 1406 /** 1407 * File is a mountable location. 1408 */ 1409 MOUNTABLE = 6, 1410 } 1411 alias GFileType FileType; 1412 1413 /** 1414 * Indicates a hint from the file system whether files should be 1415 * previewed in a file manager. Returned as the value of the key 1416 * #G_FILE_ATTRIBUTE_FILESYSTEM_USE_PREVIEW. 1417 */ 1418 public enum GFilesystemPreviewType 1419 { 1420 /** 1421 * Only preview files if user has explicitly requested it. 1422 */ 1423 IF_ALWAYS = 0, 1424 /** 1425 * Preview files if user has requested preview of "local" files. 1426 */ 1427 IF_LOCAL = 1, 1428 /** 1429 * Never preview files. 1430 */ 1431 NEVER = 2, 1432 } 1433 alias GFilesystemPreviewType FilesystemPreviewType; 1434 1435 /** 1436 * Error codes returned by GIO functions. 1437 * 1438 * Note that this domain may be extended in future GLib releases. In 1439 * general, new error codes either only apply to new APIs, or else 1440 * replace %G_IO_ERROR_FAILED in cases that were not explicitly 1441 * distinguished before. You should therefore avoid writing code like 1442 * |[<!-- language="C" --> 1443 * if (g_error_matches (error, G_IO_ERROR, G_IO_ERROR_FAILED)) 1444 * { 1445 * // Assume that this is EPRINTERONFIRE 1446 * ... 1447 * } 1448 * ]| 1449 * but should instead treat all unrecognized error codes the same as 1450 * #G_IO_ERROR_FAILED. 1451 * 1452 * See also #GPollableReturn for a cheaper way of returning 1453 * %G_IO_ERROR_WOULD_BLOCK to callers without allocating a #GError. 1454 */ 1455 public enum GIOErrorEnum 1456 { 1457 /** 1458 * Generic error condition for when an operation fails 1459 * and no more specific #GIOErrorEnum value is defined. 1460 */ 1461 FAILED = 0, 1462 /** 1463 * File not found. 1464 */ 1465 NOT_FOUND = 1, 1466 /** 1467 * File already exists. 1468 */ 1469 EXISTS = 2, 1470 /** 1471 * File is a directory. 1472 */ 1473 IS_DIRECTORY = 3, 1474 /** 1475 * File is not a directory. 1476 */ 1477 NOT_DIRECTORY = 4, 1478 /** 1479 * File is a directory that isn't empty. 1480 */ 1481 NOT_EMPTY = 5, 1482 /** 1483 * File is not a regular file. 1484 */ 1485 NOT_REGULAR_FILE = 6, 1486 /** 1487 * File is not a symbolic link. 1488 */ 1489 NOT_SYMBOLIC_LINK = 7, 1490 /** 1491 * File cannot be mounted. 1492 */ 1493 NOT_MOUNTABLE_FILE = 8, 1494 /** 1495 * Filename is too many characters. 1496 */ 1497 FILENAME_TOO_LONG = 9, 1498 /** 1499 * Filename is invalid or contains invalid characters. 1500 */ 1501 INVALID_FILENAME = 10, 1502 /** 1503 * File contains too many symbolic links. 1504 */ 1505 TOO_MANY_LINKS = 11, 1506 /** 1507 * No space left on drive. 1508 */ 1509 NO_SPACE = 12, 1510 /** 1511 * Invalid argument. 1512 */ 1513 INVALID_ARGUMENT = 13, 1514 /** 1515 * Permission denied. 1516 */ 1517 PERMISSION_DENIED = 14, 1518 /** 1519 * Operation (or one of its parameters) not supported 1520 */ 1521 NOT_SUPPORTED = 15, 1522 /** 1523 * File isn't mounted. 1524 */ 1525 NOT_MOUNTED = 16, 1526 /** 1527 * File is already mounted. 1528 */ 1529 ALREADY_MOUNTED = 17, 1530 /** 1531 * File was closed. 1532 */ 1533 CLOSED = 18, 1534 /** 1535 * Operation was cancelled. See #GCancellable. 1536 */ 1537 CANCELLED = 19, 1538 /** 1539 * Operations are still pending. 1540 */ 1541 PENDING = 20, 1542 /** 1543 * File is read only. 1544 */ 1545 READ_ONLY = 21, 1546 /** 1547 * Backup couldn't be created. 1548 */ 1549 CANT_CREATE_BACKUP = 22, 1550 /** 1551 * File's Entity Tag was incorrect. 1552 */ 1553 WRONG_ETAG = 23, 1554 /** 1555 * Operation timed out. 1556 */ 1557 TIMED_OUT = 24, 1558 /** 1559 * Operation would be recursive. 1560 */ 1561 WOULD_RECURSE = 25, 1562 /** 1563 * File is busy. 1564 */ 1565 BUSY = 26, 1566 /** 1567 * Operation would block. 1568 */ 1569 WOULD_BLOCK = 27, 1570 /** 1571 * Host couldn't be found (remote operations). 1572 */ 1573 HOST_NOT_FOUND = 28, 1574 /** 1575 * Operation would merge files. 1576 */ 1577 WOULD_MERGE = 29, 1578 /** 1579 * Operation failed and a helper program has 1580 * already interacted with the user. Do not display any error dialog. 1581 */ 1582 FAILED_HANDLED = 30, 1583 /** 1584 * The current process has too many files 1585 * open and can't open any more. Duplicate descriptors do count toward 1586 * this limit. Since 2.20 1587 */ 1588 TOO_MANY_OPEN_FILES = 31, 1589 /** 1590 * The object has not been initialized. Since 2.22 1591 */ 1592 NOT_INITIALIZED = 32, 1593 /** 1594 * The requested address is already in use. Since 2.22 1595 */ 1596 ADDRESS_IN_USE = 33, 1597 /** 1598 * Need more input to finish operation. Since 2.24 1599 */ 1600 PARTIAL_INPUT = 34, 1601 /** 1602 * The input data was invalid. Since 2.24 1603 */ 1604 INVALID_DATA = 35, 1605 /** 1606 * A remote object generated an error that 1607 * doesn't correspond to a locally registered #GError error 1608 * domain. Use g_dbus_error_get_remote_error() to extract the D-Bus 1609 * error name and g_dbus_error_strip_remote_error() to fix up the 1610 * message so it matches what was received on the wire. Since 2.26. 1611 */ 1612 DBUS_ERROR = 36, 1613 /** 1614 * Host unreachable. Since 2.26 1615 */ 1616 HOST_UNREACHABLE = 37, 1617 /** 1618 * Network unreachable. Since 2.26 1619 */ 1620 NETWORK_UNREACHABLE = 38, 1621 /** 1622 * Connection refused. Since 2.26 1623 */ 1624 CONNECTION_REFUSED = 39, 1625 /** 1626 * Connection to proxy server failed. Since 2.26 1627 */ 1628 PROXY_FAILED = 40, 1629 /** 1630 * Proxy authentication failed. Since 2.26 1631 */ 1632 PROXY_AUTH_FAILED = 41, 1633 /** 1634 * Proxy server needs authentication. Since 2.26 1635 */ 1636 PROXY_NEED_AUTH = 42, 1637 /** 1638 * Proxy connection is not allowed by ruleset. 1639 * Since 2.26 1640 */ 1641 PROXY_NOT_ALLOWED = 43, 1642 /** 1643 * Broken pipe. Since 2.36 1644 */ 1645 BROKEN_PIPE = 44, 1646 /** 1647 * Connection closed by peer. Note that this 1648 * is the same code as %G_IO_ERROR_BROKEN_PIPE; before 2.44 some 1649 * "connection closed" errors returned %G_IO_ERROR_BROKEN_PIPE, but others 1650 * returned %G_IO_ERROR_FAILED. Now they should all return the same 1651 * value, which has this more logical name. Since 2.44. 1652 */ 1653 CONNECTION_CLOSED = 44, 1654 /** 1655 * Transport endpoint is not connected. Since 2.44 1656 */ 1657 NOT_CONNECTED = 45, 1658 /** 1659 * Message too large. Since 2.48. 1660 */ 1661 MESSAGE_TOO_LARGE = 46, 1662 } 1663 alias GIOErrorEnum IOErrorEnum; 1664 1665 /** 1666 * Flags for use with g_io_module_scope_new(). 1667 * 1668 * Since: 2.30 1669 */ 1670 public enum GIOModuleScopeFlags 1671 { 1672 /** 1673 * No module scan flags 1674 */ 1675 NONE = 0, 1676 /** 1677 * When using this scope to load or 1678 * scan modules, automatically block a modules which has the same base 1679 * basename as previously loaded module. 1680 */ 1681 BLOCK_DUPLICATES = 1, 1682 } 1683 alias GIOModuleScopeFlags IOModuleScopeFlags; 1684 1685 /** 1686 * GIOStreamSpliceFlags determine how streams should be spliced. 1687 * 1688 * Since: 2.28 1689 */ 1690 public enum GIOStreamSpliceFlags 1691 { 1692 /** 1693 * Do not close either stream. 1694 */ 1695 NONE = 0, 1696 /** 1697 * Close the first stream after 1698 * the splice. 1699 */ 1700 CLOSE_STREAM1 = 1, 1701 /** 1702 * Close the second stream after 1703 * the splice. 1704 */ 1705 CLOSE_STREAM2 = 2, 1706 /** 1707 * Wait for both splice operations to finish 1708 * before calling the callback. 1709 */ 1710 WAIT_FOR_BOTH = 4, 1711 } 1712 alias GIOStreamSpliceFlags IOStreamSpliceFlags; 1713 1714 /** 1715 * Memory availability warning levels. 1716 * 1717 * Note that because new values might be added, it is recommended that applications check 1718 * #GMemoryMonitorWarningLevel as ranges, for example: 1719 * |[<!-- language="C" --> 1720 * if (warning_level > G_MEMORY_MONITOR_WARNING_LEVEL_LOW) 1721 * drop_caches (); 1722 * ]| 1723 * 1724 * Since: 2.64 1725 */ 1726 public enum GMemoryMonitorWarningLevel 1727 { 1728 /** 1729 * Memory on the device is low, processes 1730 * should free up unneeded resources (for example, in-memory caches) so they can 1731 * be used elsewhere. 1732 */ 1733 LOW = 50, 1734 /** 1735 * Same as @G_MEMORY_MONITOR_WARNING_LEVEL_LOW 1736 * but the device has even less free memory, so processes should try harder to free 1737 * up unneeded resources. If your process does not need to stay running, it is a 1738 * good time for it to quit. 1739 */ 1740 MEDIUM = 100, 1741 /** 1742 * The system will soon start terminating 1743 * processes to reclaim memory, including background processes. 1744 */ 1745 CRITICAL = 255, 1746 } 1747 alias GMemoryMonitorWarningLevel MemoryMonitorWarningLevel; 1748 1749 /** 1750 * Flags used when mounting a mount. 1751 */ 1752 public enum GMountMountFlags 1753 { 1754 /** 1755 * No flags set. 1756 */ 1757 NONE = 0, 1758 } 1759 alias GMountMountFlags MountMountFlags; 1760 1761 /** 1762 * #GMountOperationResult is returned as a result when a request for 1763 * information is send by the mounting operation. 1764 */ 1765 public enum GMountOperationResult 1766 { 1767 /** 1768 * The request was fulfilled and the 1769 * user specified data is now available 1770 */ 1771 HANDLED = 0, 1772 /** 1773 * The user requested the mount operation 1774 * to be aborted 1775 */ 1776 ABORTED = 1, 1777 /** 1778 * The request was unhandled (i.e. not 1779 * implemented) 1780 */ 1781 UNHANDLED = 2, 1782 } 1783 alias GMountOperationResult MountOperationResult; 1784 1785 /** 1786 * Flags used when an unmounting a mount. 1787 */ 1788 public enum GMountUnmountFlags 1789 { 1790 /** 1791 * No flags set. 1792 */ 1793 NONE = 0, 1794 /** 1795 * Unmount even if there are outstanding 1796 * file operations on the mount. 1797 */ 1798 FORCE = 1, 1799 } 1800 alias GMountUnmountFlags MountUnmountFlags; 1801 1802 /** 1803 * The host's network connectivity state, as reported by #GNetworkMonitor. 1804 * 1805 * Since: 2.44 1806 */ 1807 public enum GNetworkConnectivity 1808 { 1809 /** 1810 * The host is not configured with a 1811 * route to the Internet; it may or may not be connected to a local 1812 * network. 1813 */ 1814 LOCAL = 1, 1815 /** 1816 * The host is connected to a network, but 1817 * does not appear to be able to reach the full Internet, perhaps 1818 * due to upstream network problems. 1819 */ 1820 LIMITED = 2, 1821 /** 1822 * The host is behind a captive portal and 1823 * cannot reach the full Internet. 1824 */ 1825 PORTAL = 3, 1826 /** 1827 * The host is connected to a network, and 1828 * appears to be able to reach the full Internet. 1829 */ 1830 FULL = 4, 1831 } 1832 alias GNetworkConnectivity NetworkConnectivity; 1833 1834 /** 1835 * Priority levels for #GNotifications. 1836 * 1837 * Since: 2.42 1838 */ 1839 public enum GNotificationPriority 1840 { 1841 /** 1842 * the default priority, to be used for the 1843 * majority of notifications (for example email messages, software updates, 1844 * completed download/sync operations) 1845 */ 1846 NORMAL = 0, 1847 /** 1848 * for notifications that do not require 1849 * immediate attention - typically used for contextual background 1850 * information, such as contact birthdays or local weather 1851 */ 1852 LOW = 1, 1853 /** 1854 * for events that require more attention, 1855 * usually because responses are time-sensitive (for example chat and SMS 1856 * messages or alarms) 1857 */ 1858 HIGH = 2, 1859 /** 1860 * for urgent notifications, or notifications 1861 * that require a response in a short space of time (for example phone calls 1862 * or emergency warnings) 1863 */ 1864 URGENT = 3, 1865 } 1866 alias GNotificationPriority NotificationPriority; 1867 1868 /** 1869 * GOutputStreamSpliceFlags determine how streams should be spliced. 1870 */ 1871 public enum GOutputStreamSpliceFlags 1872 { 1873 /** 1874 * Do not close either stream. 1875 */ 1876 NONE = 0, 1877 /** 1878 * Close the source stream after 1879 * the splice. 1880 */ 1881 CLOSE_SOURCE = 1, 1882 /** 1883 * Close the target stream after 1884 * the splice. 1885 */ 1886 CLOSE_TARGET = 2, 1887 } 1888 alias GOutputStreamSpliceFlags OutputStreamSpliceFlags; 1889 1890 /** 1891 * #GPasswordSave is used to indicate the lifespan of a saved password. 1892 * 1893 * #Gvfs stores passwords in the Gnome keyring when this flag allows it 1894 * to, and later retrieves it again from there. 1895 */ 1896 public enum GPasswordSave 1897 { 1898 /** 1899 * never save a password. 1900 */ 1901 NEVER = 0, 1902 /** 1903 * save a password for the session. 1904 */ 1905 FOR_SESSION = 1, 1906 /** 1907 * save a password permanently. 1908 */ 1909 PERMANENTLY = 2, 1910 } 1911 alias GPasswordSave PasswordSave; 1912 1913 /** 1914 * Return value for various IO operations that signal errors via the 1915 * return value and not necessarily via a #GError. 1916 * 1917 * This enum exists to be able to return errors to callers without having to 1918 * allocate a #GError. Allocating #GErrors can be quite expensive for 1919 * regularly happening errors like %G_IO_ERROR_WOULD_BLOCK. 1920 * 1921 * In case of %G_POLLABLE_RETURN_FAILED a #GError should be set for the 1922 * operation to give details about the error that happened. 1923 * 1924 * Since: 2.60 1925 */ 1926 public enum GPollableReturn 1927 { 1928 /** 1929 * Generic error condition for when an operation fails. 1930 */ 1931 FAILED = 0, 1932 /** 1933 * The operation was successfully finished. 1934 */ 1935 OK = 1, 1936 /** 1937 * The operation would block. 1938 */ 1939 WOULD_BLOCK = -27, 1940 } 1941 alias GPollableReturn PollableReturn; 1942 1943 /** 1944 * An error code used with %G_RESOLVER_ERROR in a #GError returned 1945 * from a #GResolver routine. 1946 * 1947 * Since: 2.22 1948 */ 1949 public enum GResolverError 1950 { 1951 /** 1952 * the requested name/address/service was not 1953 * found 1954 */ 1955 NOT_FOUND = 0, 1956 /** 1957 * the requested information could not 1958 * be looked up due to a network error or similar problem 1959 */ 1960 TEMPORARY_FAILURE = 1, 1961 /** 1962 * unknown error 1963 */ 1964 INTERNAL = 2, 1965 } 1966 alias GResolverError ResolverError; 1967 1968 /** 1969 * Flags to modify lookup behavior. 1970 * 1971 * Since: 2.60 1972 */ 1973 public enum GResolverNameLookupFlags 1974 { 1975 /** 1976 * default behavior (same as g_resolver_lookup_by_name()) 1977 */ 1978 DEFAULT = 0, 1979 /** 1980 * only resolve ipv4 addresses 1981 */ 1982 IPV4_ONLY = 1, 1983 /** 1984 * only resolve ipv6 addresses 1985 */ 1986 IPV6_ONLY = 2, 1987 } 1988 alias GResolverNameLookupFlags ResolverNameLookupFlags; 1989 1990 /** 1991 * The type of record that g_resolver_lookup_records() or 1992 * g_resolver_lookup_records_async() should retrieve. The records are returned 1993 * as lists of #GVariant tuples. Each record type has different values in 1994 * the variant tuples returned. 1995 * 1996 * %G_RESOLVER_RECORD_SRV records are returned as variants with the signature 1997 * `(qqqs)`, containing a `guint16` with the priority, a `guint16` with the 1998 * weight, a `guint16` with the port, and a string of the hostname. 1999 * 2000 * %G_RESOLVER_RECORD_MX records are returned as variants with the signature 2001 * `(qs)`, representing a `guint16` with the preference, and a string containing 2002 * the mail exchanger hostname. 2003 * 2004 * %G_RESOLVER_RECORD_TXT records are returned as variants with the signature 2005 * `(as)`, representing an array of the strings in the text record. Note: Most TXT 2006 * records only contain a single string, but 2007 * [RFC 1035](https://tools.ietf.org/html/rfc1035#section-3.3.14) does allow a 2008 * record to contain multiple strings. The RFC which defines the interpretation 2009 * of a specific TXT record will likely require concatenation of multiple 2010 * strings if they are present, as with 2011 * [RFC 7208](https://tools.ietf.org/html/rfc7208#section-3.3). 2012 * 2013 * %G_RESOLVER_RECORD_SOA records are returned as variants with the signature 2014 * `(ssuuuuu)`, representing a string containing the primary name server, a 2015 * string containing the administrator, the serial as a `guint32`, the refresh 2016 * interval as a `guint32`, the retry interval as a `guint32`, the expire timeout 2017 * as a `guint32`, and the TTL as a `guint32`. 2018 * 2019 * %G_RESOLVER_RECORD_NS records are returned as variants with the signature 2020 * `(s)`, representing a string of the hostname of the name server. 2021 * 2022 * Since: 2.34 2023 */ 2024 public enum GResolverRecordType 2025 { 2026 /** 2027 * look up DNS SRV records for a domain 2028 */ 2029 SRV = 1, 2030 /** 2031 * look up DNS MX records for a domain 2032 */ 2033 MX = 2, 2034 /** 2035 * look up DNS TXT records for a name 2036 */ 2037 TXT = 3, 2038 /** 2039 * look up DNS SOA records for a zone 2040 */ 2041 SOA = 4, 2042 /** 2043 * look up DNS NS records for a domain 2044 */ 2045 NS = 5, 2046 } 2047 alias GResolverRecordType ResolverRecordType; 2048 2049 /** 2050 * An error code used with %G_RESOURCE_ERROR in a #GError returned 2051 * from a #GResource routine. 2052 * 2053 * Since: 2.32 2054 */ 2055 public enum GResourceError 2056 { 2057 /** 2058 * no file was found at the requested path 2059 */ 2060 NOT_FOUND = 0, 2061 /** 2062 * unknown error 2063 */ 2064 INTERNAL = 1, 2065 } 2066 alias GResourceError ResourceError; 2067 2068 /** 2069 * GResourceFlags give information about a particular file inside a resource 2070 * bundle. 2071 * 2072 * Since: 2.32 2073 */ 2074 public enum GResourceFlags 2075 { 2076 /** 2077 * No flags set. 2078 */ 2079 NONE = 0, 2080 /** 2081 * The file is compressed. 2082 */ 2083 COMPRESSED = 1, 2084 } 2085 alias GResourceFlags ResourceFlags; 2086 2087 /** 2088 * GResourceLookupFlags determine how resource path lookups are handled. 2089 * 2090 * Since: 2.32 2091 */ 2092 public enum GResourceLookupFlags 2093 { 2094 /** 2095 * No flags set. 2096 */ 2097 NONE = 0, 2098 } 2099 alias GResourceLookupFlags ResourceLookupFlags; 2100 2101 /** 2102 * Flags used when creating a binding. These flags determine in which 2103 * direction the binding works. The default is to synchronize in both 2104 * directions. 2105 */ 2106 public enum GSettingsBindFlags 2107 { 2108 /** 2109 * Equivalent to `G_SETTINGS_BIND_GET|G_SETTINGS_BIND_SET` 2110 */ 2111 DEFAULT = 0, 2112 /** 2113 * Update the #GObject property when the setting changes. 2114 * It is an error to use this flag if the property is not writable. 2115 */ 2116 GET = 1, 2117 /** 2118 * Update the setting when the #GObject property changes. 2119 * It is an error to use this flag if the property is not readable. 2120 */ 2121 SET = 2, 2122 /** 2123 * Do not try to bind a "sensitivity" property to the writability of the setting 2124 */ 2125 NO_SENSITIVITY = 4, 2126 /** 2127 * When set in addition to #G_SETTINGS_BIND_GET, set the #GObject property 2128 * value initially from the setting, but do not listen for changes of the setting 2129 */ 2130 GET_NO_CHANGES = 8, 2131 /** 2132 * When passed to g_settings_bind(), uses a pair of mapping functions that invert 2133 * the boolean value when mapping between the setting and the property. The setting and property must both 2134 * be booleans. You cannot pass this flag to g_settings_bind_with_mapping(). 2135 */ 2136 INVERT_BOOLEAN = 16, 2137 } 2138 alias GSettingsBindFlags SettingsBindFlags; 2139 2140 /** 2141 * Describes an event occurring on a #GSocketClient. See the 2142 * #GSocketClient::event signal for more details. 2143 * 2144 * Additional values may be added to this type in the future. 2145 * 2146 * Since: 2.32 2147 */ 2148 public enum GSocketClientEvent 2149 { 2150 /** 2151 * The client is doing a DNS lookup. 2152 */ 2153 RESOLVING = 0, 2154 /** 2155 * The client has completed a DNS lookup. 2156 */ 2157 RESOLVED = 1, 2158 /** 2159 * The client is connecting to a remote 2160 * host (either a proxy or the destination server). 2161 */ 2162 CONNECTING = 2, 2163 /** 2164 * The client has connected to a remote 2165 * host. 2166 */ 2167 CONNECTED = 3, 2168 /** 2169 * The client is negotiating 2170 * with a proxy to connect to the destination server. 2171 */ 2172 PROXY_NEGOTIATING = 4, 2173 /** 2174 * The client has negotiated 2175 * with the proxy server. 2176 */ 2177 PROXY_NEGOTIATED = 5, 2178 /** 2179 * The client is performing a 2180 * TLS handshake. 2181 */ 2182 TLS_HANDSHAKING = 6, 2183 /** 2184 * The client has performed a 2185 * TLS handshake. 2186 */ 2187 TLS_HANDSHAKED = 7, 2188 /** 2189 * The client is done with a particular 2190 * #GSocketConnectable. 2191 */ 2192 COMPLETE = 8, 2193 } 2194 alias GSocketClientEvent SocketClientEvent; 2195 2196 /** 2197 * The protocol family of a #GSocketAddress. (These values are 2198 * identical to the system defines %AF_INET, %AF_INET6 and %AF_UNIX, 2199 * if available.) 2200 * 2201 * Since: 2.22 2202 */ 2203 public enum GSocketFamily 2204 { 2205 /** 2206 * no address family 2207 */ 2208 INVALID = 0, 2209 /** 2210 * the UNIX domain family 2211 */ 2212 UNIX = 1, 2213 /** 2214 * the IPv4 family 2215 */ 2216 IPV4 = 2, 2217 /** 2218 * the IPv6 family 2219 */ 2220 IPV6 = 10, 2221 } 2222 alias GSocketFamily SocketFamily; 2223 2224 /** 2225 * Describes an event occurring on a #GSocketListener. See the 2226 * #GSocketListener::event signal for more details. 2227 * 2228 * Additional values may be added to this type in the future. 2229 * 2230 * Since: 2.46 2231 */ 2232 public enum GSocketListenerEvent 2233 { 2234 /** 2235 * The listener is about to bind a socket. 2236 */ 2237 BINDING = 0, 2238 /** 2239 * The listener has bound a socket. 2240 */ 2241 BOUND = 1, 2242 /** 2243 * The listener is about to start 2244 * listening on this socket. 2245 */ 2246 LISTENING = 2, 2247 /** 2248 * The listener is now listening on 2249 * this socket. 2250 */ 2251 LISTENED = 3, 2252 } 2253 alias GSocketListenerEvent SocketListenerEvent; 2254 2255 /** 2256 * Flags used in g_socket_receive_message() and g_socket_send_message(). 2257 * The flags listed in the enum are some commonly available flags, but the 2258 * values used for them are the same as on the platform, and any other flags 2259 * are passed in/out as is. So to use a platform specific flag, just include 2260 * the right system header and pass in the flag. 2261 * 2262 * Since: 2.22 2263 */ 2264 public enum GSocketMsgFlags 2265 { 2266 /** 2267 * No flags. 2268 */ 2269 NONE = 0, 2270 /** 2271 * Request to send/receive out of band data. 2272 */ 2273 OOB = 1, 2274 /** 2275 * Read data from the socket without removing it from 2276 * the queue. 2277 */ 2278 PEEK = 2, 2279 /** 2280 * Don't use a gateway to send out the packet, 2281 * only send to hosts on directly connected networks. 2282 */ 2283 DONTROUTE = 4, 2284 } 2285 alias GSocketMsgFlags SocketMsgFlags; 2286 2287 /** 2288 * A protocol identifier is specified when creating a #GSocket, which is a 2289 * family/type specific identifier, where 0 means the default protocol for 2290 * the particular family/type. 2291 * 2292 * This enum contains a set of commonly available and used protocols. You 2293 * can also pass any other identifiers handled by the platform in order to 2294 * use protocols not listed here. 2295 * 2296 * Since: 2.22 2297 */ 2298 public enum GSocketProtocol 2299 { 2300 /** 2301 * The protocol type is unknown 2302 */ 2303 UNKNOWN = -1, 2304 /** 2305 * The default protocol for the family/type 2306 */ 2307 DEFAULT = 0, 2308 /** 2309 * TCP over IP 2310 */ 2311 TCP = 6, 2312 /** 2313 * UDP over IP 2314 */ 2315 UDP = 17, 2316 /** 2317 * SCTP over IP 2318 */ 2319 SCTP = 132, 2320 } 2321 alias GSocketProtocol SocketProtocol; 2322 2323 /** 2324 * Flags used when creating a #GSocket. Some protocols may not implement 2325 * all the socket types. 2326 * 2327 * Since: 2.22 2328 */ 2329 public enum GSocketType 2330 { 2331 /** 2332 * Type unknown or wrong 2333 */ 2334 INVALID = 0, 2335 /** 2336 * Reliable connection-based byte streams (e.g. TCP). 2337 */ 2338 STREAM = 1, 2339 /** 2340 * Connectionless, unreliable datagram passing. 2341 * (e.g. UDP) 2342 */ 2343 DATAGRAM = 2, 2344 /** 2345 * Reliable connection-based passing of datagrams 2346 * of fixed maximum length (e.g. SCTP). 2347 */ 2348 SEQPACKET = 3, 2349 } 2350 alias GSocketType SocketType; 2351 2352 /** 2353 * Flags to define the behaviour of a #GSubprocess. 2354 * 2355 * Note that the default for stdin is to redirect from `/dev/null`. For 2356 * stdout and stderr the default are for them to inherit the 2357 * corresponding descriptor from the calling process. 2358 * 2359 * Note that it is a programmer error to mix 'incompatible' flags. For 2360 * example, you may not request both %G_SUBPROCESS_FLAGS_STDOUT_PIPE and 2361 * %G_SUBPROCESS_FLAGS_STDOUT_SILENCE. 2362 * 2363 * Since: 2.40 2364 */ 2365 public enum GSubprocessFlags 2366 { 2367 /** 2368 * No flags. 2369 */ 2370 NONE = 0, 2371 /** 2372 * create a pipe for the stdin of the 2373 * spawned process that can be accessed with 2374 * g_subprocess_get_stdin_pipe(). 2375 */ 2376 STDIN_PIPE = 1, 2377 /** 2378 * stdin is inherited from the 2379 * calling process. 2380 */ 2381 STDIN_INHERIT = 2, 2382 /** 2383 * create a pipe for the stdout of the 2384 * spawned process that can be accessed with 2385 * g_subprocess_get_stdout_pipe(). 2386 */ 2387 STDOUT_PIPE = 4, 2388 /** 2389 * silence the stdout of the spawned 2390 * process (ie: redirect to `/dev/null`). 2391 */ 2392 STDOUT_SILENCE = 8, 2393 /** 2394 * create a pipe for the stderr of the 2395 * spawned process that can be accessed with 2396 * g_subprocess_get_stderr_pipe(). 2397 */ 2398 STDERR_PIPE = 16, 2399 /** 2400 * silence the stderr of the spawned 2401 * process (ie: redirect to `/dev/null`). 2402 */ 2403 STDERR_SILENCE = 32, 2404 /** 2405 * merge the stderr of the spawned 2406 * process with whatever the stdout happens to be. This is a good way 2407 * of directing both streams to a common log file, for example. 2408 */ 2409 STDERR_MERGE = 64, 2410 /** 2411 * spawned processes will inherit the 2412 * file descriptors of their parent, unless those descriptors have 2413 * been explicitly marked as close-on-exec. This flag has no effect 2414 * over the "standard" file descriptors (stdin, stdout, stderr). 2415 */ 2416 INHERIT_FDS = 128, 2417 } 2418 alias GSubprocessFlags SubprocessFlags; 2419 2420 /** 2421 * Flags to define future #GTestDBus behaviour. 2422 * 2423 * Since: 2.34 2424 */ 2425 public enum GTestDBusFlags 2426 { 2427 /** 2428 * No flags. 2429 */ 2430 NONE = 0, 2431 } 2432 alias GTestDBusFlags TestDBusFlags; 2433 2434 /** 2435 * The client authentication mode for a #GTlsServerConnection. 2436 * 2437 * Since: 2.28 2438 */ 2439 public enum GTlsAuthenticationMode 2440 { 2441 /** 2442 * client authentication not required 2443 */ 2444 NONE = 0, 2445 /** 2446 * client authentication is requested 2447 */ 2448 REQUESTED = 1, 2449 /** 2450 * client authentication is required 2451 */ 2452 REQUIRED = 2, 2453 } 2454 alias GTlsAuthenticationMode TlsAuthenticationMode; 2455 2456 /** 2457 * A set of flags describing TLS certification validation. This can be 2458 * used to set which validation steps to perform (eg, with 2459 * g_tls_client_connection_set_validation_flags()), or to describe why 2460 * a particular certificate was rejected (eg, in 2461 * #GTlsConnection::accept-certificate). 2462 * 2463 * Since: 2.28 2464 */ 2465 public enum GTlsCertificateFlags 2466 { 2467 /** 2468 * The signing certificate authority is 2469 * not known. 2470 */ 2471 UNKNOWN_CA = 1, 2472 /** 2473 * The certificate does not match the 2474 * expected identity of the site that it was retrieved from. 2475 */ 2476 BAD_IDENTITY = 2, 2477 /** 2478 * The certificate's activation time 2479 * is still in the future 2480 */ 2481 NOT_ACTIVATED = 4, 2482 /** 2483 * The certificate has expired 2484 */ 2485 EXPIRED = 8, 2486 /** 2487 * The certificate has been revoked 2488 * according to the #GTlsConnection's certificate revocation list. 2489 */ 2490 REVOKED = 16, 2491 /** 2492 * The certificate's algorithm is 2493 * considered insecure. 2494 */ 2495 INSECURE = 32, 2496 /** 2497 * Some other error occurred validating 2498 * the certificate 2499 */ 2500 GENERIC_ERROR = 64, 2501 /** 2502 * the combination of all of the above 2503 * flags 2504 */ 2505 VALIDATE_ALL = 127, 2506 } 2507 alias GTlsCertificateFlags TlsCertificateFlags; 2508 2509 /** 2510 * Flags for g_tls_interaction_request_certificate(), 2511 * g_tls_interaction_request_certificate_async(), and 2512 * g_tls_interaction_invoke_request_certificate(). 2513 * 2514 * Since: 2.40 2515 */ 2516 public enum GTlsCertificateRequestFlags 2517 { 2518 /** 2519 * No flags 2520 */ 2521 NONE = 0, 2522 } 2523 alias GTlsCertificateRequestFlags TlsCertificateRequestFlags; 2524 2525 /** 2526 * An error code used with %G_TLS_CHANNEL_BINDING_ERROR in a #GError to 2527 * indicate a TLS channel binding retrieval error. 2528 * 2529 * Since: 2.66 2530 */ 2531 public enum GTlsChannelBindingError 2532 { 2533 /** 2534 * Either entire binding 2535 * retrieval facility or specific binding type is not implemented in the 2536 * TLS backend. 2537 */ 2538 NOT_IMPLEMENTED = 0, 2539 /** 2540 * The handshake is not yet 2541 * complete on the connection which is a strong requirement for any existing 2542 * binding type. 2543 */ 2544 INVALID_STATE = 1, 2545 /** 2546 * Handshake is complete but 2547 * binding data is not available. That normally indicates the TLS 2548 * implementation failed to provide the binding data. For example, some 2549 * implementations do not provide a peer certificate for resumed connections. 2550 */ 2551 NOT_AVAILABLE = 2, 2552 /** 2553 * Binding type is not supported 2554 * on the current connection. This error could be triggered when requesting 2555 * `tls-server-end-point` binding data for a certificate which has no hash 2556 * function or uses multiple hash functions. 2557 */ 2558 NOT_SUPPORTED = 3, 2559 /** 2560 * Any other backend error 2561 * preventing binding data retrieval. 2562 */ 2563 GENERAL_ERROR = 4, 2564 } 2565 alias GTlsChannelBindingError TlsChannelBindingError; 2566 2567 /** 2568 * The type of TLS channel binding data to retrieve from #GTlsConnection 2569 * or #GDtlsConnection, as documented by RFC 5929. The 2570 * [`tls-unique-for-telnet`](https://tools.ietf.org/html/rfc5929#section-5) 2571 * binding type is not currently implemented. 2572 * 2573 * Since: 2.66 2574 */ 2575 public enum GTlsChannelBindingType 2576 { 2577 /** 2578 * [`tls-unique`](https://tools.ietf.org/html/rfc5929#section-3) binding 2579 * type 2580 */ 2581 UNIQUE = 0, 2582 /** 2583 * [`tls-server-end-point`](https://tools.ietf.org/html/rfc5929#section-4) 2584 * binding type 2585 */ 2586 SERVER_END_POINT = 1, 2587 } 2588 alias GTlsChannelBindingType TlsChannelBindingType; 2589 2590 /** 2591 * Flags for g_tls_database_lookup_certificate_for_handle(), 2592 * g_tls_database_lookup_certificate_issuer(), 2593 * and g_tls_database_lookup_certificates_issued_by(). 2594 * 2595 * Since: 2.30 2596 */ 2597 public enum GTlsDatabaseLookupFlags 2598 { 2599 /** 2600 * No lookup flags 2601 */ 2602 NONE = 0, 2603 /** 2604 * Restrict lookup to certificates that have 2605 * a private key. 2606 */ 2607 KEYPAIR = 1, 2608 } 2609 alias GTlsDatabaseLookupFlags TlsDatabaseLookupFlags; 2610 2611 /** 2612 * Flags for g_tls_database_verify_chain(). 2613 * 2614 * Since: 2.30 2615 */ 2616 public enum GTlsDatabaseVerifyFlags 2617 { 2618 /** 2619 * No verification flags 2620 */ 2621 NONE = 0, 2622 } 2623 alias GTlsDatabaseVerifyFlags TlsDatabaseVerifyFlags; 2624 2625 /** 2626 * An error code used with %G_TLS_ERROR in a #GError returned from a 2627 * TLS-related routine. 2628 * 2629 * Since: 2.28 2630 */ 2631 public enum GTlsError 2632 { 2633 /** 2634 * No TLS provider is available 2635 */ 2636 UNAVAILABLE = 0, 2637 /** 2638 * Miscellaneous TLS error 2639 */ 2640 MISC = 1, 2641 /** 2642 * The certificate presented could not 2643 * be parsed or failed validation. 2644 */ 2645 BAD_CERTIFICATE = 2, 2646 /** 2647 * The TLS handshake failed because the 2648 * peer does not seem to be a TLS server. 2649 */ 2650 NOT_TLS = 3, 2651 /** 2652 * The TLS handshake failed because the 2653 * peer's certificate was not acceptable. 2654 */ 2655 HANDSHAKE = 4, 2656 /** 2657 * The TLS handshake failed because 2658 * the server requested a client-side certificate, but none was 2659 * provided. See g_tls_connection_set_certificate(). 2660 */ 2661 CERTIFICATE_REQUIRED = 5, 2662 /** 2663 * The TLS connection was closed without proper 2664 * notice, which may indicate an attack. See 2665 * g_tls_connection_set_require_close_notify(). 2666 */ 2667 EOF = 6, 2668 /** 2669 * The TLS handshake failed 2670 * because the client sent the fallback SCSV, indicating a protocol 2671 * downgrade attack. Since: 2.60 2672 */ 2673 INAPPROPRIATE_FALLBACK = 7, 2674 } 2675 alias GTlsError TlsError; 2676 2677 /** 2678 * #GTlsInteractionResult is returned by various functions in #GTlsInteraction 2679 * when finishing an interaction request. 2680 * 2681 * Since: 2.30 2682 */ 2683 public enum GTlsInteractionResult 2684 { 2685 /** 2686 * The interaction was unhandled (i.e. not 2687 * implemented). 2688 */ 2689 UNHANDLED = 0, 2690 /** 2691 * The interaction completed, and resulting data 2692 * is available. 2693 */ 2694 HANDLED = 1, 2695 /** 2696 * The interaction has failed, or was cancelled. 2697 * and the operation should be aborted. 2698 */ 2699 FAILED = 2, 2700 } 2701 alias GTlsInteractionResult TlsInteractionResult; 2702 2703 /** 2704 * Various flags for the password. 2705 * 2706 * Since: 2.30 2707 */ 2708 public enum GTlsPasswordFlags 2709 { 2710 /** 2711 * No flags 2712 */ 2713 NONE = 0, 2714 /** 2715 * The password was wrong, and the user should retry. 2716 */ 2717 RETRY = 2, 2718 /** 2719 * Hint to the user that the password has been 2720 * wrong many times, and the user may not have many chances left. 2721 */ 2722 MANY_TRIES = 4, 2723 /** 2724 * Hint to the user that this is the last try to get 2725 * this password right. 2726 */ 2727 FINAL_TRY = 8, 2728 } 2729 alias GTlsPasswordFlags TlsPasswordFlags; 2730 2731 /** 2732 * When to allow rehandshaking. See 2733 * g_tls_connection_set_rehandshake_mode(). 2734 * 2735 * Deprecated: Changing the rehandshake mode is no longer 2736 * required for compatibility. Also, rehandshaking has been removed 2737 * from the TLS protocol in TLS 1.3. 2738 * 2739 * Since: 2.28 2740 */ 2741 public enum GTlsRehandshakeMode 2742 { 2743 /** 2744 * Never allow rehandshaking 2745 */ 2746 NEVER = 0, 2747 /** 2748 * Allow safe rehandshaking only 2749 */ 2750 SAFELY = 1, 2751 /** 2752 * Allow unsafe rehandshaking 2753 */ 2754 UNSAFELY = 2, 2755 } 2756 alias GTlsRehandshakeMode TlsRehandshakeMode; 2757 2758 /** 2759 * The type of name used by a #GUnixSocketAddress. 2760 * %G_UNIX_SOCKET_ADDRESS_PATH indicates a traditional unix domain 2761 * socket bound to a filesystem path. %G_UNIX_SOCKET_ADDRESS_ANONYMOUS 2762 * indicates a socket not bound to any name (eg, a client-side socket, 2763 * or a socket created with socketpair()). 2764 * 2765 * For abstract sockets, there are two incompatible ways of naming 2766 * them; the man pages suggest using the entire `struct sockaddr_un` 2767 * as the name, padding the unused parts of the %sun_path field with 2768 * zeroes; this corresponds to %G_UNIX_SOCKET_ADDRESS_ABSTRACT_PADDED. 2769 * However, many programs instead just use a portion of %sun_path, and 2770 * pass an appropriate smaller length to bind() or connect(). This is 2771 * %G_UNIX_SOCKET_ADDRESS_ABSTRACT. 2772 * 2773 * Since: 2.26 2774 */ 2775 public enum GUnixSocketAddressType 2776 { 2777 /** 2778 * invalid 2779 */ 2780 INVALID = 0, 2781 /** 2782 * anonymous 2783 */ 2784 ANONYMOUS = 1, 2785 /** 2786 * a filesystem path 2787 */ 2788 PATH = 2, 2789 /** 2790 * an abstract name 2791 */ 2792 ABSTRACT = 3, 2793 /** 2794 * an abstract name, 0-padded 2795 * to the full length of a unix socket name 2796 */ 2797 ABSTRACT_PADDED = 4, 2798 } 2799 alias GUnixSocketAddressType UnixSocketAddressType; 2800 2801 /** 2802 * Used to select the type of data format to use for #GZlibDecompressor 2803 * and #GZlibCompressor. 2804 * 2805 * Since: 2.24 2806 */ 2807 public enum GZlibCompressorFormat 2808 { 2809 /** 2810 * deflate compression with zlib header 2811 */ 2812 ZLIB = 0, 2813 /** 2814 * gzip file format 2815 */ 2816 GZIP = 1, 2817 /** 2818 * deflate compression with no header 2819 */ 2820 RAW = 2, 2821 } 2822 alias GZlibCompressorFormat ZlibCompressorFormat; 2823 2824 struct GAction; 2825 2826 /** 2827 * This struct defines a single action. It is for use with 2828 * g_action_map_add_action_entries(). 2829 * 2830 * The order of the items in the structure are intended to reflect 2831 * frequency of use. It is permissible to use an incomplete initialiser 2832 * in order to leave some of the later values as %NULL. All values 2833 * after @name are optional. Additional optional fields may be added in 2834 * the future. 2835 * 2836 * See g_action_map_add_action_entries() for an example. 2837 */ 2838 struct GActionEntry 2839 { 2840 /** 2841 * the name of the action 2842 */ 2843 const(char)* name; 2844 /** */ 2845 extern(C) void function(GSimpleAction* action, GVariant* parameter, void* userData) activate; 2846 /** 2847 * the type of the parameter that must be passed to the 2848 * activate function for this action, given as a single 2849 * GVariant type string (or %NULL for no parameter) 2850 */ 2851 const(char)* parameterType; 2852 /** 2853 * the initial state for this action, given in 2854 * [GVariant text format][gvariant-text]. The state is parsed 2855 * with no extra type information, so type tags must be added to 2856 * the string if they are necessary. Stateless actions should 2857 * give %NULL here. 2858 */ 2859 const(char)* state; 2860 /** */ 2861 extern(C) void function(GSimpleAction* action, GVariant* value, void* userData) changeState; 2862 size_t[3] padding; 2863 } 2864 2865 struct GActionGroup; 2866 2867 /** 2868 * The virtual function table for #GActionGroup. 2869 * 2870 * Since: 2.28 2871 */ 2872 struct GActionGroupInterface 2873 { 2874 GTypeInterface gIface; 2875 /** 2876 * 2877 * Params: 2878 * actionGroup = a #GActionGroup 2879 * actionName = the name of the action to check for 2880 * Returns: whether the named action exists 2881 */ 2882 extern(C) int function(GActionGroup* actionGroup, const(char)* actionName) hasAction; 2883 /** 2884 * 2885 * Params: 2886 * actionGroup = a #GActionGroup 2887 * Returns: a %NULL-terminated array of the names of the 2888 * actions in the group 2889 */ 2890 extern(C) char** function(GActionGroup* actionGroup) listActions; 2891 /** 2892 * 2893 * Params: 2894 * actionGroup = a #GActionGroup 2895 * actionName = the name of the action to query 2896 * Returns: whether or not the action is currently enabled 2897 */ 2898 extern(C) int function(GActionGroup* actionGroup, const(char)* actionName) getActionEnabled; 2899 /** 2900 * 2901 * Params: 2902 * actionGroup = a #GActionGroup 2903 * actionName = the name of the action to query 2904 * Returns: the parameter type 2905 */ 2906 extern(C) GVariantType* function(GActionGroup* actionGroup, const(char)* actionName) getActionParameterType; 2907 /** 2908 * 2909 * Params: 2910 * actionGroup = a #GActionGroup 2911 * actionName = the name of the action to query 2912 * Returns: the state type, if the action is stateful 2913 */ 2914 extern(C) GVariantType* function(GActionGroup* actionGroup, const(char)* actionName) getActionStateType; 2915 /** 2916 * 2917 * Params: 2918 * actionGroup = a #GActionGroup 2919 * actionName = the name of the action to query 2920 * Returns: the state range hint 2921 */ 2922 extern(C) GVariant* function(GActionGroup* actionGroup, const(char)* actionName) getActionStateHint; 2923 /** 2924 * 2925 * Params: 2926 * actionGroup = a #GActionGroup 2927 * actionName = the name of the action to query 2928 * Returns: the current state of the action 2929 */ 2930 extern(C) GVariant* function(GActionGroup* actionGroup, const(char)* actionName) getActionState; 2931 /** */ 2932 extern(C) void function(GActionGroup* actionGroup, const(char)* actionName, GVariant* value) changeActionState; 2933 /** */ 2934 extern(C) void function(GActionGroup* actionGroup, const(char)* actionName, GVariant* parameter) activateAction; 2935 /** */ 2936 extern(C) void function(GActionGroup* actionGroup, const(char)* actionName) actionAdded; 2937 /** */ 2938 extern(C) void function(GActionGroup* actionGroup, const(char)* actionName) actionRemoved; 2939 /** */ 2940 extern(C) void function(GActionGroup* actionGroup, const(char)* actionName, int enabled) actionEnabledChanged; 2941 /** */ 2942 extern(C) void function(GActionGroup* actionGroup, const(char)* actionName, GVariant* state) actionStateChanged; 2943 /** 2944 * 2945 * Params: 2946 * actionGroup = a #GActionGroup 2947 * actionName = the name of an action in the group 2948 * enabled = if the action is presently enabled 2949 * parameterType = the parameter type, or %NULL if none needed 2950 * stateType = the state type, or %NULL if stateless 2951 * stateHint = the state hint, or %NULL if none 2952 * state = the current state, or %NULL if stateless 2953 * Returns: %TRUE if the action exists, else %FALSE 2954 */ 2955 extern(C) int function(GActionGroup* actionGroup, const(char)* actionName, int* enabled, GVariantType** parameterType, GVariantType** stateType, GVariant** stateHint, GVariant** state) queryAction; 2956 } 2957 2958 /** 2959 * The virtual function table for #GAction. 2960 * 2961 * Since: 2.28 2962 */ 2963 struct GActionInterface 2964 { 2965 GTypeInterface gIface; 2966 /** 2967 * 2968 * Params: 2969 * action = a #GAction 2970 * Returns: the name of the action 2971 */ 2972 extern(C) const(char)* function(GAction* action) getName; 2973 /** 2974 * 2975 * Params: 2976 * action = a #GAction 2977 * Returns: the parameter type 2978 */ 2979 extern(C) GVariantType* function(GAction* action) getParameterType; 2980 /** 2981 * 2982 * Params: 2983 * action = a #GAction 2984 * Returns: the state type, if the action is stateful 2985 */ 2986 extern(C) GVariantType* function(GAction* action) getStateType; 2987 /** 2988 * 2989 * Params: 2990 * action = a #GAction 2991 * Returns: the state range hint 2992 */ 2993 extern(C) GVariant* function(GAction* action) getStateHint; 2994 /** 2995 * 2996 * Params: 2997 * action = a #GAction 2998 * Returns: whether the action is enabled 2999 */ 3000 extern(C) int function(GAction* action) getEnabled; 3001 /** 3002 * 3003 * Params: 3004 * action = a #GAction 3005 * Returns: the current state of the action 3006 */ 3007 extern(C) GVariant* function(GAction* action) getState; 3008 /** */ 3009 extern(C) void function(GAction* action, GVariant* value) changeState; 3010 /** */ 3011 extern(C) void function(GAction* action, GVariant* parameter) activate; 3012 } 3013 3014 struct GActionMap; 3015 3016 /** 3017 * The virtual function table for #GActionMap. 3018 * 3019 * Since: 2.32 3020 */ 3021 struct GActionMapInterface 3022 { 3023 GTypeInterface gIface; 3024 /** 3025 * 3026 * Params: 3027 * actionMap = a #GActionMap 3028 * actionName = the name of an action 3029 * Returns: a #GAction, or %NULL 3030 */ 3031 extern(C) GAction* function(GActionMap* actionMap, const(char)* actionName) lookupAction; 3032 /** */ 3033 extern(C) void function(GActionMap* actionMap, GAction* action) addAction; 3034 /** */ 3035 extern(C) void function(GActionMap* actionMap, const(char)* actionName) removeAction; 3036 } 3037 3038 struct GAppInfo; 3039 3040 /** 3041 * Application Information interface, for operating system portability. 3042 */ 3043 struct GAppInfoIface 3044 { 3045 /** 3046 * The parent interface. 3047 */ 3048 GTypeInterface gIface; 3049 /** 3050 * 3051 * Params: 3052 * appinfo = a #GAppInfo. 3053 * Returns: a duplicate of @appinfo. 3054 */ 3055 extern(C) GAppInfo* function(GAppInfo* appinfo) dup; 3056 /** 3057 * 3058 * Params: 3059 * appinfo1 = the first #GAppInfo. 3060 * appinfo2 = the second #GAppInfo. 3061 * Returns: %TRUE if @appinfo1 is equal to @appinfo2. %FALSE otherwise. 3062 */ 3063 extern(C) int function(GAppInfo* appinfo1, GAppInfo* appinfo2) equal; 3064 /** 3065 * 3066 * Params: 3067 * appinfo = a #GAppInfo. 3068 * Returns: a string containing the application's ID. 3069 */ 3070 extern(C) const(char)* function(GAppInfo* appinfo) getId; 3071 /** 3072 * 3073 * Params: 3074 * appinfo = a #GAppInfo. 3075 * Returns: the name of the application for @appinfo. 3076 */ 3077 extern(C) const(char)* function(GAppInfo* appinfo) getName; 3078 /** 3079 * 3080 * Params: 3081 * appinfo = a #GAppInfo. 3082 * Returns: a string containing a description of the 3083 * application @appinfo, or %NULL if none. 3084 */ 3085 extern(C) const(char)* function(GAppInfo* appinfo) getDescription; 3086 /** 3087 * 3088 * Params: 3089 * appinfo = a #GAppInfo 3090 * Returns: a string containing the @appinfo's application 3091 * binaries name 3092 */ 3093 extern(C) char* function(GAppInfo* appinfo) getExecutable; 3094 /** 3095 * 3096 * Params: 3097 * appinfo = a #GAppInfo. 3098 * Returns: the default #GIcon for @appinfo or %NULL 3099 * if there is no default icon. 3100 */ 3101 extern(C) GIcon* function(GAppInfo* appinfo) getIcon; 3102 /** 3103 * 3104 * Params: 3105 * appinfo = a #GAppInfo 3106 * files = a #GList of #GFile objects 3107 * context = a #GAppLaunchContext or %NULL 3108 * Returns: %TRUE on successful launch, %FALSE otherwise. 3109 * 3110 * Throws: GException on failure. 3111 */ 3112 extern(C) int function(GAppInfo* appinfo, GList* files, GAppLaunchContext* context, GError** err) launch; 3113 /** 3114 * 3115 * Params: 3116 * appinfo = a #GAppInfo. 3117 * Returns: %TRUE if the @appinfo supports URIs. 3118 */ 3119 extern(C) int function(GAppInfo* appinfo) supportsUris; 3120 /** 3121 * 3122 * Params: 3123 * appinfo = a #GAppInfo. 3124 * Returns: %TRUE if the @appinfo supports files. 3125 */ 3126 extern(C) int function(GAppInfo* appinfo) supportsFiles; 3127 /** 3128 * 3129 * Params: 3130 * appinfo = a #GAppInfo 3131 * uris = a #GList containing URIs to launch. 3132 * context = a #GAppLaunchContext or %NULL 3133 * Returns: %TRUE on successful launch, %FALSE otherwise. 3134 * 3135 * Throws: GException on failure. 3136 */ 3137 extern(C) int function(GAppInfo* appinfo, GList* uris, GAppLaunchContext* context, GError** err) launchUris; 3138 /** 3139 * 3140 * Params: 3141 * appinfo = a #GAppInfo. 3142 * Returns: %TRUE if the @appinfo should be shown, %FALSE otherwise. 3143 */ 3144 extern(C) int function(GAppInfo* appinfo) shouldShow; 3145 /** 3146 * 3147 * Params: 3148 * appinfo = a #GAppInfo. 3149 * contentType = the content type. 3150 * Returns: %TRUE on success, %FALSE on error. 3151 * 3152 * Throws: GException on failure. 3153 */ 3154 extern(C) int function(GAppInfo* appinfo, const(char)* contentType, GError** err) setAsDefaultForType; 3155 /** 3156 * 3157 * Params: 3158 * appinfo = a #GAppInfo. 3159 * extension = a string containing the file extension 3160 * (without the dot). 3161 * Returns: %TRUE on success, %FALSE on error. 3162 * 3163 * Throws: GException on failure. 3164 */ 3165 extern(C) int function(GAppInfo* appinfo, char* extension, GError** err) setAsDefaultForExtension; 3166 /** 3167 * 3168 * Params: 3169 * appinfo = a #GAppInfo. 3170 * contentType = a string. 3171 * Returns: %TRUE on success, %FALSE on error. 3172 * 3173 * Throws: GException on failure. 3174 */ 3175 extern(C) int function(GAppInfo* appinfo, const(char)* contentType, GError** err) addSupportsType; 3176 /** 3177 * 3178 * Params: 3179 * appinfo = a #GAppInfo. 3180 * Returns: %TRUE if it is possible to remove supported 3181 * content types from a given @appinfo, %FALSE if not. 3182 */ 3183 extern(C) int function(GAppInfo* appinfo) canRemoveSupportsType; 3184 /** 3185 * 3186 * Params: 3187 * appinfo = a #GAppInfo. 3188 * contentType = a string. 3189 * Returns: %TRUE on success, %FALSE on error. 3190 * 3191 * Throws: GException on failure. 3192 */ 3193 extern(C) int function(GAppInfo* appinfo, const(char)* contentType, GError** err) removeSupportsType; 3194 /** 3195 * 3196 * Params: 3197 * appinfo = a #GAppInfo 3198 * Returns: %TRUE if @appinfo can be deleted 3199 */ 3200 extern(C) int function(GAppInfo* appinfo) canDelete; 3201 /** 3202 * 3203 * Params: 3204 * appinfo = a #GAppInfo 3205 * Returns: %TRUE if @appinfo has been deleted 3206 */ 3207 extern(C) int function(GAppInfo* appinfo) doDelete; 3208 /** 3209 * 3210 * Params: 3211 * appinfo = a #GAppInfo 3212 * Returns: a string containing the @appinfo's commandline, 3213 * or %NULL if this information is not available 3214 */ 3215 extern(C) char* function(GAppInfo* appinfo) getCommandline; 3216 /** 3217 * 3218 * Params: 3219 * appinfo = a #GAppInfo. 3220 * Returns: the display name of the application for @appinfo, or the name if 3221 * no display name is available. 3222 */ 3223 extern(C) const(char)* function(GAppInfo* appinfo) getDisplayName; 3224 /** 3225 * 3226 * Params: 3227 * appinfo = a #GAppInfo. 3228 * contentType = the content type. 3229 * Returns: %TRUE on success, %FALSE on error. 3230 * 3231 * Throws: GException on failure. 3232 */ 3233 extern(C) int function(GAppInfo* appinfo, const(char)* contentType, GError** err) setAsLastUsedForType; 3234 /** 3235 * 3236 * Params: 3237 * appinfo = a #GAppInfo that can handle files 3238 * Returns: a list of content types. 3239 */ 3240 extern(C) char** function(GAppInfo* appinfo) getSupportedTypes; 3241 /** */ 3242 extern(C) void function(GAppInfo* appinfo, GList* uris, GAppLaunchContext* context, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) launchUrisAsync; 3243 /** 3244 * 3245 * Params: 3246 * appinfo = a #GAppInfo 3247 * result = a #GAsyncResult 3248 * Returns: %TRUE on successful launch, %FALSE otherwise. 3249 * 3250 * Throws: GException on failure. 3251 */ 3252 extern(C) int function(GAppInfo* appinfo, GAsyncResult* result, GError** err) launchUrisFinish; 3253 } 3254 3255 struct GAppInfoMonitor; 3256 3257 struct GAppLaunchContext 3258 { 3259 GObject parentInstance; 3260 GAppLaunchContextPrivate* priv; 3261 } 3262 3263 struct GAppLaunchContextClass 3264 { 3265 GObjectClass parentClass; 3266 /** 3267 * 3268 * Params: 3269 * context = a #GAppLaunchContext 3270 * info = a #GAppInfo 3271 * files = a #GList of #GFile objects 3272 * Returns: a display string for the display. 3273 */ 3274 extern(C) char* function(GAppLaunchContext* context, GAppInfo* info, GList* files) getDisplay; 3275 /** 3276 * 3277 * Params: 3278 * context = a #GAppLaunchContext 3279 * info = a #GAppInfo 3280 * files = a #GList of of #GFile objects 3281 * Returns: a startup notification ID for the application, or %NULL if 3282 * not supported. 3283 */ 3284 extern(C) char* function(GAppLaunchContext* context, GAppInfo* info, GList* files) getStartupNotifyId; 3285 /** */ 3286 extern(C) void function(GAppLaunchContext* context, const(char)* startupNotifyId) launchFailed; 3287 /** */ 3288 extern(C) void function(GAppLaunchContext* context, GAppInfo* info, GVariant* platformData) launched; 3289 /** */ 3290 extern(C) void function() GReserved1; 3291 /** */ 3292 extern(C) void function() GReserved2; 3293 /** */ 3294 extern(C) void function() GReserved3; 3295 /** */ 3296 extern(C) void function() GReserved4; 3297 } 3298 3299 struct GAppLaunchContextPrivate; 3300 3301 struct GApplication 3302 { 3303 GObject parentInstance; 3304 GApplicationPrivate* priv; 3305 } 3306 3307 /** 3308 * Virtual function table for #GApplication. 3309 * 3310 * Since: 2.28 3311 */ 3312 struct GApplicationClass 3313 { 3314 GObjectClass parentClass; 3315 /** */ 3316 extern(C) void function(GApplication* application) startup; 3317 /** */ 3318 extern(C) void function(GApplication* application) activate; 3319 /** */ 3320 extern(C) void function(GApplication* application, GFile** files, int nFiles, const(char)* hint) open; 3321 /** */ 3322 extern(C) int function(GApplication* application, GApplicationCommandLine* commandLine) commandLine; 3323 /** 3324 * 3325 * Params: 3326 * application = a #GApplication 3327 * arguments = array of command line arguments 3328 * exitStatus = exit status to fill after processing the command line. 3329 * Returns: %TRUE if the commandline has been completely handled 3330 */ 3331 extern(C) int function(GApplication* application, char*** arguments, int* exitStatus) localCommandLine; 3332 /** */ 3333 extern(C) void function(GApplication* application, GVariant* platformData) beforeEmit; 3334 /** */ 3335 extern(C) void function(GApplication* application, GVariant* platformData) afterEmit; 3336 /** */ 3337 extern(C) void function(GApplication* application, GVariantBuilder* builder) addPlatformData; 3338 /** */ 3339 extern(C) void function(GApplication* application) quitMainloop; 3340 /** */ 3341 extern(C) void function(GApplication* application) runMainloop; 3342 /** */ 3343 extern(C) void function(GApplication* application) shutdown; 3344 /** */ 3345 extern(C) int function(GApplication* application, GDBusConnection* connection, const(char)* objectPath, GError** err) dbusRegister; 3346 /** */ 3347 extern(C) void function(GApplication* application, GDBusConnection* connection, const(char)* objectPath) dbusUnregister; 3348 /** */ 3349 extern(C) int function(GApplication* application, GVariantDict* options) handleLocalOptions; 3350 /** */ 3351 extern(C) int function(GApplication* application) nameLost; 3352 void*[7] padding; 3353 } 3354 3355 struct GApplicationCommandLine 3356 { 3357 GObject parentInstance; 3358 GApplicationCommandLinePrivate* priv; 3359 } 3360 3361 /** 3362 * The #GApplicationCommandLineClass-struct 3363 * contains private data only. 3364 * 3365 * Since: 2.28 3366 */ 3367 struct GApplicationCommandLineClass 3368 { 3369 GObjectClass parentClass; 3370 /** */ 3371 extern(C) void function(GApplicationCommandLine* cmdline, const(char)* message) printLiteral; 3372 /** */ 3373 extern(C) void function(GApplicationCommandLine* cmdline, const(char)* message) printerrLiteral; 3374 /** 3375 * 3376 * Params: 3377 * cmdline = a #GApplicationCommandLine 3378 * Returns: a #GInputStream for stdin 3379 */ 3380 extern(C) GInputStream* function(GApplicationCommandLine* cmdline) getStdin; 3381 void*[11] padding; 3382 } 3383 3384 struct GApplicationCommandLinePrivate; 3385 3386 struct GApplicationPrivate; 3387 3388 struct GAsyncInitable; 3389 3390 /** 3391 * Provides an interface for asynchronous initializing object such that 3392 * initialization may fail. 3393 * 3394 * Since: 2.22 3395 */ 3396 struct GAsyncInitableIface 3397 { 3398 /** 3399 * The parent interface. 3400 */ 3401 GTypeInterface gIface; 3402 /** */ 3403 extern(C) void function(GAsyncInitable* initable, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) initAsync; 3404 /** 3405 * 3406 * Params: 3407 * initable = a #GAsyncInitable. 3408 * res = a #GAsyncResult. 3409 * Returns: %TRUE if successful. If an error has occurred, this function 3410 * will return %FALSE and set @error appropriately if present. 3411 * 3412 * Throws: GException on failure. 3413 */ 3414 extern(C) int function(GAsyncInitable* initable, GAsyncResult* res, GError** err) initFinish; 3415 } 3416 3417 struct GAsyncResult; 3418 3419 /** 3420 * Interface definition for #GAsyncResult. 3421 */ 3422 struct GAsyncResultIface 3423 { 3424 /** 3425 * The parent interface. 3426 */ 3427 GTypeInterface gIface; 3428 /** 3429 * 3430 * Params: 3431 * res = a #GAsyncResult. 3432 * Returns: the user data for @res. 3433 */ 3434 extern(C) void* function(GAsyncResult* res) getUserData; 3435 /** 3436 * 3437 * Params: 3438 * res = a #GAsyncResult 3439 * Returns: a new reference to the source 3440 * object for the @res, or %NULL if there is none. 3441 */ 3442 extern(C) GObject* function(GAsyncResult* res) getSourceObject; 3443 /** 3444 * 3445 * Params: 3446 * res = a #GAsyncResult 3447 * sourceTag = an application-defined tag 3448 * Returns: %TRUE if @res has the indicated @source_tag, %FALSE if 3449 * not. 3450 */ 3451 extern(C) int function(GAsyncResult* res, void* sourceTag) isTagged; 3452 } 3453 3454 struct GBufferedInputStream 3455 { 3456 GFilterInputStream parentInstance; 3457 GBufferedInputStreamPrivate* priv; 3458 } 3459 3460 struct GBufferedInputStreamClass 3461 { 3462 GFilterInputStreamClass parentClass; 3463 /** 3464 * 3465 * Params: 3466 * stream = a #GBufferedInputStream 3467 * count = the number of bytes that will be read from the stream 3468 * cancellable = optional #GCancellable object, %NULL to ignore 3469 * Returns: the number of bytes read into @stream's buffer, up to @count, 3470 * or -1 on error. 3471 * 3472 * Throws: GException on failure. 3473 */ 3474 extern(C) ptrdiff_t function(GBufferedInputStream* stream, ptrdiff_t count, GCancellable* cancellable, GError** err) fill; 3475 /** */ 3476 extern(C) void function(GBufferedInputStream* stream, ptrdiff_t count, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) fillAsync; 3477 /** 3478 * 3479 * Params: 3480 * stream = a #GBufferedInputStream 3481 * result = a #GAsyncResult 3482 * Returns: a #gssize of the read stream, or `-1` on an error. 3483 * 3484 * Throws: GException on failure. 3485 */ 3486 extern(C) ptrdiff_t function(GBufferedInputStream* stream, GAsyncResult* result, GError** err) fillFinish; 3487 /** */ 3488 extern(C) void function() GReserved1; 3489 /** */ 3490 extern(C) void function() GReserved2; 3491 /** */ 3492 extern(C) void function() GReserved3; 3493 /** */ 3494 extern(C) void function() GReserved4; 3495 /** */ 3496 extern(C) void function() GReserved5; 3497 } 3498 3499 struct GBufferedInputStreamPrivate; 3500 3501 struct GBufferedOutputStream 3502 { 3503 GFilterOutputStream parentInstance; 3504 GBufferedOutputStreamPrivate* priv; 3505 } 3506 3507 struct GBufferedOutputStreamClass 3508 { 3509 GFilterOutputStreamClass parentClass; 3510 /** */ 3511 extern(C) void function() GReserved1; 3512 /** */ 3513 extern(C) void function() GReserved2; 3514 } 3515 3516 struct GBufferedOutputStreamPrivate; 3517 3518 struct GBytesIcon; 3519 3520 struct GCancellable 3521 { 3522 GObject parentInstance; 3523 GCancellablePrivate* priv; 3524 } 3525 3526 struct GCancellableClass 3527 { 3528 GObjectClass parentClass; 3529 /** */ 3530 extern(C) void function(GCancellable* cancellable) cancelled; 3531 /** */ 3532 extern(C) void function() GReserved1; 3533 /** */ 3534 extern(C) void function() GReserved2; 3535 /** */ 3536 extern(C) void function() GReserved3; 3537 /** */ 3538 extern(C) void function() GReserved4; 3539 /** */ 3540 extern(C) void function() GReserved5; 3541 } 3542 3543 struct GCancellablePrivate; 3544 3545 struct GCharsetConverter; 3546 3547 struct GCharsetConverterClass 3548 { 3549 GObjectClass parentClass; 3550 } 3551 3552 struct GConverter; 3553 3554 /** 3555 * Provides an interface for converting data from one type 3556 * to another type. The conversion can be stateful 3557 * and may fail at any place. 3558 * 3559 * Since: 2.24 3560 */ 3561 struct GConverterIface 3562 { 3563 /** 3564 * The parent interface. 3565 */ 3566 GTypeInterface gIface; 3567 /** 3568 * 3569 * Params: 3570 * converter = a #GConverter. 3571 * inbuf = the buffer 3572 * containing the data to convert. 3573 * inbufSize = the number of bytes in @inbuf 3574 * outbuf = a buffer to write 3575 * converted data in. 3576 * outbufSize = the number of bytes in @outbuf, must be at least one 3577 * flags = a #GConverterFlags controlling the conversion details 3578 * bytesRead = will be set to the number of bytes read from @inbuf on success 3579 * bytesWritten = will be set to the number of bytes written to @outbuf on success 3580 * Returns: a #GConverterResult, %G_CONVERTER_ERROR on error. 3581 * 3582 * Throws: GException on failure. 3583 */ 3584 extern(C) GConverterResult function(GConverter* converter, void* inbuf, size_t inbufSize, void* outbuf, size_t outbufSize, GConverterFlags flags, size_t* bytesRead, size_t* bytesWritten, GError** err) convert; 3585 /** */ 3586 extern(C) void function(GConverter* converter) reset; 3587 } 3588 3589 struct GConverterInputStream 3590 { 3591 GFilterInputStream parentInstance; 3592 GConverterInputStreamPrivate* priv; 3593 } 3594 3595 struct GConverterInputStreamClass 3596 { 3597 GFilterInputStreamClass parentClass; 3598 /** */ 3599 extern(C) void function() GReserved1; 3600 /** */ 3601 extern(C) void function() GReserved2; 3602 /** */ 3603 extern(C) void function() GReserved3; 3604 /** */ 3605 extern(C) void function() GReserved4; 3606 /** */ 3607 extern(C) void function() GReserved5; 3608 } 3609 3610 struct GConverterInputStreamPrivate; 3611 3612 struct GConverterOutputStream 3613 { 3614 GFilterOutputStream parentInstance; 3615 GConverterOutputStreamPrivate* priv; 3616 } 3617 3618 struct GConverterOutputStreamClass 3619 { 3620 GFilterOutputStreamClass parentClass; 3621 /** */ 3622 extern(C) void function() GReserved1; 3623 /** */ 3624 extern(C) void function() GReserved2; 3625 /** */ 3626 extern(C) void function() GReserved3; 3627 /** */ 3628 extern(C) void function() GReserved4; 3629 /** */ 3630 extern(C) void function() GReserved5; 3631 } 3632 3633 struct GConverterOutputStreamPrivate; 3634 3635 struct GCredentials; 3636 3637 /** 3638 * Class structure for #GCredentials. 3639 * 3640 * Since: 2.26 3641 */ 3642 struct GCredentialsClass; 3643 3644 struct GDBusActionGroup; 3645 3646 struct GDBusAnnotationInfo 3647 { 3648 /** 3649 * The reference count or -1 if statically allocated. 3650 */ 3651 int refCount; 3652 /** 3653 * The name of the annotation, e.g. "org.freedesktop.DBus.Deprecated". 3654 */ 3655 char* key; 3656 /** 3657 * The value of the annotation. 3658 */ 3659 char* value; 3660 /** 3661 * A pointer to a %NULL-terminated array of pointers to #GDBusAnnotationInfo structures or %NULL if there are no annotations. 3662 */ 3663 GDBusAnnotationInfo** annotations; 3664 } 3665 3666 struct GDBusArgInfo 3667 { 3668 /** 3669 * The reference count or -1 if statically allocated. 3670 */ 3671 int refCount; 3672 /** 3673 * Name of the argument, e.g. @unix_user_id. 3674 */ 3675 char* name; 3676 /** 3677 * D-Bus signature of the argument (a single complete type). 3678 */ 3679 char* signature; 3680 /** 3681 * A pointer to a %NULL-terminated array of pointers to #GDBusAnnotationInfo structures or %NULL if there are no annotations. 3682 */ 3683 GDBusAnnotationInfo** annotations; 3684 } 3685 3686 struct GDBusAuthObserver; 3687 3688 struct GDBusConnection; 3689 3690 /** 3691 * Struct used in g_dbus_error_register_error_domain(). 3692 * 3693 * Since: 2.26 3694 */ 3695 struct GDBusErrorEntry 3696 { 3697 /** 3698 * An error code. 3699 */ 3700 int errorCode; 3701 /** 3702 * The D-Bus error name to associate with @error_code. 3703 */ 3704 const(char)* dbusErrorName; 3705 } 3706 3707 struct GDBusInterface; 3708 3709 /** 3710 * Base type for D-Bus interfaces. 3711 * 3712 * Since: 2.30 3713 */ 3714 struct GDBusInterfaceIface 3715 { 3716 /** 3717 * The parent interface. 3718 */ 3719 GTypeInterface parentIface; 3720 /** 3721 * 3722 * Params: 3723 * interface_ = An exported D-Bus interface. 3724 * Returns: A #GDBusInterfaceInfo. Do not free. 3725 */ 3726 extern(C) GDBusInterfaceInfo* function(GDBusInterface* interface_) getInfo; 3727 /** 3728 * 3729 * Params: 3730 * interface_ = An exported D-Bus interface 3731 * Returns: A #GDBusObject or %NULL. The returned 3732 * reference belongs to @interface_ and should not be freed. 3733 */ 3734 extern(C) GDBusObject* function(GDBusInterface* interface_) getObject; 3735 /** */ 3736 extern(C) void function(GDBusInterface* interface_, GDBusObject* object) setObject; 3737 /** 3738 * 3739 * Params: 3740 * interface_ = An exported D-Bus interface. 3741 * Returns: A #GDBusObject or %NULL. The returned 3742 * reference should be freed with g_object_unref(). 3743 */ 3744 extern(C) GDBusObject* function(GDBusInterface* interface_) dupObject; 3745 } 3746 3747 struct GDBusInterfaceInfo 3748 { 3749 /** 3750 * The reference count or -1 if statically allocated. 3751 */ 3752 int refCount; 3753 /** 3754 * The name of the D-Bus interface, e.g. "org.freedesktop.DBus.Properties". 3755 */ 3756 char* name; 3757 /** 3758 * A pointer to a %NULL-terminated array of pointers to #GDBusMethodInfo structures or %NULL if there are no methods. 3759 */ 3760 GDBusMethodInfo** methods; 3761 /** 3762 * A pointer to a %NULL-terminated array of pointers to #GDBusSignalInfo structures or %NULL if there are no signals. 3763 */ 3764 GDBusSignalInfo** signals; 3765 /** 3766 * A pointer to a %NULL-terminated array of pointers to #GDBusPropertyInfo structures or %NULL if there are no properties. 3767 */ 3768 GDBusPropertyInfo** properties; 3769 /** 3770 * A pointer to a %NULL-terminated array of pointers to #GDBusAnnotationInfo structures or %NULL if there are no annotations. 3771 */ 3772 GDBusAnnotationInfo** annotations; 3773 } 3774 3775 struct GDBusInterfaceSkeleton 3776 { 3777 GObject parentInstance; 3778 GDBusInterfaceSkeletonPrivate* priv; 3779 } 3780 3781 /** 3782 * Class structure for #GDBusInterfaceSkeleton. 3783 * 3784 * Since: 2.30 3785 */ 3786 struct GDBusInterfaceSkeletonClass 3787 { 3788 /** 3789 * The parent class. 3790 */ 3791 GObjectClass parentClass; 3792 /** 3793 * 3794 * Params: 3795 * interface_ = A #GDBusInterfaceSkeleton. 3796 * Returns: A #GDBusInterfaceInfo (never %NULL). Do not free. 3797 */ 3798 extern(C) GDBusInterfaceInfo* function(GDBusInterfaceSkeleton* interface_) getInfo; 3799 /** 3800 * 3801 * Params: 3802 * interface_ = A #GDBusInterfaceSkeleton. 3803 * Returns: A #GDBusInterfaceVTable (never %NULL). 3804 */ 3805 extern(C) GDBusInterfaceVTable* function(GDBusInterfaceSkeleton* interface_) getVtable; 3806 /** 3807 * 3808 * Params: 3809 * interface_ = A #GDBusInterfaceSkeleton. 3810 * Returns: A #GVariant of type 3811 * ['a{sv}'][G-VARIANT-TYPE-VARDICT:CAPS]. 3812 * Free with g_variant_unref(). 3813 */ 3814 extern(C) GVariant* function(GDBusInterfaceSkeleton* interface_) getProperties; 3815 /** */ 3816 extern(C) void function(GDBusInterfaceSkeleton* interface_) flush; 3817 void*[8] vfuncPadding; 3818 /** */ 3819 extern(C) int function(GDBusInterfaceSkeleton* interface_, GDBusMethodInvocation* invocation) gAuthorizeMethod; 3820 void*[8] signalPadding; 3821 } 3822 3823 struct GDBusInterfaceSkeletonPrivate; 3824 3825 /** 3826 * Virtual table for handling properties and method calls for a D-Bus 3827 * interface. 3828 * 3829 * Since 2.38, if you want to handle getting/setting D-Bus properties 3830 * asynchronously, give %NULL as your get_property() or set_property() 3831 * function. The D-Bus call will be directed to your @method_call function, 3832 * with the provided @interface_name set to "org.freedesktop.DBus.Properties". 3833 * 3834 * Ownership of the #GDBusMethodInvocation object passed to the 3835 * method_call() function is transferred to your handler; you must 3836 * call one of the methods of #GDBusMethodInvocation to return a reply 3837 * (possibly empty), or an error. These functions also take ownership 3838 * of the passed-in invocation object, so unless the invocation 3839 * object has otherwise been referenced, it will be then be freed. 3840 * Calling one of these functions may be done within your 3841 * method_call() implementation but it also can be done at a later 3842 * point to handle the method asynchronously. 3843 * 3844 * The usual checks on the validity of the calls is performed. For 3845 * `Get` calls, an error is automatically returned if the property does 3846 * not exist or the permissions do not allow access. The same checks are 3847 * performed for `Set` calls, and the provided value is also checked for 3848 * being the correct type. 3849 * 3850 * For both `Get` and `Set` calls, the #GDBusMethodInvocation 3851 * passed to the @method_call handler can be queried with 3852 * g_dbus_method_invocation_get_property_info() to get a pointer 3853 * to the #GDBusPropertyInfo of the property. 3854 * 3855 * If you have readable properties specified in your interface info, 3856 * you must ensure that you either provide a non-%NULL @get_property() 3857 * function or provide implementations of both the `Get` and `GetAll` 3858 * methods on org.freedesktop.DBus.Properties interface in your @method_call 3859 * function. Note that the required return type of the `Get` call is 3860 * `(v)`, not the type of the property. `GetAll` expects a return value 3861 * of type `a{sv}`. 3862 * 3863 * If you have writable properties specified in your interface info, 3864 * you must ensure that you either provide a non-%NULL @set_property() 3865 * function or provide an implementation of the `Set` call. If implementing 3866 * the call, you must return the value of type %G_VARIANT_TYPE_UNIT. 3867 * 3868 * Since: 2.26 3869 */ 3870 struct GDBusInterfaceVTable 3871 { 3872 /** 3873 * Function for handling incoming method calls. 3874 */ 3875 GDBusInterfaceMethodCallFunc methodCall; 3876 /** 3877 * Function for getting a property. 3878 */ 3879 GDBusInterfaceGetPropertyFunc getProperty; 3880 /** 3881 * Function for setting a property. 3882 */ 3883 GDBusInterfaceSetPropertyFunc setProperty; 3884 void*[8] padding; 3885 } 3886 3887 struct GDBusMenuModel; 3888 3889 struct GDBusMessage; 3890 3891 struct GDBusMethodInfo 3892 { 3893 /** 3894 * The reference count or -1 if statically allocated. 3895 */ 3896 int refCount; 3897 /** 3898 * The name of the D-Bus method, e.g. @RequestName. 3899 */ 3900 char* name; 3901 /** 3902 * A pointer to a %NULL-terminated array of pointers to #GDBusArgInfo structures or %NULL if there are no in arguments. 3903 */ 3904 GDBusArgInfo** inArgs; 3905 /** 3906 * A pointer to a %NULL-terminated array of pointers to #GDBusArgInfo structures or %NULL if there are no out arguments. 3907 */ 3908 GDBusArgInfo** outArgs; 3909 /** 3910 * A pointer to a %NULL-terminated array of pointers to #GDBusAnnotationInfo structures or %NULL if there are no annotations. 3911 */ 3912 GDBusAnnotationInfo** annotations; 3913 } 3914 3915 struct GDBusMethodInvocation; 3916 3917 struct GDBusNodeInfo 3918 { 3919 /** 3920 * The reference count or -1 if statically allocated. 3921 */ 3922 int refCount; 3923 /** 3924 * The path of the node or %NULL if omitted. Note that this may be a relative path. See the D-Bus specification for more details. 3925 */ 3926 char* path; 3927 /** 3928 * A pointer to a %NULL-terminated array of pointers to #GDBusInterfaceInfo structures or %NULL if there are no interfaces. 3929 */ 3930 GDBusInterfaceInfo** interfaces; 3931 /** 3932 * A pointer to a %NULL-terminated array of pointers to #GDBusNodeInfo structures or %NULL if there are no nodes. 3933 */ 3934 GDBusNodeInfo** nodes; 3935 /** 3936 * A pointer to a %NULL-terminated array of pointers to #GDBusAnnotationInfo structures or %NULL if there are no annotations. 3937 */ 3938 GDBusAnnotationInfo** annotations; 3939 } 3940 3941 struct GDBusObject; 3942 3943 /** 3944 * Base object type for D-Bus objects. 3945 * 3946 * Since: 2.30 3947 */ 3948 struct GDBusObjectIface 3949 { 3950 /** 3951 * The parent interface. 3952 */ 3953 GTypeInterface parentIface; 3954 /** 3955 * 3956 * Params: 3957 * object = A #GDBusObject. 3958 * Returns: A string owned by @object. Do not free. 3959 */ 3960 extern(C) const(char)* function(GDBusObject* object) getObjectPath; 3961 /** 3962 * 3963 * Params: 3964 * object = A #GDBusObject. 3965 * Returns: A list of #GDBusInterface instances. 3966 * The returned list must be freed by g_list_free() after each element has been freed 3967 * with g_object_unref(). 3968 */ 3969 extern(C) GList* function(GDBusObject* object) getInterfaces; 3970 /** 3971 * 3972 * Params: 3973 * object = A #GDBusObject. 3974 * interfaceName = A D-Bus interface name. 3975 * Returns: %NULL if not found, otherwise a 3976 * #GDBusInterface that must be freed with g_object_unref(). 3977 */ 3978 extern(C) GDBusInterface* function(GDBusObject* object, const(char)* interfaceName) getInterface; 3979 /** */ 3980 extern(C) void function(GDBusObject* object, GDBusInterface* interface_) interfaceAdded; 3981 /** */ 3982 extern(C) void function(GDBusObject* object, GDBusInterface* interface_) interfaceRemoved; 3983 } 3984 3985 struct GDBusObjectManager; 3986 3987 struct GDBusObjectManagerClient 3988 { 3989 GObject parentInstance; 3990 GDBusObjectManagerClientPrivate* priv; 3991 } 3992 3993 /** 3994 * Class structure for #GDBusObjectManagerClient. 3995 * 3996 * Since: 2.30 3997 */ 3998 struct GDBusObjectManagerClientClass 3999 { 4000 /** 4001 * The parent class. 4002 */ 4003 GObjectClass parentClass; 4004 /** */ 4005 extern(C) void function(GDBusObjectManagerClient* manager, GDBusObjectProxy* objectProxy, GDBusProxy* interfaceProxy, const(char)* senderName, const(char)* signalName, GVariant* parameters) interfaceProxySignal; 4006 /** */ 4007 extern(C) void function(GDBusObjectManagerClient* manager, GDBusObjectProxy* objectProxy, GDBusProxy* interfaceProxy, GVariant* changedProperties, const(char)* invalidatedProperties) interfaceProxyPropertiesChanged; 4008 void*[8] padding; 4009 } 4010 4011 struct GDBusObjectManagerClientPrivate; 4012 4013 /** 4014 * Base type for D-Bus object managers. 4015 * 4016 * Since: 2.30 4017 */ 4018 struct GDBusObjectManagerIface 4019 { 4020 /** 4021 * The parent interface. 4022 */ 4023 GTypeInterface parentIface; 4024 /** 4025 * 4026 * Params: 4027 * manager = A #GDBusObjectManager. 4028 * Returns: A string owned by @manager. Do not free. 4029 */ 4030 extern(C) const(char)* function(GDBusObjectManager* manager) getObjectPath; 4031 /** 4032 * 4033 * Params: 4034 * manager = A #GDBusObjectManager. 4035 * Returns: A list of 4036 * #GDBusObject objects. The returned list should be freed with 4037 * g_list_free() after each element has been freed with 4038 * g_object_unref(). 4039 */ 4040 extern(C) GList* function(GDBusObjectManager* manager) getObjects; 4041 /** 4042 * 4043 * Params: 4044 * manager = A #GDBusObjectManager. 4045 * objectPath = Object path to look up. 4046 * Returns: A #GDBusObject or %NULL. Free with 4047 * g_object_unref(). 4048 */ 4049 extern(C) GDBusObject* function(GDBusObjectManager* manager, const(char)* objectPath) getObject; 4050 /** 4051 * 4052 * Params: 4053 * manager = A #GDBusObjectManager. 4054 * objectPath = Object path to look up. 4055 * interfaceName = D-Bus interface name to look up. 4056 * Returns: A #GDBusInterface instance or %NULL. Free 4057 * with g_object_unref(). 4058 */ 4059 extern(C) GDBusInterface* function(GDBusObjectManager* manager, const(char)* objectPath, const(char)* interfaceName) getInterface; 4060 /** */ 4061 extern(C) void function(GDBusObjectManager* manager, GDBusObject* object) objectAdded; 4062 /** */ 4063 extern(C) void function(GDBusObjectManager* manager, GDBusObject* object) objectRemoved; 4064 /** */ 4065 extern(C) void function(GDBusObjectManager* manager, GDBusObject* object, GDBusInterface* interface_) interfaceAdded; 4066 /** */ 4067 extern(C) void function(GDBusObjectManager* manager, GDBusObject* object, GDBusInterface* interface_) interfaceRemoved; 4068 } 4069 4070 struct GDBusObjectManagerServer 4071 { 4072 GObject parentInstance; 4073 GDBusObjectManagerServerPrivate* priv; 4074 } 4075 4076 /** 4077 * Class structure for #GDBusObjectManagerServer. 4078 * 4079 * Since: 2.30 4080 */ 4081 struct GDBusObjectManagerServerClass 4082 { 4083 /** 4084 * The parent class. 4085 */ 4086 GObjectClass parentClass; 4087 void*[8] padding; 4088 } 4089 4090 struct GDBusObjectManagerServerPrivate; 4091 4092 struct GDBusObjectProxy 4093 { 4094 GObject parentInstance; 4095 GDBusObjectProxyPrivate* priv; 4096 } 4097 4098 /** 4099 * Class structure for #GDBusObjectProxy. 4100 * 4101 * Since: 2.30 4102 */ 4103 struct GDBusObjectProxyClass 4104 { 4105 /** 4106 * The parent class. 4107 */ 4108 GObjectClass parentClass; 4109 void*[8] padding; 4110 } 4111 4112 struct GDBusObjectProxyPrivate; 4113 4114 struct GDBusObjectSkeleton 4115 { 4116 GObject parentInstance; 4117 GDBusObjectSkeletonPrivate* priv; 4118 } 4119 4120 /** 4121 * Class structure for #GDBusObjectSkeleton. 4122 * 4123 * Since: 2.30 4124 */ 4125 struct GDBusObjectSkeletonClass 4126 { 4127 /** 4128 * The parent class. 4129 */ 4130 GObjectClass parentClass; 4131 /** */ 4132 extern(C) int function(GDBusObjectSkeleton* object, GDBusInterfaceSkeleton* interface_, GDBusMethodInvocation* invocation) authorizeMethod; 4133 void*[8] padding; 4134 } 4135 4136 struct GDBusObjectSkeletonPrivate; 4137 4138 struct GDBusPropertyInfo 4139 { 4140 /** 4141 * The reference count or -1 if statically allocated. 4142 */ 4143 int refCount; 4144 /** 4145 * The name of the D-Bus property, e.g. "SupportedFilesystems". 4146 */ 4147 char* name; 4148 /** 4149 * The D-Bus signature of the property (a single complete type). 4150 */ 4151 char* signature; 4152 /** 4153 * Access control flags for the property. 4154 */ 4155 GDBusPropertyInfoFlags flags; 4156 /** 4157 * A pointer to a %NULL-terminated array of pointers to #GDBusAnnotationInfo structures or %NULL if there are no annotations. 4158 */ 4159 GDBusAnnotationInfo** annotations; 4160 } 4161 4162 struct GDBusProxy 4163 { 4164 GObject parentInstance; 4165 GDBusProxyPrivate* priv; 4166 } 4167 4168 /** 4169 * Class structure for #GDBusProxy. 4170 * 4171 * Since: 2.26 4172 */ 4173 struct GDBusProxyClass 4174 { 4175 GObjectClass parentClass; 4176 /** */ 4177 extern(C) void function(GDBusProxy* proxy, GVariant* changedProperties, const(char)* invalidatedProperties) gPropertiesChanged; 4178 /** */ 4179 extern(C) void function(GDBusProxy* proxy, const(char)* senderName, const(char)* signalName, GVariant* parameters) gSignal; 4180 void*[32] padding; 4181 } 4182 4183 struct GDBusProxyPrivate; 4184 4185 struct GDBusServer; 4186 4187 struct GDBusSignalInfo 4188 { 4189 /** 4190 * The reference count or -1 if statically allocated. 4191 */ 4192 int refCount; 4193 /** 4194 * The name of the D-Bus signal, e.g. "NameOwnerChanged". 4195 */ 4196 char* name; 4197 /** 4198 * A pointer to a %NULL-terminated array of pointers to #GDBusArgInfo structures or %NULL if there are no arguments. 4199 */ 4200 GDBusArgInfo** args; 4201 /** 4202 * A pointer to a %NULL-terminated array of pointers to #GDBusAnnotationInfo structures or %NULL if there are no annotations. 4203 */ 4204 GDBusAnnotationInfo** annotations; 4205 } 4206 4207 /** 4208 * Virtual table for handling subtrees registered with g_dbus_connection_register_subtree(). 4209 * 4210 * Since: 2.26 4211 */ 4212 struct GDBusSubtreeVTable 4213 { 4214 /** 4215 * Function for enumerating child nodes. 4216 */ 4217 GDBusSubtreeEnumerateFunc enumerate; 4218 /** 4219 * Function for introspecting a child node. 4220 */ 4221 GDBusSubtreeIntrospectFunc introspect; 4222 /** 4223 * Function for dispatching a remote call on a child node. 4224 */ 4225 GDBusSubtreeDispatchFunc dispatch; 4226 void*[8] padding; 4227 } 4228 4229 struct GDataInputStream 4230 { 4231 GBufferedInputStream parentInstance; 4232 GDataInputStreamPrivate* priv; 4233 } 4234 4235 struct GDataInputStreamClass 4236 { 4237 GBufferedInputStreamClass parentClass; 4238 /** */ 4239 extern(C) void function() GReserved1; 4240 /** */ 4241 extern(C) void function() GReserved2; 4242 /** */ 4243 extern(C) void function() GReserved3; 4244 /** */ 4245 extern(C) void function() GReserved4; 4246 /** */ 4247 extern(C) void function() GReserved5; 4248 } 4249 4250 struct GDataInputStreamPrivate; 4251 4252 struct GDataOutputStream 4253 { 4254 GFilterOutputStream parentInstance; 4255 GDataOutputStreamPrivate* priv; 4256 } 4257 4258 struct GDataOutputStreamClass 4259 { 4260 GFilterOutputStreamClass parentClass; 4261 /** */ 4262 extern(C) void function() GReserved1; 4263 /** */ 4264 extern(C) void function() GReserved2; 4265 /** */ 4266 extern(C) void function() GReserved3; 4267 /** */ 4268 extern(C) void function() GReserved4; 4269 /** */ 4270 extern(C) void function() GReserved5; 4271 } 4272 4273 struct GDataOutputStreamPrivate; 4274 4275 struct GDatagramBased; 4276 4277 /** 4278 * Provides an interface for socket-like objects which have datagram semantics, 4279 * following the Berkeley sockets API. The interface methods are thin wrappers 4280 * around the corresponding virtual methods, and no pre-processing of inputs is 4281 * implemented — so implementations of this API must handle all functionality 4282 * documented in the interface methods. 4283 * 4284 * Since: 2.48 4285 */ 4286 struct GDatagramBasedInterface 4287 { 4288 /** 4289 * The parent interface. 4290 */ 4291 GTypeInterface gIface; 4292 /** 4293 * 4294 * Params: 4295 * datagramBased = a #GDatagramBased 4296 * messages = an array of #GInputMessage structs 4297 * numMessages = the number of elements in @messages 4298 * flags = an int containing #GSocketMsgFlags flags for the overall operation 4299 * timeout = the maximum time (in microseconds) to wait, 0 to not block, or -1 4300 * to block indefinitely 4301 * cancellable = a %GCancellable 4302 * Returns: number of messages received, or -1 on error. Note that the number 4303 * of messages received may be smaller than @num_messages if @timeout is 4304 * zero or positive, if the peer closed the connection, or if @num_messages 4305 * was larger than `UIO_MAXIOV` (1024), in which case the caller may re-try 4306 * to receive the remaining messages. 4307 * 4308 * Throws: GException on failure. 4309 */ 4310 extern(C) int function(GDatagramBased* datagramBased, GInputMessage* messages, uint numMessages, int flags, long timeout, GCancellable* cancellable, GError** err) receiveMessages; 4311 /** 4312 * 4313 * Params: 4314 * datagramBased = a #GDatagramBased 4315 * messages = an array of #GOutputMessage structs 4316 * numMessages = the number of elements in @messages 4317 * flags = an int containing #GSocketMsgFlags flags 4318 * timeout = the maximum time (in microseconds) to wait, 0 to not block, or -1 4319 * to block indefinitely 4320 * cancellable = a %GCancellable 4321 * Returns: number of messages sent, or -1 on error. Note that the number of 4322 * messages sent may be smaller than @num_messages if @timeout is zero 4323 * or positive, or if @num_messages was larger than `UIO_MAXIOV` (1024), in 4324 * which case the caller may re-try to send the remaining messages. 4325 * 4326 * Throws: GException on failure. 4327 */ 4328 extern(C) int function(GDatagramBased* datagramBased, GOutputMessage* messages, uint numMessages, int flags, long timeout, GCancellable* cancellable, GError** err) sendMessages; 4329 /** 4330 * 4331 * Params: 4332 * datagramBased = a #GDatagramBased 4333 * condition = a #GIOCondition mask to monitor 4334 * cancellable = a #GCancellable 4335 * Returns: a newly allocated #GSource 4336 */ 4337 extern(C) GSource* function(GDatagramBased* datagramBased, GIOCondition condition, GCancellable* cancellable) createSource; 4338 /** 4339 * 4340 * Params: 4341 * datagramBased = a #GDatagramBased 4342 * condition = a #GIOCondition mask to check 4343 * Returns: the #GIOCondition mask of the current state 4344 */ 4345 extern(C) GIOCondition function(GDatagramBased* datagramBased, GIOCondition condition) conditionCheck; 4346 /** 4347 * 4348 * Params: 4349 * datagramBased = a #GDatagramBased 4350 * condition = a #GIOCondition mask to wait for 4351 * timeout = the maximum time (in microseconds) to wait, 0 to not block, or -1 4352 * to block indefinitely 4353 * cancellable = a #GCancellable 4354 * Returns: %TRUE if the condition was met, %FALSE otherwise 4355 * 4356 * Throws: GException on failure. 4357 */ 4358 extern(C) int function(GDatagramBased* datagramBased, GIOCondition condition, long timeout, GCancellable* cancellable, GError** err) conditionWait; 4359 } 4360 4361 struct GDesktopAppInfo; 4362 4363 struct GDesktopAppInfoClass 4364 { 4365 GObjectClass parentClass; 4366 } 4367 4368 struct GDesktopAppInfoLookup; 4369 4370 /** 4371 * Interface that is used by backends to associate default 4372 * handlers with URI schemes. 4373 */ 4374 struct GDesktopAppInfoLookupIface 4375 { 4376 GTypeInterface gIface; 4377 /** 4378 * 4379 * Params: 4380 * lookup = a #GDesktopAppInfoLookup 4381 * uriScheme = a string containing a URI scheme. 4382 * Returns: #GAppInfo for given @uri_scheme or 4383 * %NULL on error. 4384 */ 4385 extern(C) GAppInfo* function(GDesktopAppInfoLookup* lookup, const(char)* uriScheme) getDefaultForUriScheme; 4386 } 4387 4388 struct GDrive; 4389 4390 /** 4391 * Interface for creating #GDrive implementations. 4392 */ 4393 struct GDriveIface 4394 { 4395 /** 4396 * The parent interface. 4397 */ 4398 GTypeInterface gIface; 4399 /** */ 4400 extern(C) void function(GDrive* drive) changed; 4401 /** */ 4402 extern(C) void function(GDrive* drive) disconnected; 4403 /** */ 4404 extern(C) void function(GDrive* drive) ejectButton; 4405 /** 4406 * 4407 * Params: 4408 * drive = a #GDrive. 4409 * Returns: a string containing @drive's name. The returned 4410 * string should be freed when no longer needed. 4411 */ 4412 extern(C) char* function(GDrive* drive) getName; 4413 /** 4414 * 4415 * Params: 4416 * drive = a #GDrive. 4417 * Returns: #GIcon for the @drive. 4418 * Free the returned object with g_object_unref(). 4419 */ 4420 extern(C) GIcon* function(GDrive* drive) getIcon; 4421 /** 4422 * 4423 * Params: 4424 * drive = a #GDrive. 4425 * Returns: %TRUE if the @drive contains volumes, %FALSE otherwise. 4426 */ 4427 extern(C) int function(GDrive* drive) hasVolumes; 4428 /** 4429 * 4430 * Params: 4431 * drive = a #GDrive. 4432 * Returns: #GList containing any #GVolume objects on the given @drive. 4433 */ 4434 extern(C) GList* function(GDrive* drive) getVolumes; 4435 /** 4436 * 4437 * Params: 4438 * drive = a #GDrive. 4439 * Returns: %TRUE if @drive supports removable media, %FALSE otherwise. 4440 */ 4441 extern(C) int function(GDrive* drive) isMediaRemovable; 4442 /** 4443 * 4444 * Params: 4445 * drive = a #GDrive. 4446 * Returns: %TRUE if @drive has media, %FALSE otherwise. 4447 */ 4448 extern(C) int function(GDrive* drive) hasMedia; 4449 /** 4450 * 4451 * Params: 4452 * drive = a #GDrive. 4453 * Returns: %TRUE if the @drive is capable of automatically detecting 4454 * media changes, %FALSE otherwise. 4455 */ 4456 extern(C) int function(GDrive* drive) isMediaCheckAutomatic; 4457 /** 4458 * 4459 * Params: 4460 * drive = a #GDrive. 4461 * Returns: %TRUE if the @drive can be ejected, %FALSE otherwise. 4462 */ 4463 extern(C) int function(GDrive* drive) canEject; 4464 /** 4465 * 4466 * Params: 4467 * drive = a #GDrive. 4468 * Returns: %TRUE if the @drive can be polled for media changes, 4469 * %FALSE otherwise. 4470 */ 4471 extern(C) int function(GDrive* drive) canPollForMedia; 4472 /** */ 4473 extern(C) void function(GDrive* drive, GMountUnmountFlags flags, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) eject; 4474 /** 4475 * 4476 * Params: 4477 * drive = a #GDrive. 4478 * result = a #GAsyncResult. 4479 * Returns: %TRUE if the drive has been ejected successfully, 4480 * %FALSE otherwise. 4481 * 4482 * Throws: GException on failure. 4483 */ 4484 extern(C) int function(GDrive* drive, GAsyncResult* result, GError** err) ejectFinish; 4485 /** */ 4486 extern(C) void function(GDrive* drive, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) pollForMedia; 4487 /** 4488 * 4489 * Params: 4490 * drive = a #GDrive. 4491 * result = a #GAsyncResult. 4492 * Returns: %TRUE if the drive has been poll_for_mediaed successfully, 4493 * %FALSE otherwise. 4494 * 4495 * Throws: GException on failure. 4496 */ 4497 extern(C) int function(GDrive* drive, GAsyncResult* result, GError** err) pollForMediaFinish; 4498 /** 4499 * 4500 * Params: 4501 * drive = a #GDrive 4502 * kind = the kind of identifier to return 4503 * Returns: a newly allocated string containing the 4504 * requested identifier, or %NULL if the #GDrive 4505 * doesn't have this kind of identifier. 4506 */ 4507 extern(C) char* function(GDrive* drive, const(char)* kind) getIdentifier; 4508 /** 4509 * 4510 * Params: 4511 * drive = a #GDrive 4512 * Returns: a %NULL-terminated 4513 * array of strings containing kinds of identifiers. Use g_strfreev() 4514 * to free. 4515 */ 4516 extern(C) char** function(GDrive* drive) enumerateIdentifiers; 4517 /** 4518 * 4519 * Params: 4520 * drive = a #GDrive. 4521 * Returns: A value from the #GDriveStartStopType enumeration. 4522 */ 4523 extern(C) GDriveStartStopType function(GDrive* drive) getStartStopType; 4524 /** 4525 * 4526 * Params: 4527 * drive = a #GDrive. 4528 * Returns: %TRUE if the @drive can be started, %FALSE otherwise. 4529 */ 4530 extern(C) int function(GDrive* drive) canStart; 4531 /** 4532 * 4533 * Params: 4534 * drive = a #GDrive. 4535 * Returns: %TRUE if the @drive can be started degraded, %FALSE otherwise. 4536 */ 4537 extern(C) int function(GDrive* drive) canStartDegraded; 4538 /** */ 4539 extern(C) void function(GDrive* drive, GDriveStartFlags flags, GMountOperation* mountOperation, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) start; 4540 /** 4541 * 4542 * Params: 4543 * drive = a #GDrive. 4544 * result = a #GAsyncResult. 4545 * Returns: %TRUE if the drive has been started successfully, 4546 * %FALSE otherwise. 4547 * 4548 * Throws: GException on failure. 4549 */ 4550 extern(C) int function(GDrive* drive, GAsyncResult* result, GError** err) startFinish; 4551 /** 4552 * 4553 * Params: 4554 * drive = a #GDrive. 4555 * Returns: %TRUE if the @drive can be stopped, %FALSE otherwise. 4556 */ 4557 extern(C) int function(GDrive* drive) canStop; 4558 /** */ 4559 extern(C) void function(GDrive* drive, GMountUnmountFlags flags, GMountOperation* mountOperation, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) stop; 4560 /** 4561 * 4562 * Params: 4563 * drive = a #GDrive. 4564 * result = a #GAsyncResult. 4565 * Returns: %TRUE if the drive has been stopped successfully, 4566 * %FALSE otherwise. 4567 * 4568 * Throws: GException on failure. 4569 */ 4570 extern(C) int function(GDrive* drive, GAsyncResult* result, GError** err) stopFinish; 4571 /** */ 4572 extern(C) void function(GDrive* drive) stopButton; 4573 /** */ 4574 extern(C) void function(GDrive* drive, GMountUnmountFlags flags, GMountOperation* mountOperation, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) ejectWithOperation; 4575 /** 4576 * 4577 * Params: 4578 * drive = a #GDrive. 4579 * result = a #GAsyncResult. 4580 * Returns: %TRUE if the drive was successfully ejected. %FALSE otherwise. 4581 * 4582 * Throws: GException on failure. 4583 */ 4584 extern(C) int function(GDrive* drive, GAsyncResult* result, GError** err) ejectWithOperationFinish; 4585 /** 4586 * 4587 * Params: 4588 * drive = A #GDrive. 4589 * Returns: Sorting key for @drive or %NULL if no such key is available. 4590 */ 4591 extern(C) const(char)* function(GDrive* drive) getSortKey; 4592 /** 4593 * 4594 * Params: 4595 * drive = a #GDrive. 4596 * Returns: symbolic #GIcon for the @drive. 4597 * Free the returned object with g_object_unref(). 4598 */ 4599 extern(C) GIcon* function(GDrive* drive) getSymbolicIcon; 4600 /** 4601 * 4602 * Params: 4603 * drive = a #GDrive. 4604 * Returns: %TRUE if @drive and/or its media is considered removable, %FALSE otherwise. 4605 */ 4606 extern(C) int function(GDrive* drive) isRemovable; 4607 } 4608 4609 struct GDtlsClientConnection; 4610 4611 /** 4612 * vtable for a #GDtlsClientConnection implementation. 4613 * 4614 * Since: 2.48 4615 */ 4616 struct GDtlsClientConnectionInterface 4617 { 4618 /** 4619 * The parent interface. 4620 */ 4621 GTypeInterface gIface; 4622 } 4623 4624 struct GDtlsConnection; 4625 4626 /** 4627 * Virtual method table for a #GDtlsConnection implementation. 4628 * 4629 * Since: 2.48 4630 */ 4631 struct GDtlsConnectionInterface 4632 { 4633 /** 4634 * The parent interface. 4635 */ 4636 GTypeInterface gIface; 4637 /** */ 4638 extern(C) int function(GDtlsConnection* connection, GTlsCertificate* peerCert, GTlsCertificateFlags errors) acceptCertificate; 4639 /** 4640 * 4641 * Params: 4642 * conn = a #GDtlsConnection 4643 * cancellable = a #GCancellable, or %NULL 4644 * Returns: success or failure 4645 * 4646 * Throws: GException on failure. 4647 */ 4648 extern(C) int function(GDtlsConnection* conn, GCancellable* cancellable, GError** err) handshake; 4649 /** */ 4650 extern(C) void function(GDtlsConnection* conn, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) handshakeAsync; 4651 /** 4652 * 4653 * Params: 4654 * conn = a #GDtlsConnection 4655 * result = a #GAsyncResult. 4656 * Returns: %TRUE on success, %FALSE on failure, in which 4657 * case @error will be set. 4658 * 4659 * Throws: GException on failure. 4660 */ 4661 extern(C) int function(GDtlsConnection* conn, GAsyncResult* result, GError** err) handshakeFinish; 4662 /** 4663 * 4664 * Params: 4665 * conn = a #GDtlsConnection 4666 * shutdownRead = %TRUE to stop reception of incoming datagrams 4667 * shutdownWrite = %TRUE to stop sending outgoing datagrams 4668 * cancellable = a #GCancellable, or %NULL 4669 * Returns: %TRUE on success, %FALSE otherwise 4670 * 4671 * Throws: GException on failure. 4672 */ 4673 extern(C) int function(GDtlsConnection* conn, int shutdownRead, int shutdownWrite, GCancellable* cancellable, GError** err) shutdown; 4674 /** */ 4675 extern(C) void function(GDtlsConnection* conn, int shutdownRead, int shutdownWrite, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) shutdownAsync; 4676 /** 4677 * 4678 * Params: 4679 * conn = a #GDtlsConnection 4680 * result = a #GAsyncResult 4681 * Returns: %TRUE on success, %FALSE on failure, in which 4682 * case @error will be set 4683 * 4684 * Throws: GException on failure. 4685 */ 4686 extern(C) int function(GDtlsConnection* conn, GAsyncResult* result, GError** err) shutdownFinish; 4687 /** */ 4688 extern(C) void function(GDtlsConnection* conn, char** protocols) setAdvertisedProtocols; 4689 /** 4690 * 4691 * Params: 4692 * conn = a #GDtlsConnection 4693 * Returns: the negotiated protocol, or %NULL 4694 */ 4695 extern(C) const(char)* function(GDtlsConnection* conn) getNegotiatedProtocol; 4696 /** */ 4697 extern(C) int function(GDtlsConnection* conn, GTlsChannelBindingType type, GByteArray* data, GError** err) getBindingData; 4698 } 4699 4700 struct GDtlsServerConnection; 4701 4702 /** 4703 * vtable for a #GDtlsServerConnection implementation. 4704 * 4705 * Since: 2.48 4706 */ 4707 struct GDtlsServerConnectionInterface 4708 { 4709 /** 4710 * The parent interface. 4711 */ 4712 GTypeInterface gIface; 4713 } 4714 4715 struct GEmblem; 4716 4717 struct GEmblemClass; 4718 4719 struct GEmblemedIcon 4720 { 4721 GObject parentInstance; 4722 GEmblemedIconPrivate* priv; 4723 } 4724 4725 struct GEmblemedIconClass 4726 { 4727 GObjectClass parentClass; 4728 } 4729 4730 struct GEmblemedIconPrivate; 4731 4732 struct GFile; 4733 4734 /** 4735 * Information about a specific attribute. 4736 */ 4737 struct GFileAttributeInfo 4738 { 4739 /** 4740 * the name of the attribute. 4741 */ 4742 char* name; 4743 /** 4744 * the #GFileAttributeType type of the attribute. 4745 */ 4746 GFileAttributeType type; 4747 /** 4748 * a set of #GFileAttributeInfoFlags. 4749 */ 4750 GFileAttributeInfoFlags flags; 4751 } 4752 4753 struct GFileAttributeInfoList 4754 { 4755 /** 4756 * an array of #GFileAttributeInfos. 4757 */ 4758 GFileAttributeInfo* infos; 4759 /** 4760 * the number of values in the array. 4761 */ 4762 int nInfos; 4763 } 4764 4765 struct GFileAttributeMatcher; 4766 4767 struct GFileDescriptorBased; 4768 4769 /** 4770 * An interface for file descriptor based io objects. 4771 */ 4772 struct GFileDescriptorBasedIface 4773 { 4774 /** 4775 * The parent interface. 4776 */ 4777 GTypeInterface gIface; 4778 /** 4779 * 4780 * Params: 4781 * fdBased = a #GFileDescriptorBased. 4782 * Returns: The file descriptor 4783 */ 4784 extern(C) int function(GFileDescriptorBased* fdBased) getFd; 4785 } 4786 4787 struct GFileEnumerator 4788 { 4789 GObject parentInstance; 4790 GFileEnumeratorPrivate* priv; 4791 } 4792 4793 struct GFileEnumeratorClass 4794 { 4795 GObjectClass parentClass; 4796 /** 4797 * 4798 * Params: 4799 * enumerator = a #GFileEnumerator. 4800 * cancellable = optional #GCancellable object, %NULL to ignore. 4801 * Returns: A #GFileInfo or %NULL on error 4802 * or end of enumerator. Free the returned object with 4803 * g_object_unref() when no longer needed. 4804 * 4805 * Throws: GException on failure. 4806 */ 4807 extern(C) GFileInfo* function(GFileEnumerator* enumerator, GCancellable* cancellable, GError** err) nextFile; 4808 /** */ 4809 extern(C) int function(GFileEnumerator* enumerator, GCancellable* cancellable, GError** err) closeFn; 4810 /** */ 4811 extern(C) void function(GFileEnumerator* enumerator, int numFiles, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) nextFilesAsync; 4812 /** 4813 * 4814 * Params: 4815 * enumerator = a #GFileEnumerator. 4816 * result = a #GAsyncResult. 4817 * Returns: a #GList of #GFileInfos. You must free the list with 4818 * g_list_free() and unref the infos with g_object_unref() when you're 4819 * done with them. 4820 * 4821 * Throws: GException on failure. 4822 */ 4823 extern(C) GList* function(GFileEnumerator* enumerator, GAsyncResult* result, GError** err) nextFilesFinish; 4824 /** */ 4825 extern(C) void function(GFileEnumerator* enumerator, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) closeAsync; 4826 /** 4827 * 4828 * Params: 4829 * enumerator = a #GFileEnumerator. 4830 * result = a #GAsyncResult. 4831 * Returns: %TRUE if the close operation has finished successfully. 4832 * 4833 * Throws: GException on failure. 4834 */ 4835 extern(C) int function(GFileEnumerator* enumerator, GAsyncResult* result, GError** err) closeFinish; 4836 /** */ 4837 extern(C) void function() GReserved1; 4838 /** */ 4839 extern(C) void function() GReserved2; 4840 /** */ 4841 extern(C) void function() GReserved3; 4842 /** */ 4843 extern(C) void function() GReserved4; 4844 /** */ 4845 extern(C) void function() GReserved5; 4846 /** */ 4847 extern(C) void function() GReserved6; 4848 /** */ 4849 extern(C) void function() GReserved7; 4850 } 4851 4852 struct GFileEnumeratorPrivate; 4853 4854 struct GFileIOStream 4855 { 4856 GIOStream parentInstance; 4857 GFileIOStreamPrivate* priv; 4858 } 4859 4860 struct GFileIOStreamClass 4861 { 4862 GIOStreamClass parentClass; 4863 /** */ 4864 extern(C) long function(GFileIOStream* stream) tell; 4865 /** */ 4866 extern(C) int function(GFileIOStream* stream) canSeek; 4867 /** */ 4868 extern(C) int function(GFileIOStream* stream, long offset, GSeekType type, GCancellable* cancellable, GError** err) seek; 4869 /** */ 4870 extern(C) int function(GFileIOStream* stream) canTruncate; 4871 /** */ 4872 extern(C) int function(GFileIOStream* stream, long size, GCancellable* cancellable, GError** err) truncateFn; 4873 /** 4874 * 4875 * Params: 4876 * stream = a #GFileIOStream. 4877 * attributes = a file attribute query string. 4878 * cancellable = optional #GCancellable object, %NULL to ignore. 4879 * Returns: a #GFileInfo for the @stream, or %NULL on error. 4880 * 4881 * Throws: GException on failure. 4882 */ 4883 extern(C) GFileInfo* function(GFileIOStream* stream, const(char)* attributes, GCancellable* cancellable, GError** err) queryInfo; 4884 /** */ 4885 extern(C) void function(GFileIOStream* stream, const(char)* attributes, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) queryInfoAsync; 4886 /** 4887 * 4888 * Params: 4889 * stream = a #GFileIOStream. 4890 * result = a #GAsyncResult. 4891 * Returns: A #GFileInfo for the finished query. 4892 * 4893 * Throws: GException on failure. 4894 */ 4895 extern(C) GFileInfo* function(GFileIOStream* stream, GAsyncResult* result, GError** err) queryInfoFinish; 4896 /** 4897 * 4898 * Params: 4899 * stream = a #GFileIOStream. 4900 * Returns: the entity tag for the stream. 4901 */ 4902 extern(C) char* function(GFileIOStream* stream) getEtag; 4903 /** */ 4904 extern(C) void function() GReserved1; 4905 /** */ 4906 extern(C) void function() GReserved2; 4907 /** */ 4908 extern(C) void function() GReserved3; 4909 /** */ 4910 extern(C) void function() GReserved4; 4911 /** */ 4912 extern(C) void function() GReserved5; 4913 } 4914 4915 struct GFileIOStreamPrivate; 4916 4917 struct GFileIcon; 4918 4919 struct GFileIconClass; 4920 4921 /** 4922 * An interface for writing VFS file handles. 4923 */ 4924 struct GFileIface 4925 { 4926 /** 4927 * The parent interface. 4928 */ 4929 GTypeInterface gIface; 4930 /** 4931 * 4932 * Params: 4933 * file = input #GFile 4934 * Returns: a new #GFile that is a duplicate 4935 * of the given #GFile. 4936 */ 4937 extern(C) GFile* function(GFile* file) dup; 4938 /** 4939 * 4940 * Params: 4941 * file = #gconstpointer to a #GFile 4942 * Returns: 0 if @file is not a valid #GFile, otherwise an 4943 * integer that can be used as hash value for the #GFile. 4944 * This function is intended for easily hashing a #GFile to 4945 * add to a #GHashTable or similar data structure. 4946 */ 4947 extern(C) uint function(GFile* file) hash; 4948 /** 4949 * 4950 * Params: 4951 * file1 = the first #GFile 4952 * file2 = the second #GFile 4953 * Returns: %TRUE if @file1 and @file2 are equal. 4954 */ 4955 extern(C) int function(GFile* file1, GFile* file2) equal; 4956 /** 4957 * 4958 * Params: 4959 * file = input #GFile 4960 * Returns: %TRUE if @file is native 4961 */ 4962 extern(C) int function(GFile* file) isNative; 4963 /** 4964 * 4965 * Params: 4966 * file = input #GFile 4967 * uriScheme = a string containing a URI scheme 4968 * Returns: %TRUE if #GFile's backend supports the 4969 * given URI scheme, %FALSE if URI scheme is %NULL, 4970 * not supported, or #GFile is invalid. 4971 */ 4972 extern(C) int function(GFile* file, const(char)* uriScheme) hasUriScheme; 4973 /** 4974 * 4975 * Params: 4976 * file = input #GFile 4977 * Returns: a string containing the URI scheme for the given 4978 * #GFile or %NULL if the #GFile was constructed with an invalid URI. The 4979 * returned string should be freed with g_free() when no longer needed. 4980 */ 4981 extern(C) char* function(GFile* file) getUriScheme; 4982 /** 4983 * 4984 * Params: 4985 * file = input #GFile 4986 * Returns: string containing the #GFile's 4987 * base name, or %NULL if given #GFile is invalid. The returned string 4988 * should be freed with g_free() when no longer needed. 4989 */ 4990 extern(C) char* function(GFile* file) getBasename; 4991 /** 4992 * 4993 * Params: 4994 * file = input #GFile 4995 * Returns: string containing the #GFile's path, 4996 * or %NULL if no such path exists. The returned string should be freed 4997 * with g_free() when no longer needed. 4998 */ 4999 extern(C) char* function(GFile* file) getPath; 5000 /** 5001 * 5002 * Params: 5003 * file = input #GFile 5004 * Returns: a string containing the #GFile's URI. If the #GFile was constructed 5005 * with an invalid URI, an invalid URI is returned. 5006 * The returned string should be freed with g_free() 5007 * when no longer needed. 5008 */ 5009 extern(C) char* function(GFile* file) getUri; 5010 /** 5011 * 5012 * Params: 5013 * file = input #GFile 5014 * Returns: a string containing the #GFile's parse name. 5015 * The returned string should be freed with g_free() 5016 * when no longer needed. 5017 */ 5018 extern(C) char* function(GFile* file) getParseName; 5019 /** 5020 * 5021 * Params: 5022 * file = input #GFile 5023 * Returns: a #GFile structure to the 5024 * parent of the given #GFile or %NULL if there is no parent. Free 5025 * the returned object with g_object_unref(). 5026 */ 5027 extern(C) GFile* function(GFile* file) getParent; 5028 /** 5029 * 5030 * Params: 5031 * prefix = input #GFile 5032 * file = input #GFile 5033 * Returns: %TRUE if the @file's parent, grandparent, etc is @prefix, 5034 * %FALSE otherwise. 5035 */ 5036 extern(C) int function(GFile* prefix, GFile* file) prefixMatches; 5037 /** 5038 * 5039 * Params: 5040 * parent = input #GFile 5041 * descendant = input #GFile 5042 * Returns: string with the relative path from 5043 * @descendant to @parent, or %NULL if @descendant doesn't have @parent as 5044 * prefix. The returned string should be freed with g_free() when 5045 * no longer needed. 5046 */ 5047 extern(C) char* function(GFile* parent, GFile* descendant) getRelativePath; 5048 /** 5049 * 5050 * Params: 5051 * file = input #GFile 5052 * relativePath = a given relative path string 5053 * Returns: #GFile to the resolved path. 5054 * %NULL if @relative_path is %NULL or if @file is invalid. 5055 * Free the returned object with g_object_unref(). 5056 */ 5057 extern(C) GFile* function(GFile* file, char* relativePath) resolveRelativePath; 5058 /** 5059 * 5060 * Params: 5061 * file = input #GFile 5062 * displayName = string to a possible child 5063 * Returns: a #GFile to the specified child, or 5064 * %NULL if the display name couldn't be converted. 5065 * Free the returned object with g_object_unref(). 5066 * 5067 * Throws: GException on failure. 5068 */ 5069 extern(C) GFile* function(GFile* file, const(char)* displayName, GError** err) getChildForDisplayName; 5070 /** 5071 * 5072 * Params: 5073 * file = input #GFile 5074 * attributes = an attribute query string 5075 * flags = a set of #GFileQueryInfoFlags 5076 * cancellable = optional #GCancellable object, 5077 * %NULL to ignore 5078 * Returns: A #GFileEnumerator if successful, 5079 * %NULL on error. Free the returned object with g_object_unref(). 5080 * 5081 * Throws: GException on failure. 5082 */ 5083 extern(C) GFileEnumerator* function(GFile* file, const(char)* attributes, GFileQueryInfoFlags flags, GCancellable* cancellable, GError** err) enumerateChildren; 5084 /** */ 5085 extern(C) void function(GFile* file, const(char)* attributes, GFileQueryInfoFlags flags, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) enumerateChildrenAsync; 5086 /** 5087 * 5088 * Params: 5089 * file = input #GFile 5090 * res = a #GAsyncResult 5091 * Returns: a #GFileEnumerator or %NULL 5092 * if an error occurred. 5093 * Free the returned object with g_object_unref(). 5094 * 5095 * Throws: GException on failure. 5096 */ 5097 extern(C) GFileEnumerator* function(GFile* file, GAsyncResult* res, GError** err) enumerateChildrenFinish; 5098 /** 5099 * 5100 * Params: 5101 * file = input #GFile 5102 * attributes = an attribute query string 5103 * flags = a set of #GFileQueryInfoFlags 5104 * cancellable = optional #GCancellable object, 5105 * %NULL to ignore 5106 * Returns: a #GFileInfo for the given @file, or %NULL 5107 * on error. Free the returned object with g_object_unref(). 5108 * 5109 * Throws: GException on failure. 5110 */ 5111 extern(C) GFileInfo* function(GFile* file, const(char)* attributes, GFileQueryInfoFlags flags, GCancellable* cancellable, GError** err) queryInfo; 5112 /** */ 5113 extern(C) void function(GFile* file, const(char)* attributes, GFileQueryInfoFlags flags, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) queryInfoAsync; 5114 /** 5115 * 5116 * Params: 5117 * file = input #GFile 5118 * res = a #GAsyncResult 5119 * Returns: #GFileInfo for given @file 5120 * or %NULL on error. Free the returned object with 5121 * g_object_unref(). 5122 * 5123 * Throws: GException on failure. 5124 */ 5125 extern(C) GFileInfo* function(GFile* file, GAsyncResult* res, GError** err) queryInfoFinish; 5126 /** 5127 * 5128 * Params: 5129 * file = input #GFile 5130 * attributes = an attribute query string 5131 * cancellable = optional #GCancellable object, 5132 * %NULL to ignore 5133 * Returns: a #GFileInfo or %NULL if there was an error. 5134 * Free the returned object with g_object_unref(). 5135 * 5136 * Throws: GException on failure. 5137 */ 5138 extern(C) GFileInfo* function(GFile* file, const(char)* attributes, GCancellable* cancellable, GError** err) queryFilesystemInfo; 5139 /** */ 5140 extern(C) void function(GFile* file, const(char)* attributes, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) queryFilesystemInfoAsync; 5141 /** 5142 * 5143 * Params: 5144 * file = input #GFile 5145 * res = a #GAsyncResult 5146 * Returns: #GFileInfo for given @file 5147 * or %NULL on error. 5148 * Free the returned object with g_object_unref(). 5149 * 5150 * Throws: GException on failure. 5151 */ 5152 extern(C) GFileInfo* function(GFile* file, GAsyncResult* res, GError** err) queryFilesystemInfoFinish; 5153 /** 5154 * 5155 * Params: 5156 * file = input #GFile 5157 * cancellable = optional #GCancellable object, 5158 * %NULL to ignore 5159 * Returns: a #GMount where the @file is located 5160 * or %NULL on error. 5161 * Free the returned object with g_object_unref(). 5162 * 5163 * Throws: GException on failure. 5164 */ 5165 extern(C) GMount* function(GFile* file, GCancellable* cancellable, GError** err) findEnclosingMount; 5166 /** */ 5167 extern(C) void function(GFile* file, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) findEnclosingMountAsync; 5168 /** 5169 * 5170 * Params: 5171 * file = a #GFile 5172 * res = a #GAsyncResult 5173 * Returns: #GMount for given @file or %NULL on error. 5174 * Free the returned object with g_object_unref(). 5175 * 5176 * Throws: GException on failure. 5177 */ 5178 extern(C) GMount* function(GFile* file, GAsyncResult* res, GError** err) findEnclosingMountFinish; 5179 /** 5180 * 5181 * Params: 5182 * file = input #GFile 5183 * displayName = a string 5184 * cancellable = optional #GCancellable object, 5185 * %NULL to ignore 5186 * Returns: a #GFile specifying what @file was renamed to, 5187 * or %NULL if there was an error. 5188 * Free the returned object with g_object_unref(). 5189 * 5190 * Throws: GException on failure. 5191 */ 5192 extern(C) GFile* function(GFile* file, const(char)* displayName, GCancellable* cancellable, GError** err) setDisplayName; 5193 /** */ 5194 extern(C) void function(GFile* file, const(char)* displayName, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) setDisplayNameAsync; 5195 /** 5196 * 5197 * Params: 5198 * file = input #GFile 5199 * res = a #GAsyncResult 5200 * Returns: a #GFile or %NULL on error. 5201 * Free the returned object with g_object_unref(). 5202 * 5203 * Throws: GException on failure. 5204 */ 5205 extern(C) GFile* function(GFile* file, GAsyncResult* res, GError** err) setDisplayNameFinish; 5206 /** 5207 * 5208 * Params: 5209 * file = input #GFile 5210 * cancellable = optional #GCancellable object, 5211 * %NULL to ignore 5212 * Returns: a #GFileAttributeInfoList describing the settable attributes. 5213 * When you are done with it, release it with 5214 * g_file_attribute_info_list_unref() 5215 * 5216 * Throws: GException on failure. 5217 */ 5218 extern(C) GFileAttributeInfoList* function(GFile* file, GCancellable* cancellable, GError** err) querySettableAttributes; 5219 /** */ 5220 extern(C) void function() QuerySettableAttributesAsync; 5221 /** */ 5222 extern(C) void function() QuerySettableAttributesFinish; 5223 /** 5224 * 5225 * Params: 5226 * file = input #GFile 5227 * cancellable = optional #GCancellable object, 5228 * %NULL to ignore 5229 * Returns: a #GFileAttributeInfoList describing the writable namespaces. 5230 * When you are done with it, release it with 5231 * g_file_attribute_info_list_unref() 5232 * 5233 * Throws: GException on failure. 5234 */ 5235 extern(C) GFileAttributeInfoList* function(GFile* file, GCancellable* cancellable, GError** err) queryWritableNamespaces; 5236 /** */ 5237 extern(C) void function() QueryWritableNamespacesAsync; 5238 /** */ 5239 extern(C) void function() QueryWritableNamespacesFinish; 5240 /** 5241 * 5242 * Params: 5243 * file = input #GFile 5244 * attribute = a string containing the attribute's name 5245 * type = The type of the attribute 5246 * valueP = a pointer to the value (or the pointer 5247 * itself if the type is a pointer type) 5248 * flags = a set of #GFileQueryInfoFlags 5249 * cancellable = optional #GCancellable object, 5250 * %NULL to ignore 5251 * Returns: %TRUE if the attribute was set, %FALSE otherwise. 5252 * 5253 * Throws: GException on failure. 5254 */ 5255 extern(C) int function(GFile* file, const(char)* attribute, GFileAttributeType type, void* valueP, GFileQueryInfoFlags flags, GCancellable* cancellable, GError** err) setAttribute; 5256 /** 5257 * 5258 * Params: 5259 * file = input #GFile 5260 * info = a #GFileInfo 5261 * flags = #GFileQueryInfoFlags 5262 * cancellable = optional #GCancellable object, 5263 * %NULL to ignore 5264 * Returns: %FALSE if there was any error, %TRUE otherwise. 5265 * 5266 * Throws: GException on failure. 5267 */ 5268 extern(C) int function(GFile* file, GFileInfo* info, GFileQueryInfoFlags flags, GCancellable* cancellable, GError** err) setAttributesFromInfo; 5269 /** */ 5270 extern(C) void function(GFile* file, GFileInfo* info, GFileQueryInfoFlags flags, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) setAttributesAsync; 5271 /** 5272 * 5273 * Params: 5274 * file = input #GFile 5275 * result = a #GAsyncResult 5276 * info = a #GFileInfo 5277 * Returns: %TRUE if the attributes were set correctly, %FALSE otherwise. 5278 * 5279 * Throws: GException on failure. 5280 */ 5281 extern(C) int function(GFile* file, GAsyncResult* result, GFileInfo** info, GError** err) setAttributesFinish; 5282 /** 5283 * 5284 * Params: 5285 * file = #GFile to read 5286 * cancellable = a #GCancellable 5287 * Returns: #GFileInputStream or %NULL on error. 5288 * Free the returned object with g_object_unref(). 5289 * 5290 * Throws: GException on failure. 5291 */ 5292 extern(C) GFileInputStream* function(GFile* file, GCancellable* cancellable, GError** err) readFn; 5293 /** */ 5294 extern(C) void function(GFile* file, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) readAsync; 5295 /** 5296 * 5297 * Params: 5298 * file = input #GFile 5299 * res = a #GAsyncResult 5300 * Returns: a #GFileInputStream or %NULL on error. 5301 * Free the returned object with g_object_unref(). 5302 * 5303 * Throws: GException on failure. 5304 */ 5305 extern(C) GFileInputStream* function(GFile* file, GAsyncResult* res, GError** err) readFinish; 5306 /** 5307 * 5308 * Params: 5309 * file = input #GFile 5310 * flags = a set of #GFileCreateFlags 5311 * cancellable = optional #GCancellable object, 5312 * %NULL to ignore 5313 * Returns: a #GFileOutputStream, or %NULL on error. 5314 * Free the returned object with g_object_unref(). 5315 * 5316 * Throws: GException on failure. 5317 */ 5318 extern(C) GFileOutputStream* function(GFile* file, GFileCreateFlags flags, GCancellable* cancellable, GError** err) appendTo; 5319 /** */ 5320 extern(C) void function(GFile* file, GFileCreateFlags flags, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) appendToAsync; 5321 /** 5322 * 5323 * Params: 5324 * file = input #GFile 5325 * res = #GAsyncResult 5326 * Returns: a valid #GFileOutputStream 5327 * or %NULL on error. 5328 * Free the returned object with g_object_unref(). 5329 * 5330 * Throws: GException on failure. 5331 */ 5332 extern(C) GFileOutputStream* function(GFile* file, GAsyncResult* res, GError** err) appendToFinish; 5333 /** 5334 * 5335 * Params: 5336 * file = input #GFile 5337 * flags = a set of #GFileCreateFlags 5338 * cancellable = optional #GCancellable object, 5339 * %NULL to ignore 5340 * Returns: a #GFileOutputStream for the newly created 5341 * file, or %NULL on error. 5342 * Free the returned object with g_object_unref(). 5343 * 5344 * Throws: GException on failure. 5345 */ 5346 extern(C) GFileOutputStream* function(GFile* file, GFileCreateFlags flags, GCancellable* cancellable, GError** err) create; 5347 /** */ 5348 extern(C) void function(GFile* file, GFileCreateFlags flags, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) createAsync; 5349 /** 5350 * 5351 * Params: 5352 * file = input #GFile 5353 * res = a #GAsyncResult 5354 * Returns: a #GFileOutputStream or %NULL on error. 5355 * Free the returned object with g_object_unref(). 5356 * 5357 * Throws: GException on failure. 5358 */ 5359 extern(C) GFileOutputStream* function(GFile* file, GAsyncResult* res, GError** err) createFinish; 5360 /** 5361 * 5362 * Params: 5363 * file = input #GFile 5364 * etag = an optional [entity tag][gfile-etag] 5365 * for the current #GFile, or #NULL to ignore 5366 * makeBackup = %TRUE if a backup should be created 5367 * flags = a set of #GFileCreateFlags 5368 * cancellable = optional #GCancellable object, 5369 * %NULL to ignore 5370 * Returns: a #GFileOutputStream or %NULL on error. 5371 * Free the returned object with g_object_unref(). 5372 * 5373 * Throws: GException on failure. 5374 */ 5375 extern(C) GFileOutputStream* function(GFile* file, const(char)* etag, int makeBackup, GFileCreateFlags flags, GCancellable* cancellable, GError** err) replace; 5376 /** */ 5377 extern(C) void function(GFile* file, const(char)* etag, int makeBackup, GFileCreateFlags flags, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) replaceAsync; 5378 /** 5379 * 5380 * Params: 5381 * file = input #GFile 5382 * res = a #GAsyncResult 5383 * Returns: a #GFileOutputStream, or %NULL on error. 5384 * Free the returned object with g_object_unref(). 5385 * 5386 * Throws: GException on failure. 5387 */ 5388 extern(C) GFileOutputStream* function(GFile* file, GAsyncResult* res, GError** err) replaceFinish; 5389 /** 5390 * 5391 * Params: 5392 * file = input #GFile 5393 * cancellable = optional #GCancellable object, 5394 * %NULL to ignore 5395 * Returns: %TRUE if the file was deleted. %FALSE otherwise. 5396 * 5397 * Throws: GException on failure. 5398 */ 5399 extern(C) int function(GFile* file, GCancellable* cancellable, GError** err) deleteFile; 5400 /** */ 5401 extern(C) void function(GFile* file, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) deleteFileAsync; 5402 /** 5403 * 5404 * Params: 5405 * file = input #GFile 5406 * result = a #GAsyncResult 5407 * Returns: %TRUE if the file was deleted. %FALSE otherwise. 5408 * 5409 * Throws: GException on failure. 5410 */ 5411 extern(C) int function(GFile* file, GAsyncResult* result, GError** err) deleteFileFinish; 5412 /** 5413 * 5414 * Params: 5415 * file = #GFile to send to trash 5416 * cancellable = optional #GCancellable object, 5417 * %NULL to ignore 5418 * Returns: %TRUE on successful trash, %FALSE otherwise. 5419 * 5420 * Throws: GException on failure. 5421 */ 5422 extern(C) int function(GFile* file, GCancellable* cancellable, GError** err) trash; 5423 /** */ 5424 extern(C) void function(GFile* file, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) trashAsync; 5425 /** 5426 * 5427 * Params: 5428 * file = input #GFile 5429 * result = a #GAsyncResult 5430 * Returns: %TRUE on successful trash, %FALSE otherwise. 5431 * 5432 * Throws: GException on failure. 5433 */ 5434 extern(C) int function(GFile* file, GAsyncResult* result, GError** err) trashFinish; 5435 /** 5436 * 5437 * Params: 5438 * file = input #GFile 5439 * cancellable = optional #GCancellable object, 5440 * %NULL to ignore 5441 * Returns: %TRUE on successful creation, %FALSE otherwise. 5442 * 5443 * Throws: GException on failure. 5444 */ 5445 extern(C) int function(GFile* file, GCancellable* cancellable, GError** err) makeDirectory; 5446 /** */ 5447 extern(C) void function(GFile* file, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) makeDirectoryAsync; 5448 /** 5449 * 5450 * Params: 5451 * file = input #GFile 5452 * result = a #GAsyncResult 5453 * Returns: %TRUE on successful directory creation, %FALSE otherwise. 5454 * 5455 * Throws: GException on failure. 5456 */ 5457 extern(C) int function(GFile* file, GAsyncResult* result, GError** err) makeDirectoryFinish; 5458 /** 5459 * 5460 * Params: 5461 * file = a #GFile with the name of the symlink to create 5462 * symlinkValue = a string with the path for the target 5463 * of the new symlink 5464 * cancellable = optional #GCancellable object, 5465 * %NULL to ignore 5466 * Returns: %TRUE on the creation of a new symlink, %FALSE otherwise. 5467 * 5468 * Throws: GException on failure. 5469 */ 5470 extern(C) int function(GFile* file, char* symlinkValue, GCancellable* cancellable, GError** err) makeSymbolicLink; 5471 /** */ 5472 extern(C) void function() MakeSymbolicLinkAsync; 5473 /** */ 5474 extern(C) void function() MakeSymbolicLinkFinish; 5475 /** 5476 * 5477 * Params: 5478 * source = input #GFile 5479 * destination = destination #GFile 5480 * flags = set of #GFileCopyFlags 5481 * cancellable = optional #GCancellable object, 5482 * %NULL to ignore 5483 * progressCallback = function to callback with 5484 * progress information, or %NULL if progress information is not needed 5485 * progressCallbackData = user data to pass to @progress_callback 5486 * Returns: %TRUE on success, %FALSE otherwise. 5487 * 5488 * Throws: GException on failure. 5489 */ 5490 extern(C) int function(GFile* source, GFile* destination, GFileCopyFlags flags, GCancellable* cancellable, GFileProgressCallback progressCallback, void* progressCallbackData, GError** err) copy; 5491 /** */ 5492 extern(C) void function(GFile* source, GFile* destination, GFileCopyFlags flags, int ioPriority, GCancellable* cancellable, GFileProgressCallback progressCallback, void* progressCallbackData, GAsyncReadyCallback callback, void* userData) copyAsync; 5493 /** 5494 * 5495 * Params: 5496 * file = input #GFile 5497 * res = a #GAsyncResult 5498 * Returns: a %TRUE on success, %FALSE on error. 5499 * 5500 * Throws: GException on failure. 5501 */ 5502 extern(C) int function(GFile* file, GAsyncResult* res, GError** err) copyFinish; 5503 /** 5504 * 5505 * Params: 5506 * source = #GFile pointing to the source location 5507 * destination = #GFile pointing to the destination location 5508 * flags = set of #GFileCopyFlags 5509 * cancellable = optional #GCancellable object, 5510 * %NULL to ignore 5511 * progressCallback = #GFileProgressCallback 5512 * function for updates 5513 * progressCallbackData = gpointer to user data for 5514 * the callback function 5515 * Returns: %TRUE on successful move, %FALSE otherwise. 5516 * 5517 * Throws: GException on failure. 5518 */ 5519 extern(C) int function(GFile* source, GFile* destination, GFileCopyFlags flags, GCancellable* cancellable, GFileProgressCallback progressCallback, void* progressCallbackData, GError** err) move; 5520 /** */ 5521 extern(C) void function() MoveAsync; 5522 /** */ 5523 extern(C) void function() MoveFinish; 5524 /** */ 5525 extern(C) void function(GFile* file, GMountMountFlags flags, GMountOperation* mountOperation, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) mountMountable; 5526 /** 5527 * 5528 * Params: 5529 * file = input #GFile 5530 * result = a #GAsyncResult 5531 * Returns: a #GFile or %NULL on error. 5532 * Free the returned object with g_object_unref(). 5533 * 5534 * Throws: GException on failure. 5535 */ 5536 extern(C) GFile* function(GFile* file, GAsyncResult* result, GError** err) mountMountableFinish; 5537 /** */ 5538 extern(C) void function(GFile* file, GMountUnmountFlags flags, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) unmountMountable; 5539 /** 5540 * 5541 * Params: 5542 * file = input #GFile 5543 * result = a #GAsyncResult 5544 * Returns: %TRUE if the operation finished successfully. 5545 * %FALSE otherwise. 5546 * 5547 * Throws: GException on failure. 5548 */ 5549 extern(C) int function(GFile* file, GAsyncResult* result, GError** err) unmountMountableFinish; 5550 /** */ 5551 extern(C) void function(GFile* file, GMountUnmountFlags flags, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) ejectMountable; 5552 /** 5553 * 5554 * Params: 5555 * file = input #GFile 5556 * result = a #GAsyncResult 5557 * Returns: %TRUE if the @file was ejected successfully. 5558 * %FALSE otherwise. 5559 * 5560 * Throws: GException on failure. 5561 */ 5562 extern(C) int function(GFile* file, GAsyncResult* result, GError** err) ejectMountableFinish; 5563 /** */ 5564 extern(C) void function(GFile* location, GMountMountFlags flags, GMountOperation* mountOperation, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) mountEnclosingVolume; 5565 /** 5566 * 5567 * Params: 5568 * location = input #GFile 5569 * result = a #GAsyncResult 5570 * Returns: %TRUE if successful. If an error has occurred, 5571 * this function will return %FALSE and set @error 5572 * appropriately if present. 5573 * 5574 * Throws: GException on failure. 5575 */ 5576 extern(C) int function(GFile* location, GAsyncResult* result, GError** err) mountEnclosingVolumeFinish; 5577 /** 5578 * 5579 * Params: 5580 * file = input #GFile 5581 * flags = a set of #GFileMonitorFlags 5582 * cancellable = optional #GCancellable object, 5583 * %NULL to ignore 5584 * Returns: a #GFileMonitor for the given @file, 5585 * or %NULL on error. 5586 * Free the returned object with g_object_unref(). 5587 * 5588 * Throws: GException on failure. 5589 */ 5590 extern(C) GFileMonitor* function(GFile* file, GFileMonitorFlags flags, GCancellable* cancellable, GError** err) monitorDir; 5591 /** 5592 * 5593 * Params: 5594 * file = input #GFile 5595 * flags = a set of #GFileMonitorFlags 5596 * cancellable = optional #GCancellable object, 5597 * %NULL to ignore 5598 * Returns: a #GFileMonitor for the given @file, 5599 * or %NULL on error. 5600 * Free the returned object with g_object_unref(). 5601 * 5602 * Throws: GException on failure. 5603 */ 5604 extern(C) GFileMonitor* function(GFile* file, GFileMonitorFlags flags, GCancellable* cancellable, GError** err) monitorFile; 5605 /** 5606 * 5607 * Params: 5608 * file = #GFile to open 5609 * cancellable = a #GCancellable 5610 * Returns: #GFileIOStream or %NULL on error. 5611 * Free the returned object with g_object_unref(). 5612 * 5613 * Throws: GException on failure. 5614 */ 5615 extern(C) GFileIOStream* function(GFile* file, GCancellable* cancellable, GError** err) openReadwrite; 5616 /** */ 5617 extern(C) void function(GFile* file, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) openReadwriteAsync; 5618 /** 5619 * 5620 * Params: 5621 * file = input #GFile 5622 * res = a #GAsyncResult 5623 * Returns: a #GFileIOStream or %NULL on error. 5624 * Free the returned object with g_object_unref(). 5625 * 5626 * Throws: GException on failure. 5627 */ 5628 extern(C) GFileIOStream* function(GFile* file, GAsyncResult* res, GError** err) openReadwriteFinish; 5629 /** 5630 * 5631 * Params: 5632 * file = a #GFile 5633 * flags = a set of #GFileCreateFlags 5634 * cancellable = optional #GCancellable object, 5635 * %NULL to ignore 5636 * Returns: a #GFileIOStream for the newly created 5637 * file, or %NULL on error. 5638 * Free the returned object with g_object_unref(). 5639 * 5640 * Throws: GException on failure. 5641 */ 5642 extern(C) GFileIOStream* function(GFile* file, GFileCreateFlags flags, GCancellable* cancellable, GError** err) createReadwrite; 5643 /** */ 5644 extern(C) void function(GFile* file, GFileCreateFlags flags, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) createReadwriteAsync; 5645 /** 5646 * 5647 * Params: 5648 * file = input #GFile 5649 * res = a #GAsyncResult 5650 * Returns: a #GFileIOStream or %NULL on error. 5651 * Free the returned object with g_object_unref(). 5652 * 5653 * Throws: GException on failure. 5654 */ 5655 extern(C) GFileIOStream* function(GFile* file, GAsyncResult* res, GError** err) createReadwriteFinish; 5656 /** 5657 * 5658 * Params: 5659 * file = a #GFile 5660 * etag = an optional [entity tag][gfile-etag] 5661 * for the current #GFile, or #NULL to ignore 5662 * makeBackup = %TRUE if a backup should be created 5663 * flags = a set of #GFileCreateFlags 5664 * cancellable = optional #GCancellable object, 5665 * %NULL to ignore 5666 * Returns: a #GFileIOStream or %NULL on error. 5667 * Free the returned object with g_object_unref(). 5668 * 5669 * Throws: GException on failure. 5670 */ 5671 extern(C) GFileIOStream* function(GFile* file, const(char)* etag, int makeBackup, GFileCreateFlags flags, GCancellable* cancellable, GError** err) replaceReadwrite; 5672 /** */ 5673 extern(C) void function(GFile* file, const(char)* etag, int makeBackup, GFileCreateFlags flags, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) replaceReadwriteAsync; 5674 /** 5675 * 5676 * Params: 5677 * file = input #GFile 5678 * res = a #GAsyncResult 5679 * Returns: a #GFileIOStream, or %NULL on error. 5680 * Free the returned object with g_object_unref(). 5681 * 5682 * Throws: GException on failure. 5683 */ 5684 extern(C) GFileIOStream* function(GFile* file, GAsyncResult* res, GError** err) replaceReadwriteFinish; 5685 /** */ 5686 extern(C) void function(GFile* file, GDriveStartFlags flags, GMountOperation* startOperation, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) startMountable; 5687 /** 5688 * 5689 * Params: 5690 * file = input #GFile 5691 * result = a #GAsyncResult 5692 * Returns: %TRUE if the operation finished successfully. %FALSE 5693 * otherwise. 5694 * 5695 * Throws: GException on failure. 5696 */ 5697 extern(C) int function(GFile* file, GAsyncResult* result, GError** err) startMountableFinish; 5698 /** */ 5699 extern(C) void function(GFile* file, GMountUnmountFlags flags, GMountOperation* mountOperation, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) stopMountable; 5700 /** 5701 * 5702 * Params: 5703 * file = input #GFile 5704 * result = a #GAsyncResult 5705 * Returns: %TRUE if the operation finished successfully. 5706 * %FALSE otherwise. 5707 * 5708 * Throws: GException on failure. 5709 */ 5710 extern(C) int function(GFile* file, GAsyncResult* result, GError** err) stopMountableFinish; 5711 /** 5712 * a boolean that indicates whether the #GFile implementation supports thread-default contexts. Since 2.22. 5713 */ 5714 bool supportsThreadContexts; 5715 /** */ 5716 extern(C) void function(GFile* file, GMountUnmountFlags flags, GMountOperation* mountOperation, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) unmountMountableWithOperation; 5717 /** 5718 * 5719 * Params: 5720 * file = input #GFile 5721 * result = a #GAsyncResult 5722 * Returns: %TRUE if the operation finished successfully. 5723 * %FALSE otherwise. 5724 * 5725 * Throws: GException on failure. 5726 */ 5727 extern(C) int function(GFile* file, GAsyncResult* result, GError** err) unmountMountableWithOperationFinish; 5728 /** */ 5729 extern(C) void function(GFile* file, GMountUnmountFlags flags, GMountOperation* mountOperation, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) ejectMountableWithOperation; 5730 /** 5731 * 5732 * Params: 5733 * file = input #GFile 5734 * result = a #GAsyncResult 5735 * Returns: %TRUE if the @file was ejected successfully. 5736 * %FALSE otherwise. 5737 * 5738 * Throws: GException on failure. 5739 */ 5740 extern(C) int function(GFile* file, GAsyncResult* result, GError** err) ejectMountableWithOperationFinish; 5741 /** */ 5742 extern(C) void function(GFile* file, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) pollMountable; 5743 /** 5744 * 5745 * Params: 5746 * file = input #GFile 5747 * result = a #GAsyncResult 5748 * Returns: %TRUE if the operation finished successfully. %FALSE 5749 * otherwise. 5750 * 5751 * Throws: GException on failure. 5752 */ 5753 extern(C) int function(GFile* file, GAsyncResult* result, GError** err) pollMountableFinish; 5754 /** 5755 * 5756 * Params: 5757 * file = a #GFile 5758 * flags = #GFileMeasureFlags 5759 * cancellable = optional #GCancellable 5760 * progressCallback = a #GFileMeasureProgressCallback 5761 * progressData = user_data for @progress_callback 5762 * diskUsage = the number of bytes of disk space used 5763 * numDirs = the number of directories encountered 5764 * numFiles = the number of non-directories encountered 5765 * Returns: %TRUE if successful, with the out parameters set. 5766 * %FALSE otherwise, with @error set. 5767 * 5768 * Throws: GException on failure. 5769 */ 5770 extern(C) int function(GFile* file, GFileMeasureFlags flags, GCancellable* cancellable, GFileMeasureProgressCallback progressCallback, void* progressData, ulong* diskUsage, ulong* numDirs, ulong* numFiles, GError** err) measureDiskUsage; 5771 /** */ 5772 extern(C) void function(GFile* file, GFileMeasureFlags flags, int ioPriority, GCancellable* cancellable, GFileMeasureProgressCallback progressCallback, void* progressData, GAsyncReadyCallback callback, void* userData) measureDiskUsageAsync; 5773 /** 5774 * 5775 * Params: 5776 * file = a #GFile 5777 * result = the #GAsyncResult passed to your #GAsyncReadyCallback 5778 * diskUsage = the number of bytes of disk space used 5779 * numDirs = the number of directories encountered 5780 * numFiles = the number of non-directories encountered 5781 * Returns: %TRUE if successful, with the out parameters set. 5782 * %FALSE otherwise, with @error set. 5783 * 5784 * Throws: GException on failure. 5785 */ 5786 extern(C) int function(GFile* file, GAsyncResult* result, ulong* diskUsage, ulong* numDirs, ulong* numFiles, GError** err) measureDiskUsageFinish; 5787 } 5788 5789 struct GFileInfo; 5790 5791 struct GFileInfoClass; 5792 5793 struct GFileInputStream 5794 { 5795 GInputStream parentInstance; 5796 GFileInputStreamPrivate* priv; 5797 } 5798 5799 struct GFileInputStreamClass 5800 { 5801 GInputStreamClass parentClass; 5802 /** */ 5803 extern(C) long function(GFileInputStream* stream) tell; 5804 /** */ 5805 extern(C) int function(GFileInputStream* stream) canSeek; 5806 /** */ 5807 extern(C) int function(GFileInputStream* stream, long offset, GSeekType type, GCancellable* cancellable, GError** err) seek; 5808 /** 5809 * 5810 * Params: 5811 * stream = a #GFileInputStream. 5812 * attributes = a file attribute query string. 5813 * cancellable = optional #GCancellable object, %NULL to ignore. 5814 * Returns: a #GFileInfo, or %NULL on error. 5815 * 5816 * Throws: GException on failure. 5817 */ 5818 extern(C) GFileInfo* function(GFileInputStream* stream, const(char)* attributes, GCancellable* cancellable, GError** err) queryInfo; 5819 /** */ 5820 extern(C) void function(GFileInputStream* stream, const(char)* attributes, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) queryInfoAsync; 5821 /** 5822 * 5823 * Params: 5824 * stream = a #GFileInputStream. 5825 * result = a #GAsyncResult. 5826 * Returns: #GFileInfo. 5827 * 5828 * Throws: GException on failure. 5829 */ 5830 extern(C) GFileInfo* function(GFileInputStream* stream, GAsyncResult* result, GError** err) queryInfoFinish; 5831 /** */ 5832 extern(C) void function() GReserved1; 5833 /** */ 5834 extern(C) void function() GReserved2; 5835 /** */ 5836 extern(C) void function() GReserved3; 5837 /** */ 5838 extern(C) void function() GReserved4; 5839 /** */ 5840 extern(C) void function() GReserved5; 5841 } 5842 5843 struct GFileInputStreamPrivate; 5844 5845 struct GFileMonitor 5846 { 5847 GObject parentInstance; 5848 GFileMonitorPrivate* priv; 5849 } 5850 5851 struct GFileMonitorClass 5852 { 5853 GObjectClass parentClass; 5854 /** */ 5855 extern(C) void function(GFileMonitor* monitor, GFile* file, GFile* otherFile, GFileMonitorEvent eventType) changed; 5856 /** 5857 * 5858 * Params: 5859 * monitor = a #GFileMonitor. 5860 * Returns: always %TRUE 5861 */ 5862 extern(C) int function(GFileMonitor* monitor) cancel; 5863 /** */ 5864 extern(C) void function() GReserved1; 5865 /** */ 5866 extern(C) void function() GReserved2; 5867 /** */ 5868 extern(C) void function() GReserved3; 5869 /** */ 5870 extern(C) void function() GReserved4; 5871 /** */ 5872 extern(C) void function() GReserved5; 5873 } 5874 5875 struct GFileMonitorPrivate; 5876 5877 struct GFileOutputStream 5878 { 5879 GOutputStream parentInstance; 5880 GFileOutputStreamPrivate* priv; 5881 } 5882 5883 struct GFileOutputStreamClass 5884 { 5885 GOutputStreamClass parentClass; 5886 /** */ 5887 extern(C) long function(GFileOutputStream* stream) tell; 5888 /** */ 5889 extern(C) int function(GFileOutputStream* stream) canSeek; 5890 /** */ 5891 extern(C) int function(GFileOutputStream* stream, long offset, GSeekType type, GCancellable* cancellable, GError** err) seek; 5892 /** */ 5893 extern(C) int function(GFileOutputStream* stream) canTruncate; 5894 /** */ 5895 extern(C) int function(GFileOutputStream* stream, long size, GCancellable* cancellable, GError** err) truncateFn; 5896 /** 5897 * 5898 * Params: 5899 * stream = a #GFileOutputStream. 5900 * attributes = a file attribute query string. 5901 * cancellable = optional #GCancellable object, %NULL to ignore. 5902 * Returns: a #GFileInfo for the @stream, or %NULL on error. 5903 * 5904 * Throws: GException on failure. 5905 */ 5906 extern(C) GFileInfo* function(GFileOutputStream* stream, const(char)* attributes, GCancellable* cancellable, GError** err) queryInfo; 5907 /** */ 5908 extern(C) void function(GFileOutputStream* stream, const(char)* attributes, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) queryInfoAsync; 5909 /** 5910 * 5911 * Params: 5912 * stream = a #GFileOutputStream. 5913 * result = a #GAsyncResult. 5914 * Returns: A #GFileInfo for the finished query. 5915 * 5916 * Throws: GException on failure. 5917 */ 5918 extern(C) GFileInfo* function(GFileOutputStream* stream, GAsyncResult* result, GError** err) queryInfoFinish; 5919 /** 5920 * 5921 * Params: 5922 * stream = a #GFileOutputStream. 5923 * Returns: the entity tag for the stream. 5924 */ 5925 extern(C) char* function(GFileOutputStream* stream) getEtag; 5926 /** */ 5927 extern(C) void function() GReserved1; 5928 /** */ 5929 extern(C) void function() GReserved2; 5930 /** */ 5931 extern(C) void function() GReserved3; 5932 /** */ 5933 extern(C) void function() GReserved4; 5934 /** */ 5935 extern(C) void function() GReserved5; 5936 } 5937 5938 struct GFileOutputStreamPrivate; 5939 5940 struct GFilenameCompleter; 5941 5942 struct GFilenameCompleterClass 5943 { 5944 GObjectClass parentClass; 5945 /** */ 5946 extern(C) void function(GFilenameCompleter* filenameCompleter) gotCompletionData; 5947 /** */ 5948 extern(C) void function() GReserved1; 5949 /** */ 5950 extern(C) void function() GReserved2; 5951 /** */ 5952 extern(C) void function() GReserved3; 5953 } 5954 5955 struct GFilterInputStream 5956 { 5957 GInputStream parentInstance; 5958 GInputStream* baseStream; 5959 } 5960 5961 struct GFilterInputStreamClass 5962 { 5963 GInputStreamClass parentClass; 5964 /** */ 5965 extern(C) void function() GReserved1; 5966 /** */ 5967 extern(C) void function() GReserved2; 5968 /** */ 5969 extern(C) void function() GReserved3; 5970 } 5971 5972 struct GFilterOutputStream 5973 { 5974 GOutputStream parentInstance; 5975 GOutputStream* baseStream; 5976 } 5977 5978 struct GFilterOutputStreamClass 5979 { 5980 GOutputStreamClass parentClass; 5981 /** */ 5982 extern(C) void function() GReserved1; 5983 /** */ 5984 extern(C) void function() GReserved2; 5985 /** */ 5986 extern(C) void function() GReserved3; 5987 } 5988 5989 struct GIOExtension; 5990 5991 struct GIOExtensionPoint; 5992 5993 struct GIOModule; 5994 5995 struct GIOModuleClass; 5996 5997 struct GIOModuleScope; 5998 5999 struct GIOSchedulerJob; 6000 6001 struct GIOStream 6002 { 6003 GObject parentInstance; 6004 GIOStreamPrivate* priv; 6005 } 6006 6007 struct GIOStreamAdapter; 6008 6009 struct GIOStreamClass 6010 { 6011 GObjectClass parentClass; 6012 /** 6013 * 6014 * Params: 6015 * stream = a #GIOStream 6016 * Returns: a #GInputStream, owned by the #GIOStream. 6017 * Do not free. 6018 */ 6019 extern(C) GInputStream* function(GIOStream* stream) getInputStream; 6020 /** 6021 * 6022 * Params: 6023 * stream = a #GIOStream 6024 * Returns: a #GOutputStream, owned by the #GIOStream. 6025 * Do not free. 6026 */ 6027 extern(C) GOutputStream* function(GIOStream* stream) getOutputStream; 6028 /** */ 6029 extern(C) int function(GIOStream* stream, GCancellable* cancellable, GError** err) closeFn; 6030 /** */ 6031 extern(C) void function(GIOStream* stream, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) closeAsync; 6032 /** 6033 * 6034 * Params: 6035 * stream = a #GIOStream 6036 * result = a #GAsyncResult 6037 * Returns: %TRUE if stream was successfully closed, %FALSE otherwise. 6038 * 6039 * Throws: GException on failure. 6040 */ 6041 extern(C) int function(GIOStream* stream, GAsyncResult* result, GError** err) closeFinish; 6042 /** */ 6043 extern(C) void function() GReserved1; 6044 /** */ 6045 extern(C) void function() GReserved2; 6046 /** */ 6047 extern(C) void function() GReserved3; 6048 /** */ 6049 extern(C) void function() GReserved4; 6050 /** */ 6051 extern(C) void function() GReserved5; 6052 /** */ 6053 extern(C) void function() GReserved6; 6054 /** */ 6055 extern(C) void function() GReserved7; 6056 /** */ 6057 extern(C) void function() GReserved8; 6058 /** */ 6059 extern(C) void function() GReserved9; 6060 /** */ 6061 extern(C) void function() GReserved10; 6062 } 6063 6064 struct GIOStreamPrivate; 6065 6066 struct GIcon; 6067 6068 /** 6069 * GIconIface is used to implement GIcon types for various 6070 * different systems. See #GThemedIcon and #GLoadableIcon for 6071 * examples of how to implement this interface. 6072 */ 6073 struct GIconIface 6074 { 6075 /** 6076 * The parent interface. 6077 */ 6078 GTypeInterface gIface; 6079 /** 6080 * 6081 * Params: 6082 * icon = #gconstpointer to an icon object. 6083 * Returns: a #guint containing a hash for the @icon, suitable for 6084 * use in a #GHashTable or similar data structure. 6085 */ 6086 extern(C) uint function(GIcon* icon) hash; 6087 /** 6088 * 6089 * Params: 6090 * icon1 = pointer to the first #GIcon. 6091 * icon2 = pointer to the second #GIcon. 6092 * Returns: %TRUE if @icon1 is equal to @icon2. %FALSE otherwise. 6093 */ 6094 extern(C) int function(GIcon* icon1, GIcon* icon2) equal; 6095 /** 6096 * 6097 * Params: 6098 * icon = a #GIcon. 6099 * Returns: An allocated NUL-terminated UTF8 string or 6100 * %NULL if @icon can't be serialized. Use g_free() to free. 6101 */ 6102 extern(C) int function(GIcon* icon, GPtrArray* tokens, int* outVersion) toTokens; 6103 /** */ 6104 extern(C) GIcon* function(char** tokens, int numTokens, int version_, GError** err) fromTokens; 6105 /** 6106 * 6107 * Params: 6108 * icon = a #GIcon 6109 * Returns: a #GVariant, or %NULL when serialization fails. The #GVariant will not be floating. 6110 */ 6111 extern(C) GVariant* function(GIcon* icon) serialize; 6112 } 6113 6114 struct GInetAddress 6115 { 6116 GObject parentInstance; 6117 GInetAddressPrivate* priv; 6118 } 6119 6120 struct GInetAddressClass 6121 { 6122 GObjectClass parentClass; 6123 /** 6124 * 6125 * Params: 6126 * address = a #GInetAddress 6127 * Returns: a representation of @address as a string, which should be 6128 * freed after use. 6129 */ 6130 extern(C) char* function(GInetAddress* address) toString; 6131 /** 6132 * 6133 * Params: 6134 * address = a #GInetAddress 6135 * Returns: a pointer to an internal array of the bytes in @address, 6136 * which should not be modified, stored, or freed. The size of this 6137 * array can be gotten with g_inet_address_get_native_size(). 6138 */ 6139 extern(C) ubyte* function(GInetAddress* address) toBytes; 6140 } 6141 6142 struct GInetAddressMask 6143 { 6144 GObject parentInstance; 6145 GInetAddressMaskPrivate* priv; 6146 } 6147 6148 struct GInetAddressMaskClass 6149 { 6150 GObjectClass parentClass; 6151 } 6152 6153 struct GInetAddressMaskPrivate; 6154 6155 struct GInetAddressPrivate; 6156 6157 struct GInetSocketAddress 6158 { 6159 GSocketAddress parentInstance; 6160 GInetSocketAddressPrivate* priv; 6161 } 6162 6163 struct GInetSocketAddressClass 6164 { 6165 GSocketAddressClass parentClass; 6166 } 6167 6168 struct GInetSocketAddressPrivate; 6169 6170 struct GInitable; 6171 6172 /** 6173 * Provides an interface for initializing object such that initialization 6174 * may fail. 6175 * 6176 * Since: 2.22 6177 */ 6178 struct GInitableIface 6179 { 6180 /** 6181 * The parent interface. 6182 */ 6183 GTypeInterface gIface; 6184 /** 6185 * 6186 * Params: 6187 * initable = a #GInitable. 6188 * cancellable = optional #GCancellable object, %NULL to ignore. 6189 * Returns: %TRUE if successful. If an error has occurred, this function will 6190 * return %FALSE and set @error appropriately if present. 6191 * 6192 * Throws: GException on failure. 6193 */ 6194 extern(C) int function(GInitable* initable, GCancellable* cancellable, GError** err) init; 6195 } 6196 6197 /** 6198 * Structure used for scatter/gather data input when receiving multiple 6199 * messages or packets in one go. You generally pass in an array of empty 6200 * #GInputVectors and the operation will use all the buffers as if they 6201 * were one buffer, and will set @bytes_received to the total number of bytes 6202 * received across all #GInputVectors. 6203 * 6204 * This structure closely mirrors `struct mmsghdr` and `struct msghdr` from 6205 * the POSIX sockets API (see `man 2 recvmmsg`). 6206 * 6207 * If @address is non-%NULL then it is set to the source address the message 6208 * was received from, and the caller must free it afterwards. 6209 * 6210 * If @control_messages is non-%NULL then it is set to an array of control 6211 * messages received with the message (if any), and the caller must free it 6212 * afterwards. @num_control_messages is set to the number of elements in 6213 * this array, which may be zero. 6214 * 6215 * Flags relevant to this message will be returned in @flags. For example, 6216 * `MSG_EOR` or `MSG_TRUNC`. 6217 * 6218 * Since: 2.48 6219 */ 6220 struct GInputMessage 6221 { 6222 /** 6223 * return location 6224 * for a #GSocketAddress, or %NULL 6225 */ 6226 GSocketAddress** address; 6227 /** 6228 * pointer to an 6229 * array of input vectors 6230 */ 6231 GInputVector* vectors; 6232 /** 6233 * the number of input vectors pointed to by @vectors 6234 */ 6235 uint numVectors; 6236 /** 6237 * will be set to the number of bytes that have been 6238 * received 6239 */ 6240 size_t bytesReceived; 6241 /** 6242 * collection of #GSocketMsgFlags for the received message, 6243 * outputted by the call 6244 */ 6245 int flags; 6246 /** 6247 * return location for a 6248 * caller-allocated array of #GSocketControlMessages, or %NULL 6249 */ 6250 GSocketControlMessage*** controlMessages; 6251 /** 6252 * return location for the number of 6253 * elements in @control_messages 6254 */ 6255 uint* numControlMessages; 6256 } 6257 6258 struct GInputStream 6259 { 6260 GObject parentInstance; 6261 GInputStreamPrivate* priv; 6262 } 6263 6264 struct GInputStreamClass 6265 { 6266 GObjectClass parentClass; 6267 /** */ 6268 extern(C) ptrdiff_t function(GInputStream* stream, void* buffer, size_t count, GCancellable* cancellable, GError** err) readFn; 6269 /** 6270 * 6271 * Params: 6272 * stream = a #GInputStream. 6273 * count = the number of bytes that will be skipped from the stream 6274 * cancellable = optional #GCancellable object, %NULL to ignore. 6275 * Returns: Number of bytes skipped, or -1 on error 6276 * 6277 * Throws: GException on failure. 6278 */ 6279 extern(C) ptrdiff_t function(GInputStream* stream, size_t count, GCancellable* cancellable, GError** err) skip; 6280 /** */ 6281 extern(C) int function(GInputStream* stream, GCancellable* cancellable, GError** err) closeFn; 6282 /** */ 6283 extern(C) void function(GInputStream* stream, void* buffer, size_t count, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) readAsync; 6284 /** 6285 * 6286 * Params: 6287 * stream = a #GInputStream. 6288 * result = a #GAsyncResult. 6289 * Returns: number of bytes read in, or -1 on error, or 0 on end of file. 6290 * 6291 * Throws: GException on failure. 6292 */ 6293 extern(C) ptrdiff_t function(GInputStream* stream, GAsyncResult* result, GError** err) readFinish; 6294 /** */ 6295 extern(C) void function(GInputStream* stream, size_t count, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) skipAsync; 6296 /** 6297 * 6298 * Params: 6299 * stream = a #GInputStream. 6300 * result = a #GAsyncResult. 6301 * Returns: the size of the bytes skipped, or `-1` on error. 6302 * 6303 * Throws: GException on failure. 6304 */ 6305 extern(C) ptrdiff_t function(GInputStream* stream, GAsyncResult* result, GError** err) skipFinish; 6306 /** */ 6307 extern(C) void function(GInputStream* stream, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) closeAsync; 6308 /** 6309 * 6310 * Params: 6311 * stream = a #GInputStream. 6312 * result = a #GAsyncResult. 6313 * Returns: %TRUE if the stream was closed successfully. 6314 * 6315 * Throws: GException on failure. 6316 */ 6317 extern(C) int function(GInputStream* stream, GAsyncResult* result, GError** err) closeFinish; 6318 /** */ 6319 extern(C) void function() GReserved1; 6320 /** */ 6321 extern(C) void function() GReserved2; 6322 /** */ 6323 extern(C) void function() GReserved3; 6324 /** */ 6325 extern(C) void function() GReserved4; 6326 /** */ 6327 extern(C) void function() GReserved5; 6328 } 6329 6330 struct GInputStreamPrivate; 6331 6332 /** 6333 * Structure used for scatter/gather data input. 6334 * You generally pass in an array of #GInputVectors 6335 * and the operation will store the read data starting in the 6336 * first buffer, switching to the next as needed. 6337 * 6338 * Since: 2.22 6339 */ 6340 struct GInputVector 6341 { 6342 /** 6343 * Pointer to a buffer where data will be written. 6344 */ 6345 void* buffer; 6346 /** 6347 * the available size in @buffer. 6348 */ 6349 size_t size; 6350 } 6351 6352 struct GListModel; 6353 6354 /** 6355 * The virtual function table for #GListModel. 6356 * 6357 * Since: 2.44 6358 */ 6359 struct GListModelInterface 6360 { 6361 /** 6362 * parent #GTypeInterface 6363 */ 6364 GTypeInterface gIface; 6365 /** 6366 * 6367 * Params: 6368 * list = a #GListModel 6369 * Returns: the #GType of the items contained in @list. 6370 */ 6371 extern(C) GType function(GListModel* list) getItemType; 6372 /** 6373 * 6374 * Params: 6375 * list = a #GListModel 6376 * Returns: the number of items in @list. 6377 */ 6378 extern(C) uint function(GListModel* list) getNItems; 6379 /** 6380 * 6381 * Params: 6382 * list = a #GListModel 6383 * position = the position of the item to fetch 6384 * Returns: the object at @position. 6385 */ 6386 extern(C) void* function(GListModel* list, uint position) getItem; 6387 } 6388 6389 struct GListStore; 6390 6391 struct GListStoreClass 6392 { 6393 GObjectClass parentClass; 6394 } 6395 6396 struct GLoadableIcon; 6397 6398 /** 6399 * Interface for icons that can be loaded as a stream. 6400 */ 6401 struct GLoadableIconIface 6402 { 6403 /** 6404 * The parent interface. 6405 */ 6406 GTypeInterface gIface; 6407 /** 6408 * 6409 * Params: 6410 * icon = a #GLoadableIcon. 6411 * size = an integer. 6412 * type = a location to store the type of the loaded 6413 * icon, %NULL to ignore. 6414 * cancellable = optional #GCancellable object, %NULL to 6415 * ignore. 6416 * Returns: a #GInputStream to read the icon from. 6417 * 6418 * Throws: GException on failure. 6419 */ 6420 extern(C) GInputStream* function(GLoadableIcon* icon, int size, char** type, GCancellable* cancellable, GError** err) load; 6421 /** */ 6422 extern(C) void function(GLoadableIcon* icon, int size, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) loadAsync; 6423 /** 6424 * 6425 * Params: 6426 * icon = a #GLoadableIcon. 6427 * res = a #GAsyncResult. 6428 * type = a location to store the type of the loaded 6429 * icon, %NULL to ignore. 6430 * Returns: a #GInputStream to read the icon from. 6431 * 6432 * Throws: GException on failure. 6433 */ 6434 extern(C) GInputStream* function(GLoadableIcon* icon, GAsyncResult* res, char** type, GError** err) loadFinish; 6435 } 6436 6437 struct GMemoryInputStream 6438 { 6439 GInputStream parentInstance; 6440 GMemoryInputStreamPrivate* priv; 6441 } 6442 6443 struct GMemoryInputStreamClass 6444 { 6445 GInputStreamClass parentClass; 6446 /** */ 6447 extern(C) void function() GReserved1; 6448 /** */ 6449 extern(C) void function() GReserved2; 6450 /** */ 6451 extern(C) void function() GReserved3; 6452 /** */ 6453 extern(C) void function() GReserved4; 6454 /** */ 6455 extern(C) void function() GReserved5; 6456 } 6457 6458 struct GMemoryInputStreamPrivate; 6459 6460 struct GMemoryMonitor; 6461 6462 /** 6463 * The virtual function table for #GMemoryMonitor. 6464 * 6465 * Since: 2.64 6466 */ 6467 struct GMemoryMonitorInterface 6468 { 6469 /** 6470 * The parent interface. 6471 */ 6472 GTypeInterface gIface; 6473 /** */ 6474 extern(C) void function(GMemoryMonitor* monitor, GMemoryMonitorWarningLevel level) lowMemoryWarning; 6475 } 6476 6477 struct GMemoryOutputStream 6478 { 6479 GOutputStream parentInstance; 6480 GMemoryOutputStreamPrivate* priv; 6481 } 6482 6483 struct GMemoryOutputStreamClass 6484 { 6485 GOutputStreamClass parentClass; 6486 /** */ 6487 extern(C) void function() GReserved1; 6488 /** */ 6489 extern(C) void function() GReserved2; 6490 /** */ 6491 extern(C) void function() GReserved3; 6492 /** */ 6493 extern(C) void function() GReserved4; 6494 /** */ 6495 extern(C) void function() GReserved5; 6496 } 6497 6498 struct GMemoryOutputStreamPrivate; 6499 6500 struct GMenu; 6501 6502 struct GMenuAttributeIter 6503 { 6504 GObject parentInstance; 6505 GMenuAttributeIterPrivate* priv; 6506 } 6507 6508 struct GMenuAttributeIterClass 6509 { 6510 GObjectClass parentClass; 6511 /** 6512 * 6513 * Params: 6514 * iter = a #GMenuAttributeIter 6515 * outName = the type of the attribute 6516 * value = the attribute value 6517 * Returns: %TRUE on success, or %FALSE if there is no additional 6518 * attribute 6519 */ 6520 extern(C) int function(GMenuAttributeIter* iter, char** outName, GVariant** value) getNext; 6521 } 6522 6523 struct GMenuAttributeIterPrivate; 6524 6525 struct GMenuItem; 6526 6527 struct GMenuLinkIter 6528 { 6529 GObject parentInstance; 6530 GMenuLinkIterPrivate* priv; 6531 } 6532 6533 struct GMenuLinkIterClass 6534 { 6535 GObjectClass parentClass; 6536 /** 6537 * 6538 * Params: 6539 * iter = a #GMenuLinkIter 6540 * outLink = the name of the link 6541 * value = the linked #GMenuModel 6542 * Returns: %TRUE on success, or %FALSE if there is no additional link 6543 */ 6544 extern(C) int function(GMenuLinkIter* iter, char** outLink, GMenuModel** value) getNext; 6545 } 6546 6547 struct GMenuLinkIterPrivate; 6548 6549 struct GMenuModel 6550 { 6551 GObject parentInstance; 6552 GMenuModelPrivate* priv; 6553 } 6554 6555 struct GMenuModelClass 6556 { 6557 GObjectClass parentClass; 6558 /** 6559 * 6560 * Params: 6561 * model = a #GMenuModel 6562 * Returns: %TRUE if the model is mutable (ie: "items-changed" may be 6563 * emitted). 6564 */ 6565 extern(C) int function(GMenuModel* model) isMutable; 6566 /** 6567 * 6568 * Params: 6569 * model = a #GMenuModel 6570 * Returns: the number of items 6571 */ 6572 extern(C) int function(GMenuModel* model) getNItems; 6573 /** */ 6574 extern(C) void function(GMenuModel* model, int itemIndex, GHashTable** attributes) getItemAttributes; 6575 /** 6576 * 6577 * Params: 6578 * model = a #GMenuModel 6579 * itemIndex = the index of the item 6580 * Returns: a new #GMenuAttributeIter 6581 */ 6582 extern(C) GMenuAttributeIter* function(GMenuModel* model, int itemIndex) iterateItemAttributes; 6583 /** 6584 * 6585 * Params: 6586 * model = a #GMenuModel 6587 * itemIndex = the index of the item 6588 * attribute = the attribute to query 6589 * expectedType = the expected type of the attribute, or 6590 * %NULL 6591 * Returns: the value of the attribute 6592 */ 6593 extern(C) GVariant* function(GMenuModel* model, int itemIndex, const(char)* attribute, GVariantType* expectedType) getItemAttributeValue; 6594 /** */ 6595 extern(C) void function(GMenuModel* model, int itemIndex, GHashTable** links) getItemLinks; 6596 /** 6597 * 6598 * Params: 6599 * model = a #GMenuModel 6600 * itemIndex = the index of the item 6601 * Returns: a new #GMenuLinkIter 6602 */ 6603 extern(C) GMenuLinkIter* function(GMenuModel* model, int itemIndex) iterateItemLinks; 6604 /** 6605 * 6606 * Params: 6607 * model = a #GMenuModel 6608 * itemIndex = the index of the item 6609 * link = the link to query 6610 * Returns: the linked #GMenuModel, or %NULL 6611 */ 6612 extern(C) GMenuModel* function(GMenuModel* model, int itemIndex, const(char)* link) getItemLink; 6613 } 6614 6615 struct GMenuModelPrivate; 6616 6617 struct GMount; 6618 6619 /** 6620 * Interface for implementing operations for mounts. 6621 */ 6622 struct GMountIface 6623 { 6624 /** 6625 * The parent interface. 6626 */ 6627 GTypeInterface gIface; 6628 /** */ 6629 extern(C) void function(GMount* mount) changed; 6630 /** */ 6631 extern(C) void function(GMount* mount) unmounted; 6632 /** 6633 * 6634 * Params: 6635 * mount = a #GMount. 6636 * Returns: a #GFile. 6637 * The returned object should be unreffed with 6638 * g_object_unref() when no longer needed. 6639 */ 6640 extern(C) GFile* function(GMount* mount) getRoot; 6641 /** 6642 * 6643 * Params: 6644 * mount = a #GMount. 6645 * Returns: the name for the given @mount. 6646 * The returned string should be freed with g_free() 6647 * when no longer needed. 6648 */ 6649 extern(C) char* function(GMount* mount) getName; 6650 /** 6651 * 6652 * Params: 6653 * mount = a #GMount. 6654 * Returns: a #GIcon. 6655 * The returned object should be unreffed with 6656 * g_object_unref() when no longer needed. 6657 */ 6658 extern(C) GIcon* function(GMount* mount) getIcon; 6659 /** 6660 * 6661 * Params: 6662 * mount = a #GMount. 6663 * Returns: the UUID for @mount or %NULL if no UUID 6664 * can be computed. 6665 * The returned string should be freed with g_free() 6666 * when no longer needed. 6667 */ 6668 extern(C) char* function(GMount* mount) getUuid; 6669 /** 6670 * 6671 * Params: 6672 * mount = a #GMount. 6673 * Returns: a #GVolume or %NULL if @mount is not 6674 * associated with a volume. 6675 * The returned object should be unreffed with 6676 * g_object_unref() when no longer needed. 6677 */ 6678 extern(C) GVolume* function(GMount* mount) getVolume; 6679 /** 6680 * 6681 * Params: 6682 * mount = a #GMount. 6683 * Returns: a #GDrive or %NULL if @mount is not 6684 * associated with a volume or a drive. 6685 * The returned object should be unreffed with 6686 * g_object_unref() when no longer needed. 6687 */ 6688 extern(C) GDrive* function(GMount* mount) getDrive; 6689 /** 6690 * 6691 * Params: 6692 * mount = a #GMount. 6693 * Returns: %TRUE if the @mount can be unmounted. 6694 */ 6695 extern(C) int function(GMount* mount) canUnmount; 6696 /** 6697 * 6698 * Params: 6699 * mount = a #GMount. 6700 * Returns: %TRUE if the @mount can be ejected. 6701 */ 6702 extern(C) int function(GMount* mount) canEject; 6703 /** */ 6704 extern(C) void function(GMount* mount, GMountUnmountFlags flags, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) unmount; 6705 /** 6706 * 6707 * Params: 6708 * mount = a #GMount. 6709 * result = a #GAsyncResult. 6710 * Returns: %TRUE if the mount was successfully unmounted. %FALSE otherwise. 6711 * 6712 * Throws: GException on failure. 6713 */ 6714 extern(C) int function(GMount* mount, GAsyncResult* result, GError** err) unmountFinish; 6715 /** */ 6716 extern(C) void function(GMount* mount, GMountUnmountFlags flags, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) eject; 6717 /** 6718 * 6719 * Params: 6720 * mount = a #GMount. 6721 * result = a #GAsyncResult. 6722 * Returns: %TRUE if the mount was successfully ejected. %FALSE otherwise. 6723 * 6724 * Throws: GException on failure. 6725 */ 6726 extern(C) int function(GMount* mount, GAsyncResult* result, GError** err) ejectFinish; 6727 /** */ 6728 extern(C) void function(GMount* mount, GMountMountFlags flags, GMountOperation* mountOperation, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) remount; 6729 /** 6730 * 6731 * Params: 6732 * mount = a #GMount. 6733 * result = a #GAsyncResult. 6734 * Returns: %TRUE if the mount was successfully remounted. %FALSE otherwise. 6735 * 6736 * Throws: GException on failure. 6737 */ 6738 extern(C) int function(GMount* mount, GAsyncResult* result, GError** err) remountFinish; 6739 /** */ 6740 extern(C) void function(GMount* mount, int forceRescan, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) guessContentType; 6741 /** 6742 * 6743 * Params: 6744 * mount = a #GMount 6745 * result = a #GAsyncResult 6746 * Returns: a %NULL-terminated array of content types or %NULL on error. 6747 * Caller should free this array with g_strfreev() when done with it. 6748 * 6749 * Throws: GException on failure. 6750 */ 6751 extern(C) char** function(GMount* mount, GAsyncResult* result, GError** err) guessContentTypeFinish; 6752 /** 6753 * 6754 * Params: 6755 * mount = a #GMount 6756 * forceRescan = Whether to force a rescan of the content. 6757 * Otherwise a cached result will be used if available 6758 * cancellable = optional #GCancellable object, %NULL to ignore 6759 * Returns: a %NULL-terminated array of content types or %NULL on error. 6760 * Caller should free this array with g_strfreev() when done with it. 6761 * 6762 * Throws: GException on failure. 6763 */ 6764 extern(C) char** function(GMount* mount, int forceRescan, GCancellable* cancellable, GError** err) guessContentTypeSync; 6765 /** */ 6766 extern(C) void function(GMount* mount) preUnmount; 6767 /** */ 6768 extern(C) void function(GMount* mount, GMountUnmountFlags flags, GMountOperation* mountOperation, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) unmountWithOperation; 6769 /** 6770 * 6771 * Params: 6772 * mount = a #GMount. 6773 * result = a #GAsyncResult. 6774 * Returns: %TRUE if the mount was successfully unmounted. %FALSE otherwise. 6775 * 6776 * Throws: GException on failure. 6777 */ 6778 extern(C) int function(GMount* mount, GAsyncResult* result, GError** err) unmountWithOperationFinish; 6779 /** */ 6780 extern(C) void function(GMount* mount, GMountUnmountFlags flags, GMountOperation* mountOperation, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) ejectWithOperation; 6781 /** 6782 * 6783 * Params: 6784 * mount = a #GMount. 6785 * result = a #GAsyncResult. 6786 * Returns: %TRUE if the mount was successfully ejected. %FALSE otherwise. 6787 * 6788 * Throws: GException on failure. 6789 */ 6790 extern(C) int function(GMount* mount, GAsyncResult* result, GError** err) ejectWithOperationFinish; 6791 /** 6792 * 6793 * Params: 6794 * mount = a #GMount. 6795 * Returns: a #GFile. 6796 * The returned object should be unreffed with 6797 * g_object_unref() when no longer needed. 6798 */ 6799 extern(C) GFile* function(GMount* mount) getDefaultLocation; 6800 /** 6801 * 6802 * Params: 6803 * mount = A #GMount. 6804 * Returns: Sorting key for @mount or %NULL if no such key is available. 6805 */ 6806 extern(C) const(char)* function(GMount* mount) getSortKey; 6807 /** 6808 * 6809 * Params: 6810 * mount = a #GMount. 6811 * Returns: a #GIcon. 6812 * The returned object should be unreffed with 6813 * g_object_unref() when no longer needed. 6814 */ 6815 extern(C) GIcon* function(GMount* mount) getSymbolicIcon; 6816 } 6817 6818 struct GMountOperation 6819 { 6820 GObject parentInstance; 6821 GMountOperationPrivate* priv; 6822 } 6823 6824 struct GMountOperationClass 6825 { 6826 GObjectClass parentClass; 6827 /** */ 6828 extern(C) void function(GMountOperation* op, const(char)* message, const(char)* defaultUser, const(char)* defaultDomain, GAskPasswordFlags flags) askPassword; 6829 /** */ 6830 extern(C) void function(GMountOperation* op, const(char)* message, char** choices) askQuestion; 6831 /** */ 6832 extern(C) void function(GMountOperation* op, GMountOperationResult result) reply; 6833 /** */ 6834 extern(C) void function(GMountOperation* op) aborted; 6835 /** */ 6836 extern(C) void function(GMountOperation* op, const(char)* message, GArray* processes, char** choices) showProcesses; 6837 /** */ 6838 extern(C) void function(GMountOperation* op, const(char)* message, long timeLeft, long bytesLeft) showUnmountProgress; 6839 /** */ 6840 extern(C) void function() GReserved1; 6841 /** */ 6842 extern(C) void function() GReserved2; 6843 /** */ 6844 extern(C) void function() GReserved3; 6845 /** */ 6846 extern(C) void function() GReserved4; 6847 /** */ 6848 extern(C) void function() GReserved5; 6849 /** */ 6850 extern(C) void function() GReserved6; 6851 /** */ 6852 extern(C) void function() GReserved7; 6853 /** */ 6854 extern(C) void function() GReserved8; 6855 /** */ 6856 extern(C) void function() GReserved9; 6857 } 6858 6859 struct GMountOperationPrivate; 6860 6861 struct GNativeSocketAddress 6862 { 6863 GSocketAddress parentInstance; 6864 GNativeSocketAddressPrivate* priv; 6865 } 6866 6867 struct GNativeSocketAddressClass 6868 { 6869 GSocketAddressClass parentClass; 6870 } 6871 6872 struct GNativeSocketAddressPrivate; 6873 6874 struct GNativeVolumeMonitor 6875 { 6876 GVolumeMonitor parentInstance; 6877 } 6878 6879 struct GNativeVolumeMonitorClass 6880 { 6881 GVolumeMonitorClass parentClass; 6882 /** */ 6883 extern(C) GMount* function(const(char)* mountPath, GCancellable* cancellable) getMountForMountPath; 6884 } 6885 6886 struct GNetworkAddress 6887 { 6888 GObject parentInstance; 6889 GNetworkAddressPrivate* priv; 6890 } 6891 6892 struct GNetworkAddressClass 6893 { 6894 GObjectClass parentClass; 6895 } 6896 6897 struct GNetworkAddressPrivate; 6898 6899 struct GNetworkMonitor; 6900 6901 /** 6902 * The virtual function table for #GNetworkMonitor. 6903 * 6904 * Since: 2.32 6905 */ 6906 struct GNetworkMonitorInterface 6907 { 6908 /** 6909 * The parent interface. 6910 */ 6911 GTypeInterface gIface; 6912 /** */ 6913 extern(C) void function(GNetworkMonitor* monitor, int networkAvailable) networkChanged; 6914 /** 6915 * 6916 * Params: 6917 * monitor = a #GNetworkMonitor 6918 * connectable = a #GSocketConnectable 6919 * cancellable = a #GCancellable, or %NULL 6920 * Returns: %TRUE if @connectable is reachable, %FALSE if not. 6921 * 6922 * Throws: GException on failure. 6923 */ 6924 extern(C) int function(GNetworkMonitor* monitor, GSocketConnectable* connectable, GCancellable* cancellable, GError** err) canReach; 6925 /** */ 6926 extern(C) void function(GNetworkMonitor* monitor, GSocketConnectable* connectable, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) canReachAsync; 6927 /** 6928 * 6929 * Params: 6930 * monitor = a #GNetworkMonitor 6931 * result = a #GAsyncResult 6932 * Returns: %TRUE if network is reachable, %FALSE if not. 6933 * 6934 * Throws: GException on failure. 6935 */ 6936 extern(C) int function(GNetworkMonitor* monitor, GAsyncResult* result, GError** err) canReachFinish; 6937 } 6938 6939 struct GNetworkService 6940 { 6941 GObject parentInstance; 6942 GNetworkServicePrivate* priv; 6943 } 6944 6945 struct GNetworkServiceClass 6946 { 6947 GObjectClass parentClass; 6948 } 6949 6950 struct GNetworkServicePrivate; 6951 6952 struct GNotification; 6953 6954 /** 6955 * Structure used for scatter/gather data output when sending multiple 6956 * messages or packets in one go. You generally pass in an array of 6957 * #GOutputVectors and the operation will use all the buffers as if they 6958 * were one buffer. 6959 * 6960 * If @address is %NULL then the message is sent to the default receiver 6961 * (as previously set by g_socket_connect()). 6962 * 6963 * Since: 2.44 6964 */ 6965 struct GOutputMessage 6966 { 6967 /** 6968 * a #GSocketAddress, or %NULL 6969 */ 6970 GSocketAddress* address; 6971 /** 6972 * pointer to an array of output vectors 6973 */ 6974 GOutputVector* vectors; 6975 /** 6976 * the number of output vectors pointed to by @vectors. 6977 */ 6978 uint numVectors; 6979 /** 6980 * initialize to 0. Will be set to the number of bytes 6981 * that have been sent 6982 */ 6983 uint bytesSent; 6984 /** 6985 * a pointer 6986 * to an array of #GSocketControlMessages, or %NULL. 6987 */ 6988 GSocketControlMessage** controlMessages; 6989 /** 6990 * number of elements in @control_messages. 6991 */ 6992 uint numControlMessages; 6993 } 6994 6995 struct GOutputStream 6996 { 6997 GObject parentInstance; 6998 GOutputStreamPrivate* priv; 6999 } 7000 7001 struct GOutputStreamClass 7002 { 7003 GObjectClass parentClass; 7004 /** 7005 * 7006 * Params: 7007 * stream = a #GOutputStream. 7008 * buffer = the buffer containing the data to write. 7009 * count = the number of bytes to write 7010 * cancellable = optional cancellable object 7011 * Returns: Number of bytes written, or -1 on error 7012 * 7013 * Throws: GException on failure. 7014 */ 7015 extern(C) ptrdiff_t function(GOutputStream* stream, void* buffer, size_t count, GCancellable* cancellable, GError** err) writeFn; 7016 /** 7017 * 7018 * Params: 7019 * stream = a #GOutputStream. 7020 * source = a #GInputStream. 7021 * flags = a set of #GOutputStreamSpliceFlags. 7022 * cancellable = optional #GCancellable object, %NULL to ignore. 7023 * Returns: a #gssize containing the size of the data spliced, or 7024 * -1 if an error occurred. Note that if the number of bytes 7025 * spliced is greater than %G_MAXSSIZE, then that will be 7026 * returned, and there is no way to determine the actual number 7027 * of bytes spliced. 7028 * 7029 * Throws: GException on failure. 7030 */ 7031 extern(C) ptrdiff_t function(GOutputStream* stream, GInputStream* source, GOutputStreamSpliceFlags flags, GCancellable* cancellable, GError** err) splice; 7032 /** 7033 * 7034 * Params: 7035 * stream = a #GOutputStream. 7036 * cancellable = optional cancellable object 7037 * Returns: %TRUE on success, %FALSE on error 7038 * 7039 * Throws: GException on failure. 7040 */ 7041 extern(C) int function(GOutputStream* stream, GCancellable* cancellable, GError** err) flush; 7042 /** */ 7043 extern(C) int function(GOutputStream* stream, GCancellable* cancellable, GError** err) closeFn; 7044 /** */ 7045 extern(C) void function(GOutputStream* stream, void* buffer, size_t count, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) writeAsync; 7046 /** 7047 * 7048 * Params: 7049 * stream = a #GOutputStream. 7050 * result = a #GAsyncResult. 7051 * Returns: a #gssize containing the number of bytes written to the stream. 7052 * 7053 * Throws: GException on failure. 7054 */ 7055 extern(C) ptrdiff_t function(GOutputStream* stream, GAsyncResult* result, GError** err) writeFinish; 7056 /** */ 7057 extern(C) void function(GOutputStream* stream, GInputStream* source, GOutputStreamSpliceFlags flags, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) spliceAsync; 7058 /** 7059 * 7060 * Params: 7061 * stream = a #GOutputStream. 7062 * result = a #GAsyncResult. 7063 * Returns: a #gssize of the number of bytes spliced. Note that if the 7064 * number of bytes spliced is greater than %G_MAXSSIZE, then that 7065 * will be returned, and there is no way to determine the actual 7066 * number of bytes spliced. 7067 * 7068 * Throws: GException on failure. 7069 */ 7070 extern(C) ptrdiff_t function(GOutputStream* stream, GAsyncResult* result, GError** err) spliceFinish; 7071 /** */ 7072 extern(C) void function(GOutputStream* stream, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) flushAsync; 7073 /** 7074 * 7075 * Params: 7076 * stream = a #GOutputStream. 7077 * result = a GAsyncResult. 7078 * Returns: %TRUE if flush operation succeeded, %FALSE otherwise. 7079 * 7080 * Throws: GException on failure. 7081 */ 7082 extern(C) int function(GOutputStream* stream, GAsyncResult* result, GError** err) flushFinish; 7083 /** */ 7084 extern(C) void function(GOutputStream* stream, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) closeAsync; 7085 /** 7086 * 7087 * Params: 7088 * stream = a #GOutputStream. 7089 * result = a #GAsyncResult. 7090 * Returns: %TRUE if stream was successfully closed, %FALSE otherwise. 7091 * 7092 * Throws: GException on failure. 7093 */ 7094 extern(C) int function(GOutputStream* stream, GAsyncResult* result, GError** err) closeFinish; 7095 /** 7096 * 7097 * Params: 7098 * stream = a #GOutputStream. 7099 * vectors = the buffer containing the #GOutputVectors to write. 7100 * nVectors = the number of vectors to write 7101 * bytesWritten = location to store the number of bytes that were 7102 * written to the stream 7103 * cancellable = optional cancellable object 7104 * Returns: %TRUE on success, %FALSE if there was an error 7105 * 7106 * Throws: GException on failure. 7107 */ 7108 extern(C) int function(GOutputStream* stream, GOutputVector* vectors, size_t nVectors, size_t* bytesWritten, GCancellable* cancellable, GError** err) writevFn; 7109 /** */ 7110 extern(C) void function(GOutputStream* stream, GOutputVector* vectors, size_t nVectors, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) writevAsync; 7111 /** 7112 * 7113 * Params: 7114 * stream = a #GOutputStream. 7115 * result = a #GAsyncResult. 7116 * bytesWritten = location to store the number of bytes that were written to the stream 7117 * Returns: %TRUE on success, %FALSE if there was an error 7118 * 7119 * Throws: GException on failure. 7120 */ 7121 extern(C) int function(GOutputStream* stream, GAsyncResult* result, size_t* bytesWritten, GError** err) writevFinish; 7122 /** */ 7123 extern(C) void function() GReserved4; 7124 /** */ 7125 extern(C) void function() GReserved5; 7126 /** */ 7127 extern(C) void function() GReserved6; 7128 /** */ 7129 extern(C) void function() GReserved7; 7130 /** */ 7131 extern(C) void function() GReserved8; 7132 } 7133 7134 struct GOutputStreamPrivate; 7135 7136 /** 7137 * Structure used for scatter/gather data output. 7138 * You generally pass in an array of #GOutputVectors 7139 * and the operation will use all the buffers as if they were 7140 * one buffer. 7141 * 7142 * Since: 2.22 7143 */ 7144 struct GOutputVector 7145 { 7146 /** 7147 * Pointer to a buffer of data to read. 7148 */ 7149 void* buffer; 7150 /** 7151 * the size of @buffer. 7152 */ 7153 size_t size; 7154 } 7155 7156 struct GPermission 7157 { 7158 GObject parentInstance; 7159 GPermissionPrivate* priv; 7160 } 7161 7162 struct GPermissionClass 7163 { 7164 GObjectClass parentClass; 7165 /** 7166 * 7167 * Params: 7168 * permission = a #GPermission instance 7169 * cancellable = a #GCancellable, or %NULL 7170 * Returns: %TRUE if the permission was successfully acquired 7171 * 7172 * Throws: GException on failure. 7173 */ 7174 extern(C) int function(GPermission* permission, GCancellable* cancellable, GError** err) acquire; 7175 /** */ 7176 extern(C) void function(GPermission* permission, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) acquireAsync; 7177 /** 7178 * 7179 * Params: 7180 * permission = a #GPermission instance 7181 * result = the #GAsyncResult given to the #GAsyncReadyCallback 7182 * Returns: %TRUE if the permission was successfully acquired 7183 * 7184 * Throws: GException on failure. 7185 */ 7186 extern(C) int function(GPermission* permission, GAsyncResult* result, GError** err) acquireFinish; 7187 /** 7188 * 7189 * Params: 7190 * permission = a #GPermission instance 7191 * cancellable = a #GCancellable, or %NULL 7192 * Returns: %TRUE if the permission was successfully released 7193 * 7194 * Throws: GException on failure. 7195 */ 7196 extern(C) int function(GPermission* permission, GCancellable* cancellable, GError** err) release; 7197 /** */ 7198 extern(C) void function(GPermission* permission, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) releaseAsync; 7199 /** 7200 * 7201 * Params: 7202 * permission = a #GPermission instance 7203 * result = the #GAsyncResult given to the #GAsyncReadyCallback 7204 * Returns: %TRUE if the permission was successfully released 7205 * 7206 * Throws: GException on failure. 7207 */ 7208 extern(C) int function(GPermission* permission, GAsyncResult* result, GError** err) releaseFinish; 7209 void*[16] reserved; 7210 } 7211 7212 struct GPermissionPrivate; 7213 7214 struct GPollableInputStream; 7215 7216 /** 7217 * The interface for pollable input streams. 7218 * 7219 * The default implementation of @can_poll always returns %TRUE. 7220 * 7221 * The default implementation of @read_nonblocking calls 7222 * g_pollable_input_stream_is_readable(), and then calls 7223 * g_input_stream_read() if it returns %TRUE. This means you only need 7224 * to override it if it is possible that your @is_readable 7225 * implementation may return %TRUE when the stream is not actually 7226 * readable. 7227 * 7228 * Since: 2.28 7229 */ 7230 struct GPollableInputStreamInterface 7231 { 7232 /** 7233 * The parent interface. 7234 */ 7235 GTypeInterface gIface; 7236 /** 7237 * 7238 * Params: 7239 * stream = a #GPollableInputStream. 7240 * Returns: %TRUE if @stream is pollable, %FALSE if not. 7241 */ 7242 extern(C) int function(GPollableInputStream* stream) canPoll; 7243 /** 7244 * 7245 * Params: 7246 * stream = a #GPollableInputStream. 7247 * Returns: %TRUE if @stream is readable, %FALSE if not. If an error 7248 * has occurred on @stream, this will result in 7249 * g_pollable_input_stream_is_readable() returning %TRUE, and the 7250 * next attempt to read will return the error. 7251 */ 7252 extern(C) int function(GPollableInputStream* stream) isReadable; 7253 /** 7254 * 7255 * Params: 7256 * stream = a #GPollableInputStream. 7257 * cancellable = a #GCancellable, or %NULL 7258 * Returns: a new #GSource 7259 */ 7260 extern(C) GSource* function(GPollableInputStream* stream, GCancellable* cancellable) createSource; 7261 /** 7262 * 7263 * Params: 7264 * stream = a #GPollableInputStream 7265 * buffer = a buffer to 7266 * read data into (which should be at least @count bytes long). 7267 * count = the number of bytes you want to read 7268 * Returns: the number of bytes read, or -1 on error (including 7269 * %G_IO_ERROR_WOULD_BLOCK). 7270 * 7271 * Throws: GException on failure. 7272 */ 7273 extern(C) ptrdiff_t function(GPollableInputStream* stream, void* buffer, size_t count, GError** err) readNonblocking; 7274 } 7275 7276 struct GPollableOutputStream; 7277 7278 /** 7279 * The interface for pollable output streams. 7280 * 7281 * The default implementation of @can_poll always returns %TRUE. 7282 * 7283 * The default implementation of @write_nonblocking calls 7284 * g_pollable_output_stream_is_writable(), and then calls 7285 * g_output_stream_write() if it returns %TRUE. This means you only 7286 * need to override it if it is possible that your @is_writable 7287 * implementation may return %TRUE when the stream is not actually 7288 * writable. 7289 * 7290 * The default implementation of @writev_nonblocking calls 7291 * g_pollable_output_stream_write_nonblocking() for each vector, and converts 7292 * its return value and error (if set) to a #GPollableReturn. You should 7293 * override this where possible to avoid having to allocate a #GError to return 7294 * %G_IO_ERROR_WOULD_BLOCK. 7295 * 7296 * Since: 2.28 7297 */ 7298 struct GPollableOutputStreamInterface 7299 { 7300 /** 7301 * The parent interface. 7302 */ 7303 GTypeInterface gIface; 7304 /** 7305 * 7306 * Params: 7307 * stream = a #GPollableOutputStream. 7308 * Returns: %TRUE if @stream is pollable, %FALSE if not. 7309 */ 7310 extern(C) int function(GPollableOutputStream* stream) canPoll; 7311 /** 7312 * 7313 * Params: 7314 * stream = a #GPollableOutputStream. 7315 * Returns: %TRUE if @stream is writable, %FALSE if not. If an error 7316 * has occurred on @stream, this will result in 7317 * g_pollable_output_stream_is_writable() returning %TRUE, and the 7318 * next attempt to write will return the error. 7319 */ 7320 extern(C) int function(GPollableOutputStream* stream) isWritable; 7321 /** 7322 * 7323 * Params: 7324 * stream = a #GPollableOutputStream. 7325 * cancellable = a #GCancellable, or %NULL 7326 * Returns: a new #GSource 7327 */ 7328 extern(C) GSource* function(GPollableOutputStream* stream, GCancellable* cancellable) createSource; 7329 /** 7330 * 7331 * Params: 7332 * stream = a #GPollableOutputStream 7333 * buffer = a buffer to write 7334 * data from 7335 * count = the number of bytes you want to write 7336 * Returns: the number of bytes written, or -1 on error (including 7337 * %G_IO_ERROR_WOULD_BLOCK). 7338 * 7339 * Throws: GException on failure. 7340 */ 7341 extern(C) ptrdiff_t function(GPollableOutputStream* stream, void* buffer, size_t count, GError** err) writeNonblocking; 7342 /** 7343 * 7344 * Params: 7345 * stream = a #GPollableOutputStream 7346 * vectors = the buffer containing the #GOutputVectors to write. 7347 * nVectors = the number of vectors to write 7348 * bytesWritten = location to store the number of bytes that were 7349 * written to the stream 7350 * Returns: %@G_POLLABLE_RETURN_OK on success, %G_POLLABLE_RETURN_WOULD_BLOCK 7351 * if the stream is not currently writable (and @error is *not* set), or 7352 * %G_POLLABLE_RETURN_FAILED if there was an error in which case @error will 7353 * be set. 7354 * 7355 * Throws: GException on failure. 7356 */ 7357 extern(C) GPollableReturn function(GPollableOutputStream* stream, GOutputVector* vectors, size_t nVectors, size_t* bytesWritten, GError** err) writevNonblocking; 7358 } 7359 7360 struct GPropertyAction; 7361 7362 struct GProxy; 7363 7364 struct GProxyAddress 7365 { 7366 GInetSocketAddress parentInstance; 7367 GProxyAddressPrivate* priv; 7368 } 7369 7370 /** 7371 * Class structure for #GProxyAddress. 7372 * 7373 * Since: 2.26 7374 */ 7375 struct GProxyAddressClass 7376 { 7377 GInetSocketAddressClass parentClass; 7378 } 7379 7380 struct GProxyAddressEnumerator 7381 { 7382 GSocketAddressEnumerator parentInstance; 7383 GProxyAddressEnumeratorPrivate* priv; 7384 } 7385 7386 /** 7387 * Class structure for #GProxyAddressEnumerator. 7388 */ 7389 struct GProxyAddressEnumeratorClass 7390 { 7391 GSocketAddressEnumeratorClass parentClass; 7392 /** */ 7393 extern(C) void function() GReserved1; 7394 /** */ 7395 extern(C) void function() GReserved2; 7396 /** */ 7397 extern(C) void function() GReserved3; 7398 /** */ 7399 extern(C) void function() GReserved4; 7400 /** */ 7401 extern(C) void function() GReserved5; 7402 /** */ 7403 extern(C) void function() GReserved6; 7404 /** */ 7405 extern(C) void function() GReserved7; 7406 } 7407 7408 struct GProxyAddressEnumeratorPrivate; 7409 7410 struct GProxyAddressPrivate; 7411 7412 /** 7413 * Provides an interface for handling proxy connection and payload. 7414 * 7415 * Since: 2.26 7416 */ 7417 struct GProxyInterface 7418 { 7419 /** 7420 * The parent interface. 7421 */ 7422 GTypeInterface gIface; 7423 /** 7424 * 7425 * Params: 7426 * proxy = a #GProxy 7427 * connection = a #GIOStream 7428 * proxyAddress = a #GProxyAddress 7429 * cancellable = a #GCancellable 7430 * Returns: a #GIOStream that will replace @connection. This might 7431 * be the same as @connection, in which case a reference 7432 * will be added. 7433 * 7434 * Throws: GException on failure. 7435 */ 7436 extern(C) GIOStream* function(GProxy* proxy, GIOStream* connection, GProxyAddress* proxyAddress, GCancellable* cancellable, GError** err) connect; 7437 /** */ 7438 extern(C) void function(GProxy* proxy, GIOStream* connection, GProxyAddress* proxyAddress, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) connectAsync; 7439 /** 7440 * 7441 * Params: 7442 * proxy = a #GProxy 7443 * result = a #GAsyncResult 7444 * Returns: a #GIOStream. 7445 * 7446 * Throws: GException on failure. 7447 */ 7448 extern(C) GIOStream* function(GProxy* proxy, GAsyncResult* result, GError** err) connectFinish; 7449 /** 7450 * 7451 * Params: 7452 * proxy = a #GProxy 7453 * Returns: %TRUE if hostname resolution is supported. 7454 */ 7455 extern(C) int function(GProxy* proxy) supportsHostname; 7456 } 7457 7458 struct GProxyResolver; 7459 7460 /** 7461 * The virtual function table for #GProxyResolver. 7462 */ 7463 struct GProxyResolverInterface 7464 { 7465 /** 7466 * The parent interface. 7467 */ 7468 GTypeInterface gIface; 7469 /** 7470 * 7471 * Params: 7472 * resolver = a #GProxyResolver 7473 * Returns: %TRUE if @resolver is supported. 7474 */ 7475 extern(C) int function(GProxyResolver* resolver) isSupported; 7476 /** 7477 * 7478 * Params: 7479 * resolver = a #GProxyResolver 7480 * uri = a URI representing the destination to connect to 7481 * cancellable = a #GCancellable, or %NULL 7482 * Returns: A 7483 * NULL-terminated array of proxy URIs. Must be freed 7484 * with g_strfreev(). 7485 * 7486 * Throws: GException on failure. 7487 */ 7488 extern(C) char** function(GProxyResolver* resolver, const(char)* uri, GCancellable* cancellable, GError** err) lookup; 7489 /** */ 7490 extern(C) void function(GProxyResolver* resolver, const(char)* uri, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) lookupAsync; 7491 /** 7492 * 7493 * Params: 7494 * resolver = a #GProxyResolver 7495 * result = the result passed to your #GAsyncReadyCallback 7496 * Returns: A 7497 * NULL-terminated array of proxy URIs. Must be freed 7498 * with g_strfreev(). 7499 * 7500 * Throws: GException on failure. 7501 */ 7502 extern(C) char** function(GProxyResolver* resolver, GAsyncResult* result, GError** err) lookupFinish; 7503 } 7504 7505 struct GRemoteActionGroup; 7506 7507 /** 7508 * The virtual function table for #GRemoteActionGroup. 7509 * 7510 * Since: 2.32 7511 */ 7512 struct GRemoteActionGroupInterface 7513 { 7514 GTypeInterface gIface; 7515 /** */ 7516 extern(C) void function(GRemoteActionGroup* remote, const(char)* actionName, GVariant* parameter, GVariant* platformData) activateActionFull; 7517 /** */ 7518 extern(C) void function(GRemoteActionGroup* remote, const(char)* actionName, GVariant* value, GVariant* platformData) changeActionStateFull; 7519 } 7520 7521 struct GResolver 7522 { 7523 GObject parentInstance; 7524 GResolverPrivate* priv; 7525 } 7526 7527 struct GResolverClass 7528 { 7529 GObjectClass parentClass; 7530 /** */ 7531 extern(C) void function(GResolver* resolver) reload; 7532 /** 7533 * 7534 * Params: 7535 * resolver = a #GResolver 7536 * hostname = the hostname to look up 7537 * cancellable = a #GCancellable, or %NULL 7538 * Returns: a non-empty #GList 7539 * of #GInetAddress, or %NULL on error. You 7540 * must unref each of the addresses and free the list when you are 7541 * done with it. (You can use g_resolver_free_addresses() to do this.) 7542 * 7543 * Throws: GException on failure. 7544 */ 7545 extern(C) GList* function(GResolver* resolver, const(char)* hostname, GCancellable* cancellable, GError** err) lookupByName; 7546 /** */ 7547 extern(C) void function(GResolver* resolver, const(char)* hostname, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) lookupByNameAsync; 7548 /** 7549 * 7550 * Params: 7551 * resolver = a #GResolver 7552 * result = the result passed to your #GAsyncReadyCallback 7553 * Returns: a #GList 7554 * of #GInetAddress, or %NULL on error. See g_resolver_lookup_by_name() 7555 * for more details. 7556 * 7557 * Throws: GException on failure. 7558 */ 7559 extern(C) GList* function(GResolver* resolver, GAsyncResult* result, GError** err) lookupByNameFinish; 7560 /** 7561 * 7562 * Params: 7563 * resolver = a #GResolver 7564 * address = the address to reverse-resolve 7565 * cancellable = a #GCancellable, or %NULL 7566 * Returns: a hostname (either ASCII-only, or in ASCII-encoded 7567 * form), or %NULL on error. 7568 * 7569 * Throws: GException on failure. 7570 */ 7571 extern(C) char* function(GResolver* resolver, GInetAddress* address, GCancellable* cancellable, GError** err) lookupByAddress; 7572 /** */ 7573 extern(C) void function(GResolver* resolver, GInetAddress* address, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) lookupByAddressAsync; 7574 /** 7575 * 7576 * Params: 7577 * resolver = a #GResolver 7578 * result = the result passed to your #GAsyncReadyCallback 7579 * Returns: a hostname (either ASCII-only, or in ASCII-encoded 7580 * form), or %NULL on error. 7581 * 7582 * Throws: GException on failure. 7583 */ 7584 extern(C) char* function(GResolver* resolver, GAsyncResult* result, GError** err) lookupByAddressFinish; 7585 /** */ 7586 extern(C) GList* function(GResolver* resolver, const(char)* rrname, GCancellable* cancellable, GError** err) lookupService; 7587 /** */ 7588 extern(C) void function(GResolver* resolver, const(char)* rrname, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) lookupServiceAsync; 7589 /** 7590 * 7591 * Params: 7592 * resolver = a #GResolver 7593 * result = the result passed to your #GAsyncReadyCallback 7594 * Returns: a non-empty #GList of 7595 * #GSrvTarget, or %NULL on error. See g_resolver_lookup_service() for more 7596 * details. 7597 * 7598 * Throws: GException on failure. 7599 */ 7600 extern(C) GList* function(GResolver* resolver, GAsyncResult* result, GError** err) lookupServiceFinish; 7601 /** 7602 * 7603 * Params: 7604 * resolver = a #GResolver 7605 * rrname = the DNS name to look up the record for 7606 * recordType = the type of DNS record to look up 7607 * cancellable = a #GCancellable, or %NULL 7608 * Returns: a non-empty #GList of 7609 * #GVariant, or %NULL on error. You must free each of the records and the list 7610 * when you are done with it. (You can use g_list_free_full() with 7611 * g_variant_unref() to do this.) 7612 * 7613 * Throws: GException on failure. 7614 */ 7615 extern(C) GList* function(GResolver* resolver, const(char)* rrname, GResolverRecordType recordType, GCancellable* cancellable, GError** err) lookupRecords; 7616 /** */ 7617 extern(C) void function(GResolver* resolver, const(char)* rrname, GResolverRecordType recordType, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) lookupRecordsAsync; 7618 /** 7619 * 7620 * Params: 7621 * resolver = a #GResolver 7622 * result = the result passed to your #GAsyncReadyCallback 7623 * Returns: a non-empty #GList of 7624 * #GVariant, or %NULL on error. You must free each of the records and the list 7625 * when you are done with it. (You can use g_list_free_full() with 7626 * g_variant_unref() to do this.) 7627 * 7628 * Throws: GException on failure. 7629 */ 7630 extern(C) GList* function(GResolver* resolver, GAsyncResult* result, GError** err) lookupRecordsFinish; 7631 /** */ 7632 extern(C) void function(GResolver* resolver, const(char)* hostname, GResolverNameLookupFlags flags, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) lookupByNameWithFlagsAsync; 7633 /** 7634 * 7635 * Params: 7636 * resolver = a #GResolver 7637 * result = the result passed to your #GAsyncReadyCallback 7638 * Returns: a #GList 7639 * of #GInetAddress, or %NULL on error. See g_resolver_lookup_by_name() 7640 * for more details. 7641 * 7642 * Throws: GException on failure. 7643 */ 7644 extern(C) GList* function(GResolver* resolver, GAsyncResult* result, GError** err) lookupByNameWithFlagsFinish; 7645 /** 7646 * 7647 * Params: 7648 * resolver = a #GResolver 7649 * hostname = the hostname to look up 7650 * flags = extra #GResolverNameLookupFlags for the lookup 7651 * cancellable = a #GCancellable, or %NULL 7652 * Returns: a non-empty #GList 7653 * of #GInetAddress, or %NULL on error. You 7654 * must unref each of the addresses and free the list when you are 7655 * done with it. (You can use g_resolver_free_addresses() to do this.) 7656 * 7657 * Throws: GException on failure. 7658 */ 7659 extern(C) GList* function(GResolver* resolver, const(char)* hostname, GResolverNameLookupFlags flags, GCancellable* cancellable, GError** err) lookupByNameWithFlags; 7660 } 7661 7662 struct GResolverPrivate; 7663 7664 struct GResource; 7665 7666 struct GSeekable; 7667 7668 /** 7669 * Provides an interface for implementing seekable functionality on I/O Streams. 7670 */ 7671 struct GSeekableIface 7672 { 7673 /** 7674 * The parent interface. 7675 */ 7676 GTypeInterface gIface; 7677 /** 7678 * 7679 * Params: 7680 * seekable = a #GSeekable. 7681 * Returns: the offset from the beginning of the buffer. 7682 */ 7683 extern(C) long function(GSeekable* seekable) tell; 7684 /** 7685 * 7686 * Params: 7687 * seekable = a #GSeekable. 7688 * Returns: %TRUE if @seekable can be seeked. %FALSE otherwise. 7689 */ 7690 extern(C) int function(GSeekable* seekable) canSeek; 7691 /** 7692 * 7693 * Params: 7694 * seekable = a #GSeekable. 7695 * offset = a #goffset. 7696 * type = a #GSeekType. 7697 * cancellable = optional #GCancellable object, %NULL to ignore. 7698 * Returns: %TRUE if successful. If an error 7699 * has occurred, this function will return %FALSE and set @error 7700 * appropriately if present. 7701 * 7702 * Throws: GException on failure. 7703 */ 7704 extern(C) int function(GSeekable* seekable, long offset, GSeekType type, GCancellable* cancellable, GError** err) seek; 7705 /** 7706 * 7707 * Params: 7708 * seekable = a #GSeekable. 7709 * Returns: %TRUE if the stream can be truncated, %FALSE otherwise. 7710 */ 7711 extern(C) int function(GSeekable* seekable) canTruncate; 7712 /** 7713 * 7714 * Params: 7715 * seekable = a #GSeekable. 7716 * offset = new length for @seekable, in bytes. 7717 * cancellable = optional #GCancellable object, %NULL to ignore. 7718 * Returns: %TRUE if successful. If an error 7719 * has occurred, this function will return %FALSE and set @error 7720 * appropriately if present. 7721 * 7722 * Throws: GException on failure. 7723 */ 7724 extern(C) int function(GSeekable* seekable, long offset, GCancellable* cancellable, GError** err) truncateFn; 7725 } 7726 7727 struct GSettings 7728 { 7729 GObject parentInstance; 7730 GSettingsPrivate* priv; 7731 } 7732 7733 struct GSettingsBackend 7734 { 7735 GObject parentInstance; 7736 GSettingsBackendPrivate* priv; 7737 } 7738 7739 /** 7740 * Class structure for #GSettingsBackend. 7741 */ 7742 struct GSettingsBackendClass 7743 { 7744 GObjectClass parentClass; 7745 /** */ 7746 extern(C) GVariant* function(GSettingsBackend* backend, const(char)* key, GVariantType* expectedType, int defaultValue) read; 7747 /** */ 7748 extern(C) int function(GSettingsBackend* backend, const(char)* key) getWritable; 7749 /** */ 7750 extern(C) int function(GSettingsBackend* backend, const(char)* key, GVariant* value, void* originTag) write; 7751 /** */ 7752 extern(C) int function(GSettingsBackend* backend, GTree* tree, void* originTag) writeTree; 7753 /** */ 7754 extern(C) void function(GSettingsBackend* backend, const(char)* key, void* originTag) reset; 7755 /** */ 7756 extern(C) void function(GSettingsBackend* backend, const(char)* name) subscribe; 7757 /** */ 7758 extern(C) void function(GSettingsBackend* backend, const(char)* name) unsubscribe; 7759 /** */ 7760 extern(C) void function(GSettingsBackend* backend) sync; 7761 /** */ 7762 extern(C) GPermission* function(GSettingsBackend* backend, const(char)* path) getPermission; 7763 /** */ 7764 extern(C) GVariant* function(GSettingsBackend* backend, const(char)* key, GVariantType* expectedType) readUserValue; 7765 void*[23] padding; 7766 } 7767 7768 struct GSettingsBackendPrivate; 7769 7770 struct GSettingsClass 7771 { 7772 GObjectClass parentClass; 7773 /** */ 7774 extern(C) void function(GSettings* settings, const(char)* key) writableChanged; 7775 /** */ 7776 extern(C) void function(GSettings* settings, const(char)* key) changed; 7777 /** */ 7778 extern(C) int function(GSettings* settings, GQuark key) writableChangeEvent; 7779 /** */ 7780 extern(C) int function(GSettings* settings, GQuark* keys, int nKeys) changeEvent; 7781 void*[20] padding; 7782 } 7783 7784 struct GSettingsPrivate; 7785 7786 struct GSettingsSchema; 7787 7788 struct GSettingsSchemaKey; 7789 7790 struct GSettingsSchemaSource; 7791 7792 struct GSimpleAction; 7793 7794 struct GSimpleActionGroup 7795 { 7796 GObject parentInstance; 7797 GSimpleActionGroupPrivate* priv; 7798 } 7799 7800 struct GSimpleActionGroupClass 7801 { 7802 GObjectClass parentClass; 7803 void*[12] padding; 7804 } 7805 7806 struct GSimpleActionGroupPrivate; 7807 7808 struct GSimpleAsyncResult; 7809 7810 struct GSimpleAsyncResultClass; 7811 7812 struct GSimpleIOStream; 7813 7814 struct GSimplePermission; 7815 7816 struct GSimpleProxyResolver 7817 { 7818 GObject parentInstance; 7819 GSimpleProxyResolverPrivate* priv; 7820 } 7821 7822 struct GSimpleProxyResolverClass 7823 { 7824 GObjectClass parentClass; 7825 /** */ 7826 extern(C) void function() GReserved1; 7827 /** */ 7828 extern(C) void function() GReserved2; 7829 /** */ 7830 extern(C) void function() GReserved3; 7831 /** */ 7832 extern(C) void function() GReserved4; 7833 /** */ 7834 extern(C) void function() GReserved5; 7835 } 7836 7837 struct GSimpleProxyResolverPrivate; 7838 7839 struct GSocket 7840 { 7841 GObject parentInstance; 7842 GSocketPrivate* priv; 7843 } 7844 7845 struct GSocketAddress 7846 { 7847 GObject parentInstance; 7848 } 7849 7850 struct GSocketAddressClass 7851 { 7852 GObjectClass parentClass; 7853 /** 7854 * 7855 * Params: 7856 * address = a #GSocketAddress 7857 * Returns: the socket family type of @address 7858 */ 7859 extern(C) GSocketFamily function(GSocketAddress* address) getFamily; 7860 /** 7861 * 7862 * Params: 7863 * address = a #GSocketAddress 7864 * Returns: the size of the native struct sockaddr that 7865 * @address represents 7866 */ 7867 extern(C) ptrdiff_t function(GSocketAddress* address) getNativeSize; 7868 /** 7869 * 7870 * Params: 7871 * address = a #GSocketAddress 7872 * dest = a pointer to a memory location that will contain the native 7873 * struct sockaddr 7874 * destlen = the size of @dest. Must be at least as large as 7875 * g_socket_address_get_native_size() 7876 * Returns: %TRUE if @dest was filled in, %FALSE on error 7877 * 7878 * Throws: GException on failure. 7879 */ 7880 extern(C) int function(GSocketAddress* address, void* dest, size_t destlen, GError** err) toNative; 7881 } 7882 7883 struct GSocketAddressEnumerator 7884 { 7885 GObject parentInstance; 7886 } 7887 7888 /** 7889 * Class structure for #GSocketAddressEnumerator. 7890 */ 7891 struct GSocketAddressEnumeratorClass 7892 { 7893 GObjectClass parentClass; 7894 /** 7895 * 7896 * Params: 7897 * enumerator = a #GSocketAddressEnumerator 7898 * cancellable = optional #GCancellable object, %NULL to ignore. 7899 * Returns: a #GSocketAddress (owned by the caller), or %NULL on 7900 * error (in which case *@error will be set) or if there are no 7901 * more addresses. 7902 * 7903 * Throws: GException on failure. 7904 */ 7905 extern(C) GSocketAddress* function(GSocketAddressEnumerator* enumerator, GCancellable* cancellable, GError** err) next; 7906 /** */ 7907 extern(C) void function(GSocketAddressEnumerator* enumerator, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) nextAsync; 7908 /** 7909 * 7910 * Params: 7911 * enumerator = a #GSocketAddressEnumerator 7912 * result = a #GAsyncResult 7913 * Returns: a #GSocketAddress (owned by the caller), or %NULL on 7914 * error (in which case *@error will be set) or if there are no 7915 * more addresses. 7916 * 7917 * Throws: GException on failure. 7918 */ 7919 extern(C) GSocketAddress* function(GSocketAddressEnumerator* enumerator, GAsyncResult* result, GError** err) nextFinish; 7920 } 7921 7922 struct GSocketClass 7923 { 7924 GObjectClass parentClass; 7925 /** */ 7926 extern(C) void function() GReserved1; 7927 /** */ 7928 extern(C) void function() GReserved2; 7929 /** */ 7930 extern(C) void function() GReserved3; 7931 /** */ 7932 extern(C) void function() GReserved4; 7933 /** */ 7934 extern(C) void function() GReserved5; 7935 /** */ 7936 extern(C) void function() GReserved6; 7937 /** */ 7938 extern(C) void function() GReserved7; 7939 /** */ 7940 extern(C) void function() GReserved8; 7941 /** */ 7942 extern(C) void function() GReserved9; 7943 /** */ 7944 extern(C) void function() GReserved10; 7945 } 7946 7947 struct GSocketClient 7948 { 7949 GObject parentInstance; 7950 GSocketClientPrivate* priv; 7951 } 7952 7953 struct GSocketClientClass 7954 { 7955 GObjectClass parentClass; 7956 /** */ 7957 extern(C) void function(GSocketClient* client, GSocketClientEvent event, GSocketConnectable* connectable, GIOStream* connection) event; 7958 /** */ 7959 extern(C) void function() GReserved1; 7960 /** */ 7961 extern(C) void function() GReserved2; 7962 /** */ 7963 extern(C) void function() GReserved3; 7964 /** */ 7965 extern(C) void function() GReserved4; 7966 } 7967 7968 struct GSocketClientPrivate; 7969 7970 struct GSocketConnectable; 7971 7972 /** 7973 * Provides an interface for returning a #GSocketAddressEnumerator 7974 * and #GProxyAddressEnumerator 7975 */ 7976 struct GSocketConnectableIface 7977 { 7978 /** 7979 * The parent interface. 7980 */ 7981 GTypeInterface gIface; 7982 /** 7983 * 7984 * Params: 7985 * connectable = a #GSocketConnectable 7986 * Returns: a new #GSocketAddressEnumerator. 7987 */ 7988 extern(C) GSocketAddressEnumerator* function(GSocketConnectable* connectable) enumerate; 7989 /** 7990 * 7991 * Params: 7992 * connectable = a #GSocketConnectable 7993 * Returns: a new #GSocketAddressEnumerator. 7994 */ 7995 extern(C) GSocketAddressEnumerator* function(GSocketConnectable* connectable) proxyEnumerate; 7996 /** 7997 * 7998 * Params: 7999 * connectable = a #GSocketConnectable 8000 * Returns: the formatted string 8001 */ 8002 extern(C) char* function(GSocketConnectable* connectable) toString; 8003 } 8004 8005 struct GSocketConnection 8006 { 8007 GIOStream parentInstance; 8008 GSocketConnectionPrivate* priv; 8009 } 8010 8011 struct GSocketConnectionClass 8012 { 8013 GIOStreamClass parentClass; 8014 /** */ 8015 extern(C) void function() GReserved1; 8016 /** */ 8017 extern(C) void function() GReserved2; 8018 /** */ 8019 extern(C) void function() GReserved3; 8020 /** */ 8021 extern(C) void function() GReserved4; 8022 /** */ 8023 extern(C) void function() GReserved5; 8024 /** */ 8025 extern(C) void function() GReserved6; 8026 } 8027 8028 struct GSocketConnectionPrivate; 8029 8030 struct GSocketControlMessage 8031 { 8032 GObject parentInstance; 8033 GSocketControlMessagePrivate* priv; 8034 } 8035 8036 /** 8037 * Class structure for #GSocketControlMessage. 8038 */ 8039 struct GSocketControlMessageClass 8040 { 8041 GObjectClass parentClass; 8042 /** 8043 * 8044 * Params: 8045 * message = a #GSocketControlMessage 8046 * Returns: The number of bytes required. 8047 */ 8048 extern(C) size_t function(GSocketControlMessage* message) getSize; 8049 /** 8050 * 8051 * Params: 8052 * message = a #GSocketControlMessage 8053 * Returns: an integer describing the level 8054 */ 8055 extern(C) int function(GSocketControlMessage* message) getLevel; 8056 /** */ 8057 extern(C) int function(GSocketControlMessage* message) getType; 8058 /** */ 8059 extern(C) void function(GSocketControlMessage* message, void* data) serialize; 8060 /** */ 8061 extern(C) GSocketControlMessage* function(int level, int type, size_t size, void* data) deserialize; 8062 /** */ 8063 extern(C) void function() GReserved1; 8064 /** */ 8065 extern(C) void function() GReserved2; 8066 /** */ 8067 extern(C) void function() GReserved3; 8068 /** */ 8069 extern(C) void function() GReserved4; 8070 /** */ 8071 extern(C) void function() GReserved5; 8072 } 8073 8074 struct GSocketControlMessagePrivate; 8075 8076 struct GSocketListener 8077 { 8078 GObject parentInstance; 8079 GSocketListenerPrivate* priv; 8080 } 8081 8082 /** 8083 * Class structure for #GSocketListener. 8084 */ 8085 struct GSocketListenerClass 8086 { 8087 GObjectClass parentClass; 8088 /** */ 8089 extern(C) void function(GSocketListener* listener) changed; 8090 /** */ 8091 extern(C) void function(GSocketListener* listener, GSocketListenerEvent event, GSocket* socket) event; 8092 /** */ 8093 extern(C) void function() GReserved2; 8094 /** */ 8095 extern(C) void function() GReserved3; 8096 /** */ 8097 extern(C) void function() GReserved4; 8098 /** */ 8099 extern(C) void function() GReserved5; 8100 /** */ 8101 extern(C) void function() GReserved6; 8102 } 8103 8104 struct GSocketListenerPrivate; 8105 8106 struct GSocketPrivate; 8107 8108 struct GSocketService 8109 { 8110 GSocketListener parentInstance; 8111 GSocketServicePrivate* priv; 8112 } 8113 8114 /** 8115 * Class structure for #GSocketService. 8116 */ 8117 struct GSocketServiceClass 8118 { 8119 GSocketListenerClass parentClass; 8120 /** */ 8121 extern(C) int function(GSocketService* service, GSocketConnection* connection, GObject* sourceObject) incoming; 8122 /** */ 8123 extern(C) void function() GReserved1; 8124 /** */ 8125 extern(C) void function() GReserved2; 8126 /** */ 8127 extern(C) void function() GReserved3; 8128 /** */ 8129 extern(C) void function() GReserved4; 8130 /** */ 8131 extern(C) void function() GReserved5; 8132 /** */ 8133 extern(C) void function() GReserved6; 8134 } 8135 8136 struct GSocketServicePrivate; 8137 8138 struct GSrvTarget; 8139 8140 struct GStaticResource 8141 { 8142 ubyte* data; 8143 size_t dataLen; 8144 GResource* resource; 8145 GStaticResource* next; 8146 void* padding; 8147 } 8148 8149 struct GSubprocess; 8150 8151 struct GSubprocessLauncher; 8152 8153 struct GTask; 8154 8155 struct GTaskClass; 8156 8157 struct GTcpConnection 8158 { 8159 GSocketConnection parentInstance; 8160 GTcpConnectionPrivate* priv; 8161 } 8162 8163 struct GTcpConnectionClass 8164 { 8165 GSocketConnectionClass parentClass; 8166 } 8167 8168 struct GTcpConnectionPrivate; 8169 8170 struct GTcpWrapperConnection 8171 { 8172 GTcpConnection parentInstance; 8173 GTcpWrapperConnectionPrivate* priv; 8174 } 8175 8176 struct GTcpWrapperConnectionClass 8177 { 8178 GTcpConnectionClass parentClass; 8179 } 8180 8181 struct GTcpWrapperConnectionPrivate; 8182 8183 struct GTestDBus; 8184 8185 struct GThemedIcon; 8186 8187 struct GThemedIconClass; 8188 8189 struct GThreadedSocketService 8190 { 8191 GSocketService parentInstance; 8192 GThreadedSocketServicePrivate* priv; 8193 } 8194 8195 struct GThreadedSocketServiceClass 8196 { 8197 GSocketServiceClass parentClass; 8198 /** */ 8199 extern(C) int function(GThreadedSocketService* service, GSocketConnection* connection, GObject* sourceObject) run; 8200 /** */ 8201 extern(C) void function() GReserved1; 8202 /** */ 8203 extern(C) void function() GReserved2; 8204 /** */ 8205 extern(C) void function() GReserved3; 8206 /** */ 8207 extern(C) void function() GReserved4; 8208 /** */ 8209 extern(C) void function() GReserved5; 8210 } 8211 8212 struct GThreadedSocketServicePrivate; 8213 8214 struct GTlsBackend; 8215 8216 /** 8217 * Provides an interface for describing TLS-related types. 8218 * 8219 * Since: 2.28 8220 */ 8221 struct GTlsBackendInterface 8222 { 8223 /** 8224 * The parent interface. 8225 */ 8226 GTypeInterface gIface; 8227 /** 8228 * 8229 * Params: 8230 * backend = the #GTlsBackend 8231 * Returns: whether or not TLS is supported 8232 */ 8233 extern(C) int function(GTlsBackend* backend) supportsTls; 8234 /** */ 8235 extern(C) GType function() getCertificateType; 8236 /** */ 8237 extern(C) GType function() getClientConnectionType; 8238 /** */ 8239 extern(C) GType function() getServerConnectionType; 8240 /** */ 8241 extern(C) GType function() getFileDatabaseType; 8242 /** 8243 * 8244 * Params: 8245 * backend = the #GTlsBackend 8246 * Returns: the default database, which should be 8247 * unreffed when done. 8248 */ 8249 extern(C) GTlsDatabase* function(GTlsBackend* backend) getDefaultDatabase; 8250 /** 8251 * 8252 * Params: 8253 * backend = the #GTlsBackend 8254 * Returns: whether DTLS is supported 8255 */ 8256 extern(C) int function(GTlsBackend* backend) supportsDtls; 8257 /** */ 8258 extern(C) GType function() getDtlsClientConnectionType; 8259 /** */ 8260 extern(C) GType function() getDtlsServerConnectionType; 8261 } 8262 8263 struct GTlsCertificate 8264 { 8265 GObject parentInstance; 8266 GTlsCertificatePrivate* priv; 8267 } 8268 8269 struct GTlsCertificateClass 8270 { 8271 GObjectClass parentClass; 8272 /** 8273 * 8274 * Params: 8275 * cert = a #GTlsCertificate 8276 * identity = the expected peer identity 8277 * trustedCa = the certificate of a trusted authority 8278 * Returns: the appropriate #GTlsCertificateFlags 8279 */ 8280 extern(C) GTlsCertificateFlags function(GTlsCertificate* cert, GSocketConnectable* identity, GTlsCertificate* trustedCa) verify; 8281 void*[8] padding; 8282 } 8283 8284 struct GTlsCertificatePrivate; 8285 8286 struct GTlsClientConnection; 8287 8288 /** 8289 * vtable for a #GTlsClientConnection implementation. 8290 * 8291 * Since: 2.26 8292 */ 8293 struct GTlsClientConnectionInterface 8294 { 8295 /** 8296 * The parent interface. 8297 */ 8298 GTypeInterface gIface; 8299 /** */ 8300 extern(C) void function(GTlsClientConnection* conn, GTlsClientConnection* source) copySessionState; 8301 } 8302 8303 struct GTlsConnection 8304 { 8305 GIOStream parentInstance; 8306 GTlsConnectionPrivate* priv; 8307 } 8308 8309 struct GTlsConnectionClass 8310 { 8311 GIOStreamClass parentClass; 8312 /** */ 8313 extern(C) int function(GTlsConnection* connection, GTlsCertificate* peerCert, GTlsCertificateFlags errors) acceptCertificate; 8314 /** 8315 * 8316 * Params: 8317 * conn = a #GTlsConnection 8318 * cancellable = a #GCancellable, or %NULL 8319 * Returns: success or failure 8320 * 8321 * Throws: GException on failure. 8322 */ 8323 extern(C) int function(GTlsConnection* conn, GCancellable* cancellable, GError** err) handshake; 8324 /** */ 8325 extern(C) void function(GTlsConnection* conn, int ioPriority, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) handshakeAsync; 8326 /** 8327 * 8328 * Params: 8329 * conn = a #GTlsConnection 8330 * result = a #GAsyncResult. 8331 * Returns: %TRUE on success, %FALSE on failure, in which 8332 * case @error will be set. 8333 * 8334 * Throws: GException on failure. 8335 */ 8336 extern(C) int function(GTlsConnection* conn, GAsyncResult* result, GError** err) handshakeFinish; 8337 /** */ 8338 extern(C) int function(GTlsConnection* conn, GTlsChannelBindingType type, GByteArray* data, GError** err) getBindingData; 8339 void*[7] padding; 8340 } 8341 8342 struct GTlsConnectionPrivate; 8343 8344 struct GTlsDatabase 8345 { 8346 GObject parentInstance; 8347 GTlsDatabasePrivate* priv; 8348 } 8349 8350 /** 8351 * The class for #GTlsDatabase. Derived classes should implement the various 8352 * virtual methods. _async and _finish methods have a default 8353 * implementation that runs the corresponding sync method in a thread. 8354 * 8355 * Since: 2.30 8356 */ 8357 struct GTlsDatabaseClass 8358 { 8359 GObjectClass parentClass; 8360 /** 8361 * 8362 * Params: 8363 * self = a #GTlsDatabase 8364 * chain = a #GTlsCertificate chain 8365 * purpose = the purpose that this certificate chain will be used for. 8366 * identity = the expected peer identity 8367 * interaction = used to interact with the user if necessary 8368 * flags = additional verify flags 8369 * cancellable = a #GCancellable, or %NULL 8370 * Returns: the appropriate #GTlsCertificateFlags which represents the 8371 * result of verification. 8372 * 8373 * Throws: GException on failure. 8374 */ 8375 extern(C) GTlsCertificateFlags function(GTlsDatabase* self, GTlsCertificate* chain, const(char)* purpose, GSocketConnectable* identity, GTlsInteraction* interaction, GTlsDatabaseVerifyFlags flags, GCancellable* cancellable, GError** err) verifyChain; 8376 /** */ 8377 extern(C) void function(GTlsDatabase* self, GTlsCertificate* chain, const(char)* purpose, GSocketConnectable* identity, GTlsInteraction* interaction, GTlsDatabaseVerifyFlags flags, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) verifyChainAsync; 8378 /** 8379 * 8380 * Params: 8381 * self = a #GTlsDatabase 8382 * result = a #GAsyncResult. 8383 * Returns: the appropriate #GTlsCertificateFlags which represents the 8384 * result of verification. 8385 * 8386 * Throws: GException on failure. 8387 */ 8388 extern(C) GTlsCertificateFlags function(GTlsDatabase* self, GAsyncResult* result, GError** err) verifyChainFinish; 8389 /** 8390 * 8391 * Params: 8392 * self = a #GTlsDatabase 8393 * certificate = certificate for which to create a handle. 8394 * Returns: a newly allocated string containing the 8395 * handle. 8396 */ 8397 extern(C) char* function(GTlsDatabase* self, GTlsCertificate* certificate) createCertificateHandle; 8398 /** 8399 * 8400 * Params: 8401 * self = a #GTlsDatabase 8402 * handle = a certificate handle 8403 * interaction = used to interact with the user if necessary 8404 * flags = Flags which affect the lookup. 8405 * cancellable = a #GCancellable, or %NULL 8406 * Returns: a newly allocated 8407 * #GTlsCertificate, or %NULL. Use g_object_unref() to release the certificate. 8408 * 8409 * Throws: GException on failure. 8410 */ 8411 extern(C) GTlsCertificate* function(GTlsDatabase* self, const(char)* handle, GTlsInteraction* interaction, GTlsDatabaseLookupFlags flags, GCancellable* cancellable, GError** err) lookupCertificateForHandle; 8412 /** */ 8413 extern(C) void function(GTlsDatabase* self, const(char)* handle, GTlsInteraction* interaction, GTlsDatabaseLookupFlags flags, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) lookupCertificateForHandleAsync; 8414 /** 8415 * 8416 * Params: 8417 * self = a #GTlsDatabase 8418 * result = a #GAsyncResult. 8419 * Returns: a newly allocated #GTlsCertificate object. 8420 * Use g_object_unref() to release the certificate. 8421 * 8422 * Throws: GException on failure. 8423 */ 8424 extern(C) GTlsCertificate* function(GTlsDatabase* self, GAsyncResult* result, GError** err) lookupCertificateForHandleFinish; 8425 /** 8426 * 8427 * Params: 8428 * self = a #GTlsDatabase 8429 * certificate = a #GTlsCertificate 8430 * interaction = used to interact with the user if necessary 8431 * flags = flags which affect the lookup operation 8432 * cancellable = a #GCancellable, or %NULL 8433 * Returns: a newly allocated issuer #GTlsCertificate, 8434 * or %NULL. Use g_object_unref() to release the certificate. 8435 * 8436 * Throws: GException on failure. 8437 */ 8438 extern(C) GTlsCertificate* function(GTlsDatabase* self, GTlsCertificate* certificate, GTlsInteraction* interaction, GTlsDatabaseLookupFlags flags, GCancellable* cancellable, GError** err) lookupCertificateIssuer; 8439 /** */ 8440 extern(C) void function(GTlsDatabase* self, GTlsCertificate* certificate, GTlsInteraction* interaction, GTlsDatabaseLookupFlags flags, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) lookupCertificateIssuerAsync; 8441 /** 8442 * 8443 * Params: 8444 * self = a #GTlsDatabase 8445 * result = a #GAsyncResult. 8446 * Returns: a newly allocated issuer #GTlsCertificate, 8447 * or %NULL. Use g_object_unref() to release the certificate. 8448 * 8449 * Throws: GException on failure. 8450 */ 8451 extern(C) GTlsCertificate* function(GTlsDatabase* self, GAsyncResult* result, GError** err) lookupCertificateIssuerFinish; 8452 /** 8453 * 8454 * Params: 8455 * self = a #GTlsDatabase 8456 * issuerRawDn = a #GByteArray which holds the DER encoded issuer DN. 8457 * interaction = used to interact with the user if necessary 8458 * flags = Flags which affect the lookup operation. 8459 * cancellable = a #GCancellable, or %NULL 8460 * Returns: a newly allocated list of #GTlsCertificate 8461 * objects. Use g_object_unref() on each certificate, and g_list_free() on the release the list. 8462 * 8463 * Throws: GException on failure. 8464 */ 8465 extern(C) GList* function(GTlsDatabase* self, GByteArray* issuerRawDn, GTlsInteraction* interaction, GTlsDatabaseLookupFlags flags, GCancellable* cancellable, GError** err) lookupCertificatesIssuedBy; 8466 /** */ 8467 extern(C) void function(GTlsDatabase* self, GByteArray* issuerRawDn, GTlsInteraction* interaction, GTlsDatabaseLookupFlags flags, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) lookupCertificatesIssuedByAsync; 8468 /** 8469 * 8470 * Params: 8471 * self = a #GTlsDatabase 8472 * result = a #GAsyncResult. 8473 * Returns: a newly allocated list of #GTlsCertificate 8474 * objects. Use g_object_unref() on each certificate, and g_list_free() on the release the list. 8475 * 8476 * Throws: GException on failure. 8477 */ 8478 extern(C) GList* function(GTlsDatabase* self, GAsyncResult* result, GError** err) lookupCertificatesIssuedByFinish; 8479 void*[16] padding; 8480 } 8481 8482 struct GTlsDatabasePrivate; 8483 8484 struct GTlsFileDatabase; 8485 8486 /** 8487 * Provides an interface for #GTlsFileDatabase implementations. 8488 */ 8489 struct GTlsFileDatabaseInterface 8490 { 8491 /** 8492 * The parent interface. 8493 */ 8494 GTypeInterface gIface; 8495 void*[8] padding; 8496 } 8497 8498 struct GTlsInteraction 8499 { 8500 GObject parentInstance; 8501 GTlsInteractionPrivate* priv; 8502 } 8503 8504 /** 8505 * The class for #GTlsInteraction. Derived classes implement the various 8506 * virtual interaction methods to handle TLS interactions. 8507 * 8508 * Derived classes can choose to implement whichever interactions methods they'd 8509 * like to support by overriding those virtual methods in their class 8510 * initialization function. If a derived class implements an async method, 8511 * it must also implement the corresponding finish method. 8512 * 8513 * The synchronous interaction methods should implement to display modal dialogs, 8514 * and the asynchronous methods to display modeless dialogs. 8515 * 8516 * If the user cancels an interaction, then the result should be 8517 * %G_TLS_INTERACTION_FAILED and the error should be set with a domain of 8518 * %G_IO_ERROR and code of %G_IO_ERROR_CANCELLED. 8519 * 8520 * Since: 2.30 8521 */ 8522 struct GTlsInteractionClass 8523 { 8524 GObjectClass parentClass; 8525 /** 8526 * 8527 * Params: 8528 * interaction = a #GTlsInteraction object 8529 * password = a #GTlsPassword object 8530 * cancellable = an optional #GCancellable cancellation object 8531 * Returns: The status of the ask password interaction. 8532 * 8533 * Throws: GException on failure. 8534 */ 8535 extern(C) GTlsInteractionResult function(GTlsInteraction* interaction, GTlsPassword* password, GCancellable* cancellable, GError** err) askPassword; 8536 /** */ 8537 extern(C) void function(GTlsInteraction* interaction, GTlsPassword* password, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) askPasswordAsync; 8538 /** 8539 * 8540 * Params: 8541 * interaction = a #GTlsInteraction object 8542 * result = the result passed to the callback 8543 * Returns: The status of the ask password interaction. 8544 * 8545 * Throws: GException on failure. 8546 */ 8547 extern(C) GTlsInteractionResult function(GTlsInteraction* interaction, GAsyncResult* result, GError** err) askPasswordFinish; 8548 /** 8549 * 8550 * Params: 8551 * interaction = a #GTlsInteraction object 8552 * connection = a #GTlsConnection object 8553 * flags = flags providing more information about the request 8554 * cancellable = an optional #GCancellable cancellation object 8555 * Returns: The status of the request certificate interaction. 8556 * 8557 * Throws: GException on failure. 8558 */ 8559 extern(C) GTlsInteractionResult function(GTlsInteraction* interaction, GTlsConnection* connection, GTlsCertificateRequestFlags flags, GCancellable* cancellable, GError** err) requestCertificate; 8560 /** */ 8561 extern(C) void function(GTlsInteraction* interaction, GTlsConnection* connection, GTlsCertificateRequestFlags flags, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) requestCertificateAsync; 8562 /** 8563 * 8564 * Params: 8565 * interaction = a #GTlsInteraction object 8566 * result = the result passed to the callback 8567 * Returns: The status of the request certificate interaction. 8568 * 8569 * Throws: GException on failure. 8570 */ 8571 extern(C) GTlsInteractionResult function(GTlsInteraction* interaction, GAsyncResult* result, GError** err) requestCertificateFinish; 8572 void*[21] padding; 8573 } 8574 8575 struct GTlsInteractionPrivate; 8576 8577 struct GTlsPassword 8578 { 8579 GObject parentInstance; 8580 GTlsPasswordPrivate* priv; 8581 } 8582 8583 /** 8584 * Class structure for #GTlsPassword. 8585 */ 8586 struct GTlsPasswordClass 8587 { 8588 GObjectClass parentClass; 8589 /** 8590 * 8591 * Params: 8592 * password = a #GTlsPassword object 8593 * length = location to place the length of the password. 8594 * Returns: The password value (owned by the password object). 8595 */ 8596 extern(C) char* function(GTlsPassword* password, size_t* length) getValue; 8597 /** */ 8598 extern(C) void function(GTlsPassword* password, char* value, ptrdiff_t length, GDestroyNotify destroy) setValue; 8599 /** */ 8600 extern(C) const(char)* function(GTlsPassword* password) getDefaultWarning; 8601 void*[4] padding; 8602 } 8603 8604 struct GTlsPasswordPrivate; 8605 8606 struct GTlsServerConnection; 8607 8608 /** 8609 * vtable for a #GTlsServerConnection implementation. 8610 * 8611 * Since: 2.26 8612 */ 8613 struct GTlsServerConnectionInterface 8614 { 8615 /** 8616 * The parent interface. 8617 */ 8618 GTypeInterface gIface; 8619 } 8620 8621 struct GUnixConnection 8622 { 8623 GSocketConnection parentInstance; 8624 GUnixConnectionPrivate* priv; 8625 } 8626 8627 struct GUnixConnectionClass 8628 { 8629 GSocketConnectionClass parentClass; 8630 } 8631 8632 struct GUnixConnectionPrivate; 8633 8634 struct GUnixCredentialsMessage 8635 { 8636 GSocketControlMessage parentInstance; 8637 GUnixCredentialsMessagePrivate* priv; 8638 } 8639 8640 /** 8641 * Class structure for #GUnixCredentialsMessage. 8642 * 8643 * Since: 2.26 8644 */ 8645 struct GUnixCredentialsMessageClass 8646 { 8647 GSocketControlMessageClass parentClass; 8648 /** */ 8649 extern(C) void function() GReserved1; 8650 /** */ 8651 extern(C) void function() GReserved2; 8652 } 8653 8654 struct GUnixCredentialsMessagePrivate; 8655 8656 struct GUnixFDList 8657 { 8658 GObject parentInstance; 8659 GUnixFDListPrivate* priv; 8660 } 8661 8662 struct GUnixFDListClass 8663 { 8664 GObjectClass parentClass; 8665 /** */ 8666 extern(C) void function() GReserved1; 8667 /** */ 8668 extern(C) void function() GReserved2; 8669 /** */ 8670 extern(C) void function() GReserved3; 8671 /** */ 8672 extern(C) void function() GReserved4; 8673 /** */ 8674 extern(C) void function() GReserved5; 8675 } 8676 8677 struct GUnixFDListPrivate; 8678 8679 struct GUnixFDMessage 8680 { 8681 GSocketControlMessage parentInstance; 8682 GUnixFDMessagePrivate* priv; 8683 } 8684 8685 struct GUnixFDMessageClass 8686 { 8687 GSocketControlMessageClass parentClass; 8688 /** */ 8689 extern(C) void function() GReserved1; 8690 /** */ 8691 extern(C) void function() GReserved2; 8692 } 8693 8694 struct GUnixFDMessagePrivate; 8695 8696 struct GUnixInputStream 8697 { 8698 GInputStream parentInstance; 8699 GUnixInputStreamPrivate* priv; 8700 } 8701 8702 struct GUnixInputStreamClass 8703 { 8704 GInputStreamClass parentClass; 8705 /** */ 8706 extern(C) void function() GReserved1; 8707 /** */ 8708 extern(C) void function() GReserved2; 8709 /** */ 8710 extern(C) void function() GReserved3; 8711 /** */ 8712 extern(C) void function() GReserved4; 8713 /** */ 8714 extern(C) void function() GReserved5; 8715 } 8716 8717 struct GUnixInputStreamPrivate; 8718 8719 /** 8720 * Defines a Unix mount entry (e.g. <filename>/media/cdrom</filename>). 8721 * This corresponds roughly to a mtab entry. 8722 */ 8723 struct GUnixMountEntry; 8724 8725 struct GUnixMountMonitor; 8726 8727 struct GUnixMountMonitorClass; 8728 8729 struct GUnixMountPoint; 8730 8731 struct GUnixOutputStream 8732 { 8733 GOutputStream parentInstance; 8734 GUnixOutputStreamPrivate* priv; 8735 } 8736 8737 struct GUnixOutputStreamClass 8738 { 8739 GOutputStreamClass parentClass; 8740 /** */ 8741 extern(C) void function() GReserved1; 8742 /** */ 8743 extern(C) void function() GReserved2; 8744 /** */ 8745 extern(C) void function() GReserved3; 8746 /** */ 8747 extern(C) void function() GReserved4; 8748 /** */ 8749 extern(C) void function() GReserved5; 8750 } 8751 8752 struct GUnixOutputStreamPrivate; 8753 8754 struct GUnixSocketAddress 8755 { 8756 GSocketAddress parentInstance; 8757 GUnixSocketAddressPrivate* priv; 8758 } 8759 8760 struct GUnixSocketAddressClass 8761 { 8762 GSocketAddressClass parentClass; 8763 } 8764 8765 struct GUnixSocketAddressPrivate; 8766 8767 struct GVfs 8768 { 8769 GObject parentInstance; 8770 } 8771 8772 struct GVfsClass 8773 { 8774 GObjectClass parentClass; 8775 /** 8776 * 8777 * Params: 8778 * vfs = a #GVfs. 8779 * Returns: %TRUE if construction of the @vfs was successful 8780 * and it is now active. 8781 */ 8782 extern(C) int function(GVfs* vfs) isActive; 8783 /** 8784 * 8785 * Params: 8786 * vfs = a #GVfs. 8787 * path = a string containing a VFS path. 8788 * Returns: a #GFile. 8789 * Free the returned object with g_object_unref(). 8790 */ 8791 extern(C) GFile* function(GVfs* vfs, const(char)* path) getFileForPath; 8792 /** 8793 * 8794 * Params: 8795 * vfs = a#GVfs. 8796 * uri = a string containing a URI 8797 * Returns: a #GFile. 8798 * Free the returned object with g_object_unref(). 8799 */ 8800 extern(C) GFile* function(GVfs* vfs, const(char)* uri) getFileForUri; 8801 /** 8802 * 8803 * Params: 8804 * vfs = a #GVfs. 8805 * Returns: a %NULL-terminated array of strings. 8806 * The returned array belongs to GIO and must 8807 * not be freed or modified. 8808 */ 8809 extern(C) char** function(GVfs* vfs) getSupportedUriSchemes; 8810 /** 8811 * 8812 * Params: 8813 * vfs = a #GVfs. 8814 * parseName = a string to be parsed by the VFS module. 8815 * Returns: a #GFile for the given @parse_name. 8816 * Free the returned object with g_object_unref(). 8817 */ 8818 extern(C) GFile* function(GVfs* vfs, const(char)* parseName) parseName; 8819 /** */ 8820 extern(C) void function(GVfs* vfs, const(char)* filename, ulong device, GFileAttributeMatcher* attributeMatcher, GFileInfo* info, GCancellable* cancellable, void** extraData, GDestroyNotify* freeExtraData) localFileAddInfo; 8821 /** */ 8822 extern(C) void function(GVfs* vfs, GFileAttributeInfoList* list) addWritableNamespaces; 8823 /** */ 8824 extern(C) int function(GVfs* vfs, const(char)* filename, GFileInfo* info, GFileQueryInfoFlags flags, GCancellable* cancellable, GError** err) localFileSetAttributes; 8825 /** */ 8826 extern(C) void function(GVfs* vfs, const(char)* filename) localFileRemoved; 8827 /** */ 8828 extern(C) void function(GVfs* vfs, const(char)* source, const(char)* dest) localFileMoved; 8829 /** */ 8830 extern(C) GIcon* function(GVfs* vfs, GVariant* value) deserializeIcon; 8831 /** */ 8832 extern(C) void function() GReserved1; 8833 /** */ 8834 extern(C) void function() GReserved2; 8835 /** */ 8836 extern(C) void function() GReserved3; 8837 /** */ 8838 extern(C) void function() GReserved4; 8839 /** */ 8840 extern(C) void function() GReserved5; 8841 /** */ 8842 extern(C) void function() GReserved6; 8843 } 8844 8845 struct GVolume; 8846 8847 /** 8848 * Interface for implementing operations for mountable volumes. 8849 */ 8850 struct GVolumeIface 8851 { 8852 /** 8853 * The parent interface. 8854 */ 8855 GTypeInterface gIface; 8856 /** */ 8857 extern(C) void function(GVolume* volume) changed; 8858 /** */ 8859 extern(C) void function(GVolume* volume) removed; 8860 /** 8861 * 8862 * Params: 8863 * volume = a #GVolume 8864 * Returns: the name for the given @volume. The returned string should 8865 * be freed with g_free() when no longer needed. 8866 */ 8867 extern(C) char* function(GVolume* volume) getName; 8868 /** 8869 * 8870 * Params: 8871 * volume = a #GVolume 8872 * Returns: a #GIcon. 8873 * The returned object should be unreffed with g_object_unref() 8874 * when no longer needed. 8875 */ 8876 extern(C) GIcon* function(GVolume* volume) getIcon; 8877 /** 8878 * 8879 * Params: 8880 * volume = a #GVolume 8881 * Returns: the UUID for @volume or %NULL if no UUID 8882 * can be computed. 8883 * The returned string should be freed with g_free() 8884 * when no longer needed. 8885 */ 8886 extern(C) char* function(GVolume* volume) getUuid; 8887 /** 8888 * 8889 * Params: 8890 * volume = a #GVolume 8891 * Returns: a #GDrive or %NULL if @volume is not 8892 * associated with a drive. The returned object should be unreffed 8893 * with g_object_unref() when no longer needed. 8894 */ 8895 extern(C) GDrive* function(GVolume* volume) getDrive; 8896 /** 8897 * 8898 * Params: 8899 * volume = a #GVolume 8900 * Returns: a #GMount or %NULL if @volume isn't mounted. 8901 * The returned object should be unreffed with g_object_unref() 8902 * when no longer needed. 8903 */ 8904 extern(C) GMount* function(GVolume* volume) getMount; 8905 /** 8906 * 8907 * Params: 8908 * volume = a #GVolume 8909 * Returns: %TRUE if the @volume can be mounted. %FALSE otherwise 8910 */ 8911 extern(C) int function(GVolume* volume) canMount; 8912 /** 8913 * 8914 * Params: 8915 * volume = a #GVolume 8916 * Returns: %TRUE if the @volume can be ejected. %FALSE otherwise 8917 */ 8918 extern(C) int function(GVolume* volume) canEject; 8919 /** */ 8920 extern(C) void function(GVolume* volume, GMountMountFlags flags, GMountOperation* mountOperation, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) mountFn; 8921 /** 8922 * 8923 * Params: 8924 * volume = a #GVolume 8925 * result = a #GAsyncResult 8926 * Returns: %TRUE, %FALSE if operation failed 8927 * 8928 * Throws: GException on failure. 8929 */ 8930 extern(C) int function(GVolume* volume, GAsyncResult* result, GError** err) mountFinish; 8931 /** */ 8932 extern(C) void function(GVolume* volume, GMountUnmountFlags flags, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) eject; 8933 /** 8934 * 8935 * Params: 8936 * volume = pointer to a #GVolume 8937 * result = a #GAsyncResult 8938 * Returns: %TRUE, %FALSE if operation failed 8939 * 8940 * Throws: GException on failure. 8941 */ 8942 extern(C) int function(GVolume* volume, GAsyncResult* result, GError** err) ejectFinish; 8943 /** 8944 * 8945 * Params: 8946 * volume = a #GVolume 8947 * kind = the kind of identifier to return 8948 * Returns: a newly allocated string containing the 8949 * requested identifier, or %NULL if the #GVolume 8950 * doesn't have this kind of identifier 8951 */ 8952 extern(C) char* function(GVolume* volume, const(char)* kind) getIdentifier; 8953 /** 8954 * 8955 * Params: 8956 * volume = a #GVolume 8957 * Returns: a %NULL-terminated array 8958 * of strings containing kinds of identifiers. Use g_strfreev() to free. 8959 */ 8960 extern(C) char** function(GVolume* volume) enumerateIdentifiers; 8961 /** 8962 * 8963 * Params: 8964 * volume = a #GVolume 8965 * Returns: %TRUE if the volume should be automatically mounted 8966 */ 8967 extern(C) int function(GVolume* volume) shouldAutomount; 8968 /** 8969 * 8970 * Params: 8971 * volume = a #GVolume 8972 * Returns: the activation root of @volume 8973 * or %NULL. Use g_object_unref() to free. 8974 */ 8975 extern(C) GFile* function(GVolume* volume) getActivationRoot; 8976 /** */ 8977 extern(C) void function(GVolume* volume, GMountUnmountFlags flags, GMountOperation* mountOperation, GCancellable* cancellable, GAsyncReadyCallback callback, void* userData) ejectWithOperation; 8978 /** 8979 * 8980 * Params: 8981 * volume = a #GVolume 8982 * result = a #GAsyncResult 8983 * Returns: %TRUE if the volume was successfully ejected. %FALSE otherwise 8984 * 8985 * Throws: GException on failure. 8986 */ 8987 extern(C) int function(GVolume* volume, GAsyncResult* result, GError** err) ejectWithOperationFinish; 8988 /** 8989 * 8990 * Params: 8991 * volume = a #GVolume 8992 * Returns: Sorting key for @volume or %NULL if no such key is available 8993 */ 8994 extern(C) const(char)* function(GVolume* volume) getSortKey; 8995 /** 8996 * 8997 * Params: 8998 * volume = a #GVolume 8999 * Returns: a #GIcon. 9000 * The returned object should be unreffed with g_object_unref() 9001 * when no longer needed. 9002 */ 9003 extern(C) GIcon* function(GVolume* volume) getSymbolicIcon; 9004 } 9005 9006 struct GVolumeMonitor 9007 { 9008 GObject parentInstance; 9009 void* priv; 9010 } 9011 9012 struct GVolumeMonitorClass 9013 { 9014 GObjectClass parentClass; 9015 /** */ 9016 extern(C) void function(GVolumeMonitor* volumeMonitor, GVolume* volume) volumeAdded; 9017 /** */ 9018 extern(C) void function(GVolumeMonitor* volumeMonitor, GVolume* volume) volumeRemoved; 9019 /** */ 9020 extern(C) void function(GVolumeMonitor* volumeMonitor, GVolume* volume) volumeChanged; 9021 /** */ 9022 extern(C) void function(GVolumeMonitor* volumeMonitor, GMount* mount) mountAdded; 9023 /** */ 9024 extern(C) void function(GVolumeMonitor* volumeMonitor, GMount* mount) mountRemoved; 9025 /** */ 9026 extern(C) void function(GVolumeMonitor* volumeMonitor, GMount* mount) mountPreUnmount; 9027 /** */ 9028 extern(C) void function(GVolumeMonitor* volumeMonitor, GMount* mount) mountChanged; 9029 /** */ 9030 extern(C) void function(GVolumeMonitor* volumeMonitor, GDrive* drive) driveConnected; 9031 /** */ 9032 extern(C) void function(GVolumeMonitor* volumeMonitor, GDrive* drive) driveDisconnected; 9033 /** */ 9034 extern(C) void function(GVolumeMonitor* volumeMonitor, GDrive* drive) driveChanged; 9035 /** */ 9036 extern(C) int function() isSupported; 9037 /** 9038 * 9039 * Params: 9040 * volumeMonitor = a #GVolumeMonitor. 9041 * Returns: a #GList of connected #GDrive objects. 9042 */ 9043 extern(C) GList* function(GVolumeMonitor* volumeMonitor) getConnectedDrives; 9044 /** 9045 * 9046 * Params: 9047 * volumeMonitor = a #GVolumeMonitor. 9048 * Returns: a #GList of #GVolume objects. 9049 */ 9050 extern(C) GList* function(GVolumeMonitor* volumeMonitor) getVolumes; 9051 /** 9052 * 9053 * Params: 9054 * volumeMonitor = a #GVolumeMonitor. 9055 * Returns: a #GList of #GMount objects. 9056 */ 9057 extern(C) GList* function(GVolumeMonitor* volumeMonitor) getMounts; 9058 /** 9059 * 9060 * Params: 9061 * volumeMonitor = a #GVolumeMonitor. 9062 * uuid = the UUID to look for 9063 * Returns: a #GVolume or %NULL if no such volume is available. 9064 * Free the returned object with g_object_unref(). 9065 */ 9066 extern(C) GVolume* function(GVolumeMonitor* volumeMonitor, const(char)* uuid) getVolumeForUuid; 9067 /** 9068 * 9069 * Params: 9070 * volumeMonitor = a #GVolumeMonitor. 9071 * uuid = the UUID to look for 9072 * Returns: a #GMount or %NULL if no such mount is available. 9073 * Free the returned object with g_object_unref(). 9074 */ 9075 extern(C) GMount* function(GVolumeMonitor* volumeMonitor, const(char)* uuid) getMountForUuid; 9076 /** */ 9077 extern(C) GVolume* function(GMount* mount, GVolumeMonitor* volumeMonitor) adoptOrphanMount; 9078 /** */ 9079 extern(C) void function(GVolumeMonitor* volumeMonitor, GDrive* drive) driveEjectButton; 9080 /** */ 9081 extern(C) void function(GVolumeMonitor* volumeMonitor, GDrive* drive) driveStopButton; 9082 /** */ 9083 extern(C) void function() GReserved1; 9084 /** */ 9085 extern(C) void function() GReserved2; 9086 /** */ 9087 extern(C) void function() GReserved3; 9088 /** */ 9089 extern(C) void function() GReserved4; 9090 /** */ 9091 extern(C) void function() GReserved5; 9092 /** */ 9093 extern(C) void function() GReserved6; 9094 } 9095 9096 struct GZlibCompressor; 9097 9098 struct GZlibCompressorClass 9099 { 9100 GObjectClass parentClass; 9101 } 9102 9103 struct GZlibDecompressor; 9104 9105 struct GZlibDecompressorClass 9106 { 9107 GObjectClass parentClass; 9108 } 9109 9110 /** 9111 * Type definition for a function that will be called back when an asynchronous 9112 * operation within GIO has been completed. #GAsyncReadyCallback 9113 * callbacks from #GTask are guaranteed to be invoked in a later 9114 * iteration of the 9115 * [thread-default main context][g-main-context-push-thread-default] 9116 * where the #GTask was created. All other users of 9117 * #GAsyncReadyCallback must likewise call it asynchronously in a 9118 * later iteration of the main context. 9119 * 9120 * Params: 9121 * sourceObject = the object the asynchronous operation was started with. 9122 * res = a #GAsyncResult. 9123 * userData = user data passed to the callback. 9124 */ 9125 public alias extern(C) void function(GObject* sourceObject, GAsyncResult* res, void* userData) GAsyncReadyCallback; 9126 9127 /** 9128 * Invoked when a connection to a message bus has been obtained. 9129 * 9130 * Params: 9131 * connection = The #GDBusConnection to a message bus. 9132 * name = The name that is requested to be owned. 9133 * userData = User data passed to g_bus_own_name(). 9134 * 9135 * Since: 2.26 9136 */ 9137 public alias extern(C) void function(GDBusConnection* connection, const(char)* name, void* userData) GBusAcquiredCallback; 9138 9139 /** 9140 * Invoked when the name is acquired. 9141 * 9142 * Params: 9143 * connection = The #GDBusConnection on which to acquired the name. 9144 * name = The name being owned. 9145 * userData = User data passed to g_bus_own_name() or g_bus_own_name_on_connection(). 9146 * 9147 * Since: 2.26 9148 */ 9149 public alias extern(C) void function(GDBusConnection* connection, const(char)* name, void* userData) GBusNameAcquiredCallback; 9150 9151 /** 9152 * Invoked when the name being watched is known to have to have an owner. 9153 * 9154 * Params: 9155 * connection = The #GDBusConnection the name is being watched on. 9156 * name = The name being watched. 9157 * nameOwner = Unique name of the owner of the name being watched. 9158 * userData = User data passed to g_bus_watch_name(). 9159 * 9160 * Since: 2.26 9161 */ 9162 public alias extern(C) void function(GDBusConnection* connection, const(char)* name, const(char)* nameOwner, void* userData) GBusNameAppearedCallback; 9163 9164 /** 9165 * Invoked when the name is lost or @connection has been closed. 9166 * 9167 * Params: 9168 * connection = The #GDBusConnection on which to acquire the name or %NULL if 9169 * the connection was disconnected. 9170 * name = The name being owned. 9171 * userData = User data passed to g_bus_own_name() or g_bus_own_name_on_connection(). 9172 * 9173 * Since: 2.26 9174 */ 9175 public alias extern(C) void function(GDBusConnection* connection, const(char)* name, void* userData) GBusNameLostCallback; 9176 9177 /** 9178 * Invoked when the name being watched is known not to have to have an owner. 9179 * 9180 * This is also invoked when the #GDBusConnection on which the watch was 9181 * established has been closed. In that case, @connection will be 9182 * %NULL. 9183 * 9184 * Params: 9185 * connection = The #GDBusConnection the name is being watched on, or 9186 * %NULL. 9187 * name = The name being watched. 9188 * userData = User data passed to g_bus_watch_name(). 9189 * 9190 * Since: 2.26 9191 */ 9192 public alias extern(C) void function(GDBusConnection* connection, const(char)* name, void* userData) GBusNameVanishedCallback; 9193 9194 /** 9195 * This is the function type of the callback used for the #GSource 9196 * returned by g_cancellable_source_new(). 9197 * 9198 * Params: 9199 * cancellable = the #GCancellable 9200 * userData = data passed in by the user. 9201 * 9202 * Returns: it should return %FALSE if the source should be removed. 9203 * 9204 * Since: 2.28 9205 */ 9206 public alias extern(C) int function(GCancellable* cancellable, void* userData) GCancellableSourceFunc; 9207 9208 /** 9209 * The type of the @get_property function in #GDBusInterfaceVTable. 9210 * 9211 * Params: 9212 * connection = A #GDBusConnection. 9213 * sender = The unique bus name of the remote caller. 9214 * objectPath = The object path that the method was invoked on. 9215 * interfaceName = The D-Bus interface name for the property. 9216 * propertyName = The name of the property to get the value of. 9217 * error = Return location for error. 9218 * userData = The @user_data #gpointer passed to g_dbus_connection_register_object(). 9219 * 9220 * Returns: A #GVariant with the value for @property_name or %NULL if 9221 * @error is set. If the returned #GVariant is floating, it is 9222 * consumed - otherwise its reference count is decreased by one. 9223 * 9224 * Since: 2.26 9225 */ 9226 public alias extern(C) GVariant* function(GDBusConnection* connection, const(char)* sender, const(char)* objectPath, const(char)* interfaceName, const(char)* propertyName, GError** error, void* userData) GDBusInterfaceGetPropertyFunc; 9227 9228 /** 9229 * The type of the @method_call function in #GDBusInterfaceVTable. 9230 * 9231 * Params: 9232 * connection = A #GDBusConnection. 9233 * sender = The unique bus name of the remote caller. 9234 * objectPath = The object path that the method was invoked on. 9235 * interfaceName = The D-Bus interface name the method was invoked on. 9236 * methodName = The name of the method that was invoked. 9237 * parameters = A #GVariant tuple with parameters. 9238 * invocation = A #GDBusMethodInvocation object that must be used to return a value or error. 9239 * userData = The @user_data #gpointer passed to g_dbus_connection_register_object(). 9240 * 9241 * Since: 2.26 9242 */ 9243 public alias extern(C) void function(GDBusConnection* connection, const(char)* sender, const(char)* objectPath, const(char)* interfaceName, const(char)* methodName, GVariant* parameters, GDBusMethodInvocation* invocation, void* userData) GDBusInterfaceMethodCallFunc; 9244 9245 /** 9246 * The type of the @set_property function in #GDBusInterfaceVTable. 9247 * 9248 * Params: 9249 * connection = A #GDBusConnection. 9250 * sender = The unique bus name of the remote caller. 9251 * objectPath = The object path that the method was invoked on. 9252 * interfaceName = The D-Bus interface name for the property. 9253 * propertyName = The name of the property to get the value of. 9254 * value = The value to set the property to. 9255 * error = Return location for error. 9256 * userData = The @user_data #gpointer passed to g_dbus_connection_register_object(). 9257 * 9258 * Returns: %TRUE if the property was set to @value, %FALSE if @error is set. 9259 * 9260 * Since: 2.26 9261 */ 9262 public alias extern(C) int function(GDBusConnection* connection, const(char)* sender, const(char)* objectPath, const(char)* interfaceName, const(char)* propertyName, GVariant* value, GError** error, void* userData) GDBusInterfaceSetPropertyFunc; 9263 9264 /** 9265 * Signature for function used in g_dbus_connection_add_filter(). 9266 * 9267 * A filter function is passed a #GDBusMessage and expected to return 9268 * a #GDBusMessage too. Passive filter functions that don't modify the 9269 * message can simply return the @message object: 9270 * |[ 9271 * static GDBusMessage * 9272 * passive_filter (GDBusConnection *connection 9273 * GDBusMessage *message, 9274 * gboolean incoming, 9275 * gpointer user_data) 9276 * { 9277 * // inspect @message 9278 * return message; 9279 * } 9280 * ]| 9281 * Filter functions that wants to drop a message can simply return %NULL: 9282 * |[ 9283 * static GDBusMessage * 9284 * drop_filter (GDBusConnection *connection 9285 * GDBusMessage *message, 9286 * gboolean incoming, 9287 * gpointer user_data) 9288 * { 9289 * if (should_drop_message) 9290 * { 9291 * g_object_unref (message); 9292 * message = NULL; 9293 * } 9294 * return message; 9295 * } 9296 * ]| 9297 * Finally, a filter function may modify a message by copying it: 9298 * |[ 9299 * static GDBusMessage * 9300 * modifying_filter (GDBusConnection *connection 9301 * GDBusMessage *message, 9302 * gboolean incoming, 9303 * gpointer user_data) 9304 * { 9305 * GDBusMessage *copy; 9306 * GError *error; 9307 * 9308 * error = NULL; 9309 * copy = g_dbus_message_copy (message, &error); 9310 * // handle @error being set 9311 * g_object_unref (message); 9312 * 9313 * // modify @copy 9314 * 9315 * return copy; 9316 * } 9317 * ]| 9318 * If the returned #GDBusMessage is different from @message and cannot 9319 * be sent on @connection (it could use features, such as file 9320 * descriptors, not compatible with @connection), then a warning is 9321 * logged to standard error. Applications can 9322 * check this ahead of time using g_dbus_message_to_blob() passing a 9323 * #GDBusCapabilityFlags value obtained from @connection. 9324 * 9325 * Params: 9326 * connection = A #GDBusConnection. 9327 * message = A locked #GDBusMessage that the filter function takes ownership of. 9328 * incoming = %TRUE if it is a message received from the other peer, %FALSE if it is 9329 * a message to be sent to the other peer. 9330 * userData = User data passed when adding the filter. 9331 * 9332 * Returns: A #GDBusMessage that will be freed with 9333 * g_object_unref() or %NULL to drop the message. Passive filter 9334 * functions can simply return the passed @message object. 9335 * 9336 * Since: 2.26 9337 */ 9338 public alias extern(C) GDBusMessage* function(GDBusConnection* connection, GDBusMessage* message, int incoming, void* userData) GDBusMessageFilterFunction; 9339 9340 /** 9341 * Function signature for a function used to determine the #GType to 9342 * use for an interface proxy (if @interface_name is not %NULL) or 9343 * object proxy (if @interface_name is %NULL). 9344 * 9345 * This function is called in the 9346 * [thread-default main loop][g-main-context-push-thread-default] 9347 * that @manager was constructed in. 9348 * 9349 * Params: 9350 * manager = A #GDBusObjectManagerClient. 9351 * objectPath = The object path of the remote object. 9352 * interfaceName = The interface name of the remote object or %NULL if a #GDBusObjectProxy #GType is requested. 9353 * userData = User data. 9354 * 9355 * Returns: A #GType to use for the remote object. The returned type 9356 * must be a #GDBusProxy or #GDBusObjectProxy -derived 9357 * type. 9358 * 9359 * Since: 2.30 9360 */ 9361 public alias extern(C) GType function(GDBusObjectManagerClient* manager, const(char)* objectPath, const(char)* interfaceName, void* userData) GDBusProxyTypeFunc; 9362 9363 /** 9364 * Signature for callback function used in g_dbus_connection_signal_subscribe(). 9365 * 9366 * Params: 9367 * connection = A #GDBusConnection. 9368 * senderName = The unique bus name of the sender of the signal, 9369 * or %NULL on a peer-to-peer D-Bus connection. 9370 * objectPath = The object path that the signal was emitted on. 9371 * interfaceName = The name of the interface. 9372 * signalName = The name of the signal. 9373 * parameters = A #GVariant tuple with parameters for the signal. 9374 * userData = User data passed when subscribing to the signal. 9375 * 9376 * Since: 2.26 9377 */ 9378 public alias extern(C) void function(GDBusConnection* connection, const(char)* senderName, const(char)* objectPath, const(char)* interfaceName, const(char)* signalName, GVariant* parameters, void* userData) GDBusSignalCallback; 9379 9380 /** 9381 * The type of the @dispatch function in #GDBusSubtreeVTable. 9382 * 9383 * Subtrees are flat. @node, if non-%NULL, is always exactly one 9384 * segment of the object path (ie: it never contains a slash). 9385 * 9386 * Params: 9387 * connection = A #GDBusConnection. 9388 * sender = The unique bus name of the remote caller. 9389 * objectPath = The object path that was registered with g_dbus_connection_register_subtree(). 9390 * interfaceName = The D-Bus interface name that the method call or property access is for. 9391 * node = A node that is a child of @object_path (relative to @object_path) or %NULL for the root of the subtree. 9392 * outUserData = Return location for user data to pass to functions in the returned #GDBusInterfaceVTable. 9393 * userData = The @user_data #gpointer passed to g_dbus_connection_register_subtree(). 9394 * 9395 * Returns: A #GDBusInterfaceVTable or %NULL if you don't want to handle the methods. 9396 * 9397 * Since: 2.26 9398 */ 9399 public alias extern(C) GDBusInterfaceVTable* function(GDBusConnection* connection, const(char)* sender, const(char)* objectPath, const(char)* interfaceName, const(char)* node, void** outUserData, void* userData) GDBusSubtreeDispatchFunc; 9400 9401 /** 9402 * The type of the @enumerate function in #GDBusSubtreeVTable. 9403 * 9404 * This function is called when generating introspection data and also 9405 * when preparing to dispatch incoming messages in the event that the 9406 * %G_DBUS_SUBTREE_FLAGS_DISPATCH_TO_UNENUMERATED_NODES flag is not 9407 * specified (ie: to verify that the object path is valid). 9408 * 9409 * Hierarchies are not supported; the items that you return should not 9410 * contain the `/` character. 9411 * 9412 * The return value will be freed with g_strfreev(). 9413 * 9414 * Params: 9415 * connection = A #GDBusConnection. 9416 * sender = The unique bus name of the remote caller. 9417 * objectPath = The object path that was registered with g_dbus_connection_register_subtree(). 9418 * userData = The @user_data #gpointer passed to g_dbus_connection_register_subtree(). 9419 * 9420 * Returns: A newly allocated array of strings for node names that are children of @object_path. 9421 * 9422 * Since: 2.26 9423 */ 9424 public alias extern(C) char** function(GDBusConnection* connection, const(char)* sender, const(char)* objectPath, void* userData) GDBusSubtreeEnumerateFunc; 9425 9426 /** 9427 * The type of the @introspect function in #GDBusSubtreeVTable. 9428 * 9429 * Subtrees are flat. @node, if non-%NULL, is always exactly one 9430 * segment of the object path (ie: it never contains a slash). 9431 * 9432 * This function should return %NULL to indicate that there is no object 9433 * at this node. 9434 * 9435 * If this function returns non-%NULL, the return value is expected to 9436 * be a %NULL-terminated array of pointers to #GDBusInterfaceInfo 9437 * structures describing the interfaces implemented by @node. This 9438 * array will have g_dbus_interface_info_unref() called on each item 9439 * before being freed with g_free(). 9440 * 9441 * The difference between returning %NULL and an array containing zero 9442 * items is that the standard DBus interfaces will returned to the 9443 * remote introspector in the empty array case, but not in the %NULL 9444 * case. 9445 * 9446 * Params: 9447 * connection = A #GDBusConnection. 9448 * sender = The unique bus name of the remote caller. 9449 * objectPath = The object path that was registered with g_dbus_connection_register_subtree(). 9450 * node = A node that is a child of @object_path (relative to @object_path) or %NULL for the root of the subtree. 9451 * userData = The @user_data #gpointer passed to g_dbus_connection_register_subtree(). 9452 * 9453 * Returns: A %NULL-terminated array of pointers to #GDBusInterfaceInfo, or %NULL. 9454 * 9455 * Since: 2.26 9456 */ 9457 public alias extern(C) GDBusInterfaceInfo** function(GDBusConnection* connection, const(char)* sender, const(char)* objectPath, const(char)* node, void* userData) GDBusSubtreeIntrospectFunc; 9458 9459 /** 9460 * This is the function type of the callback used for the #GSource 9461 * returned by g_datagram_based_create_source(). 9462 * 9463 * Params: 9464 * datagramBased = the #GDatagramBased 9465 * condition = the current condition at the source fired 9466 * userData = data passed in by the user 9467 * 9468 * Returns: %G_SOURCE_REMOVE if the source should be removed, 9469 * %G_SOURCE_CONTINUE otherwise 9470 * 9471 * Since: 2.48 9472 */ 9473 public alias extern(C) int function(GDatagramBased* datagramBased, GIOCondition condition, void* userData) GDatagramBasedSourceFunc; 9474 9475 /** 9476 * During invocation, g_desktop_app_info_launch_uris_as_manager() may 9477 * create one or more child processes. This callback is invoked once 9478 * for each, providing the process ID. 9479 * 9480 * Params: 9481 * appinfo = a #GDesktopAppInfo 9482 * pid = Process identifier 9483 * userData = User data 9484 */ 9485 public alias extern(C) void function(GDesktopAppInfo* appinfo, GPid pid, void* userData) GDesktopAppLaunchCallback; 9486 9487 /** 9488 * This callback type is used by g_file_measure_disk_usage() to make 9489 * periodic progress reports when measuring the amount of disk spaced 9490 * used by a directory. 9491 * 9492 * These calls are made on a best-effort basis and not all types of 9493 * #GFile will support them. At the minimum, however, one call will 9494 * always be made immediately. 9495 * 9496 * In the case that there is no support, @reporting will be set to 9497 * %FALSE (and the other values undefined) and no further calls will be 9498 * made. Otherwise, the @reporting will be %TRUE and the other values 9499 * all-zeros during the first (immediate) call. In this way, you can 9500 * know which type of progress UI to show without a delay. 9501 * 9502 * For g_file_measure_disk_usage() the callback is made directly. For 9503 * g_file_measure_disk_usage_async() the callback is made via the 9504 * default main context of the calling thread (ie: the same way that the 9505 * final async result would be reported). 9506 * 9507 * @current_size is in the same units as requested by the operation (see 9508 * %G_FILE_MEASURE_APPARENT_SIZE). 9509 * 9510 * The frequency of the updates is implementation defined, but is 9511 * ideally about once every 200ms. 9512 * 9513 * The last progress callback may or may not be equal to the final 9514 * result. Always check the async result to get the final value. 9515 * 9516 * Params: 9517 * reporting = %TRUE if more reports will come 9518 * currentSize = the current cumulative size measurement 9519 * numDirs = the number of directories visited so far 9520 * numFiles = the number of non-directory files encountered 9521 * userData = the data passed to the original request for this callback 9522 * 9523 * Since: 2.38 9524 */ 9525 public alias extern(C) void function(int reporting, ulong currentSize, ulong numDirs, ulong numFiles, void* userData) GFileMeasureProgressCallback; 9526 9527 /** 9528 * When doing file operations that may take a while, such as moving 9529 * a file or copying a file, a progress callback is used to pass how 9530 * far along that operation is to the application. 9531 * 9532 * Params: 9533 * currentNumBytes = the current number of bytes in the operation. 9534 * totalNumBytes = the total number of bytes in the operation. 9535 * userData = user data passed to the callback. 9536 */ 9537 public alias extern(C) void function(long currentNumBytes, long totalNumBytes, void* userData) GFileProgressCallback; 9538 9539 /** 9540 * When loading the partial contents of a file with g_file_load_partial_contents_async(), 9541 * it may become necessary to determine if any more data from the file should be loaded. 9542 * A #GFileReadMoreCallback function facilitates this by returning %TRUE if more data 9543 * should be read, or %FALSE otherwise. 9544 * 9545 * Params: 9546 * fileContents = the data as currently read. 9547 * fileSize = the size of the data currently read. 9548 * callbackData = data passed to the callback. 9549 * 9550 * Returns: %TRUE if more data should be read back. %FALSE otherwise. 9551 */ 9552 public alias extern(C) int function(const(char)* fileContents, long fileSize, void* callbackData) GFileReadMoreCallback; 9553 9554 /** 9555 * I/O Job function. 9556 * 9557 * Long-running jobs should periodically check the @cancellable 9558 * to see if they have been cancelled. 9559 * 9560 * Params: 9561 * job = a #GIOSchedulerJob. 9562 * cancellable = optional #GCancellable object, %NULL to ignore. 9563 * userData = the data to pass to callback function 9564 * 9565 * Returns: %TRUE if this function should be called again to 9566 * complete the job, %FALSE if the job is complete (or cancelled) 9567 */ 9568 public alias extern(C) int function(GIOSchedulerJob* job, GCancellable* cancellable, void* userData) GIOSchedulerJobFunc; 9569 9570 /** 9571 * This is the function type of the callback used for the #GSource 9572 * returned by g_pollable_input_stream_create_source() and 9573 * g_pollable_output_stream_create_source(). 9574 * 9575 * Params: 9576 * pollableStream = the #GPollableInputStream or #GPollableOutputStream 9577 * userData = data passed in by the user. 9578 * 9579 * Returns: it should return %FALSE if the source should be removed. 9580 * 9581 * Since: 2.28 9582 */ 9583 public alias extern(C) int function(GObject* pollableStream, void* userData) GPollableSourceFunc; 9584 9585 /** 9586 * Changes the size of the memory block pointed to by @data to 9587 * @size bytes. 9588 * 9589 * The function should have the same semantics as realloc(). 9590 * 9591 * Params: 9592 * data = memory block to reallocate 9593 * size = size to reallocate @data to 9594 * 9595 * Returns: a pointer to the reallocated memory 9596 */ 9597 public alias extern(C) void* function(void* data, size_t size) GReallocFunc; 9598 9599 /** 9600 * The type for the function that is used to convert from #GSettings to 9601 * an object property. The @value is already initialized to hold values 9602 * of the appropriate type. 9603 * 9604 * Params: 9605 * value = return location for the property value 9606 * variant = the #GVariant 9607 * userData = user data that was specified when the binding was created 9608 * 9609 * Returns: %TRUE if the conversion succeeded, %FALSE in case of an error 9610 */ 9611 public alias extern(C) int function(GValue* value, GVariant* variant, void* userData) GSettingsBindGetMapping; 9612 9613 /** 9614 * The type for the function that is used to convert an object property 9615 * value to a #GVariant for storing it in #GSettings. 9616 * 9617 * Params: 9618 * value = a #GValue containing the property value to map 9619 * expectedType = the #GVariantType to create 9620 * userData = user data that was specified when the binding was created 9621 * 9622 * Returns: a new #GVariant holding the data from @value, 9623 * or %NULL in case of an error 9624 */ 9625 public alias extern(C) GVariant* function(GValue* value, GVariantType* expectedType, void* userData) GSettingsBindSetMapping; 9626 9627 /** 9628 * The type of the function that is used to convert from a value stored 9629 * in a #GSettings to a value that is useful to the application. 9630 * 9631 * If the value is successfully mapped, the result should be stored at 9632 * @result and %TRUE returned. If mapping fails (for example, if @value 9633 * is not in the right format) then %FALSE should be returned. 9634 * 9635 * If @value is %NULL then it means that the mapping function is being 9636 * given a "last chance" to successfully return a valid value. %TRUE 9637 * must be returned in this case. 9638 * 9639 * Params: 9640 * value = the #GVariant to map, or %NULL 9641 * result = the result of the mapping 9642 * userData = the user data that was passed to 9643 * g_settings_get_mapped() 9644 * 9645 * Returns: %TRUE if the conversion succeeded, %FALSE in case of an error 9646 */ 9647 public alias extern(C) int function(GVariant* value, void** result, void* userData) GSettingsGetMapping; 9648 9649 /** 9650 * Simple thread function that runs an asynchronous operation and 9651 * checks for cancellation. 9652 * 9653 * Params: 9654 * res = a #GSimpleAsyncResult. 9655 * object = a #GObject. 9656 * cancellable = optional #GCancellable object, %NULL to ignore. 9657 */ 9658 public alias extern(C) void function(GSimpleAsyncResult* res, GObject* object, GCancellable* cancellable) GSimpleAsyncThreadFunc; 9659 9660 /** 9661 * This is the function type of the callback used for the #GSource 9662 * returned by g_socket_create_source(). 9663 * 9664 * Params: 9665 * socket = the #GSocket 9666 * condition = the current condition at the source fired. 9667 * userData = data passed in by the user. 9668 * 9669 * Returns: it should return %FALSE if the source should be removed. 9670 * 9671 * Since: 2.22 9672 */ 9673 public alias extern(C) int function(GSocket* socket, GIOCondition condition, void* userData) GSocketSourceFunc; 9674 9675 /** 9676 * The prototype for a task function to be run in a thread via 9677 * g_task_run_in_thread() or g_task_run_in_thread_sync(). 9678 * 9679 * If the return-on-cancel flag is set on @task, and @cancellable gets 9680 * cancelled, then the #GTask will be completed immediately (as though 9681 * g_task_return_error_if_cancelled() had been called), without 9682 * waiting for the task function to complete. However, the task 9683 * function will continue running in its thread in the background. The 9684 * function therefore needs to be careful about how it uses 9685 * externally-visible state in this case. See 9686 * g_task_set_return_on_cancel() for more details. 9687 * 9688 * Other than in that case, @task will be completed when the 9689 * #GTaskThreadFunc returns, not when it calls a 9690 * `g_task_return_` function. 9691 * 9692 * Params: 9693 * task = the #GTask 9694 * sourceObject = @task's source object 9695 * taskData = @task's task data 9696 * cancellable = @task's #GCancellable, or %NULL 9697 * 9698 * Since: 2.36 9699 */ 9700 public alias extern(C) void function(GTask* task, void* sourceObject, void* taskData, GCancellable* cancellable) GTaskThreadFunc; 9701 9702 /** 9703 * This function type is used by g_vfs_register_uri_scheme() to make it 9704 * possible for a client to associate an URI scheme to a different #GFile 9705 * implementation. 9706 * 9707 * The client should return a reference to the new file that has been 9708 * created for @uri, or %NULL to continue with the default implementation. 9709 * 9710 * Params: 9711 * vfs = a #GVfs 9712 * identifier = the identifier to look up a #GFile for. This can either 9713 * be an URI or a parse name as returned by g_file_get_parse_name() 9714 * userData = user data passed to the function 9715 * 9716 * Returns: a #GFile for @identifier. 9717 * 9718 * Since: 2.50 9719 */ 9720 public alias extern(C) GFile* function(GVfs* vfs, const(char)* identifier, void* userData) GVfsFileLookupFunc; 9721 9722 /** 9723 * The value returned by handlers of the signals generated by 9724 * the `gdbus-codegen` tool to indicate that a method call has been 9725 * handled by an implementation. It is equal to %TRUE, but using 9726 * this macro is sometimes more readable. 9727 * 9728 * In code that needs to be backwards-compatible with older GLib, 9729 * use %TRUE instead, often written like this: 9730 * 9731 * |[ 9732 * g_dbus_method_invocation_return_error (invocation, ...); 9733 * return TRUE; // handled 9734 * ]| 9735 */ 9736 enum DBUS_METHOD_INVOCATION_HANDLED = true; 9737 alias G_DBUS_METHOD_INVOCATION_HANDLED = DBUS_METHOD_INVOCATION_HANDLED; 9738 9739 /** 9740 * The value returned by handlers of the signals generated by 9741 * the `gdbus-codegen` tool to indicate that a method call has not been 9742 * handled by an implementation. It is equal to %FALSE, but using 9743 * this macro is sometimes more readable. 9744 * 9745 * In code that needs to be backwards-compatible with older GLib, 9746 * use %FALSE instead. 9747 */ 9748 enum DBUS_METHOD_INVOCATION_UNHANDLED = false; 9749 alias G_DBUS_METHOD_INVOCATION_UNHANDLED = DBUS_METHOD_INVOCATION_UNHANDLED; 9750 9751 /** 9752 * Extension point for default handler to URI association. See 9753 * [Extending GIO][extending-gio]. 9754 * 9755 * Deprecated: The #GDesktopAppInfoLookup interface is deprecated and 9756 * unused by GIO. 9757 */ 9758 enum DESKTOP_APP_INFO_LOOKUP_EXTENSION_POINT_NAME = "gio-desktop-app-info-lookup"; 9759 alias G_DESKTOP_APP_INFO_LOOKUP_EXTENSION_POINT_NAME = DESKTOP_APP_INFO_LOOKUP_EXTENSION_POINT_NAME; 9760 9761 /** 9762 * The string used to obtain a Unix device path with g_drive_get_identifier(). 9763 */ 9764 enum DRIVE_IDENTIFIER_KIND_UNIX_DEVICE = "unix-device"; 9765 alias G_DRIVE_IDENTIFIER_KIND_UNIX_DEVICE = DRIVE_IDENTIFIER_KIND_UNIX_DEVICE; 9766 9767 /** 9768 * A key in the "access" namespace for checking deletion privileges. 9769 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 9770 * This attribute will be %TRUE if the user is able to delete the file. 9771 */ 9772 enum FILE_ATTRIBUTE_ACCESS_CAN_DELETE = "access::can-delete"; 9773 alias G_FILE_ATTRIBUTE_ACCESS_CAN_DELETE = FILE_ATTRIBUTE_ACCESS_CAN_DELETE; 9774 9775 /** 9776 * A key in the "access" namespace for getting execution privileges. 9777 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 9778 * This attribute will be %TRUE if the user is able to execute the file. 9779 */ 9780 enum FILE_ATTRIBUTE_ACCESS_CAN_EXECUTE = "access::can-execute"; 9781 alias G_FILE_ATTRIBUTE_ACCESS_CAN_EXECUTE = FILE_ATTRIBUTE_ACCESS_CAN_EXECUTE; 9782 9783 /** 9784 * A key in the "access" namespace for getting read privileges. 9785 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 9786 * This attribute will be %TRUE if the user is able to read the file. 9787 */ 9788 enum FILE_ATTRIBUTE_ACCESS_CAN_READ = "access::can-read"; 9789 alias G_FILE_ATTRIBUTE_ACCESS_CAN_READ = FILE_ATTRIBUTE_ACCESS_CAN_READ; 9790 9791 /** 9792 * A key in the "access" namespace for checking renaming privileges. 9793 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 9794 * This attribute will be %TRUE if the user is able to rename the file. 9795 */ 9796 enum FILE_ATTRIBUTE_ACCESS_CAN_RENAME = "access::can-rename"; 9797 alias G_FILE_ATTRIBUTE_ACCESS_CAN_RENAME = FILE_ATTRIBUTE_ACCESS_CAN_RENAME; 9798 9799 /** 9800 * A key in the "access" namespace for checking trashing privileges. 9801 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 9802 * This attribute will be %TRUE if the user is able to move the file to 9803 * the trash. 9804 */ 9805 enum FILE_ATTRIBUTE_ACCESS_CAN_TRASH = "access::can-trash"; 9806 alias G_FILE_ATTRIBUTE_ACCESS_CAN_TRASH = FILE_ATTRIBUTE_ACCESS_CAN_TRASH; 9807 9808 /** 9809 * A key in the "access" namespace for getting write privileges. 9810 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 9811 * This attribute will be %TRUE if the user is able to write to the file. 9812 */ 9813 enum FILE_ATTRIBUTE_ACCESS_CAN_WRITE = "access::can-write"; 9814 alias G_FILE_ATTRIBUTE_ACCESS_CAN_WRITE = FILE_ATTRIBUTE_ACCESS_CAN_WRITE; 9815 9816 /** 9817 * A key in the "dos" namespace for checking if the file's archive flag 9818 * is set. This attribute is %TRUE if the archive flag is set. This attribute 9819 * is only available for DOS file systems. Corresponding #GFileAttributeType 9820 * is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 9821 */ 9822 enum FILE_ATTRIBUTE_DOS_IS_ARCHIVE = "dos::is-archive"; 9823 alias G_FILE_ATTRIBUTE_DOS_IS_ARCHIVE = FILE_ATTRIBUTE_DOS_IS_ARCHIVE; 9824 9825 /** 9826 * A key in the "dos" namespace for checking if the file is a NTFS mount point 9827 * (a volume mount or a junction point). 9828 * This attribute is %TRUE if file is a reparse point of type 9829 * [IO_REPARSE_TAG_MOUNT_POINT](https://msdn.microsoft.com/en-us/library/dd541667.aspx). 9830 * This attribute is only available for DOS file systems. 9831 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 9832 */ 9833 enum FILE_ATTRIBUTE_DOS_IS_MOUNTPOINT = "dos::is-mountpoint"; 9834 alias G_FILE_ATTRIBUTE_DOS_IS_MOUNTPOINT = FILE_ATTRIBUTE_DOS_IS_MOUNTPOINT; 9835 9836 /** 9837 * A key in the "dos" namespace for checking if the file's backup flag 9838 * is set. This attribute is %TRUE if the backup flag is set. This attribute 9839 * is only available for DOS file systems. Corresponding #GFileAttributeType 9840 * is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 9841 */ 9842 enum FILE_ATTRIBUTE_DOS_IS_SYSTEM = "dos::is-system"; 9843 alias G_FILE_ATTRIBUTE_DOS_IS_SYSTEM = FILE_ATTRIBUTE_DOS_IS_SYSTEM; 9844 9845 /** 9846 * A key in the "dos" namespace for getting the file NTFS reparse tag. 9847 * This value is 0 for files that are not reparse points. 9848 * See the [Reparse Tags](https://msdn.microsoft.com/en-us/library/dd541667.aspx) 9849 * page for possible reparse tag values. Corresponding #GFileAttributeType 9850 * is %G_FILE_ATTRIBUTE_TYPE_UINT32. 9851 */ 9852 enum FILE_ATTRIBUTE_DOS_REPARSE_POINT_TAG = "dos::reparse-point-tag"; 9853 alias G_FILE_ATTRIBUTE_DOS_REPARSE_POINT_TAG = FILE_ATTRIBUTE_DOS_REPARSE_POINT_TAG; 9854 9855 /** 9856 * A key in the "etag" namespace for getting the value of the file's 9857 * entity tag. Corresponding #GFileAttributeType is 9858 * %G_FILE_ATTRIBUTE_TYPE_STRING. 9859 */ 9860 enum FILE_ATTRIBUTE_ETAG_VALUE = "etag::value"; 9861 alias G_FILE_ATTRIBUTE_ETAG_VALUE = FILE_ATTRIBUTE_ETAG_VALUE; 9862 9863 /** 9864 * A key in the "filesystem" namespace for getting the number of bytes of free space left on the 9865 * file system. Corresponding #GFileAttributeType is 9866 * %G_FILE_ATTRIBUTE_TYPE_UINT64. 9867 */ 9868 enum FILE_ATTRIBUTE_FILESYSTEM_FREE = "filesystem::free"; 9869 alias G_FILE_ATTRIBUTE_FILESYSTEM_FREE = FILE_ATTRIBUTE_FILESYSTEM_FREE; 9870 9871 /** 9872 * A key in the "filesystem" namespace for checking if the file system 9873 * is read only. Is set to %TRUE if the file system is read only. 9874 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 9875 */ 9876 enum FILE_ATTRIBUTE_FILESYSTEM_READONLY = "filesystem::readonly"; 9877 alias G_FILE_ATTRIBUTE_FILESYSTEM_READONLY = FILE_ATTRIBUTE_FILESYSTEM_READONLY; 9878 9879 /** 9880 * A key in the "filesystem" namespace for checking if the file system 9881 * is remote. Is set to %TRUE if the file system is remote. 9882 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 9883 */ 9884 enum FILE_ATTRIBUTE_FILESYSTEM_REMOTE = "filesystem::remote"; 9885 alias G_FILE_ATTRIBUTE_FILESYSTEM_REMOTE = FILE_ATTRIBUTE_FILESYSTEM_REMOTE; 9886 9887 /** 9888 * A key in the "filesystem" namespace for getting the total size (in bytes) of the file system, 9889 * used in g_file_query_filesystem_info(). Corresponding #GFileAttributeType 9890 * is %G_FILE_ATTRIBUTE_TYPE_UINT64. 9891 */ 9892 enum FILE_ATTRIBUTE_FILESYSTEM_SIZE = "filesystem::size"; 9893 alias G_FILE_ATTRIBUTE_FILESYSTEM_SIZE = FILE_ATTRIBUTE_FILESYSTEM_SIZE; 9894 9895 /** 9896 * A key in the "filesystem" namespace for getting the file system's type. 9897 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING. 9898 */ 9899 enum FILE_ATTRIBUTE_FILESYSTEM_TYPE = "filesystem::type"; 9900 alias G_FILE_ATTRIBUTE_FILESYSTEM_TYPE = FILE_ATTRIBUTE_FILESYSTEM_TYPE; 9901 9902 /** 9903 * A key in the "filesystem" namespace for getting the number of bytes of used on the 9904 * file system. Corresponding #GFileAttributeType is 9905 * %G_FILE_ATTRIBUTE_TYPE_UINT64. 9906 */ 9907 enum FILE_ATTRIBUTE_FILESYSTEM_USED = "filesystem::used"; 9908 alias G_FILE_ATTRIBUTE_FILESYSTEM_USED = FILE_ATTRIBUTE_FILESYSTEM_USED; 9909 9910 /** 9911 * A key in the "filesystem" namespace for hinting a file manager 9912 * application whether it should preview (e.g. thumbnail) files on the 9913 * file system. The value for this key contain a 9914 * #GFilesystemPreviewType. 9915 */ 9916 enum FILE_ATTRIBUTE_FILESYSTEM_USE_PREVIEW = "filesystem::use-preview"; 9917 alias G_FILE_ATTRIBUTE_FILESYSTEM_USE_PREVIEW = FILE_ATTRIBUTE_FILESYSTEM_USE_PREVIEW; 9918 9919 /** 9920 * A key in the "gvfs" namespace that gets the name of the current 9921 * GVFS backend in use. Corresponding #GFileAttributeType is 9922 * %G_FILE_ATTRIBUTE_TYPE_STRING. 9923 */ 9924 enum FILE_ATTRIBUTE_GVFS_BACKEND = "gvfs::backend"; 9925 alias G_FILE_ATTRIBUTE_GVFS_BACKEND = FILE_ATTRIBUTE_GVFS_BACKEND; 9926 9927 /** 9928 * A key in the "id" namespace for getting a file identifier. 9929 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING. 9930 * An example use would be during listing files, to avoid recursive 9931 * directory scanning. 9932 */ 9933 enum FILE_ATTRIBUTE_ID_FILE = "id::file"; 9934 alias G_FILE_ATTRIBUTE_ID_FILE = FILE_ATTRIBUTE_ID_FILE; 9935 9936 /** 9937 * A key in the "id" namespace for getting the file system identifier. 9938 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING. 9939 * An example use would be during drag and drop to see if the source 9940 * and target are on the same filesystem (default to move) or not (default 9941 * to copy). 9942 */ 9943 enum FILE_ATTRIBUTE_ID_FILESYSTEM = "id::filesystem"; 9944 alias G_FILE_ATTRIBUTE_ID_FILESYSTEM = FILE_ATTRIBUTE_ID_FILESYSTEM; 9945 9946 /** 9947 * A key in the "mountable" namespace for checking if a file (of type G_FILE_TYPE_MOUNTABLE) can be ejected. 9948 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 9949 */ 9950 enum FILE_ATTRIBUTE_MOUNTABLE_CAN_EJECT = "mountable::can-eject"; 9951 alias G_FILE_ATTRIBUTE_MOUNTABLE_CAN_EJECT = FILE_ATTRIBUTE_MOUNTABLE_CAN_EJECT; 9952 9953 /** 9954 * A key in the "mountable" namespace for checking if a file (of type G_FILE_TYPE_MOUNTABLE) is mountable. 9955 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 9956 */ 9957 enum FILE_ATTRIBUTE_MOUNTABLE_CAN_MOUNT = "mountable::can-mount"; 9958 alias G_FILE_ATTRIBUTE_MOUNTABLE_CAN_MOUNT = FILE_ATTRIBUTE_MOUNTABLE_CAN_MOUNT; 9959 9960 /** 9961 * A key in the "mountable" namespace for checking if a file (of type G_FILE_TYPE_MOUNTABLE) can be polled. 9962 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 9963 */ 9964 enum FILE_ATTRIBUTE_MOUNTABLE_CAN_POLL = "mountable::can-poll"; 9965 alias G_FILE_ATTRIBUTE_MOUNTABLE_CAN_POLL = FILE_ATTRIBUTE_MOUNTABLE_CAN_POLL; 9966 9967 /** 9968 * A key in the "mountable" namespace for checking if a file (of type G_FILE_TYPE_MOUNTABLE) can be started. 9969 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 9970 */ 9971 enum FILE_ATTRIBUTE_MOUNTABLE_CAN_START = "mountable::can-start"; 9972 alias G_FILE_ATTRIBUTE_MOUNTABLE_CAN_START = FILE_ATTRIBUTE_MOUNTABLE_CAN_START; 9973 9974 /** 9975 * A key in the "mountable" namespace for checking if a file (of type G_FILE_TYPE_MOUNTABLE) can be started 9976 * degraded. 9977 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 9978 */ 9979 enum FILE_ATTRIBUTE_MOUNTABLE_CAN_START_DEGRADED = "mountable::can-start-degraded"; 9980 alias G_FILE_ATTRIBUTE_MOUNTABLE_CAN_START_DEGRADED = FILE_ATTRIBUTE_MOUNTABLE_CAN_START_DEGRADED; 9981 9982 /** 9983 * A key in the "mountable" namespace for checking if a file (of type G_FILE_TYPE_MOUNTABLE) can be stopped. 9984 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 9985 */ 9986 enum FILE_ATTRIBUTE_MOUNTABLE_CAN_STOP = "mountable::can-stop"; 9987 alias G_FILE_ATTRIBUTE_MOUNTABLE_CAN_STOP = FILE_ATTRIBUTE_MOUNTABLE_CAN_STOP; 9988 9989 /** 9990 * A key in the "mountable" namespace for checking if a file (of type G_FILE_TYPE_MOUNTABLE) is unmountable. 9991 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 9992 */ 9993 enum FILE_ATTRIBUTE_MOUNTABLE_CAN_UNMOUNT = "mountable::can-unmount"; 9994 alias G_FILE_ATTRIBUTE_MOUNTABLE_CAN_UNMOUNT = FILE_ATTRIBUTE_MOUNTABLE_CAN_UNMOUNT; 9995 9996 /** 9997 * A key in the "mountable" namespace for getting the HAL UDI for the mountable 9998 * file. Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING. 9999 */ 10000 enum FILE_ATTRIBUTE_MOUNTABLE_HAL_UDI = "mountable::hal-udi"; 10001 alias G_FILE_ATTRIBUTE_MOUNTABLE_HAL_UDI = FILE_ATTRIBUTE_MOUNTABLE_HAL_UDI; 10002 10003 /** 10004 * A key in the "mountable" namespace for checking if a file (of type G_FILE_TYPE_MOUNTABLE) 10005 * is automatically polled for media. 10006 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 10007 */ 10008 enum FILE_ATTRIBUTE_MOUNTABLE_IS_MEDIA_CHECK_AUTOMATIC = "mountable::is-media-check-automatic"; 10009 alias G_FILE_ATTRIBUTE_MOUNTABLE_IS_MEDIA_CHECK_AUTOMATIC = FILE_ATTRIBUTE_MOUNTABLE_IS_MEDIA_CHECK_AUTOMATIC; 10010 10011 /** 10012 * A key in the "mountable" namespace for getting the #GDriveStartStopType. 10013 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32. 10014 */ 10015 enum FILE_ATTRIBUTE_MOUNTABLE_START_STOP_TYPE = "mountable::start-stop-type"; 10016 alias G_FILE_ATTRIBUTE_MOUNTABLE_START_STOP_TYPE = FILE_ATTRIBUTE_MOUNTABLE_START_STOP_TYPE; 10017 10018 /** 10019 * A key in the "mountable" namespace for getting the unix device. 10020 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32. 10021 */ 10022 enum FILE_ATTRIBUTE_MOUNTABLE_UNIX_DEVICE = "mountable::unix-device"; 10023 alias G_FILE_ATTRIBUTE_MOUNTABLE_UNIX_DEVICE = FILE_ATTRIBUTE_MOUNTABLE_UNIX_DEVICE; 10024 10025 /** 10026 * A key in the "mountable" namespace for getting the unix device file. 10027 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING. 10028 */ 10029 enum FILE_ATTRIBUTE_MOUNTABLE_UNIX_DEVICE_FILE = "mountable::unix-device-file"; 10030 alias G_FILE_ATTRIBUTE_MOUNTABLE_UNIX_DEVICE_FILE = FILE_ATTRIBUTE_MOUNTABLE_UNIX_DEVICE_FILE; 10031 10032 /** 10033 * A key in the "owner" namespace for getting the file owner's group. 10034 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING. 10035 */ 10036 enum FILE_ATTRIBUTE_OWNER_GROUP = "owner::group"; 10037 alias G_FILE_ATTRIBUTE_OWNER_GROUP = FILE_ATTRIBUTE_OWNER_GROUP; 10038 10039 /** 10040 * A key in the "owner" namespace for getting the user name of the 10041 * file's owner. Corresponding #GFileAttributeType is 10042 * %G_FILE_ATTRIBUTE_TYPE_STRING. 10043 */ 10044 enum FILE_ATTRIBUTE_OWNER_USER = "owner::user"; 10045 alias G_FILE_ATTRIBUTE_OWNER_USER = FILE_ATTRIBUTE_OWNER_USER; 10046 10047 /** 10048 * A key in the "owner" namespace for getting the real name of the 10049 * user that owns the file. Corresponding #GFileAttributeType is 10050 * %G_FILE_ATTRIBUTE_TYPE_STRING. 10051 */ 10052 enum FILE_ATTRIBUTE_OWNER_USER_REAL = "owner::user-real"; 10053 alias G_FILE_ATTRIBUTE_OWNER_USER_REAL = FILE_ATTRIBUTE_OWNER_USER_REAL; 10054 10055 /** 10056 * A key in the "preview" namespace for getting a #GIcon that can be 10057 * used to get preview of the file. For example, it may be a low 10058 * resolution thumbnail without metadata. Corresponding 10059 * #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_OBJECT. The value 10060 * for this key should contain a #GIcon. 10061 */ 10062 enum FILE_ATTRIBUTE_PREVIEW_ICON = "preview::icon"; 10063 alias G_FILE_ATTRIBUTE_PREVIEW_ICON = FILE_ATTRIBUTE_PREVIEW_ICON; 10064 10065 /** 10066 * A key in the "recent" namespace for getting time, when the metadata for the 10067 * file in `recent:///` was last changed. Corresponding #GFileAttributeType is 10068 * %G_FILE_ATTRIBUTE_TYPE_INT64. 10069 */ 10070 enum FILE_ATTRIBUTE_RECENT_MODIFIED = "recent::modified"; 10071 alias G_FILE_ATTRIBUTE_RECENT_MODIFIED = FILE_ATTRIBUTE_RECENT_MODIFIED; 10072 10073 /** 10074 * A key in the "selinux" namespace for getting the file's SELinux 10075 * context. Corresponding #GFileAttributeType is 10076 * %G_FILE_ATTRIBUTE_TYPE_STRING. Note that this attribute is only 10077 * available if GLib has been built with SELinux support. 10078 */ 10079 enum FILE_ATTRIBUTE_SELINUX_CONTEXT = "selinux::context"; 10080 alias G_FILE_ATTRIBUTE_SELINUX_CONTEXT = FILE_ATTRIBUTE_SELINUX_CONTEXT; 10081 10082 /** 10083 * A key in the "standard" namespace for getting the amount of disk space 10084 * that is consumed by the file (in bytes). This will generally be larger 10085 * than the file size (due to block size overhead) but can occasionally be 10086 * smaller (for example, for sparse files). 10087 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64. 10088 */ 10089 enum FILE_ATTRIBUTE_STANDARD_ALLOCATED_SIZE = "standard::allocated-size"; 10090 alias G_FILE_ATTRIBUTE_STANDARD_ALLOCATED_SIZE = FILE_ATTRIBUTE_STANDARD_ALLOCATED_SIZE; 10091 10092 /** 10093 * A key in the "standard" namespace for getting the content type of the file. 10094 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING. 10095 * The value for this key should contain a valid content type. 10096 */ 10097 enum FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE = "standard::content-type"; 10098 alias G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE = FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE; 10099 10100 /** 10101 * A key in the "standard" namespace for getting the copy name of the file. 10102 * The copy name is an optional version of the name. If available it's always 10103 * in UTF8, and corresponds directly to the original filename (only transcoded to 10104 * UTF8). This is useful if you want to copy the file to another filesystem that 10105 * might have a different encoding. If the filename is not a valid string in the 10106 * encoding selected for the filesystem it is in then the copy name will not be set. 10107 * 10108 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING. 10109 */ 10110 enum FILE_ATTRIBUTE_STANDARD_COPY_NAME = "standard::copy-name"; 10111 alias G_FILE_ATTRIBUTE_STANDARD_COPY_NAME = FILE_ATTRIBUTE_STANDARD_COPY_NAME; 10112 10113 /** 10114 * A key in the "standard" namespace for getting the description of the file. 10115 * The description is a utf8 string that describes the file, generally containing 10116 * the filename, but can also contain further information. Example descriptions 10117 * could be "filename (on hostname)" for a remote file or "filename (in trash)" 10118 * for a file in the trash. This is useful for instance as the window title 10119 * when displaying a directory or for a bookmarks menu. 10120 * 10121 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING. 10122 */ 10123 enum FILE_ATTRIBUTE_STANDARD_DESCRIPTION = "standard::description"; 10124 alias G_FILE_ATTRIBUTE_STANDARD_DESCRIPTION = FILE_ATTRIBUTE_STANDARD_DESCRIPTION; 10125 10126 /** 10127 * A key in the "standard" namespace for getting the display name of the file. 10128 * A display name is guaranteed to be in UTF-8 and can thus be displayed in 10129 * the UI. It is guaranteed to be set on every file. 10130 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING. 10131 */ 10132 enum FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME = "standard::display-name"; 10133 alias G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME = FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME; 10134 10135 /** 10136 * A key in the "standard" namespace for edit name of the file. 10137 * An edit name is similar to the display name, but it is meant to be 10138 * used when you want to rename the file in the UI. The display name 10139 * might contain information you don't want in the new filename (such as 10140 * "(invalid unicode)" if the filename was in an invalid encoding). 10141 * 10142 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING. 10143 */ 10144 enum FILE_ATTRIBUTE_STANDARD_EDIT_NAME = "standard::edit-name"; 10145 alias G_FILE_ATTRIBUTE_STANDARD_EDIT_NAME = FILE_ATTRIBUTE_STANDARD_EDIT_NAME; 10146 10147 /** 10148 * A key in the "standard" namespace for getting the fast content type. 10149 * The fast content type isn't as reliable as the regular one, as it 10150 * only uses the filename to guess it, but it is faster to calculate than the 10151 * regular content type. 10152 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING. 10153 */ 10154 enum FILE_ATTRIBUTE_STANDARD_FAST_CONTENT_TYPE = "standard::fast-content-type"; 10155 alias G_FILE_ATTRIBUTE_STANDARD_FAST_CONTENT_TYPE = FILE_ATTRIBUTE_STANDARD_FAST_CONTENT_TYPE; 10156 10157 /** 10158 * A key in the "standard" namespace for getting the icon for the file. 10159 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_OBJECT. 10160 * The value for this key should contain a #GIcon. 10161 */ 10162 enum FILE_ATTRIBUTE_STANDARD_ICON = "standard::icon"; 10163 alias G_FILE_ATTRIBUTE_STANDARD_ICON = FILE_ATTRIBUTE_STANDARD_ICON; 10164 10165 /** 10166 * A key in the "standard" namespace for checking if a file is a backup file. 10167 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 10168 */ 10169 enum FILE_ATTRIBUTE_STANDARD_IS_BACKUP = "standard::is-backup"; 10170 alias G_FILE_ATTRIBUTE_STANDARD_IS_BACKUP = FILE_ATTRIBUTE_STANDARD_IS_BACKUP; 10171 10172 /** 10173 * A key in the "standard" namespace for checking if a file is hidden. 10174 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 10175 */ 10176 enum FILE_ATTRIBUTE_STANDARD_IS_HIDDEN = "standard::is-hidden"; 10177 alias G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN = FILE_ATTRIBUTE_STANDARD_IS_HIDDEN; 10178 10179 /** 10180 * A key in the "standard" namespace for checking if the file is a symlink. 10181 * Typically the actual type is something else, if we followed the symlink 10182 * to get the type. 10183 * On Windows NTFS mountpoints are considered to be symlinks as well. 10184 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 10185 */ 10186 enum FILE_ATTRIBUTE_STANDARD_IS_SYMLINK = "standard::is-symlink"; 10187 alias G_FILE_ATTRIBUTE_STANDARD_IS_SYMLINK = FILE_ATTRIBUTE_STANDARD_IS_SYMLINK; 10188 10189 /** 10190 * A key in the "standard" namespace for checking if a file is virtual. 10191 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 10192 */ 10193 enum FILE_ATTRIBUTE_STANDARD_IS_VIRTUAL = "standard::is-virtual"; 10194 alias G_FILE_ATTRIBUTE_STANDARD_IS_VIRTUAL = FILE_ATTRIBUTE_STANDARD_IS_VIRTUAL; 10195 10196 /** 10197 * A key in the "standard" namespace for checking if a file is 10198 * volatile. This is meant for opaque, non-POSIX-like backends to 10199 * indicate that the URI is not persistent. Applications should look 10200 * at #G_FILE_ATTRIBUTE_STANDARD_SYMLINK_TARGET for the persistent URI. 10201 * 10202 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 10203 */ 10204 enum FILE_ATTRIBUTE_STANDARD_IS_VOLATILE = "standard::is-volatile"; 10205 alias G_FILE_ATTRIBUTE_STANDARD_IS_VOLATILE = FILE_ATTRIBUTE_STANDARD_IS_VOLATILE; 10206 10207 /** 10208 * A key in the "standard" namespace for getting the name of the file. 10209 * The name is the on-disk filename which may not be in any known encoding, 10210 * and can thus not be generally displayed as is. It is guaranteed to be set on 10211 * every file. 10212 * Use #G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME if you need to display the 10213 * name in a user interface. 10214 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BYTE_STRING. 10215 */ 10216 enum FILE_ATTRIBUTE_STANDARD_NAME = "standard::name"; 10217 alias G_FILE_ATTRIBUTE_STANDARD_NAME = FILE_ATTRIBUTE_STANDARD_NAME; 10218 10219 /** 10220 * A key in the "standard" namespace for getting the file's size (in bytes). 10221 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64. 10222 */ 10223 enum FILE_ATTRIBUTE_STANDARD_SIZE = "standard::size"; 10224 alias G_FILE_ATTRIBUTE_STANDARD_SIZE = FILE_ATTRIBUTE_STANDARD_SIZE; 10225 10226 /** 10227 * A key in the "standard" namespace for setting the sort order of a file. 10228 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_INT32. 10229 * An example use would be in file managers, which would use this key 10230 * to set the order files are displayed. Files with smaller sort order 10231 * should be sorted first, and files without sort order as if sort order 10232 * was zero. 10233 */ 10234 enum FILE_ATTRIBUTE_STANDARD_SORT_ORDER = "standard::sort-order"; 10235 alias G_FILE_ATTRIBUTE_STANDARD_SORT_ORDER = FILE_ATTRIBUTE_STANDARD_SORT_ORDER; 10236 10237 /** 10238 * A key in the "standard" namespace for getting the symbolic icon for the file. 10239 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_OBJECT. 10240 * The value for this key should contain a #GIcon. 10241 */ 10242 enum FILE_ATTRIBUTE_STANDARD_SYMBOLIC_ICON = "standard::symbolic-icon"; 10243 alias G_FILE_ATTRIBUTE_STANDARD_SYMBOLIC_ICON = FILE_ATTRIBUTE_STANDARD_SYMBOLIC_ICON; 10244 10245 /** 10246 * A key in the "standard" namespace for getting the symlink target, if the file 10247 * is a symlink. Corresponding #GFileAttributeType is 10248 * %G_FILE_ATTRIBUTE_TYPE_BYTE_STRING. 10249 */ 10250 enum FILE_ATTRIBUTE_STANDARD_SYMLINK_TARGET = "standard::symlink-target"; 10251 alias G_FILE_ATTRIBUTE_STANDARD_SYMLINK_TARGET = FILE_ATTRIBUTE_STANDARD_SYMLINK_TARGET; 10252 10253 /** 10254 * A key in the "standard" namespace for getting the target URI for the file, in 10255 * the case of %G_FILE_TYPE_SHORTCUT or %G_FILE_TYPE_MOUNTABLE files. 10256 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING. 10257 */ 10258 enum FILE_ATTRIBUTE_STANDARD_TARGET_URI = "standard::target-uri"; 10259 alias G_FILE_ATTRIBUTE_STANDARD_TARGET_URI = FILE_ATTRIBUTE_STANDARD_TARGET_URI; 10260 10261 /** 10262 * A key in the "standard" namespace for storing file types. 10263 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32. 10264 * The value for this key should contain a #GFileType. 10265 */ 10266 enum FILE_ATTRIBUTE_STANDARD_TYPE = "standard::type"; 10267 alias G_FILE_ATTRIBUTE_STANDARD_TYPE = FILE_ATTRIBUTE_STANDARD_TYPE; 10268 10269 /** 10270 * A key in the "thumbnail" namespace for checking if thumbnailing failed. 10271 * This attribute is %TRUE if thumbnailing failed. Corresponding 10272 * #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 10273 */ 10274 enum FILE_ATTRIBUTE_THUMBNAILING_FAILED = "thumbnail::failed"; 10275 alias G_FILE_ATTRIBUTE_THUMBNAILING_FAILED = FILE_ATTRIBUTE_THUMBNAILING_FAILED; 10276 10277 /** 10278 * A key in the "thumbnail" namespace for checking whether the thumbnail is outdated. 10279 * This attribute is %TRUE if the thumbnail is up-to-date with the file it represents, 10280 * and %FALSE if the file has been modified since the thumbnail was generated. 10281 * 10282 * If %G_FILE_ATTRIBUTE_THUMBNAILING_FAILED is %TRUE and this attribute is %FALSE, 10283 * it indicates that thumbnailing may be attempted again and may succeed. 10284 * 10285 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 10286 */ 10287 enum FILE_ATTRIBUTE_THUMBNAIL_IS_VALID = "thumbnail::is-valid"; 10288 alias G_FILE_ATTRIBUTE_THUMBNAIL_IS_VALID = FILE_ATTRIBUTE_THUMBNAIL_IS_VALID; 10289 10290 /** 10291 * A key in the "thumbnail" namespace for getting the path to the thumbnail 10292 * image. Corresponding #GFileAttributeType is 10293 * %G_FILE_ATTRIBUTE_TYPE_BYTE_STRING. 10294 */ 10295 enum FILE_ATTRIBUTE_THUMBNAIL_PATH = "thumbnail::path"; 10296 alias G_FILE_ATTRIBUTE_THUMBNAIL_PATH = FILE_ATTRIBUTE_THUMBNAIL_PATH; 10297 10298 /** 10299 * A key in the "time" namespace for getting the time the file was last 10300 * accessed. Corresponding #GFileAttributeType is 10301 * %G_FILE_ATTRIBUTE_TYPE_UINT64, and contains the time since the 10302 * file was last accessed, in seconds since the UNIX epoch. 10303 */ 10304 enum FILE_ATTRIBUTE_TIME_ACCESS = "time::access"; 10305 alias G_FILE_ATTRIBUTE_TIME_ACCESS = FILE_ATTRIBUTE_TIME_ACCESS; 10306 10307 /** 10308 * A key in the "time" namespace for getting the microseconds of the time 10309 * the file was last accessed. This should be used in conjunction with 10310 * #G_FILE_ATTRIBUTE_TIME_ACCESS. Corresponding #GFileAttributeType is 10311 * %G_FILE_ATTRIBUTE_TYPE_UINT32. 10312 */ 10313 enum FILE_ATTRIBUTE_TIME_ACCESS_USEC = "time::access-usec"; 10314 alias G_FILE_ATTRIBUTE_TIME_ACCESS_USEC = FILE_ATTRIBUTE_TIME_ACCESS_USEC; 10315 10316 /** 10317 * A key in the "time" namespace for getting the time the file was last 10318 * changed. Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64, 10319 * and contains the time since the file was last changed, in seconds since the 10320 * UNIX epoch. 10321 * 10322 * This corresponds to the traditional UNIX ctime. 10323 */ 10324 enum FILE_ATTRIBUTE_TIME_CHANGED = "time::changed"; 10325 alias G_FILE_ATTRIBUTE_TIME_CHANGED = FILE_ATTRIBUTE_TIME_CHANGED; 10326 10327 /** 10328 * A key in the "time" namespace for getting the microseconds of the time 10329 * the file was last changed. This should be used in conjunction with 10330 * #G_FILE_ATTRIBUTE_TIME_CHANGED. Corresponding #GFileAttributeType is 10331 * %G_FILE_ATTRIBUTE_TYPE_UINT32. 10332 */ 10333 enum FILE_ATTRIBUTE_TIME_CHANGED_USEC = "time::changed-usec"; 10334 alias G_FILE_ATTRIBUTE_TIME_CHANGED_USEC = FILE_ATTRIBUTE_TIME_CHANGED_USEC; 10335 10336 /** 10337 * A key in the "time" namespace for getting the time the file was created. 10338 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64, 10339 * and contains the time since the file was created, in seconds since the UNIX 10340 * epoch. 10341 * 10342 * This may correspond to Linux stx_btime, FreeBSD st_birthtim, NetBSD 10343 * st_birthtime or NTFS ctime. 10344 */ 10345 enum FILE_ATTRIBUTE_TIME_CREATED = "time::created"; 10346 alias G_FILE_ATTRIBUTE_TIME_CREATED = FILE_ATTRIBUTE_TIME_CREATED; 10347 10348 /** 10349 * A key in the "time" namespace for getting the microseconds of the time 10350 * the file was created. This should be used in conjunction with 10351 * #G_FILE_ATTRIBUTE_TIME_CREATED. Corresponding #GFileAttributeType is 10352 * %G_FILE_ATTRIBUTE_TYPE_UINT32. 10353 */ 10354 enum FILE_ATTRIBUTE_TIME_CREATED_USEC = "time::created-usec"; 10355 alias G_FILE_ATTRIBUTE_TIME_CREATED_USEC = FILE_ATTRIBUTE_TIME_CREATED_USEC; 10356 10357 /** 10358 * A key in the "time" namespace for getting the time the file was last 10359 * modified. Corresponding #GFileAttributeType is 10360 * %G_FILE_ATTRIBUTE_TYPE_UINT64, and contains the time since the 10361 * file was modified, in seconds since the UNIX epoch. 10362 */ 10363 enum FILE_ATTRIBUTE_TIME_MODIFIED = "time::modified"; 10364 alias G_FILE_ATTRIBUTE_TIME_MODIFIED = FILE_ATTRIBUTE_TIME_MODIFIED; 10365 10366 /** 10367 * A key in the "time" namespace for getting the microseconds of the time 10368 * the file was last modified. This should be used in conjunction with 10369 * #G_FILE_ATTRIBUTE_TIME_MODIFIED. Corresponding #GFileAttributeType is 10370 * %G_FILE_ATTRIBUTE_TYPE_UINT32. 10371 */ 10372 enum FILE_ATTRIBUTE_TIME_MODIFIED_USEC = "time::modified-usec"; 10373 alias G_FILE_ATTRIBUTE_TIME_MODIFIED_USEC = FILE_ATTRIBUTE_TIME_MODIFIED_USEC; 10374 10375 /** 10376 * A key in the "trash" namespace. When requested against 10377 * items in `trash:///`, will return the date and time when the file 10378 * was trashed. The format of the returned string is YYYY-MM-DDThh:mm:ss. 10379 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_STRING. 10380 */ 10381 enum FILE_ATTRIBUTE_TRASH_DELETION_DATE = "trash::deletion-date"; 10382 alias G_FILE_ATTRIBUTE_TRASH_DELETION_DATE = FILE_ATTRIBUTE_TRASH_DELETION_DATE; 10383 10384 /** 10385 * A key in the "trash" namespace. When requested against 10386 * `trash:///` returns the number of (toplevel) items in the trash folder. 10387 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32. 10388 */ 10389 enum FILE_ATTRIBUTE_TRASH_ITEM_COUNT = "trash::item-count"; 10390 alias G_FILE_ATTRIBUTE_TRASH_ITEM_COUNT = FILE_ATTRIBUTE_TRASH_ITEM_COUNT; 10391 10392 /** 10393 * A key in the "trash" namespace. When requested against 10394 * items in `trash:///`, will return the original path to the file before it 10395 * was trashed. Corresponding #GFileAttributeType is 10396 * %G_FILE_ATTRIBUTE_TYPE_BYTE_STRING. 10397 */ 10398 enum FILE_ATTRIBUTE_TRASH_ORIG_PATH = "trash::orig-path"; 10399 alias G_FILE_ATTRIBUTE_TRASH_ORIG_PATH = FILE_ATTRIBUTE_TRASH_ORIG_PATH; 10400 10401 /** 10402 * A key in the "unix" namespace for getting the number of blocks allocated 10403 * for the file. This attribute is only available for UNIX file systems. 10404 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64. 10405 */ 10406 enum FILE_ATTRIBUTE_UNIX_BLOCKS = "unix::blocks"; 10407 alias G_FILE_ATTRIBUTE_UNIX_BLOCKS = FILE_ATTRIBUTE_UNIX_BLOCKS; 10408 10409 /** 10410 * A key in the "unix" namespace for getting the block size for the file 10411 * system. This attribute is only available for UNIX file systems. 10412 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32. 10413 */ 10414 enum FILE_ATTRIBUTE_UNIX_BLOCK_SIZE = "unix::block-size"; 10415 alias G_FILE_ATTRIBUTE_UNIX_BLOCK_SIZE = FILE_ATTRIBUTE_UNIX_BLOCK_SIZE; 10416 10417 /** 10418 * A key in the "unix" namespace for getting the device id of the device the 10419 * file is located on (see stat() documentation). This attribute is only 10420 * available for UNIX file systems. Corresponding #GFileAttributeType is 10421 * %G_FILE_ATTRIBUTE_TYPE_UINT32. 10422 */ 10423 enum FILE_ATTRIBUTE_UNIX_DEVICE = "unix::device"; 10424 alias G_FILE_ATTRIBUTE_UNIX_DEVICE = FILE_ATTRIBUTE_UNIX_DEVICE; 10425 10426 /** 10427 * A key in the "unix" namespace for getting the group ID for the file. 10428 * This attribute is only available for UNIX file systems. 10429 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32. 10430 */ 10431 enum FILE_ATTRIBUTE_UNIX_GID = "unix::gid"; 10432 alias G_FILE_ATTRIBUTE_UNIX_GID = FILE_ATTRIBUTE_UNIX_GID; 10433 10434 /** 10435 * A key in the "unix" namespace for getting the inode of the file. 10436 * This attribute is only available for UNIX file systems. Corresponding 10437 * #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT64. 10438 */ 10439 enum FILE_ATTRIBUTE_UNIX_INODE = "unix::inode"; 10440 alias G_FILE_ATTRIBUTE_UNIX_INODE = FILE_ATTRIBUTE_UNIX_INODE; 10441 10442 /** 10443 * A key in the "unix" namespace for checking if the file represents a 10444 * UNIX mount point. This attribute is %TRUE if the file is a UNIX mount 10445 * point. Since 2.58, `/` is considered to be a mount point. 10446 * This attribute is only available for UNIX file systems. 10447 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_BOOLEAN. 10448 */ 10449 enum FILE_ATTRIBUTE_UNIX_IS_MOUNTPOINT = "unix::is-mountpoint"; 10450 alias G_FILE_ATTRIBUTE_UNIX_IS_MOUNTPOINT = FILE_ATTRIBUTE_UNIX_IS_MOUNTPOINT; 10451 10452 /** 10453 * A key in the "unix" namespace for getting the mode of the file 10454 * (e.g. whether the file is a regular file, symlink, etc). See the 10455 * documentation for `lstat()`: this attribute is equivalent to the `st_mode` 10456 * member of `struct stat`, and includes both the file type and permissions. 10457 * This attribute is only available for UNIX file systems. 10458 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32. 10459 */ 10460 enum FILE_ATTRIBUTE_UNIX_MODE = "unix::mode"; 10461 alias G_FILE_ATTRIBUTE_UNIX_MODE = FILE_ATTRIBUTE_UNIX_MODE; 10462 10463 /** 10464 * A key in the "unix" namespace for getting the number of hard links 10465 * for a file. See lstat() documentation. This attribute is only available 10466 * for UNIX file systems. Corresponding #GFileAttributeType is 10467 * %G_FILE_ATTRIBUTE_TYPE_UINT32. 10468 */ 10469 enum FILE_ATTRIBUTE_UNIX_NLINK = "unix::nlink"; 10470 alias G_FILE_ATTRIBUTE_UNIX_NLINK = FILE_ATTRIBUTE_UNIX_NLINK; 10471 10472 /** 10473 * A key in the "unix" namespace for getting the device ID for the file 10474 * (if it is a special file). See lstat() documentation. This attribute 10475 * is only available for UNIX file systems. Corresponding #GFileAttributeType 10476 * is %G_FILE_ATTRIBUTE_TYPE_UINT32. 10477 */ 10478 enum FILE_ATTRIBUTE_UNIX_RDEV = "unix::rdev"; 10479 alias G_FILE_ATTRIBUTE_UNIX_RDEV = FILE_ATTRIBUTE_UNIX_RDEV; 10480 10481 /** 10482 * A key in the "unix" namespace for getting the user ID for the file. 10483 * This attribute is only available for UNIX file systems. 10484 * Corresponding #GFileAttributeType is %G_FILE_ATTRIBUTE_TYPE_UINT32. 10485 */ 10486 enum FILE_ATTRIBUTE_UNIX_UID = "unix::uid"; 10487 alias G_FILE_ATTRIBUTE_UNIX_UID = FILE_ATTRIBUTE_UNIX_UID; 10488 10489 /** 10490 * Extension point for memory usage monitoring functionality. 10491 * See [Extending GIO][extending-gio]. 10492 */ 10493 enum MEMORY_MONITOR_EXTENSION_POINT_NAME = "gio-memory-monitor"; 10494 alias G_MEMORY_MONITOR_EXTENSION_POINT_NAME = MEMORY_MONITOR_EXTENSION_POINT_NAME; 10495 10496 /** 10497 * The menu item attribute which holds the action name of the item. Action 10498 * names are namespaced with an identifier for the action group in which the 10499 * action resides. For example, "win." for window-specific actions and "app." 10500 * for application-wide actions. 10501 * 10502 * See also g_menu_model_get_item_attribute() and g_menu_item_set_attribute(). 10503 */ 10504 enum MENU_ATTRIBUTE_ACTION = "action"; 10505 alias G_MENU_ATTRIBUTE_ACTION = MENU_ATTRIBUTE_ACTION; 10506 10507 /** 10508 * The menu item attribute that holds the namespace for all action names in 10509 * menus that are linked from this item. 10510 */ 10511 enum MENU_ATTRIBUTE_ACTION_NAMESPACE = "action-namespace"; 10512 alias G_MENU_ATTRIBUTE_ACTION_NAMESPACE = MENU_ATTRIBUTE_ACTION_NAMESPACE; 10513 10514 /** 10515 * The menu item attribute which holds the icon of the item. 10516 * 10517 * The icon is stored in the format returned by g_icon_serialize(). 10518 * 10519 * This attribute is intended only to represent 'noun' icons such as 10520 * favicons for a webpage, or application icons. It should not be used 10521 * for 'verbs' (ie: stock icons). 10522 */ 10523 enum MENU_ATTRIBUTE_ICON = "icon"; 10524 alias G_MENU_ATTRIBUTE_ICON = MENU_ATTRIBUTE_ICON; 10525 10526 /** 10527 * The menu item attribute which holds the label of the item. 10528 */ 10529 enum MENU_ATTRIBUTE_LABEL = "label"; 10530 alias G_MENU_ATTRIBUTE_LABEL = MENU_ATTRIBUTE_LABEL; 10531 10532 /** 10533 * The menu item attribute which holds the target with which the item's action 10534 * will be activated. 10535 * 10536 * See also g_menu_item_set_action_and_target() 10537 */ 10538 enum MENU_ATTRIBUTE_TARGET = "target"; 10539 alias G_MENU_ATTRIBUTE_TARGET = MENU_ATTRIBUTE_TARGET; 10540 10541 /** 10542 * The name of the link that associates a menu item with a section. The linked 10543 * menu will usually be shown in place of the menu item, using the item's label 10544 * as a header. 10545 * 10546 * See also g_menu_item_set_link(). 10547 */ 10548 enum MENU_LINK_SECTION = "section"; 10549 alias G_MENU_LINK_SECTION = MENU_LINK_SECTION; 10550 10551 /** 10552 * The name of the link that associates a menu item with a submenu. 10553 * 10554 * See also g_menu_item_set_link(). 10555 */ 10556 enum MENU_LINK_SUBMENU = "submenu"; 10557 alias G_MENU_LINK_SUBMENU = MENU_LINK_SUBMENU; 10558 10559 enum NATIVE_VOLUME_MONITOR_EXTENSION_POINT_NAME = "gio-native-volume-monitor"; 10560 alias G_NATIVE_VOLUME_MONITOR_EXTENSION_POINT_NAME = NATIVE_VOLUME_MONITOR_EXTENSION_POINT_NAME; 10561 10562 /** 10563 * Extension point for network status monitoring functionality. 10564 * See [Extending GIO][extending-gio]. 10565 */ 10566 enum NETWORK_MONITOR_EXTENSION_POINT_NAME = "gio-network-monitor"; 10567 alias G_NETWORK_MONITOR_EXTENSION_POINT_NAME = NETWORK_MONITOR_EXTENSION_POINT_NAME; 10568 10569 /** 10570 * Extension point for proxy functionality. 10571 * See [Extending GIO][extending-gio]. 10572 */ 10573 enum PROXY_EXTENSION_POINT_NAME = "gio-proxy"; 10574 alias G_PROXY_EXTENSION_POINT_NAME = PROXY_EXTENSION_POINT_NAME; 10575 10576 /** 10577 * Extension point for proxy resolving functionality. 10578 * See [Extending GIO][extending-gio]. 10579 */ 10580 enum PROXY_RESOLVER_EXTENSION_POINT_NAME = "gio-proxy-resolver"; 10581 alias G_PROXY_RESOLVER_EXTENSION_POINT_NAME = PROXY_RESOLVER_EXTENSION_POINT_NAME; 10582 10583 /** 10584 * Extension point for #GSettingsBackend functionality. 10585 */ 10586 enum SETTINGS_BACKEND_EXTENSION_POINT_NAME = "gsettings-backend"; 10587 alias G_SETTINGS_BACKEND_EXTENSION_POINT_NAME = SETTINGS_BACKEND_EXTENSION_POINT_NAME; 10588 10589 /** 10590 * Extension point for TLS functionality via #GTlsBackend. 10591 * See [Extending GIO][extending-gio]. 10592 */ 10593 enum TLS_BACKEND_EXTENSION_POINT_NAME = "gio-tls-backend"; 10594 alias G_TLS_BACKEND_EXTENSION_POINT_NAME = TLS_BACKEND_EXTENSION_POINT_NAME; 10595 10596 /** 10597 * The purpose used to verify the client certificate in a TLS connection. 10598 * Used by TLS servers. 10599 */ 10600 enum TLS_DATABASE_PURPOSE_AUTHENTICATE_CLIENT = "1.3.6.1.5.5.7.3.2"; 10601 alias G_TLS_DATABASE_PURPOSE_AUTHENTICATE_CLIENT = TLS_DATABASE_PURPOSE_AUTHENTICATE_CLIENT; 10602 10603 /** 10604 * The purpose used to verify the server certificate in a TLS connection. This 10605 * is the most common purpose in use. Used by TLS clients. 10606 */ 10607 enum TLS_DATABASE_PURPOSE_AUTHENTICATE_SERVER = "1.3.6.1.5.5.7.3.1"; 10608 alias G_TLS_DATABASE_PURPOSE_AUTHENTICATE_SERVER = TLS_DATABASE_PURPOSE_AUTHENTICATE_SERVER; 10609 10610 /** 10611 * Extension point for #GVfs functionality. 10612 * See [Extending GIO][extending-gio]. 10613 */ 10614 enum VFS_EXTENSION_POINT_NAME = "gio-vfs"; 10615 alias G_VFS_EXTENSION_POINT_NAME = VFS_EXTENSION_POINT_NAME; 10616 10617 /** 10618 * The string used to obtain the volume class with g_volume_get_identifier(). 10619 * 10620 * Known volume classes include `device`, `network`, and `loop`. Other 10621 * classes may be added in the future. 10622 * 10623 * This is intended to be used by applications to classify #GVolume 10624 * instances into different sections - for example a file manager or 10625 * file chooser can use this information to show `network` volumes under 10626 * a "Network" heading and `device` volumes under a "Devices" heading. 10627 */ 10628 enum VOLUME_IDENTIFIER_KIND_CLASS = "class"; 10629 alias G_VOLUME_IDENTIFIER_KIND_CLASS = VOLUME_IDENTIFIER_KIND_CLASS; 10630 10631 /** 10632 * The string used to obtain a Hal UDI with g_volume_get_identifier(). 10633 * 10634 * Deprecated: Do not use, HAL is deprecated. 10635 */ 10636 enum VOLUME_IDENTIFIER_KIND_HAL_UDI = "hal-udi"; 10637 alias G_VOLUME_IDENTIFIER_KIND_HAL_UDI = VOLUME_IDENTIFIER_KIND_HAL_UDI; 10638 10639 /** 10640 * The string used to obtain a filesystem label with g_volume_get_identifier(). 10641 */ 10642 enum VOLUME_IDENTIFIER_KIND_LABEL = "label"; 10643 alias G_VOLUME_IDENTIFIER_KIND_LABEL = VOLUME_IDENTIFIER_KIND_LABEL; 10644 10645 /** 10646 * The string used to obtain a NFS mount with g_volume_get_identifier(). 10647 */ 10648 enum VOLUME_IDENTIFIER_KIND_NFS_MOUNT = "nfs-mount"; 10649 alias G_VOLUME_IDENTIFIER_KIND_NFS_MOUNT = VOLUME_IDENTIFIER_KIND_NFS_MOUNT; 10650 10651 /** 10652 * The string used to obtain a Unix device path with g_volume_get_identifier(). 10653 */ 10654 enum VOLUME_IDENTIFIER_KIND_UNIX_DEVICE = "unix-device"; 10655 alias G_VOLUME_IDENTIFIER_KIND_UNIX_DEVICE = VOLUME_IDENTIFIER_KIND_UNIX_DEVICE; 10656 10657 /** 10658 * The string used to obtain a UUID with g_volume_get_identifier(). 10659 */ 10660 enum VOLUME_IDENTIFIER_KIND_UUID = "uuid"; 10661 alias G_VOLUME_IDENTIFIER_KIND_UUID = VOLUME_IDENTIFIER_KIND_UUID; 10662 10663 /** 10664 * Extension point for volume monitor functionality. 10665 * See [Extending GIO][extending-gio]. 10666 */ 10667 enum VOLUME_MONITOR_EXTENSION_POINT_NAME = "gio-volume-monitor"; 10668 alias G_VOLUME_MONITOR_EXTENSION_POINT_NAME = VOLUME_MONITOR_EXTENSION_POINT_NAME;