File indexing completed on 2025-01-18 09:59:54
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022 #ifndef __G_DATAGRAM_BASED_H__
0023 #define __G_DATAGRAM_BASED_H__
0024
0025 #if !defined (__GIO_GIO_H_INSIDE__) && !defined (GIO_COMPILATION)
0026 #error "Only <gio/gio.h> can be included directly."
0027 #endif
0028
0029 #include <gio/giotypes.h>
0030
0031 G_BEGIN_DECLS
0032
0033 #define G_TYPE_DATAGRAM_BASED (g_datagram_based_get_type ())
0034 #define G_DATAGRAM_BASED(inst) (G_TYPE_CHECK_INSTANCE_CAST ((inst), \
0035 G_TYPE_DATAGRAM_BASED, GDatagramBased))
0036 #define G_IS_DATAGRAM_BASED(inst) (G_TYPE_CHECK_INSTANCE_TYPE ((inst), \
0037 G_TYPE_DATAGRAM_BASED))
0038 #define G_DATAGRAM_BASED_GET_IFACE(inst) (G_TYPE_INSTANCE_GET_INTERFACE ((inst), \
0039 G_TYPE_DATAGRAM_BASED, \
0040 GDatagramBasedInterface))
0041 #define G_TYPE_IS_DATAGRAM_BASED(type) (g_type_is_a ((type), \
0042 G_TYPE_DATAGRAM_BASED))
0043
0044 typedef struct _GDatagramBasedInterface GDatagramBasedInterface;
0045
0046
0047
0048
0049
0050
0051
0052
0053
0054
0055
0056
0057
0058
0059
0060
0061
0062
0063
0064 struct _GDatagramBasedInterface
0065 {
0066 GTypeInterface g_iface;
0067
0068
0069 gint (*receive_messages) (GDatagramBased *datagram_based,
0070 GInputMessage *messages,
0071 guint num_messages,
0072 gint flags,
0073 gint64 timeout,
0074 GCancellable *cancellable,
0075 GError **error);
0076 gint (*send_messages) (GDatagramBased *datagram_based,
0077 GOutputMessage *messages,
0078 guint num_messages,
0079 gint flags,
0080 gint64 timeout,
0081 GCancellable *cancellable,
0082 GError **error);
0083
0084 GSource *(*create_source) (GDatagramBased *datagram_based,
0085 GIOCondition condition,
0086 GCancellable *cancellable);
0087 GIOCondition (*condition_check) (GDatagramBased *datagram_based,
0088 GIOCondition condition);
0089 gboolean (*condition_wait) (GDatagramBased *datagram_based,
0090 GIOCondition condition,
0091 gint64 timeout,
0092 GCancellable *cancellable,
0093 GError **error);
0094 };
0095
0096 GIO_AVAILABLE_IN_2_48
0097 GType
0098 g_datagram_based_get_type (void);
0099
0100 GIO_AVAILABLE_IN_2_48
0101 gint
0102 g_datagram_based_receive_messages (GDatagramBased *datagram_based,
0103 GInputMessage *messages,
0104 guint num_messages,
0105 gint flags,
0106 gint64 timeout,
0107 GCancellable *cancellable,
0108 GError **error);
0109
0110 GIO_AVAILABLE_IN_2_48
0111 gint
0112 g_datagram_based_send_messages (GDatagramBased *datagram_based,
0113 GOutputMessage *messages,
0114 guint num_messages,
0115 gint flags,
0116 gint64 timeout,
0117 GCancellable *cancellable,
0118 GError **error);
0119
0120 GIO_AVAILABLE_IN_2_48
0121 GSource *
0122 g_datagram_based_create_source (GDatagramBased *datagram_based,
0123 GIOCondition condition,
0124 GCancellable *cancellable);
0125 GIO_AVAILABLE_IN_2_48
0126 GIOCondition
0127 g_datagram_based_condition_check (GDatagramBased *datagram_based,
0128 GIOCondition condition);
0129 GIO_AVAILABLE_IN_2_48
0130 gboolean
0131 g_datagram_based_condition_wait (GDatagramBased *datagram_based,
0132 GIOCondition condition,
0133 gint64 timeout,
0134 GCancellable *cancellable,
0135 GError **error);
0136
0137 G_END_DECLS
0138
0139 #endif