Sint32 nuTexFreadReq(buf,size)
void* buf
Sint32 size
buf リード先 size サイズ
1 リード終了 0 リード中 −1 リード失敗
nuTexFopen関数でオープンしたファイルを即時復帰でバイトリードします。
●バイトリードの内部基本動作
指定されたサイズでは足りない場合はファイルバッファにある分をすべてリード先にコピーし、残りのバイト数からセクタ数を計算し、計算したセクタ数マイナス1セクタをユーザー指定のリード先に続けてリードする。 残りのバイトは、ファイルバッファに一旦1セクタ分リードした後続きの部分をリード先にコピーする。
- ファイルオープンのとき、ファイルバッファ(1セクタ、2kバイト)にロードする。
- nuTexFread関数で指定されたサイズがファイルバッファにあるもので足りる場合ファイルバッファからコピーする。
Sint32 ret; ret = nuTexFreadReq(buf,size); switch(ret){ case 1: /* ロード終了 */ Mode = NEXT; break; case 0: /* ロード中 */ break; case -1: /* ロードエラー*/ break; }
ファイルバッファからリード先へのコピーが入りますので遅い場合があります。 メモリに余裕がある場合や、バイトリードが必要ない場合は、この関数は使用しないでください。