00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00022 
00023 #ifndef DBUS_TIMEOUT_H
00024 #define DBUS_TIMEOUT_H
00025 
00026 #include <dbus/dbus-connection.h>
00027 #include <dbus/dbus-internals.h>
00028 
00029 DBUS_BEGIN_DECLS
00030 
00036 
00037 
00038 typedef struct DBusTimeoutList DBusTimeoutList;
00039 
00041 typedef dbus_bool_t (* DBusTimeoutHandler) (void *data);
00042 
00043 DBusTimeout* _dbus_timeout_new          (int                 interval,
00044                                          DBusTimeoutHandler  handler,
00045                                          void               *data,
00046                                          DBusFreeFunction    free_data_function);
00047 DBusTimeout* _dbus_timeout_ref          (DBusTimeout        *timeout);
00048 void         _dbus_timeout_unref        (DBusTimeout        *timeout);
00049 void         _dbus_timeout_set_interval (DBusTimeout        *timeout,
00050                                          int                 interval);
00051 void         _dbus_timeout_set_enabled  (DBusTimeout        *timeout,
00052                                          dbus_bool_t         enabled);
00053 
00054 DBusTimeoutList *_dbus_timeout_list_new            (void);
00055 void             _dbus_timeout_list_free           (DBusTimeoutList           *timeout_list);
00056 dbus_bool_t      _dbus_timeout_list_set_functions  (DBusTimeoutList           *timeout_list,
00057                                                     DBusAddTimeoutFunction     add_function,
00058                                                     DBusRemoveTimeoutFunction  remove_function,
00059                                                     DBusTimeoutToggledFunction toggled_function,
00060                                                     void                      *data,
00061                                                     DBusFreeFunction           free_data_function);
00062 dbus_bool_t      _dbus_timeout_list_add_timeout    (DBusTimeoutList           *timeout_list,
00063                                                     DBusTimeout               *timeout);
00064 void             _dbus_timeout_list_remove_timeout (DBusTimeoutList           *timeout_list,
00065                                                     DBusTimeout               *timeout);
00066 void             _dbus_timeout_list_toggle_timeout (DBusTimeoutList           *timeout_list,
00067                                                     DBusTimeout               *timeout,
00068                                                     dbus_bool_t                enabled);
00069 
00070 
00073 DBUS_END_DECLS
00074 
00075 #endif