1 /* Copyright (c) 2003-2005, 2007 MySQL AB
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation; version 2 of the License.
7 This program is distributed in the hope that it will be useful,
8 but WITHOUT ANY WARRANTY; without even the implied warranty of
9 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 GNU General Public License for more details.
12 You should have received a copy of the GNU General Public License
13 along with this program; if not, write to the Free Software
14 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
19 #include <ndb_global.h>
28 * Create and initalise internal data structures for Ndb
30 void NdbMem_Create(void);
35 * Destroy all memory allocated by NdbMem
37 void NdbMem_Destroy(void);
41 * Allocate size of memory
42 * @parameter size - size in bytes of memory to allocate
43 * @returns - pointer to memory if succesful otherwise NULL
45 void* NdbMem_Allocate(size_t size
);
48 * NdbMem_AllocateAlign
49 * Allocate size of memory
50 * @parameter size - size in bytes of memory to allocate
51 * @paramter alignment - byte boundary to align the data at
52 * @returns - pointer to memory if succesful otherwise NULL
54 void* NdbMem_AllocateAlign(size_t size
, size_t alignment
);
59 * Free the memory that ptr points to
60 * @parameter ptr - pointer to the memory to free
62 void NdbMem_Free(void* ptr
);
66 * Locks virtual memory in main memory
68 int NdbMem_MemLockAll(int);
72 * Unlocks virtual memory
74 int NdbMem_MemUnlockAll(void);