1 // Generated by gmmproc 2.64.2 -- DO NOT MODIFY!
2 #ifndef _GIOMM_ENUMS_H
3 #define _GIOMM_ENUMS_H
4 
5 
6 #include <glibmm/ustring.h>
7 #include <sigc++/sigc++.h>
8 
9 /* Copyright (C) 2007 The gtkmm Development Team
10  *
11  * This library is free software; you can redistribute it and/or
12  * modify it under the terms of the GNU Lesser General Public
13  * License as published by the Free Software Foundation; either
14  * version 2.1 of the License, or (at your option) any later version.
15  *
16  * This library is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
19  * Lesser General Public License for more details.
20  *
21  * You should have received a copy of the GNU Lesser General Public
22  * License along with this library.  If not, see <http://www.gnu.org/licenses/>.
23  */
24 
25 #include <gio/gio.h>
26 #include <glibmm/value.h>
27 
28 
29 namespace Gio
30 {
31 
32 /** @addtogroup giommEnums giomm Enums and Flags */
33 
34 /**
35  *  @var DataStreamByteOrder DATA_STREAM_BYTE_ORDER_BIG_ENDIAN
36  * Selects Big Endian byte order.
37  *
38  *  @var DataStreamByteOrder DATA_STREAM_BYTE_ORDER_LITTLE_ENDIAN
39  * Selects Little Endian byte order.
40  *
41  *  @var DataStreamByteOrder DATA_STREAM_BYTE_ORDER_HOST_ENDIAN
42  * Selects endianness based on host machine's architecture.
43  *
44  *  @enum DataStreamByteOrder
45  *
46  * DataStreamByteOrder is used to ensure proper endianness of streaming data sources
47  * across various machine architectures.
48  *
49  * @ingroup giommEnums
50  */
51 enum DataStreamByteOrder
52 {
53   DATA_STREAM_BYTE_ORDER_BIG_ENDIAN,
54   DATA_STREAM_BYTE_ORDER_LITTLE_ENDIAN,
55   DATA_STREAM_BYTE_ORDER_HOST_ENDIAN
56 };
57 
58 } // namespace Gio
59 
60 #ifndef DOXYGEN_SHOULD_SKIP_THIS
61 namespace Glib
62 {
63 
64 template <>
65 class Value<Gio::DataStreamByteOrder> : public Glib::Value_Enum<Gio::DataStreamByteOrder>
66 {
67 public:
68   static GType value_type() G_GNUC_CONST;
69 };
70 
71 } // namespace Glib
72 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
73 
74 namespace Gio
75 {
76 
77 /**
78  *  @var DataStreamNewlineType DATA_STREAM_NEWLINE_TYPE_LF
79  * Selects "LF" line endings, common on most modern UNIX platforms.
80  *
81  *  @var DataStreamNewlineType DATA_STREAM_NEWLINE_TYPE_CR
82  * Selects "CR" line endings.
83  *
84  *  @var DataStreamNewlineType DATA_STREAM_NEWLINE_TYPE_CR_LF
85  * Selects "CR, LF" line ending, common on Microsoft Windows.
86  *
87  *  @var DataStreamNewlineType DATA_STREAM_NEWLINE_TYPE_ANY
88  * Automatically try to handle any line ending type.
89  *
90  *  @enum DataStreamNewlineType
91  *
92  * DataStreamNewlineType is used when checking for or setting the line endings for a given file.
93  *
94  * @ingroup giommEnums
95  */
96 enum DataStreamNewlineType
97 {
98   DATA_STREAM_NEWLINE_TYPE_LF,
99   DATA_STREAM_NEWLINE_TYPE_CR,
100   DATA_STREAM_NEWLINE_TYPE_CR_LF,
101   DATA_STREAM_NEWLINE_TYPE_ANY
102 };
103 
104 } // namespace Gio
105 
106 #ifndef DOXYGEN_SHOULD_SKIP_THIS
107 namespace Glib
108 {
109 
110 template <>
111 class Value<Gio::DataStreamNewlineType> : public Glib::Value_Enum<Gio::DataStreamNewlineType>
112 {
113 public:
114   static GType value_type() G_GNUC_CONST;
115 };
116 
117 } // namespace Glib
118 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
119 
120 namespace Gio
121 {
122 
123 /**
124  *  @var ErrorEnum IO_ERROR_FAILED
125  * Generic error condition for when an operation fails
126  * and no more specific IOErrorEnum value is defined.
127  *
128  *  @var ErrorEnum IO_ERROR_NOT_FOUND
129  * File not found.
130  *
131  *  @var ErrorEnum IO_ERROR_EXISTS
132  * File already exists.
133  *
134  *  @var ErrorEnum IO_ERROR_IS_DIRECTORY
135  * File is a directory.
136  *
137  *  @var ErrorEnum IO_ERROR_NOT_DIRECTORY
138  * File is not a directory.
139  *
140  *  @var ErrorEnum IO_ERROR_NOT_EMPTY
141  * File is a directory that isn't empty.
142  *
143  *  @var ErrorEnum IO_ERROR_NOT_REGULAR_FILE
144  * File is not a regular file.
145  *
146  *  @var ErrorEnum IO_ERROR_NOT_SYMBOLIC_LINK
147  * File is not a symbolic link.
148  *
149  *  @var ErrorEnum IO_ERROR_NOT_MOUNTABLE_FILE
150  * File cannot be mounted.
151  *
152  *  @var ErrorEnum IO_ERROR_FILENAME_TOO_LONG
153  * Filename is too many characters.
154  *
155  *  @var ErrorEnum IO_ERROR_INVALID_FILENAME
156  * Filename is invalid or contains invalid characters.
157  *
158  *  @var ErrorEnum IO_ERROR_TOO_MANY_LINKS
159  * File contains too many symbolic links.
160  *
161  *  @var ErrorEnum IO_ERROR_NO_SPACE
162  * No space left on drive.
163  *
164  *  @var ErrorEnum IO_ERROR_INVALID_ARGUMENT
165  * Invalid argument.
166  *
167  *  @var ErrorEnum IO_ERROR_PERMISSION_DENIED
168  * Permission denied.
169  *
170  *  @var ErrorEnum IO_ERROR_NOT_SUPPORTED
171  * Operation (or one of its parameters) not supported.
172  *
173  *  @var ErrorEnum IO_ERROR_NOT_MOUNTED
174  * File isn't mounted.
175  *
176  *  @var ErrorEnum IO_ERROR_ALREADY_MOUNTED
177  * File is already mounted.
178  *
179  *  @var ErrorEnum IO_ERROR_CLOSED
180  * File was closed.
181  *
182  *  @var ErrorEnum IO_ERROR_CANCELLED
183  * Operation was cancelled. See Cancellable.
184  *
185  *  @var ErrorEnum IO_ERROR_PENDING
186  * Operations are still pending.
187  *
188  *  @var ErrorEnum IO_ERROR_READ_ONLY
189  * File is read only.
190  *
191  *  @var ErrorEnum IO_ERROR_CANT_CREATE_BACKUP
192  * Backup couldn't be created.
193  *
194  *  @var ErrorEnum IO_ERROR_WRONG_ETAG
195  * File's Entity Tag was incorrect.
196  *
197  *  @var ErrorEnum IO_ERROR_TIMED_OUT
198  * Operation timed out.
199  *
200  *  @var ErrorEnum IO_ERROR_WOULD_RECURSE
201  * Operation would be recursive.
202  *
203  *  @var ErrorEnum IO_ERROR_BUSY
204  * File is busy.
205  *
206  *  @var ErrorEnum IO_ERROR_WOULD_BLOCK
207  * Operation would block.
208  *
209  *  @var ErrorEnum IO_ERROR_HOST_NOT_FOUND
210  * Host couldn't be found (remote operations).
211  *
212  *  @var ErrorEnum IO_ERROR_WOULD_MERGE
213  * Operation would merge files.
214  *
215  *  @var ErrorEnum IO_ERROR_FAILED_HANDLED
216  * Operation failed and a helper program has
217  * already interacted with the user. Do not display any error dialog.
218  *
219  *  @var ErrorEnum IO_ERROR_TOO_MANY_OPEN_FILES
220  * The current process has too many files
221  * open and can't open any more. Duplicate descriptors do count toward
222  * this limit. @newin{2,20}
223  *
224  *  @var ErrorEnum IO_ERROR_NOT_INITIALIZED
225  * The object has not been initialized. @newin{2,22}
226  *
227  *  @var ErrorEnum IO_ERROR_ADDRESS_IN_USE
228  * The requested address is already in use. @newin{2,22}
229  *
230  *  @var ErrorEnum IO_ERROR_PARTIAL_INPUT
231  * Need more input to finish operation. @newin{2,24}
232  *
233  *  @var ErrorEnum IO_ERROR_INVALID_DATA
234  * The input data was invalid. @newin{2,24}
235  *
236  *  @var ErrorEnum IO_ERROR_DBUS_ERROR
237  * A remote object generated an error that
238  * doesn't correspond to a locally registered Error error
239  * domain. Use g_dbus_error_get_remote_error() to extract the D-Bus
240  * error name and g_dbus_error_strip_remote_error() to fix up the
241  * message so it matches what was received on the wire. @newin{2,26}
242  *
243  *  @var ErrorEnum IO_ERROR_HOST_UNREACHABLE
244  * Host unreachable. @newin{2,26}
245  *
246  *  @var ErrorEnum IO_ERROR_NETWORK_UNREACHABLE
247  * Network unreachable. @newin{2,26}
248  *
249  *  @var ErrorEnum IO_ERROR_CONNECTION_REFUSED
250  * Connection refused. @newin{2,26}
251  *
252  *  @var ErrorEnum IO_ERROR_PROXY_FAILED
253  * Connection to proxy server failed. @newin{2,26}
254  *
255  *  @var ErrorEnum IO_ERROR_PROXY_AUTH_FAILED
256  * Proxy authentication failed. @newin{2,26}
257  *
258  *  @var ErrorEnum IO_ERROR_PROXY_NEED_AUTH
259  * Proxy server needs authentication. @newin{2,26}
260  *
261  *  @var ErrorEnum IO_ERROR_PROXY_NOT_ALLOWED
262  * Proxy connection is not allowed by ruleset.
263  * @newin{2,26}
264  *
265  *  @var ErrorEnum IO_ERROR_BROKEN_PIPE
266  * Broken pipe. @newin{2,36}
267  *
268  *  @var ErrorEnum IO_ERROR_CONNECTION_CLOSED
269  * Connection closed by peer. Note that this
270  * is the same code as IO_ERROR_BROKEN_PIPE; before 2.44 some
271  * "connection closed" errors returned IO_ERROR_BROKEN_PIPE, but others
272  * returned IO_ERROR_FAILED. Now they should all return the same
273  * value, which has this more logical name. @newin{2,44}
274  *
275  *  @var ErrorEnum IO_ERROR_NOT_CONNECTED
276  * Transport endpoint is not connected. @newin{2,44}
277  *
278  *  @var ErrorEnum IO_ERROR_MESSAGE_TOO_LARGE
279  * Message too large. @newin{2,48}
280  *
281  *  @enum ErrorEnum
282  *
283  * Error codes returned by GIO functions.
284  *
285  * Note that this domain may be extended in future GLib releases. In
286  * general, new error codes either only apply to new APIs, or else
287  * replace IO_ERROR_FAILED in cases that were not explicitly
288  * distinguished before. You should therefore avoid writing code like
289  *
290  * [C example ellipted]
291  * but should instead treat all unrecognized error codes the same as
292  * IO_ERROR_FAILED.
293  *
294  * See also PollableReturn for a cheaper way of returning
295  * IO_ERROR_WOULD_BLOCK to callers without allocating a Error.
296  *
297  * @ingroup giommEnums
298  */
299 enum ErrorEnum
300 {
301   IO_ERROR_FAILED,
302   IO_ERROR_NOT_FOUND,
303   IO_ERROR_EXISTS,
304   IO_ERROR_IS_DIRECTORY,
305   IO_ERROR_NOT_DIRECTORY,
306   IO_ERROR_NOT_EMPTY,
307   IO_ERROR_NOT_REGULAR_FILE,
308   IO_ERROR_NOT_SYMBOLIC_LINK,
309   IO_ERROR_NOT_MOUNTABLE_FILE,
310   IO_ERROR_FILENAME_TOO_LONG,
311   IO_ERROR_INVALID_FILENAME,
312   IO_ERROR_TOO_MANY_LINKS,
313   IO_ERROR_NO_SPACE,
314   IO_ERROR_INVALID_ARGUMENT,
315   IO_ERROR_PERMISSION_DENIED,
316   IO_ERROR_NOT_SUPPORTED,
317   IO_ERROR_NOT_MOUNTED,
318   IO_ERROR_ALREADY_MOUNTED,
319   IO_ERROR_CLOSED,
320   IO_ERROR_CANCELLED,
321   IO_ERROR_PENDING,
322   IO_ERROR_READ_ONLY,
323   IO_ERROR_CANT_CREATE_BACKUP,
324   IO_ERROR_WRONG_ETAG,
325   IO_ERROR_TIMED_OUT,
326   IO_ERROR_WOULD_RECURSE,
327   IO_ERROR_BUSY,
328   IO_ERROR_WOULD_BLOCK,
329   IO_ERROR_HOST_NOT_FOUND,
330   IO_ERROR_HOST_WAS_NOT_FOUND = IO_ERROR_HOST_NOT_FOUND,
331   IO_ERROR_WOULD_MERGE,
332   IO_ERROR_FAILED_HANDLED,
333   IO_ERROR_TOO_MANY_OPEN_FILES,
334   IO_ERROR_NOT_INITIALIZED,
335   IO_ERROR_ADDRESS_IN_USE,
336   IO_ERROR_PARTIAL_INPUT,
337   IO_ERROR_INVALID_DATA,
338   IO_ERROR_DBUS_ERROR,
339   IO_ERROR_HOST_UNREACHABLE,
340   IO_ERROR_NETWORK_UNREACHABLE,
341   IO_ERROR_CONNECTION_REFUSED,
342   IO_ERROR_PROXY_FAILED,
343   IO_ERROR_PROXY_AUTH_FAILED,
344   IO_ERROR_PROXY_NEED_AUTH,
345   IO_ERROR_PROXY_NOT_ALLOWED,
346   IO_ERROR_BROKEN_PIPE,
347   IO_ERROR_CONNECTION_CLOSED = IO_ERROR_BROKEN_PIPE,
348   IO_ERROR_NOT_CONNECTED,
349   IO_ERROR_MESSAGE_TOO_LARGE
350 };
351 
352 
353 /**
354  *  @var SocketFamily SOCKET_FAMILY_INVALID
355  * No address family.
356  *
357  *  @var SocketFamily SOCKET_FAMILY_IPV4
358  * The IPv4 family.
359  *
360  *  @var SocketFamily SOCKET_FAMILY_IPV6
361  * The IPv6 family.
362  *
363  *  @var SocketFamily SOCKET_FAMILY_UNIX
364  * The UNIX domain family.
365  *
366  *  @enum SocketFamily
367  *
368  * The protocol family of a SocketAddress. (These values are
369  * identical to the system defines AF_INET, AF_INET6 and AF_UNIX,
370  * if available.)
371  *
372  * @newin{2,22}
373  *
374  * @ingroup giommEnums
375  */
376 enum SocketFamily
377 {
378   SOCKET_FAMILY_INVALID = 0,
379   SOCKET_FAMILY_UNIX = GLIB_SYSDEF_AF_UNIX,
380   SOCKET_FAMILY_IPV4 = GLIB_SYSDEF_AF_INET,
381   SOCKET_FAMILY_IPV6 = GLIB_SYSDEF_AF_INET6
382 };
383 
384 } // namespace Gio
385 
386 #ifndef DOXYGEN_SHOULD_SKIP_THIS
387 namespace Glib
388 {
389 
390 template <>
391 class Value<Gio::SocketFamily> : public Glib::Value_Enum<Gio::SocketFamily>
392 {
393 public:
394   static GType value_type() G_GNUC_CONST;
395 };
396 
397 } // namespace Glib
398 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
399 
400 namespace Gio
401 {
402 
403 /**
404  *  @var TlsAuthenticationMode TLS_AUTHENTICATION_NONE
405  * Client authentication not required.
406  *
407  *  @var TlsAuthenticationMode TLS_AUTHENTICATION_REQUESTED
408  * Client authentication is requested.
409  *
410  *  @var TlsAuthenticationMode TLS_AUTHENTICATION_REQUIRED
411  * Client authentication is required.
412  *
413  *  @enum TlsAuthenticationMode
414  *
415  * The client authentication mode for a TlsServerConnection.
416  *
417  * @newin{2,28}
418  *
419  * @ingroup giommEnums
420  */
421 enum TlsAuthenticationMode
422 {
423   TLS_AUTHENTICATION_NONE,
424   TLS_AUTHENTICATION_REQUESTED,
425   TLS_AUTHENTICATION_REQUIRED
426 };
427 
428 } // namespace Gio
429 
430 #ifndef DOXYGEN_SHOULD_SKIP_THIS
431 namespace Glib
432 {
433 
434 template <>
435 class Value<Gio::TlsAuthenticationMode> : public Glib::Value_Enum<Gio::TlsAuthenticationMode>
436 {
437 public:
438   static GType value_type() G_GNUC_CONST;
439 };
440 
441 } // namespace Glib
442 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
443 
444 namespace Gio
445 {
446 
447 /**
448  *  @var TlsCertificateFlags TLS_CERTIFICATE_UNKNOWN_CA
449  * The signing certificate authority is
450  * not known.
451  *
452  *  @var TlsCertificateFlags TLS_CERTIFICATE_BAD_IDENTITY
453  * The certificate does not match the
454  * expected identity of the site that it was retrieved from.
455  *
456  *  @var TlsCertificateFlags TLS_CERTIFICATE_NOT_ACTIVATED
457  * The certificate's activation time
458  * is still in the future.
459  *
460  *  @var TlsCertificateFlags TLS_CERTIFICATE_EXPIRED
461  * The certificate has expired.
462  *
463  *  @var TlsCertificateFlags TLS_CERTIFICATE_REVOKED
464  * The certificate has been revoked
465  * according to the TlsConnection's certificate revocation list.
466  *
467  *  @var TlsCertificateFlags TLS_CERTIFICATE_INSECURE
468  * The certificate's algorithm is
469  * considered insecure.
470  *
471  *  @var TlsCertificateFlags TLS_CERTIFICATE_GENERIC_ERROR
472  * Some other error occurred validating
473  * the certificate.
474  *
475  *  @var TlsCertificateFlags TLS_CERTIFICATE_VALIDATE_ALL
476  * The combination of all of the above
477  * flags.
478  *
479  *  @enum TlsCertificateFlags
480  *
481  * A set of flags describing TLS certification validation. This can be
482  * used to set which validation steps to perform (eg, with
483  * g_tls_client_connection_set_validation_flags()), or to describe why
484  * a particular certificate was rejected (eg, in
485  * TlsConnection::signal_accept_certificate()).
486  *
487  * @newin{2,28}
488  *
489  * @ingroup giommEnums
490  * @par Bitwise operators:
491  * <tt>%TlsCertificateFlags operator|(TlsCertificateFlags, TlsCertificateFlags)</tt><br>
492  * <tt>%TlsCertificateFlags operator&(TlsCertificateFlags, TlsCertificateFlags)</tt><br>
493  * <tt>%TlsCertificateFlags operator^(TlsCertificateFlags, TlsCertificateFlags)</tt><br>
494  * <tt>%TlsCertificateFlags operator~(TlsCertificateFlags)</tt><br>
495  * <tt>%TlsCertificateFlags& operator|=(TlsCertificateFlags&, TlsCertificateFlags)</tt><br>
496  * <tt>%TlsCertificateFlags& operator&=(TlsCertificateFlags&, TlsCertificateFlags)</tt><br>
497  * <tt>%TlsCertificateFlags& operator^=(TlsCertificateFlags&, TlsCertificateFlags)</tt><br>
498  */
499 enum TlsCertificateFlags
500 {
501   TLS_CERTIFICATE_UNKNOWN_CA = (1 << 0),
502   TLS_CERTIFICATE_BAD_IDENTITY = (1 << 1),
503   TLS_CERTIFICATE_NOT_ACTIVATED = (1 << 2),
504   TLS_CERTIFICATE_EXPIRED = (1 << 3),
505   TLS_CERTIFICATE_REVOKED = (1 << 4),
506   TLS_CERTIFICATE_INSECURE = (1 << 5),
507   TLS_CERTIFICATE_GENERIC_ERROR = (1 << 6),
508   TLS_CERTIFICATE_VALIDATE_ALL = 0x007f
509 };
510 
511 /** @ingroup giommEnums */
512 inline TlsCertificateFlags operator|(TlsCertificateFlags lhs, TlsCertificateFlags rhs)
513   { return static_cast<TlsCertificateFlags>(static_cast<unsigned>(lhs) | static_cast<unsigned>(rhs)); }
514 
515 /** @ingroup giommEnums */
516 inline TlsCertificateFlags operator&(TlsCertificateFlags lhs, TlsCertificateFlags rhs)
517   { return static_cast<TlsCertificateFlags>(static_cast<unsigned>(lhs) & static_cast<unsigned>(rhs)); }
518 
519 /** @ingroup giommEnums */
520 inline TlsCertificateFlags operator^(TlsCertificateFlags lhs, TlsCertificateFlags rhs)
521   { return static_cast<TlsCertificateFlags>(static_cast<unsigned>(lhs) ^ static_cast<unsigned>(rhs)); }
522 
523 /** @ingroup giommEnums */
524 inline TlsCertificateFlags operator~(TlsCertificateFlags flags)
525   { return static_cast<TlsCertificateFlags>(~static_cast<unsigned>(flags)); }
526 
527 /** @ingroup giommEnums */
528 inline TlsCertificateFlags& operator|=(TlsCertificateFlags& lhs, TlsCertificateFlags rhs)
529   { return (lhs = static_cast<TlsCertificateFlags>(static_cast<unsigned>(lhs) | static_cast<unsigned>(rhs))); }
530 
531 /** @ingroup giommEnums */
532 inline TlsCertificateFlags& operator&=(TlsCertificateFlags& lhs, TlsCertificateFlags rhs)
533   { return (lhs = static_cast<TlsCertificateFlags>(static_cast<unsigned>(lhs) & static_cast<unsigned>(rhs))); }
534 
535 /** @ingroup giommEnums */
536 inline TlsCertificateFlags& operator^=(TlsCertificateFlags& lhs, TlsCertificateFlags rhs)
537   { return (lhs = static_cast<TlsCertificateFlags>(static_cast<unsigned>(lhs) ^ static_cast<unsigned>(rhs))); }
538 
539 } // namespace Gio
540 
541 #ifndef DOXYGEN_SHOULD_SKIP_THIS
542 namespace Glib
543 {
544 
545 template <>
546 class Value<Gio::TlsCertificateFlags> : public Glib::Value_Flags<Gio::TlsCertificateFlags>
547 {
548 public:
549   static GType value_type() G_GNUC_CONST;
550 };
551 
552 } // namespace Glib
553 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
554 
555 namespace Gio
556 {
557 
558 
559 } // namespace Gio
560 
561 
562 #endif /* _GIOMM_ENUMS_H */
563 
564