[rename] renamed kdbus related macros
[platform/upstream/dbus.git] / bus / expirelist.h
index 2e7752f..887cb97 100644 (file)
@@ -1,9 +1,9 @@
-/* -*- mode: C; c-file-style: "gnu" -*- */
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
 /* expirelist.h  List of stuff that expires
  *
  * Copyright (C) 2003  Red Hat, Inc.
  *
- * Licensed under the Academic Free License version 1.2
+ * Licensed under the Academic Free License version 2.1
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -17,7 +17,7 @@
  *
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
  *
  */
 
 typedef struct BusExpireList BusExpireList;
 typedef struct BusExpireItem BusExpireItem;
 
-typedef void (* BusExpireFunc) (BusExpireList *list,
-                                BusExpireItem *item,
-                                void          *data);
+typedef dbus_bool_t (* BusExpireFunc) (BusExpireList *list,
+                                       DBusList      *link,
+                                       void          *data);
 
-struct BusExpireList
-{
-  DBusList      *items; /**< List of BusExpireItem */
-  int            n_items;
-  DBusTimeout   *timeout;
-  DBusLoop      *loop;
-  BusExpireFunc  expire_func;
-  void          *data;
-  int            expire_after; /**< Expire after milliseconds (thousandths) */
-};
 
 /* embed this in a child expire item struct */
 struct BusExpireItem
@@ -53,18 +43,38 @@ struct BusExpireItem
   long added_tv_usec; /**< Time we were added (microsec component) */
 };
 
-BusExpireList* bus_expire_list_new    (DBusLoop      *loop,
-                                       int            expire_after,
-                                       BusExpireFunc  expire_func,
-                                       void          *data);
-void           bus_expire_list_free   (BusExpireList *list);
+BusExpireList* bus_expire_list_new                 (DBusLoop      *loop,
+                                                    int            expire_after,
+                                                    BusExpireFunc  expire_func,
+                                                    void          *data);
+void           bus_expire_list_free                (BusExpireList *list);
+void           bus_expire_list_recheck_immediately (BusExpireList *list);
+void           bus_expire_list_remove_link         (BusExpireList *list,
+                                                    DBusList      *link);
+dbus_bool_t    bus_expire_list_remove              (BusExpireList *list,
+                                                    BusExpireItem *item);
+DBusList*      bus_expire_list_get_first_link      (BusExpireList *list);
+DBusList*      bus_expire_list_get_next_link       (BusExpireList *list,
+                                                    DBusList      *link);
+dbus_bool_t    bus_expire_list_add                 (BusExpireList *list,
+                                                    BusExpireItem *item);
+void           bus_expire_list_add_link            (BusExpireList *list,
+                                                    DBusList      *link);
+dbus_bool_t    bus_expire_list_contains_item       (BusExpireList *list,
+                                                    BusExpireItem *item);
+void           bus_expire_list_unlink              (BusExpireList *list,
+                                                    DBusList      *link);
+
+/* this macro and function are semi-related utility functions, not really part of the
+ * BusExpireList API
+ */
 
 #define ELAPSED_MILLISECONDS_SINCE(orig_tv_sec, orig_tv_usec,   \
                                    now_tv_sec, now_tv_usec)     \
  (((double) (now_tv_sec) - (double) (orig_tv_sec)) * 1000.0 +   \
  ((double) (now_tv_usec) - (double) (orig_tv_usec)) / 1000.0)
 
-void bus_expire_timeout_set_interval (DBusTimeout *timeout,
-                                      int          next_interval);
+void bus_expire_timeout_set_interval (DBusTimeout   *timeout,
+                                      int            next_interval);
 
 #endif /* BUS_EXPIRE_LIST_H */