aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/libraries/eina/src/include/eina_lalloc.h
diff options
context:
space:
mode:
authorDavid Walter Seikel2012-01-04 18:41:13 +1000
committerDavid Walter Seikel2012-01-04 18:41:13 +1000
commitdd7595a3475407a7fa96a97393bae8c5220e8762 (patch)
treee341e911d7eb911a51684a7412ef7f7c7605d28e /libraries/eina/src/include/eina_lalloc.h
parentAdd the skeleton. (diff)
downloadSledjHamr-dd7595a3475407a7fa96a97393bae8c5220e8762.zip
SledjHamr-dd7595a3475407a7fa96a97393bae8c5220e8762.tar.gz
SledjHamr-dd7595a3475407a7fa96a97393bae8c5220e8762.tar.bz2
SledjHamr-dd7595a3475407a7fa96a97393bae8c5220e8762.tar.xz
Add the base Enlightenment Foundation Libraries - eina, eet, evas, ecore, embryo, and edje.
Note that embryo wont be used, but I'm not sure yet if you can build edje without it.
Diffstat (limited to 'libraries/eina/src/include/eina_lalloc.h')
-rw-r--r--libraries/eina/src/include/eina_lalloc.h60
1 files changed, 60 insertions, 0 deletions
diff --git a/libraries/eina/src/include/eina_lalloc.h b/libraries/eina/src/include/eina_lalloc.h
new file mode 100644
index 0000000..dcb8773
--- /dev/null
+++ b/libraries/eina/src/include/eina_lalloc.h
@@ -0,0 +1,60 @@
1/* EINA - EFL data type library
2 * Copyright (C) 2007-2008 Jorge Luis Zapata Muga
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library;
16 * if not, see <http://www.gnu.org/licenses/>.
17 */
18
19#ifndef EINA_LALLOC_H_
20#define EINA_LALLOC_H_
21
22#include "eina_types.h"
23
24/**
25 * @addtogroup Eina_Tools_Group Tools
26 *
27 * @{
28 */
29
30/**
31 * @defgroup Eina_Lalloc_Group Lazy allocator
32 *
33 * @{
34 */
35
36typedef Eina_Bool (*Eina_Lalloc_Alloc)(void *user_data, int num);
37#define EINA_LALLOC_ALLOC(function) ((Eina_Lalloc_Alloc)function)
38typedef void (*Eina_Lalloc_Free)(void *user_data);
39#define EINA_LALLOC_FREE(function) ((Eina_Lalloc_Free)function)
40
41typedef struct _Eina_Lalloc Eina_Lalloc;
42
43EAPI Eina_Lalloc *eina_lalloc_new(void *data,
44 Eina_Lalloc_Alloc alloc_cb,
45 Eina_Lalloc_Free free_cb,
46 int num_init) EINA_ARG_NONNULL(2, 3);
47EAPI void eina_lalloc_free(Eina_Lalloc *a) EINA_ARG_NONNULL(1);
48EAPI Eina_Bool eina_lalloc_elements_add(Eina_Lalloc *a,
49 int num) EINA_ARG_NONNULL(1);
50EAPI Eina_Bool eina_lalloc_element_add(Eina_Lalloc *a) EINA_ARG_NONNULL(1);
51
52/**
53 * @}
54 */
55
56/**
57 * @}
58 */
59
60#endif /* EINA_LALLOC_H_ */