00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #if !defined (DBUS_INSIDE_DBUS_H) && !defined (DBUS_COMPILATION)
00024 #error "Only <dbus/dbus.h> can be included directly, this file may disappear or change contents."
00025 #endif
00026
00027 #ifndef DBUS_MEMORY_H
00028 #define DBUS_MEMORY_H
00029
00030 #include <dbus/dbus-macros.h>
00031 #include <stddef.h>
00032
00033 DBUS_BEGIN_DECLS
00034
00040 DBUS_EXPORT
00041 DBUS_MALLOC
00042 DBUS_ALLOC_SIZE(1)
00043 void* dbus_malloc (size_t bytes);
00044
00045 DBUS_EXPORT
00046 DBUS_MALLOC
00047 DBUS_ALLOC_SIZE(1)
00048 void* dbus_malloc0 (size_t bytes);
00049
00050 DBUS_EXPORT
00051 DBUS_MALLOC
00052 DBUS_ALLOC_SIZE(2)
00053 void* dbus_realloc (void *memory,
00054 size_t bytes);
00055 DBUS_EXPORT
00056 void dbus_free (void *memory);
00057
00058 #define dbus_new(type, count) ((type*)dbus_malloc (sizeof (type) * (count)))
00059 #define dbus_new0(type, count) ((type*)dbus_malloc0 (sizeof (type) * (count)))
00060
00061 DBUS_EXPORT
00062 void dbus_free_string_array (char **str_array);
00063
00064 typedef void (* DBusFreeFunction) (void *memory);
00065
00066 DBUS_EXPORT
00067 void dbus_shutdown (void);
00068
00071 DBUS_END_DECLS
00072
00073 #endif