このサンプルは出来るだけマルチユニットのダウンロードを行うサンプルです.
ワークメモリに既に読み込まれているマルチユニットファイルをサウンドメモリにダウンロードするためのサンプルです.
処理の流れとしては
実際のコーディングを下記に提示します.なお,このサンプルは理解のしやすさを優先するためにエラーチェックをかなり省いています.
/********************************************************* * * Sound Library Sample * * ワークメモリにあるマルチユニットをダウンロードします. * *********************************************************/ #include <sd_sg.h> SDE_ERR MultiUnitDownload( Void *src_ptr) { SDE_ERR result = SDE_ERR_NOTHING; SDMEMBLK memblk = NULL; if ( ( result = sdMemBlkCreate( &memblk)) != SDE_ERR_NOTHING) { /* エラーが起こった */ goto exit; } /* 第二引数のブロックサイズはsdMultiUnitDownloadでは実際には使用しません */ if ( ( result = sdMemBlkSetPrm( memblk, src_ptr, 0, SDD_MEMBLK_SYNC_FUNC, NULL)) != SDE_ERR_NOTHING) { /* エラーが起こった */ goto exit; } /* ダウンロード */ if ( ( result = sdMultiUnitDownload( memblk)) != SDE_ERR_NOTHING) { /* エラーが起こった */ goto exit; } exit: if ( memblk != NULL) { result = sdMemBlkDestory( memblk); } return ( result); } /*EOF*/ |