H5MMprivate.h

00001 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
00002  * Copyright by The HDF Group.                                               *
00003  * Copyright by the Board of Trustees of the University of Illinois.         *
00004  * All rights reserved.                                                      *
00005  *                                                                           *
00006  * This file is part of HDF5.  The full HDF5 copyright notice, including     *
00007  * terms governing use, modification, and redistribution, is contained in    *
00008  * the files COPYING and Copyright.html.  COPYING can be found at the root   *
00009  * of the source code distribution tree; Copyright.html can be found at the  *
00010  * root level of an installed copy of the electronic HDF5 document set and   *
00011  * is linked from the top-level documents page.  It can also be found at     *
00012  * http://hdfgroup.org/HDF5/doc/Copyright.html.  If you do not have          *
00013  * access to either file, you may request a copy from help@hdfgroup.org.     *
00014  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
00015 
00016 /*-------------------------------------------------------------------------
00017  *
00018  * Created:             H5MMprivate.h
00019  *                      Jul 10 1997
00020  *                      Robb Matzke <matzke@llnl.gov>
00021  *
00022  * Purpose:             Private header for memory management.
00023  *
00024  * Modifications:
00025  *
00026  *-------------------------------------------------------------------------
00027  */
00028 #ifndef _H5MMprivate_H
00029 #define _H5MMprivate_H
00030 
00031 #include "H5MMpublic.h"
00032 
00033 /* Private headers needed by this file */
00034 #include "H5private.h"
00035 
00036 #ifdef NDEBUG
00037 #define H5MM_malloc(Z)  HDmalloc(Z)
00038 #define H5MM_calloc(Z)  HDcalloc((size_t)1,Z)
00039 #endif /* NDEBUG */
00040 #define H5MM_free(Z)    HDfree(Z)
00041 
00042 /*
00043  * Library prototypes...
00044  */
00045 #ifndef NDEBUG
00046 H5_DLL void *H5MM_malloc(size_t size);
00047 H5_DLL void *H5MM_calloc(size_t size);
00048 #endif /* NDEBUG */
00049 H5_DLL void *H5MM_realloc(void *mem, size_t size);
00050 H5_DLL char *H5MM_xstrdup(const char *s);
00051 H5_DLL char *H5MM_strdup(const char *s);
00052 H5_DLL void *H5MM_xfree(void *mem);
00053 
00054 #endif