NinjaUtil Library - テクスチャ関数

nuTexFreadReq

ファイルの即時復帰バイトリード

書式

Sint32 nuTexFreadReq(buf,size)
void* buf
Sint32 size

引数

buf   リード先
size   サイズ

戻り値

 1   リード終了
 0   リード中
−1   リード失敗

解説

nuTexFopen関数でオープンしたファイルを即時復帰でバイトリードします。

●バイトリードの内部基本動作

  1. ファイルオープンのとき、ファイルバッファ(1セクタ、2kバイト)にロードする。
  2. nuTexFread関数で指定されたサイズがファイルバッファにあるもので足りる場合ファイルバッファからコピーする。
指定されたサイズでは足りない場合はファイルバッファにある分をすべてリード先にコピーし、残りのバイト数からセクタ数を計算し、計算したセクタ数マイナス1セクタをユーザー指定のリード先に続けてリードする。 残りのバイトは、ファイルバッファに一旦1セクタ分リードした後続きの部分をリード先にコピーする。


用例

	Sint32 ret;
	
	ret = nuTexFreadReq(buf,size);
	switch(ret){
	case 1:
		/* ロード終了 */
		Mode = NEXT;
		break;
	case 0:
		/* ロード中 */
		break;
	case -1:
		/* ロードエラー*/
		break;
	}


備考

ファイルバッファからリード先へのコピーが入りますので遅い場合があります。 メモリに余裕がある場合や、バイトリードが必要ない場合は、この関数は使用しないでください。


nuTexFreadReq
COPYRIGHT © SEGA ENTERPRISES, LTD., 1998-2000