26 #ifndef DBUS_SOCKET_SET_H 27 #define DBUS_SOCKET_SET_H 29 #ifndef DOXYGEN_SHOULD_SKIP_THIS 31 #include <dbus/dbus.h> 32 #include <dbus/dbus-sysdeps.h> 39 typedef struct DBusSocketSet DBusSocketSet;
41 typedef struct DBusSocketSetClass DBusSocketSetClass;
42 struct DBusSocketSetClass {
43 void (*free) (DBusSocketSet *
self);
48 void (*
remove) (DBusSocketSet *
self,
50 void (*enable) (DBusSocketSet *
self,
53 void (*disable) (DBusSocketSet *
self,
55 int (*poll) (DBusSocketSet *
self,
56 DBusSocketEvent *revents,
61 struct DBusSocketSet {
62 DBusSocketSetClass *cls;
65 DBusSocketSet *_dbus_socket_set_new (
int size_hint);
68 _dbus_socket_set_free (DBusSocketSet *
self)
70 (
self->cls->free) (
self);
74 _dbus_socket_set_add (DBusSocketSet *
self,
79 return (self->cls->add) (
self, fd, flags, enabled);
83 _dbus_socket_set_remove (DBusSocketSet *
self,
86 (
self->cls->remove) (
self, fd);
90 _dbus_socket_set_enable (DBusSocketSet *
self,
94 (
self->cls->enable) (
self, fd, flags);
98 _dbus_socket_set_disable (DBusSocketSet *
self,
101 (
self->cls->disable) (
self, fd);
106 _dbus_socket_set_poll (DBusSocketSet *
self,
107 DBusSocketEvent *revents,
111 return (self->cls->poll) (
self, revents, max_events, timeout_ms);
116 extern DBusSocketSetClass _dbus_socket_set_poll_class;
117 extern DBusSocketSetClass _dbus_socket_set_epoll_class;
119 DBusSocketSet *_dbus_socket_set_poll_new (
int size_hint);
120 DBusSocketSet *_dbus_socket_set_epoll_new (
void);
dbus_uint32_t dbus_bool_t
A boolean, valid values are TRUE and FALSE.