MA_ALLOCATE_HEAP NAME MA_allocate_heap - allocate a heap block C SYNOPSIS #include "macdecls.h" Boolean MA_allocate_heap(datatype, nelem, name, memhandle) Integer datatype; /* read-only */ Integer nelem; /* read-only */ char *name; /* read-only */ Integer *memhandle; /* write-only */ FORTRAN SYNOPSIS #include "mafdecls.h" logical function MA_allocate_heap(datatype, nelem, name, memhandle) integer datatype integer nelem character*(*) name integer memhandle DESCRIPTION MA_allocate_heap() allocates a heap block large enough to hold nelem elements of type datatype and associates name with the block for debugging purposes. A handle for the block is returned in memhandle. DIAGNOSTICS block '%s', MA not yet initialized MA_init() must be called before this routine is called. block '%s', invalid datatype: %d datatype must be one of those listed in macdecls.h or mafdecls.h. block '%s', invalid nelem: %d nelem must be greater than zero. block '%s', not enough space to allocate %d bytes Recovery may be attempted by deallocating unneeded blocks and resubmitting the request, or the application may be rewritten to request more memory initially in the call to MA_init(). RETURN VALUE C: MA_TRUE upon success, MA_FALSE upon failure. FORTRAN: .true. upon success, .false. upon failure. SEE ALSO MA(3), MA_alloc_get(3), MA_free_heap(3), MA_get_index(3), MA_get_pointer(3), MA_inquire_avail(3), MA_inquire_heap(3) AUTHOR Gregory S. Thomas, Pacific Northwest Laboratory