// Generated by gmmproc 2.82.0 -- DO NOT MODIFY! #ifndef _GIOMM_ENUMS_H #define _GIOMM_ENUMS_H #include #include #include /* Copyright (C) 2007 The gtkmm Development Team * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library. If not, see . */ #include #include namespace Gio { // BIG_ENDIAN and LITTLE_ENDIAN are defined as preprocessor macros somewhere. /** @addtogroup giommEnums giomm Enums and Flags */ /** * @var DataStreamByteOrder::BIG_ENDIAN_ORDER * Selects Big Endian byte order. * * @var DataStreamByteOrder::LITTLE_ENDIAN_ORDER * Selects Little Endian byte order. * * @var DataStreamByteOrder::HOST_ENDIAN_ORDER * Selects endianness based on host machine's architecture. */ /** DataStreamByteOrder is used to ensure proper endianness of streaming data sources * across various machine architectures. * * @ingroup giommEnums */ enum class DataStreamByteOrder { BIG_ENDIAN_ORDER, LITTLE_ENDIAN_ORDER, HOST_ENDIAN_ORDER }; } // namespace Gio #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace Glib { template <> class GIOMM_API Value : public Glib::Value_Enum { public: static GType value_type() G_GNUC_CONST; }; } // namespace Glib #endif /* DOXYGEN_SHOULD_SKIP_THIS */ namespace Gio { /** * @var DataStreamNewlineType::LF * Selects "LF" line endings, common on most modern UNIX platforms. * * @var DataStreamNewlineType::CR * Selects "CR" line endings. * * @var DataStreamNewlineType::CR_LF * Selects "CR, LF" line ending, common on Microsoft Windows. * * @var DataStreamNewlineType::ANY * Automatically try to handle any line ending type. */ /** DataStreamNewlineType is used when checking for or setting the line endings for a given file. * * @ingroup giommEnums */ enum class DataStreamNewlineType { LF, CR, CR_LF, ANY }; } // namespace Gio #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace Glib { template <> class GIOMM_API Value : public Glib::Value_Enum { public: static GType value_type() G_GNUC_CONST; }; } // namespace Glib #endif /* DOXYGEN_SHOULD_SKIP_THIS */ namespace Gio { /** * @var SocketFamily::INVALID * No address family. * * @var SocketFamily::IPV4 * The IPv4 family. * * @var SocketFamily::IPV6 * The IPv6 family. * * @var SocketFamily::UNIX * The UNIX domain family. */ /** The protocol family of a SocketAddress. (These values are * identical to the system defines AF_INET, AF_INET6 and AF_UNIX, * if available.) * * @newin{2,22} * * @ingroup giommEnums */ enum class SocketFamily { INVALID = 0, UNIX = GLIB_SYSDEF_AF_UNIX, IPV4 = GLIB_SYSDEF_AF_INET, IPV6 = GLIB_SYSDEF_AF_INET6 }; } // namespace Gio #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace Glib { template <> class GIOMM_API Value : public Glib::Value_Enum { public: static GType value_type() G_GNUC_CONST; }; } // namespace Glib #endif /* DOXYGEN_SHOULD_SKIP_THIS */ namespace Gio { /** * @var TlsAuthenticationMode::NONE * Client authentication not required. * * @var TlsAuthenticationMode::REQUESTED * Client authentication is requested. * * @var TlsAuthenticationMode::REQUIRED * Client authentication is required. */ /** The client authentication mode for a TlsServerConnection. * * @newin{2,28} * * @ingroup giommEnums */ enum class TlsAuthenticationMode { NONE, REQUESTED, REQUIRED }; } // namespace Gio #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace Glib { template <> class GIOMM_API Value : public Glib::Value_Enum { public: static GType value_type() G_GNUC_CONST; }; } // namespace Glib #endif /* DOXYGEN_SHOULD_SKIP_THIS */ namespace Gio { /** * @var TlsCertificateFlags::NO_FLAGS * No flags set. @newin{2,74} * * @var TlsCertificateFlags::UNKNOWN_CA * The signing certificate authority is * not known. * * @var TlsCertificateFlags::BAD_IDENTITY * The certificate does not match the * expected identity of the site that it was retrieved from. * * @var TlsCertificateFlags::NOT_ACTIVATED * The certificate's activation time * is still in the future. * * @var TlsCertificateFlags::EXPIRED * The certificate has expired. * * @var TlsCertificateFlags::REVOKED * The certificate has been revoked * according to the TlsConnection's certificate revocation list. * * @var TlsCertificateFlags::INSECURE * The certificate's algorithm is * considered insecure. * * @var TlsCertificateFlags::GENERIC_ERROR * Some other error occurred validating * the certificate. * * @var TlsCertificateFlags::VALIDATE_ALL * The combination of all of the above * flags. */ /** A set of flags describing TLS certification validation. This can be * used to describe why a particular certificate was rejected (for * example, in TlsConnection::signal_accept_certificate()). * * GLib guarantees that if certificate verification fails, at least one * flag will be set, but it does not guarantee that all possible flags * will be set. Accordingly, you may not safely decide to ignore any * particular type of error. For example, it would be incorrect to mask * Gio::TlsCertificateFlags::EXPIRED if you want to allow expired certificates, * because this could potentially be the only error flag set even if * other problems exist with the certificate. * * @newin{2,28} * * @ingroup giommEnums * @par Bitwise operators: * TlsCertificateFlags operator|(TlsCertificateFlags, TlsCertificateFlags)
* TlsCertificateFlags operator&(TlsCertificateFlags, TlsCertificateFlags)
* TlsCertificateFlags operator^(TlsCertificateFlags, TlsCertificateFlags)
* TlsCertificateFlags operator~(TlsCertificateFlags)
* TlsCertificateFlags& operator|=(TlsCertificateFlags&, TlsCertificateFlags)
* TlsCertificateFlags& operator&=(TlsCertificateFlags&, TlsCertificateFlags)
* TlsCertificateFlags& operator^=(TlsCertificateFlags&, TlsCertificateFlags)
*/ enum class TlsCertificateFlags { NO_FLAGS = 0x0, UNKNOWN_CA = (1 << 0), BAD_IDENTITY = (1 << 1), NOT_ACTIVATED = (1 << 2), EXPIRED = (1 << 3), REVOKED = (1 << 4), INSECURE = (1 << 5), GENERIC_ERROR = (1 << 6), VALIDATE_ALL = 0x007f }; /** @ingroup giommEnums */ inline TlsCertificateFlags operator|(TlsCertificateFlags lhs, TlsCertificateFlags rhs) { return static_cast(static_cast(lhs) | static_cast(rhs)); } /** @ingroup giommEnums */ inline TlsCertificateFlags operator&(TlsCertificateFlags lhs, TlsCertificateFlags rhs) { return static_cast(static_cast(lhs) & static_cast(rhs)); } /** @ingroup giommEnums */ inline TlsCertificateFlags operator^(TlsCertificateFlags lhs, TlsCertificateFlags rhs) { return static_cast(static_cast(lhs) ^ static_cast(rhs)); } /** @ingroup giommEnums */ inline TlsCertificateFlags operator~(TlsCertificateFlags flags) { return static_cast(~static_cast(flags)); } /** @ingroup giommEnums */ inline TlsCertificateFlags& operator|=(TlsCertificateFlags& lhs, TlsCertificateFlags rhs) { return (lhs = static_cast(static_cast(lhs) | static_cast(rhs))); } /** @ingroup giommEnums */ inline TlsCertificateFlags& operator&=(TlsCertificateFlags& lhs, TlsCertificateFlags rhs) { return (lhs = static_cast(static_cast(lhs) & static_cast(rhs))); } /** @ingroup giommEnums */ inline TlsCertificateFlags& operator^=(TlsCertificateFlags& lhs, TlsCertificateFlags rhs) { return (lhs = static_cast(static_cast(lhs) ^ static_cast(rhs))); } } // namespace Gio #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace Glib { template <> class GIOMM_API Value : public Glib::Value_Flags { public: static GType value_type() G_GNUC_CONST; }; } // namespace Glib #endif /* DOXYGEN_SHOULD_SKIP_THIS */ namespace Gio { } // namespace Gio #endif /* _GIOMM_ENUMS_H */