blob: 6101449b5d46b0e9a3b920d8a79ba12b62a3ae1b [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<meta http-equiv="Content-Style-Type" content="text/css">
<link rel="up" title="FatFs" href="../00index_j.html">
<link rel="stylesheet" href="../css_j.css" type="text/css" media="screen" title="ELM Default">
<title>FatFs - f_forward</title>
</head>
<body>
<div class="para">
<h2>f_forward</h2>
<p>ƒtƒ@ƒCƒ‹‚©‚çƒf[ƒ^‚ð“ǂݏo‚µA‘—MƒXƒgƒŠ[ƒ€‚É’¼Ú“]‘—‚µ‚Ü‚·B</p>
<pre>
FRESULT f_forward (
FIL* <em>FileObject</em>, /* ƒtƒ@ƒCƒ‹EƒIƒuƒWƒFƒNƒg\‘¢‘Ì */
UINT (*<em>Func</em>)(const BYTE*,UINT), /* ƒf[ƒ^“]‘—ŠÖ” */
UINT <em>ByteToFwd</em>, /* “]‘—‚·‚éƒoƒCƒg” */
UINT* <em>ByteFwd</em> /* “]‘—‚³‚ꂽƒoƒCƒg” */
);
</pre>
</div>
<div class="para">
<h4>ˆø”</h4>
<dl class="par">
<dt>FileObject</dt>
<dd>ƒtƒ@ƒCƒ‹EƒIƒuƒWƒFƒNƒg\‘¢‘̂ւ̃|ƒCƒ“ƒ^‚ðŽw’肵‚Ü‚·B</dd>
<dt>Func</dt>
<dd>ƒf[ƒ^‚ð“n‚·ƒ†[ƒU’è‹`ŠÖ”‚ւ̃|ƒCƒ“ƒ^‚ðŽw’肵‚Ü‚·B‚±‚̊֐”‚ÌŽd—l‚̓Tƒ“ƒvƒ‹‚ðŽQÆ‚µ‚Ä‚­‚¾‚³‚¢B</dd>
<dt>ByteToRead</dt>
<dd>“]‘—‚·‚éƒoƒCƒg”(0`UINT‚̍őå’l)‚ðŽw’肵‚Ü‚·B</dd>
<dt>ByteRead</dt>
<dd>ŽÀÛ‚É“]‘—‚³‚ꂽƒoƒCƒg”‚ðŠi”[‚·‚é•Ï”‚ðŽw‚·ƒ|ƒCƒ“ƒ^‚ðŽw’肵‚Ü‚·B</dd>
</dl>
</div>
<div class="para">
<h4>–ß‚è’l</h4>
<dl class="ret">
<dt>FR_OK (0)</dt>
<dd>³íI—¹B</dd>
<dt>FR_DENIED</dt>
<dd>”ñ“ǂݍž‚݃‚[ƒh‚ÅŠJ‚¢‚½ƒtƒ@ƒCƒ‹‚©‚ç“ǂݍž‚à‚¤‚Æ‚µ‚½B</dd>
<dt>FR_DISK_ERR</dt>
<dd>ƒfƒBƒXƒNEƒGƒ‰[‚É‚æ‚鎸”sB</dd>
<dt>FR_INT_ERR</dt>
<dd>•s³‚ÈFAT\‘¢‚Ü‚½‚Í“à•”ƒGƒ‰[‚É‚æ‚鎸”sB</dd>
<dt>FR_NOT_READY</dt>
<dd>ƒƒfƒBƒA‚ªƒZƒbƒg‚³‚ê‚Ä‚¢‚È‚¢‚ȂǁA•¨—ƒhƒ‰ƒCƒu‚ª“®ì•s”\ó‘ԁB</dd>
<dt>FR_INVALID_OBJECT</dt>
<dd>–³Œø‚ȃtƒ@ƒCƒ‹EƒIƒuƒWƒFƒNƒgB</dd>
</dl>
</div>
<div class="para">
<h4>‰ðà</h4>
<p>ƒtƒ@ƒCƒ‹‚̃f[ƒ^‚ðƒoƒbƒtƒ@‚ɓǂݏo‚³‚¸‚É‘—MƒXƒgƒŠ[ƒ€‚É’¼Ú“]‘—‚µ‚Ü‚·BƒAƒvƒŠƒP[ƒVƒ‡ƒ“‘¤‚Ńf[ƒ^Eƒoƒbƒtƒ@‚ð•K—v‚Æ‚µ‚È‚¢‚̂ŁAƒƒ‚ƒŠ‚ÌŒÀ‚ç‚ꂽŠÂ‹«‚Å—LŒø‚Å‚·B“]‘—ŠJŽnˆÊ’u‚́AŒ»Ý‚̃tƒ@ƒCƒ‹R/Wƒ|ƒCƒ“ƒ^‚©‚ç‚É‚È‚è‚Ü‚·Bƒtƒ@ƒCƒ‹R/Wƒ|ƒCƒ“ƒ^‚Í“]‘—‚³‚ꂽƒoƒCƒg”‚¾‚¯i‚Ý‚Ü‚·BŽw’肳‚ꂽƒoƒCƒg”‚Ì“]‘—’†‚Ƀtƒ@ƒCƒ‹‚̏I’[‚É’B‚µ‚½ê‡‚â‘—MƒXƒgƒŠ[ƒ€‚ªƒrƒW[‚É‚È‚Á‚½ê‡A<tt>*ByteFwd</tt>‚Í<tt>ByteToFwd</tt>‚æ‚è‚à¬‚³‚­‚È‚è‚Ü‚·B</p>
</div>
<div class="para">
<h4>‘Ήžî•ñ</h4>
<p><tt>_USE_FORWARD == 1</tt>‚ŁAŠŽ‚Â<tt>_FS_TINY == 1</tt>‚Ì‚Æ‚«‚ÉŽg—p‰Â”\‚Å‚·B</p>
</div>
<div class="para">
<h4>Žg—p—áiƒI[ƒfƒBƒIÄ¶j</h4>
<pre>
/*-----------------------------------------------------------------------*/
/* f_forwardŠÖ”‚©‚çŒÄ‚΂ê‚éƒf[ƒ^‘—MŠÖ”‚Ì—á */
/*-----------------------------------------------------------------------*/
UINT out_stream ( /* –ß‚è’l: “]‘—‚³‚ꂽƒoƒCƒg”‚Ü‚½‚̓XƒgƒŠ[ƒ€‚̏ó‘Ô */
const BYTE *p, /* “]‘—‚·‚éƒf[ƒ^‚ðŽw‚·ƒ|ƒCƒ“ƒ^ */
UINT btf /* &gt;0: “]‘—‚ðs‚¤(ƒoƒCƒg”). 0: ƒXƒgƒŠ[ƒ€‚̏ó‘Ԃ𒲂ׂé */
)
{
UINT cnt = 0;
if (btf == 0) { /* ƒZƒ“ƒX—v‹ */
/* ƒXƒgƒŠ[ƒ€‚̏ó‘Ô‚ð•Ô‚· (0: ƒrƒW[, 1: ƒŒƒfƒB) */
/* ˆê’UAƒŒƒfƒB‚ð•Ô‚µ‚½‚çA‘±‚­“]‘——v‹‚ŏ­‚È‚­‚Æ‚à1ƒoƒCƒg‚Í */
/* “]‘—‚³‚ê‚È‚¢‚Æ f_forwardŠÖ”‚Í FR_RW_ERROR ‚Æ‚È‚éB */
if (FIFO_READY) cnt = 1;
}
else { /* “]‘——v‹ */
do { /* ‘S‚ẴoƒCƒg‚ð“]‘—‚·‚é‚©AƒXƒgƒŠ[ƒ€‚ªƒrƒW[‚É‚È‚é‚Ü‚ÅŒJ‚è•Ô‚· */
FIFO_PORT = *p++;
cnt++;
} while (cnt &lt; btf &amp;&amp; FIFO_READY);
}
return cnt;
}
/*-----------------------------------------------------------------------*/
/* f_forwardŠÖ”‚ÌŽg—p—á */
/*-----------------------------------------------------------------------*/
FRESULT play_file (
char *fn /* Ä¶‚·‚éƒI[ƒfƒBƒIEƒtƒ@ƒCƒ‹–¼‚ðŽw‚·ƒ|ƒCƒ“ƒ^ */
)
{
FRESULT rc;
FIL fil;
UINT dmy;
/* ƒtƒ@ƒCƒ‹‚ð“ǂݏo‚µƒ‚[ƒh‚ÅŠJ‚­ */
rc = f_open(&amp;fil, fn, FA_READ);
/* ‘S‚Ẵf[ƒ^‚ª“]‘—‚³‚ê‚é‚©ƒGƒ‰[‚ª”­¶‚·‚é‚Ü‚Å‘±‚¯‚é */
while (rc == FR_OK &amp;&amp; fil.fptr &lt; fil.fsize) {
/* ‚Ù‚©‚̏ˆ—... */
/* ’èŠú“I‚Ü‚½‚Í—v‹‚ɉž‚¶‚ăf[ƒ^‚ðƒXƒgƒŠ[ƒ€‚É‘—o‚·‚é */
rc = f_forward(&amp;fil, out_stream, 1000, &amp;dmy);
}
return rc; /* FR_OK: ³íI—¹, ‚Ù‚©:ˆÙíI—¹ */
}
</pre>
</div>
<div class="para">
<h4>ŽQÆ</h4>
<p><tt><a href="open.html">f_open</a>, <a href="gets.html">fgets</a>, <a href="write.html">f_write</a>, <a href="close.html">f_close</a>, <a href="sfile.html">FIL</a></tt></p>
</div>
<p class="foot"><a href="../00index_j.html">–ß‚é</a></p>
</body>
</html>