Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-09-17 08:54:39

0001 /* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
0002 /* dbus-memory.h  D-Bus memory handling
0003  *
0004  * Copyright (C) 2002  Red Hat Inc.
0005  *
0006  * SPDX-License-Identifier: AFL-2.1 OR GPL-2.0-or-later
0007  *
0008  * Licensed under the Academic Free License version 2.1
0009  *
0010  * This program is free software; you can redistribute it and/or modify
0011  * it under the terms of the GNU General Public License as published by
0012  * the Free Software Foundation; either version 2 of the License, or
0013  * (at your option) any later version.
0014  *
0015  * This program is distributed in the hope that it will be useful,
0016  * but WITHOUT ANY WARRANTY; without even the implied warranty of
0017  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
0018  * GNU General Public License for more details.
0019  *
0020  * You should have received a copy of the GNU General Public License
0021  * along with this program; if not, write to the Free Software
0022  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
0023  *
0024  */
0025 #if !defined (DBUS_INSIDE_DBUS_H) && !defined (DBUS_COMPILATION)
0026 #error "Only <dbus/dbus.h> can be included directly, this file may disappear or change contents."
0027 #endif
0028 
0029 #ifndef DBUS_MEMORY_H
0030 #define DBUS_MEMORY_H
0031 
0032 #include <dbus/dbus-macros.h>
0033 #include <stddef.h>
0034 
0035 DBUS_BEGIN_DECLS
0036 
0037 /**
0038  * @addtogroup DBusMemory
0039  * @{
0040  */
0041 
0042 DBUS_EXPORT
0043 DBUS_MALLOC
0044 DBUS_ALLOC_SIZE(1)
0045 void* dbus_malloc        (size_t bytes);
0046 
0047 DBUS_EXPORT
0048 DBUS_MALLOC
0049 DBUS_ALLOC_SIZE(1)
0050 void* dbus_malloc0       (size_t bytes);
0051 
0052 DBUS_EXPORT
0053 DBUS_ALLOC_SIZE(2)
0054 void* dbus_realloc       (void  *memory,
0055                           size_t bytes);
0056 DBUS_EXPORT
0057 void  dbus_free          (void  *memory);
0058 
0059 #define dbus_new(type, count)  ((type*)dbus_malloc (sizeof (type) * (count)))
0060 #define dbus_new0(type, count) ((type*)dbus_malloc0 (sizeof (type) * (count)))
0061 
0062 DBUS_EXPORT
0063 void dbus_free_string_array (char **str_array);
0064 
0065 typedef void (* DBusFreeFunction) (void *memory);
0066 
0067 DBUS_EXPORT
0068 void dbus_shutdown (void);
0069 
0070 /** @} */
0071 
0072 DBUS_END_DECLS
0073 
0074 #endif /* DBUS_MEMORY_H */