- fixed dbus_bus_request_name
[platform/upstream/dbus.git] / dbus / dbus-list.h
index ad74dfd..910d738 100644 (file)
@@ -1,9 +1,9 @@
-/* -*- mode: C; c-file-style: "gnu" -*- */
-/* dbus-list.h Generic linked list utility (internal to D-BUS implementation)
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+/* dbus-list.h Generic linked list utility (internal to D-Bus implementation)
  * 
  * Copyright (C) 2002, 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
  *
  */
 
 #include <dbus/dbus-internals.h>
 #include <dbus/dbus-memory.h>
 #include <dbus/dbus-types.h>
+#include <dbus/dbus-sysdeps.h>
 
-DBUS_BEGIN_DECLS;
-
-typedef struct DBusList DBusList;
+DBUS_BEGIN_DECLS
 
 struct DBusList
 {
@@ -60,6 +59,8 @@ dbus_bool_t _dbus_list_remove_last        (DBusList **list,
                                            void      *data);
 void        _dbus_list_remove_link        (DBusList **list,
                                            DBusList  *link);
+DBusList*   _dbus_list_find_last          (DBusList **list,
+                                           void      *data);
 void        _dbus_list_clear              (DBusList **list);
 DBusList*   _dbus_list_get_first_link     (DBusList **list);
 DBusList*   _dbus_list_get_last_link      (DBusList **list);
@@ -68,12 +69,13 @@ void*       _dbus_list_get_first          (DBusList **list);
 void*       _dbus_list_pop_first          (DBusList **list);
 void*       _dbus_list_pop_last           (DBusList **list);
 DBusList*   _dbus_list_pop_first_link     (DBusList **list);
-DBusList*   _dbus_list_pop_last_link      (DBusList **list);
 dbus_bool_t _dbus_list_copy               (DBusList **list,
                                            DBusList **dest);
 int         _dbus_list_get_length         (DBusList **list);
 DBusList*   _dbus_list_alloc_link         (void      *data);
 void        _dbus_list_free_link          (DBusList  *link);
+void        _dbus_list_unlink             (DBusList **list,
+                                           DBusList  *link);
 void        _dbus_list_append_link        (DBusList **list,
                                            DBusList  *link);
 void        _dbus_list_prepend_link       (DBusList **list,
@@ -81,8 +83,6 @@ void        _dbus_list_prepend_link       (DBusList **list,
 dbus_bool_t _dbus_list_length_is_one      (DBusList **list);
 
 
-
-
 void _dbus_list_foreach (DBusList            **list,
                          DBusForeachFunction   function,
                          void                 *data);
@@ -90,6 +90,11 @@ void _dbus_list_foreach (DBusList            **list,
 #define _dbus_list_get_next_link(list, link) ((link)->next == *(list) ? NULL : (link)->next)
 #define _dbus_list_get_prev_link(list, link) ((link) == *(list) ? NULL : (link)->prev)
 
-DBUS_END_DECLS;
+/* if DBUS_ENABLE_STATS */
+void        _dbus_list_get_stats          (dbus_uint32_t *in_use_p,
+                                           dbus_uint32_t *in_free_list_p,
+                                           dbus_uint32_t *allocated_p);
+
+DBUS_END_DECLS
 
 #endif /* DBUS_LIST_H */