this someone didn't get committed
[blender.git] / source / blender / blenlib / BLI_cellalloc.h
1 /**
2  *
3  * ***** BEGIN GPL LICENSE BLOCK *****
4  *
5  * This program is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU General Public License
7  * as published by the Free Software Foundation; either version 2
8  * of the License, or (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software Foundation,
17  * Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
18  *
19  * The Original Code is Copyright (C) 2008 by Blender Foundation.
20  * All rights reserved.
21  *
22  * The Original Code is: all of this file.
23  *
24  * Contributor(s): none yet.
25  *
26  * ***** END GPL LICENSE BLOCK *****
27  */
28
29 /*
30         I wrote this as a hack so vgroups won't be quite so slow.  I really
31         should replace it with something else, but I need to spend some time
32         thinking as to what the proper solution would be (other then totally
33         rewriting vgroups, of course).
34
35         this is just a simple allocator that spawns mempools for unique size
36         requests.  hardly ideal, I know.  *something* like this may be
37         unavoidable, but it should certainly be possible to make it
38         non-global and internal to the vgroup code.
39
40         -joeedh sep. 17 2009
41 */
42
43 //BMESH_TODO: kill this library before merging with trunk
44 void *BLI_cellalloc_malloc(long size, char *tag);
45 void *BLI_cellalloc_calloc(long size, char *tag);
46 void BLI_cellalloc_free(void *mem);
47 void BLI_cellalloc_printleaks(void);
48 int BLI_cellalloc_get_totblock(void);
49 void BLI_cellalloc_destroy(void);