D-Bus 1.4.20
|
00001 /* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ 00002 /* dbus-timeout.h DBusTimeout internal interfaces 00003 * 00004 * Copyright (C) 2003 CodeFactory AB 00005 * 00006 * Licensed under the Academic Free License version 2.1 00007 * 00008 * This program is free software; you can redistribute it and/or modify 00009 * it under the terms of the GNU General Public License as published by 00010 * the Free Software Foundation; either version 2 of the License, or 00011 * (at your option) any later version. 00012 * 00013 * This program is distributed in the hope that it will be useful, 00014 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00015 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00016 * GNU General Public License for more details. 00017 * 00018 * You should have received a copy of the GNU General Public License 00019 * along with this program; if not, write to the Free Software 00020 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 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 /* Public methods on DBusTimeout are in dbus-connection.h */ 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 /* DBUS_TIMEOUT_H */