File indexing completed on 2025-01-18 09:59:58
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021 #ifndef __G_POLLABLE_INPUT_STREAM_H__
0022 #define __G_POLLABLE_INPUT_STREAM_H__
0023
0024 #if !defined (__GIO_GIO_H_INSIDE__) && !defined (GIO_COMPILATION)
0025 #error "Only <gio/gio.h> can be included directly."
0026 #endif
0027
0028 #include <gio/gio.h>
0029
0030 G_BEGIN_DECLS
0031
0032 #define G_TYPE_POLLABLE_INPUT_STREAM (g_pollable_input_stream_get_type ())
0033 #define G_POLLABLE_INPUT_STREAM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), G_TYPE_POLLABLE_INPUT_STREAM, GPollableInputStream))
0034 #define G_IS_POLLABLE_INPUT_STREAM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), G_TYPE_POLLABLE_INPUT_STREAM))
0035 #define G_POLLABLE_INPUT_STREAM_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), G_TYPE_POLLABLE_INPUT_STREAM, GPollableInputStreamInterface))
0036
0037 typedef struct _GPollableInputStreamInterface GPollableInputStreamInterface;
0038
0039
0040
0041
0042
0043
0044
0045
0046
0047
0048
0049
0050
0051
0052
0053
0054
0055
0056
0057
0058
0059
0060
0061 struct _GPollableInputStreamInterface
0062 {
0063 GTypeInterface g_iface;
0064
0065
0066 gboolean (*can_poll) (GPollableInputStream *stream);
0067
0068 gboolean (*is_readable) (GPollableInputStream *stream);
0069 GSource * (*create_source) (GPollableInputStream *stream,
0070 GCancellable *cancellable);
0071 gssize (*read_nonblocking) (GPollableInputStream *stream,
0072 void *buffer,
0073 gsize count,
0074 GError **error);
0075 };
0076
0077 GIO_AVAILABLE_IN_ALL
0078 GType g_pollable_input_stream_get_type (void) G_GNUC_CONST;
0079
0080 GIO_AVAILABLE_IN_ALL
0081 gboolean g_pollable_input_stream_can_poll (GPollableInputStream *stream);
0082
0083 GIO_AVAILABLE_IN_ALL
0084 gboolean g_pollable_input_stream_is_readable (GPollableInputStream *stream);
0085 GIO_AVAILABLE_IN_ALL
0086 GSource *g_pollable_input_stream_create_source (GPollableInputStream *stream,
0087 GCancellable *cancellable);
0088
0089 GIO_AVAILABLE_IN_ALL
0090 gssize g_pollable_input_stream_read_nonblocking (GPollableInputStream *stream,
0091 void *buffer,
0092 gsize count,
0093 GCancellable *cancellable,
0094 GError **error);
0095
0096 G_END_DECLS
0097
0098
0099 #endif