00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef MMALLOC_H
00013 #define MMALLOC_H 1
00014
00015
00016
00017
00018
00019 #include "mmconfig.h"
00020
00021 #ifdef WIN32
00022 # include <windows.h>
00023 #endif
00024
00025 #ifdef R__HAVE_STDDEF_H
00026 # include <stddef.h>
00027 #endif
00028
00029 #define PTR void *
00030 #define PARAMS(paramlist) paramlist
00031
00032 #ifdef WIN32
00033
00034 extern struct mstats mmstats PARAMS ((PTR));
00035 #endif
00036
00037 #ifdef __cplusplus
00038 extern "C" {
00039 #endif
00040
00041
00042
00043 extern PTR mmalloc PARAMS ((PTR, size_t));
00044
00045
00046
00047
00048 extern PTR mrealloc PARAMS ((PTR, PTR, size_t));
00049
00050
00051
00052 extern PTR mcalloc PARAMS ((PTR, size_t, size_t));
00053
00054
00055
00056 extern void mfree PARAMS ((PTR, PTR));
00057
00058
00059
00060 extern PTR mmemalign PARAMS ((PTR, size_t, size_t));
00061
00062
00063
00064 extern PTR mvalloc PARAMS ((PTR, size_t));
00065
00066
00067
00068 extern int mmcheck PARAMS ((PTR, void (*) (void)));
00069
00070
00071 #ifndef WIN32
00072 extern struct mstats mmstats PARAMS ((PTR));
00073 #endif
00074
00075 #ifndef WIN32
00076 extern PTR mmalloc_attach PARAMS ((int, PTR, int));
00077 #else
00078 extern PTR mmalloc_attach PARAMS ((HANDLE, PTR, int));
00079 #endif
00080
00081 extern PTR mmalloc_detach PARAMS ((PTR));
00082
00083 extern int mmalloc_update_mapping PARAMS ((PTR));
00084
00085 extern int mmalloc_setkey PARAMS ((PTR, int, PTR));
00086
00087 extern PTR mmalloc_getkey PARAMS ((PTR, int));
00088
00089 extern int mmtrace PARAMS ((void));
00090
00091 #ifdef __cplusplus
00092 }
00093 #endif
00094
00095 #endif