mySQL 5.0.11 sources for tomato
[tomato.git] / release / src / router / mysql / storage / ndb / include / portlib / NdbMem.h
blobf4f7240b1f3f3eb70cea27731c777a1c04615e84
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 */
16 #ifndef NDB_MEM_H
17 #define NDB_MEM_H
19 #include <ndb_global.h>
21 #ifdef __cplusplus
22 extern "C" {
23 #endif
26 /**
27 * NdbMem_Create
28 * Create and initalise internal data structures for Ndb
30 void NdbMem_Create(void);
33 /**
34 * NdbMem_Destroy
35 * Destroy all memory allocated by NdbMem
37 void NdbMem_Destroy(void);
39 /**
40 * NdbMem_Allocate
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);
47 /**
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);
57 /**
58 * NdbMem_Free
59 * Free the memory that ptr points to
60 * @parameter ptr - pointer to the memory to free
62 void NdbMem_Free(void* ptr);
64 /**
65 * NdbMem_MemLockAll
66 * Locks virtual memory in main memory
68 int NdbMem_MemLockAll(int);
70 /**
71 * NdbMem_MemUnlockAll
72 * Unlocks virtual memory
74 int NdbMem_MemUnlockAll(void);
76 #ifdef __cplusplus
78 #endif
80 #endif