ece312/final_project/sd_reader/doc/html/group__fat__dir.html

360 lines
19 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>sd-reader: FAT directory functions</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td style="padding-left: 0.5em;">
<div id="projectname">sd-reader
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- Generated by Doxygen 1.7.6.1 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
</div>
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">FAT directory functions</div> </div>
<div class="ingroups"><a class="el" href="group__fat.html">FAT support</a></div></div><!--header-->
<div class="contents">
<p>Functions for managing directories.
<a href="#details">More...</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="func-members"></a>
Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct fat_dir_struct *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__fat__dir.html#gac7a5b4ad0b972759a965e1afd5bbc87c">fat_open_dir</a> (struct fat_fs_struct *fs, const struct <a class="el" href="structfat__dir__entry__struct.html">fat_dir_entry_struct</a> *dir_entry)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Opens a directory. <a href="#gac7a5b4ad0b972759a965e1afd5bbc87c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__fat__dir.html#ga2fed74d916370428e3dcf278e7050111">fat_close_dir</a> (struct fat_dir_struct *dd)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Closes a directory descriptor. <a href="#ga2fed74d916370428e3dcf278e7050111"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__fat__dir.html#gab4bc79452dbf5ac2a2f3e1fccafd9534">fat_read_dir</a> (struct fat_dir_struct *dd, struct <a class="el" href="structfat__dir__entry__struct.html">fat_dir_entry_struct</a> *dir_entry)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads the next directory entry contained within a parent directory. <a href="#gab4bc79452dbf5ac2a2f3e1fccafd9534"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__fat__dir.html#ga2d74af47cb9fd44f7c974834f810225f">fat_reset_dir</a> (struct fat_dir_struct *dd)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Resets a directory handle. <a href="#ga2d74af47cb9fd44f7c974834f810225f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__fat__dir.html#gaff3b524066c9a937fae32771c80e7603">fat_create_dir</a> (struct fat_dir_struct *parent, const char *dir, struct <a class="el" href="structfat__dir__entry__struct.html">fat_dir_entry_struct</a> *dir_entry)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a directory. <a href="#gaff3b524066c9a937fae32771c80e7603"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__fat__dir.html#gac0b6889e84a48b2d69fd681e5ac2e772">fat_delete_dir</a> (struct fat_fs_struct *fs, struct <a class="el" href="structfat__dir__entry__struct.html">fat_dir_entry_struct</a> *dir_entry)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Deletes a directory. <a href="#gac0b6889e84a48b2d69fd681e5ac2e772"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__fat__dir.html#ga8c448f10b372823ce01b39fefb0679b9">fat_move_dir</a> (struct fat_fs_struct *fs, struct <a class="el" href="structfat__dir__entry__struct.html">fat_dir_entry_struct</a> *dir_entry, struct fat_dir_struct *parent_new, const char *dir_new)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Moves or renames a directory. <a href="#ga8c448f10b372823ce01b39fefb0679b9"></a><br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<p>Functions for managing directories. </p>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="ga2fed74d916370428e3dcf278e7050111"></a><!-- doxytag: member="fat.c::fat_close_dir" ref="ga2fed74d916370428e3dcf278e7050111" args="(struct fat_dir_struct *dd)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="group__fat.html#ga2fed74d916370428e3dcf278e7050111">fat_close_dir</a> </td>
<td>(</td>
<td class="paramtype">struct fat_dir_struct *&#160;</td>
<td class="paramname"><em>dd</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Closes a directory descriptor. </p>
<p>This function destroys a directory descriptor which was previously obtained by calling <a class="el" href="group__fat__dir.html#gac7a5b4ad0b972759a965e1afd5bbc87c" title="Opens a directory.">fat_open_dir()</a>. When this function returns, the given descriptor will be invalid.</p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dd</td><td>The directory descriptor to close. </td></tr>
</table>
</dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__fat.html#gac7a5b4ad0b972759a965e1afd5bbc87c" title="Opens a directory.">fat_open_dir</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gaff3b524066c9a937fae32771c80e7603"></a><!-- doxytag: member="fat.c::fat_create_dir" ref="gaff3b524066c9a937fae32771c80e7603" args="(struct fat_dir_struct *parent, const char *dir, struct fat_dir_entry_struct *dir_entry)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t <a class="el" href="group__fat.html#gaff3b524066c9a937fae32771c80e7603">fat_create_dir</a> </td>
<td>(</td>
<td class="paramtype">struct fat_dir_struct *&#160;</td>
<td class="paramname"><em>parent</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>dir</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">struct <a class="el" href="structfat__dir__entry__struct.html">fat_dir_entry_struct</a> *&#160;</td>
<td class="paramname"><em>dir_entry</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Creates a directory. </p>
<p>Creates a directory and obtains its directory entry. If the directory to create already exists, its directory entry will be returned within the dir_entry parameter.</p>
<dl class="note"><dt><b>Note:</b></dt><dd>The notes which apply to <a class="el" href="group__fat__file.html#ga9d17d09125359dfb440fc57eede40b4f" title="Creates a file.">fat_create_file()</a> also apply to this function.</dd></dl>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">parent</td><td>The handle of the parent directory of the new directory. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dir</td><td>The name of the directory to create. </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">dir_entry</td><td>The directory entry to fill for the new directory. </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on failure, 1 on success. </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__fat__dir.html#gac0b6889e84a48b2d69fd681e5ac2e772" title="Deletes a directory.">fat_delete_dir</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gac0b6889e84a48b2d69fd681e5ac2e772"></a><!-- doxytag: member="fat.c::fat_delete_dir" ref="gac0b6889e84a48b2d69fd681e5ac2e772" args="(struct fat_fs_struct *fs, struct fat_dir_entry_struct *dir_entry)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t <a class="el" href="group__fat__dir.html#gac0b6889e84a48b2d69fd681e5ac2e772">fat_delete_dir</a> </td>
<td>(</td>
<td class="paramtype">struct fat_fs_struct *&#160;</td>
<td class="paramname"><em>fs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">struct <a class="el" href="structfat__dir__entry__struct.html">fat_dir_entry_struct</a> *&#160;</td>
<td class="paramname"><em>dir_entry</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Deletes a directory. </p>
<p>This is just a synonym for <a class="el" href="group__fat__file.html#ga46055219b942eb8d57ffae9dc6447e7c" title="Deletes a file or directory.">fat_delete_file()</a>. If a directory is deleted without first deleting its subdirectories and files, disk space occupied by these files will get wasted as there is no chance to release it and mark it as free.</p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">fs</td><td>The filesystem on which to operate. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dir_entry</td><td>The directory entry of the directory to delete. </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on failure, 1 on success. </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__fat.html#gaff3b524066c9a937fae32771c80e7603" title="Creates a directory.">fat_create_dir</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga8c448f10b372823ce01b39fefb0679b9"></a><!-- doxytag: member="fat.c::fat_move_dir" ref="ga8c448f10b372823ce01b39fefb0679b9" args="(struct fat_fs_struct *fs, struct fat_dir_entry_struct *dir_entry, struct fat_dir_struct *parent_new, const char *dir_new)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t <a class="el" href="group__fat__dir.html#ga8c448f10b372823ce01b39fefb0679b9">fat_move_dir</a> </td>
<td>(</td>
<td class="paramtype">struct fat_fs_struct *&#160;</td>
<td class="paramname"><em>fs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">struct <a class="el" href="structfat__dir__entry__struct.html">fat_dir_entry_struct</a> *&#160;</td>
<td class="paramname"><em>dir_entry</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">struct fat_dir_struct *&#160;</td>
<td class="paramname"><em>parent_new</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>dir_new</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Moves or renames a directory. </p>
<p>This is just a synonym for <a class="el" href="group__fat__file.html#gaba4d2c80ccd8f1aebcecf7072dc37510" title="Moves or renames a file.">fat_move_file()</a>.</p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">fs</td><td>The filesystem on which to operate. </td></tr>
<tr><td class="paramdir">[in,out]</td><td class="paramname">dir_entry</td><td>The directory entry of the directory to move. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">parent_new</td><td>The handle of the new parent directory. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dir_new</td><td>The directory's new name. </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on failure, 1 on success. </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__fat.html#gaff3b524066c9a937fae32771c80e7603" title="Creates a directory.">fat_create_dir</a>, <a class="el" href="group__fat__dir.html#gac0b6889e84a48b2d69fd681e5ac2e772" title="Deletes a directory.">fat_delete_dir</a>, <a class="el" href="group__fat.html#gaba4d2c80ccd8f1aebcecf7072dc37510" title="Moves or renames a file.">fat_move_file</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gac7a5b4ad0b972759a965e1afd5bbc87c"></a><!-- doxytag: member="fat.c::fat_open_dir" ref="gac7a5b4ad0b972759a965e1afd5bbc87c" args="(struct fat_fs_struct *fs, const struct fat_dir_entry_struct *dir_entry)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct fat_dir_struct* <a class="el" href="group__fat.html#gac7a5b4ad0b972759a965e1afd5bbc87c">fat_open_dir</a> </td>
<td>(</td>
<td class="paramtype">struct fat_fs_struct *&#160;</td>
<td class="paramname"><em>fs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const struct <a class="el" href="structfat__dir__entry__struct.html">fat_dir_entry_struct</a> *&#160;</td>
<td class="paramname"><em>dir_entry</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td><code> [read]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Opens a directory. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">fs</td><td>The filesystem on which the directory to open resides. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dir_entry</td><td>The directory entry which stands for the directory to open. </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>An opaque directory descriptor on success, 0 on failure. </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__fat.html#ga2fed74d916370428e3dcf278e7050111" title="Closes a directory descriptor.">fat_close_dir</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gab4bc79452dbf5ac2a2f3e1fccafd9534"></a><!-- doxytag: member="fat.c::fat_read_dir" ref="gab4bc79452dbf5ac2a2f3e1fccafd9534" args="(struct fat_dir_struct *dd, struct fat_dir_entry_struct *dir_entry)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t <a class="el" href="group__fat.html#gab4bc79452dbf5ac2a2f3e1fccafd9534">fat_read_dir</a> </td>
<td>(</td>
<td class="paramtype">struct fat_dir_struct *&#160;</td>
<td class="paramname"><em>dd</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">struct <a class="el" href="structfat__dir__entry__struct.html">fat_dir_entry_struct</a> *&#160;</td>
<td class="paramname"><em>dir_entry</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Reads the next directory entry contained within a parent directory. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dd</td><td>The descriptor of the parent directory from which to read the entry. </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">dir_entry</td><td>Pointer to a buffer into which to write the directory entry information. </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on failure, 1 on success. </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__fat.html#ga2d74af47cb9fd44f7c974834f810225f" title="Resets a directory handle.">fat_reset_dir</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga2d74af47cb9fd44f7c974834f810225f"></a><!-- doxytag: member="fat.c::fat_reset_dir" ref="ga2d74af47cb9fd44f7c974834f810225f" args="(struct fat_dir_struct *dd)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t <a class="el" href="group__fat.html#ga2d74af47cb9fd44f7c974834f810225f">fat_reset_dir</a> </td>
<td>(</td>
<td class="paramtype">struct fat_dir_struct *&#160;</td>
<td class="paramname"><em>dd</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Resets a directory handle. </p>
<p>Resets the directory handle such that reading restarts with the first directory entry.</p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dd</td><td>The directory handle to reset. </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on failure, 1 on success. </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__fat.html#gab4bc79452dbf5ac2a2f3e1fccafd9534" title="Reads the next directory entry contained within a parent directory.">fat_read_dir</a> </dd></dl>
</div>
</div>
</div><!-- contents -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Jun 12 2012 20:06:45 for sd-reader by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.7.6.1
</small></address>
</body>
</html>