nuaustlheap.c 2.49 KB
/*======================================================================*/
/*		NuSYS							*/
/*		nuaustlheap.c						*/
/*									*/
/*		Copyright (C) 1999, NINTENDO Co,Ltd.			*/
/*									*/
/*======================================================================*/
/* $Id: nuaustlheap.c,v 1.1.1.1 2002/10/30 02:07:09 blythe Exp $		*/
/*======================================================================*/
#include <nusys.h>
#include <nualstl.h>
#include "lib_memory.h"		/* libmusのソースからコピーしてください*/

/*----------------------------------------------------------------------*/
/*      nuAuStlHeapAlloc - メモリの確保                                	*/
/*                                                                      */
/*      オーディオヒープ領域の確保。                                    */
/*                                                                      */
/*      IN:     length                                                  */
/*      RET:    確保したヒープのポインタ                                */
/*----------------------------------------------------------------------*/
void* nuAuStlHeapAlloc(s32 length)
{
    return __MusIntMemMalloc(length);
}

/*----------------------------------------------------------------------*/
/*      nuAuStlHeapGetFree - ヒープの残りサイズの取得                  	*/
/*                                                                      */
/*      オーディオヒープ領域の残り領域のサイズを取得します。            */
/*                                                                      */
/*      IN:     無し                                                    */
/*      RET:    ヒープ残りサイズ	                                */
/*----------------------------------------------------------------------*/
s32 nuAuStlHeapGetFree(void)
{
    ALHeap* heap;
    heap = __MusIntMemGetHeapAddr();

    return(heap->len - nuAuStlHeapGetUsed());
}

/*----------------------------------------------------------------------*/
/*      nuAuStlHeapGetUsed - ヒープの使用サイズの取得			*/
/*                                                                      */
/*      オーディオヒープ領域の使用サイズを取得します。                  */
/*                                                                      */
/*      IN:     length                                                  */
/*      RET:    使用したヒープのサイズ					*/
/*----------------------------------------------------------------------*/
s32 nuAuStlHeapGetUsed(void)
{
    return(__MusIntMemRemaining());
}