You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
MicroDexed/third-party/SdFs/doc/html/class_sdio_card.html

1025 lines
45 KiB

<!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"/>
<meta name="generator" content="Doxygen 1.8.10"/>
<title>SdFs: SdioCard Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">SdFs
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.10 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="class_sdio_card-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">SdioCard Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Raw SDIO access to SD and SDHC flash memory cards.
<a href="class_sdio_card.html#details">More...</a></p>
<p><code>#include &lt;SdioCard.h&gt;</code></p>
<div class="dynheader">
Inheritance diagram for SdioCard:</div>
<div class="dyncontent">
<div class="center"><img src="class_sdio_card__inherit__graph.png" border="0" usemap="#_sdio_card_inherit__map" alt="Inheritance graph"/></div>
<map name="_sdio_card_inherit__map" id="_sdio_card_inherit__map">
<area shape="rect" id="node2" href="class_sd_card_interface.html" title="Abstract interface for an SD card. " alt="" coords="19,80,134,107"/>
<area shape="rect" id="node3" href="class_block_device_interface.html" title="BlockDeviceInterface class. " alt="" coords="5,5,148,32"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for SdioCard:</div>
<div class="dyncontent">
<div class="center"><img src="class_sdio_card__coll__graph.png" border="0" usemap="#_sdio_card_coll__map" alt="Collaboration graph"/></div>
<map name="_sdio_card_coll__map" id="_sdio_card_coll__map">
<area shape="rect" id="node2" href="class_sd_card_interface.html" title="Abstract interface for an SD card. " alt="" coords="19,80,134,107"/>
<area shape="rect" id="node3" href="class_block_device_interface.html" title="BlockDeviceInterface class. " alt="" coords="5,5,148,32"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:afbb5ab075dfd16ceebfcba5a20e70434"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#afbb5ab075dfd16ceebfcba5a20e70434">begin</a> (<a class="el" href="class_sdio_config.html">SdioConfig</a> sdioConfig)</td></tr>
<tr class="separator:afbb5ab075dfd16ceebfcba5a20e70434"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef8e287f0e2033d4afe5e7051c293334"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#aef8e287f0e2033d4afe5e7051c293334">end</a> ()</td></tr>
<tr class="separator:aef8e287f0e2033d4afe5e7051c293334"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a03b1cdcf988acbdee91bfa8974be50f9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a03b1cdcf988acbdee91bfa8974be50f9">erase</a> (uint32_t firstSector, uint32_t lastSector)</td></tr>
<tr class="separator:a03b1cdcf988acbdee91bfa8974be50f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f814d8daca6304d090c1b104f2d761a"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a3f814d8daca6304d090c1b104f2d761a">errorCode</a> () const </td></tr>
<tr class="separator:a3f814d8daca6304d090c1b104f2d761a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a543ef07de7522ddb2b56f49540176ff3"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a543ef07de7522ddb2b56f49540176ff3">errorData</a> () const </td></tr>
<tr class="separator:a543ef07de7522ddb2b56f49540176ff3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af8755b1104e76b5553d5009be39f9df6"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#af8755b1104e76b5553d5009be39f9df6">errorLine</a> () const </td></tr>
<tr class="separator:af8755b1104e76b5553d5009be39f9df6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a560bdfc96932d073c2b0610600560f78"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a560bdfc96932d073c2b0610600560f78">isBusy</a> ()</td></tr>
<tr class="separator:a560bdfc96932d073c2b0610600560f78"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3532a1a4b8a43a51ed9b5853186203cb"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a3532a1a4b8a43a51ed9b5853186203cb">kHzSdClk</a> ()</td></tr>
<tr class="separator:a3532a1a4b8a43a51ed9b5853186203cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2490b07ee400aaf799ea5c37052041bf"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a2490b07ee400aaf799ea5c37052041bf">readCID</a> (<a class="el" href="struct_c_i_d.html">cid_t</a> *cid)</td></tr>
<tr class="separator:a2490b07ee400aaf799ea5c37052041bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72bbb4fda29fb6313981a63ea2f43d5f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a72bbb4fda29fb6313981a63ea2f43d5f">readCSD</a> (csd_t *csd)</td></tr>
<tr class="separator:a72bbb4fda29fb6313981a63ea2f43d5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9dc1cd99d0136e514faaecf56a6318d2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a9dc1cd99d0136e514faaecf56a6318d2">readData</a> (uint8_t *dst)</td></tr>
<tr class="separator:a9dc1cd99d0136e514faaecf56a6318d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adc583f7a27f57ce55ce474b1379b9303"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#adc583f7a27f57ce55ce474b1379b9303">readOCR</a> (uint32_t *ocr)</td></tr>
<tr class="separator:adc583f7a27f57ce55ce474b1379b9303"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77ae4fbe24bb04b74af5d388d4139dde"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a77ae4fbe24bb04b74af5d388d4139dde">readSector</a> (uint32_t sector, uint8_t *dst)</td></tr>
<tr class="separator:a77ae4fbe24bb04b74af5d388d4139dde"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ed4229446a5a2fe815d460b027243b9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a1ed4229446a5a2fe815d460b027243b9">readSectors</a> (uint32_t sector, uint8_t *dst, size_t ns)</td></tr>
<tr class="separator:a1ed4229446a5a2fe815d460b027243b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9fde1fb0e6603e7140cac16395815df0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a9fde1fb0e6603e7140cac16395815df0">readStart</a> (uint32_t sector)</td></tr>
<tr class="separator:a9fde1fb0e6603e7140cac16395815df0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54732c9d38998ddd42b72b720e0ee54c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a54732c9d38998ddd42b72b720e0ee54c">readStart</a> (uint32_t sector, uint32_t count)</td></tr>
<tr class="separator:a54732c9d38998ddd42b72b720e0ee54c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5bd3f206d790149340783135d08eb701"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a5bd3f206d790149340783135d08eb701">readStop</a> ()</td></tr>
<tr class="separator:a5bd3f206d790149340783135d08eb701"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a49a502cf7b59dc559a6c75a3285e6c1a"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a49a502cf7b59dc559a6c75a3285e6c1a">sectorCount</a> ()</td></tr>
<tr class="separator:a49a502cf7b59dc559a6c75a3285e6c1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58880a055e58410f8b22658b88622f63"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a58880a055e58410f8b22658b88622f63">status</a> ()</td></tr>
<tr class="separator:a58880a055e58410f8b22658b88622f63"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1201ec7a6fa91b73a1daa584a1b055f7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a1201ec7a6fa91b73a1daa584a1b055f7">syncDevice</a> ()</td></tr>
<tr class="separator:a1201ec7a6fa91b73a1daa584a1b055f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7382c7c6c92b2c9aff596065cd9b0c1f"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a7382c7c6c92b2c9aff596065cd9b0c1f">type</a> () const </td></tr>
<tr class="separator:a7382c7c6c92b2c9aff596065cd9b0c1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8467e7ffafa45ff930b38a6f18e9547a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a8467e7ffafa45ff930b38a6f18e9547a">writeData</a> (const uint8_t *src)</td></tr>
<tr class="separator:a8467e7ffafa45ff930b38a6f18e9547a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a74919a168bac68028ce62222500cf238"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a74919a168bac68028ce62222500cf238">writeSector</a> (uint32_t sector, const uint8_t *src)</td></tr>
<tr class="separator:a74919a168bac68028ce62222500cf238"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a55e2fc82ef9ecf7272a94b565c50303b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a55e2fc82ef9ecf7272a94b565c50303b">writeSectors</a> (uint32_t sector, const uint8_t *src, size_t ns)</td></tr>
<tr class="separator:a55e2fc82ef9ecf7272a94b565c50303b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1edd70537e2d7fa556532790cf413b5c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a1edd70537e2d7fa556532790cf413b5c">writeStart</a> (uint32_t sector)</td></tr>
<tr class="separator:a1edd70537e2d7fa556532790cf413b5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a82fe097fdbae26b3c8f92f215499cdf3"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#a82fe097fdbae26b3c8f92f215499cdf3">writeStart</a> (uint32_t sector, uint32_t count)</td></tr>
<tr class="separator:a82fe097fdbae26b3c8f92f215499cdf3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb560c2ea1f30c646b96f02e728b0fe1"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sdio_card.html#acb560c2ea1f30c646b96f02e728b0fe1">writeStop</a> ()</td></tr>
<tr class="separator:acb560c2ea1f30c646b96f02e728b0fe1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Raw SDIO access to SD and SDHC flash memory cards. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="afbb5ab075dfd16ceebfcba5a20e70434"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool SdioCard::begin </td>
<td>(</td>
<td class="paramtype"><a class="el" href="class_sdio_config.html">SdioConfig</a>&#160;</td>
<td class="paramname"><em>sdioConfig</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Initialize the SD card. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">sdioConfig</td><td>SDIO card configuration. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true for success else false. </dd></dl>
</div>
</div>
<a class="anchor" id="aef8e287f0e2033d4afe5e7051c293334"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool SdioCard::end </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Disable an SDIO card. </p><dl class="section return"><dt>Returns</dt><dd>false - not implemented. </dd></dl>
</div>
</div>
<a class="anchor" id="a03b1cdcf988acbdee91bfa8974be50f9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool SdioCard::erase </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>firstSector</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>lastSector</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Erase a range of sectors.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">firstSector</td><td>The address of the first sector in the range. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">lastSector</td><td>The address of the last sector in the range.</td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>This function requests the SD card to do a flash erase for a range of sectors. The data on the card after an erase operation is either 0 or 1, depends on the card vendor. The card must support single sector erase.</dd></dl>
<dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
<p>Implements <a class="el" href="class_sd_card_interface.html#a6a57c5bced670759b7c278c7a5988fd1">SdCardInterface</a>.</p>
</div>
</div>
<a class="anchor" id="a3f814d8daca6304d090c1b104f2d761a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint8_t SdioCard::errorCode </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>code for the last error. See SdCardInfo.h for a list of error codes. </dd></dl>
<p>Implements <a class="el" href="class_sd_card_interface.html#a657b3d5b26695f830b86b85b3841bdb2">SdCardInterface</a>.</p>
</div>
</div>
<a class="anchor" id="a543ef07de7522ddb2b56f49540176ff3"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint32_t SdioCard::errorData </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>error data for last error. </dd></dl>
<p>Implements <a class="el" href="class_sd_card_interface.html#a508a9e008dfcfd5d2ca524d194d4d06f">SdCardInterface</a>.</p>
</div>
</div>
<a class="anchor" id="af8755b1104e76b5553d5009be39f9df6"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t SdioCard::errorLine </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>error line for last error. Tmp function for debug. </dd></dl>
</div>
</div>
<a class="anchor" id="a560bdfc96932d073c2b0610600560f78"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool SdioCard::isBusy </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Check for busy with CMD13.</p>
<dl class="section return"><dt>Returns</dt><dd>true if busy else false. </dd></dl>
<p>Implements <a class="el" href="class_sd_card_interface.html#a26c31b07a866469098d702fed54f51b2">SdCardInterface</a>.</p>
</div>
</div>
<a class="anchor" id="a3532a1a4b8a43a51ed9b5853186203cb"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t SdioCard::kHzSdClk </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the SD clock frequency in kHz. </dd></dl>
</div>
</div>
<a class="anchor" id="a2490b07ee400aaf799ea5c37052041bf"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool SdioCard::readCID </td>
<td>(</td>
<td class="paramtype"><a class="el" href="struct_c_i_d.html">cid_t</a> *&#160;</td>
<td class="paramname"><em>cid</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Read a card's <a class="el" href="struct_c_i_d.html" title="Card IDentification (CID) register. ">CID</a> register. The <a class="el" href="struct_c_i_d.html" title="Card IDentification (CID) register. ">CID</a> contains card identification information such as Manufacturer ID, Product name, Product serial number and Manufacturing date.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[out]</td><td class="paramname">cid</td><td>pointer to area for returned data.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
<p>Implements <a class="el" href="class_sd_card_interface.html#ab61ea0c742074271de0552c46be8ae51">SdCardInterface</a>.</p>
</div>
</div>
<a class="anchor" id="a72bbb4fda29fb6313981a63ea2f43d5f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool SdioCard::readCSD </td>
<td>(</td>
<td class="paramtype">csd_t *&#160;</td>
<td class="paramname"><em>csd</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Read a card's CSD register. The CSD contains Card-Specific Data that provides information regarding access to the card's contents.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[out]</td><td class="paramname">csd</td><td>pointer to area for returned data.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
<p>Implements <a class="el" href="class_sd_card_interface.html#a8aaf7a014423034652f2a1ded1aaa127">SdCardInterface</a>.</p>
</div>
</div>
<a class="anchor" id="a9dc1cd99d0136e514faaecf56a6318d2"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool SdioCard::readData </td>
<td>(</td>
<td class="paramtype">uint8_t *&#160;</td>
<td class="paramname"><em>dst</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Read one data sector in a multiple sector read sequence</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[out]</td><td class="paramname">dst</td><td>Pointer to the location for the data to be read.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
</div>
</div>
<a class="anchor" id="adc583f7a27f57ce55ce474b1379b9303"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool SdioCard::readOCR </td>
<td>(</td>
<td class="paramtype">uint32_t *&#160;</td>
<td class="paramname"><em>ocr</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Read OCR register.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[out]</td><td class="paramname">ocr</td><td>Value of OCR register. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true for success else false. </dd></dl>
<p>Implements <a class="el" href="class_sd_card_interface.html#abb2742e6e81d18552308519a0dfb72a6">SdCardInterface</a>.</p>
</div>
</div>
<a class="anchor" id="a77ae4fbe24bb04b74af5d388d4139dde"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool SdioCard::readSector </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>sector</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t *&#160;</td>
<td class="paramname"><em>dst</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Read a 512 byte sector from an SD card.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">sector</td><td>Logical sector to be read. </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">dst</td><td>Pointer to the location that will receive the data. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
<p>Implements <a class="el" href="class_block_device_interface.html#a537ffdf8645666ee60d9bee0d7e3d17e">BlockDeviceInterface</a>.</p>
</div>
</div>
<a class="anchor" id="a1ed4229446a5a2fe815d460b027243b9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool SdioCard::readSectors </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>sector</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t *&#160;</td>
<td class="paramname"><em>dst</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>ns</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Read multiple 512 byte sectors from an SD card.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">sector</td><td>Logical sector to be read. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">ns</td><td>Number of sectors to be read. </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">dst</td><td>Pointer to the location that will receive the data. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
<p>Implements <a class="el" href="class_block_device_interface.html#aeee2944296d4aaabd00ee7be90596c5c">BlockDeviceInterface</a>.</p>
</div>
</div>
<a class="anchor" id="a9fde1fb0e6603e7140cac16395815df0"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool SdioCard::readStart </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>sector</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Start a read multiple sectors sequence.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">sector</td><td>Address of first sector in sequence.</td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>This function is used with <a class="el" href="class_sdio_card.html#a9dc1cd99d0136e514faaecf56a6318d2">readData()</a> and <a class="el" href="class_sdio_card.html#a5bd3f206d790149340783135d08eb701">readStop()</a> for optimized multiple sector reads. SPI chipSelect must be low for the entire sequence.</dd></dl>
<dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
</div>
</div>
<a class="anchor" id="a54732c9d38998ddd42b72b720e0ee54c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool SdioCard::readStart </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>sector</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>count</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Start a read multiple sectors sequence.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">sector</td><td>Address of first sector in sequence. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">count</td><td>Maximum sector count. </td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>This function is used with <a class="el" href="class_sdio_card.html#a9dc1cd99d0136e514faaecf56a6318d2">readData()</a> and <a class="el" href="class_sdio_card.html#a5bd3f206d790149340783135d08eb701">readStop()</a> for optimized multiple sector reads. SPI chipSelect must be low for the entire sequence.</dd></dl>
<dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
</div>
</div>
<a class="anchor" id="a5bd3f206d790149340783135d08eb701"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool SdioCard::readStop </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>End a read multiple sectors sequence.</p>
<dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
</div>
</div>
<a class="anchor" id="a49a502cf7b59dc559a6c75a3285e6c1a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint32_t SdioCard::sectorCount </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Determine the size of an SD flash memory card.</p>
<dl class="section return"><dt>Returns</dt><dd>The number of 512 byte data sectors in the card or zero if an error occurs. </dd></dl>
<p>Implements <a class="el" href="class_sd_card_interface.html#a1a8c37709b578bffc556240f6f03a8da">SdCardInterface</a>.</p>
</div>
</div>
<a class="anchor" id="a58880a055e58410f8b22658b88622f63"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint32_t SdioCard::status </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>SDIO card status. </dd></dl>
<p>Reimplemented from <a class="el" href="class_sd_card_interface.html#a6315bf0d5852bc24563b7977f7c7e5b4">SdCardInterface</a>.</p>
</div>
</div>
<a class="anchor" id="a1201ec7a6fa91b73a1daa584a1b055f7"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool SdioCard::syncDevice </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>success if sync successful. Not for user apps. </dd></dl>
<p>Implements <a class="el" href="class_block_device_interface.html#a23e30999f1cc03da99e285cf180dbbb7">BlockDeviceInterface</a>.</p>
</div>
</div>
<a class="anchor" id="a7382c7c6c92b2c9aff596065cd9b0c1f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint8_t SdioCard::type </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Return the card type: SD V1, SD V2 or SDHC </p><dl class="section return"><dt>Returns</dt><dd>0 - SD V1, 1 - SD V2, or 3 - SDHC. </dd></dl>
<p>Implements <a class="el" href="class_sd_card_interface.html#ac39e9a76242086f9409f93c881adc079">SdCardInterface</a>.</p>
</div>
</div>
<a class="anchor" id="a8467e7ffafa45ff930b38a6f18e9547a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool SdioCard::writeData </td>
<td>(</td>
<td class="paramtype">const uint8_t *&#160;</td>
<td class="paramname"><em>src</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Write one data sector in a multiple sector write sequence. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">src</td><td>Pointer to the location of the data to be written. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
<p>Implements <a class="el" href="class_sd_card_interface.html#ad12a0053d3e832da694bd8d3d66adbc1">SdCardInterface</a>.</p>
</div>
</div>
<a class="anchor" id="a74919a168bac68028ce62222500cf238"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool SdioCard::writeSector </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>sector</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const uint8_t *&#160;</td>
<td class="paramname"><em>src</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Writes a 512 byte sector to an SD card.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">sector</td><td>Logical sector to be written. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">src</td><td>Pointer to the location of the data to be written. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
<p>Implements <a class="el" href="class_block_device_interface.html#a8a4be0a85c3771c705617fad98303e49">BlockDeviceInterface</a>.</p>
</div>
</div>
<a class="anchor" id="a55e2fc82ef9ecf7272a94b565c50303b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool SdioCard::writeSectors </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>sector</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const uint8_t *&#160;</td>
<td class="paramname"><em>src</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>ns</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Write multiple 512 byte sectors to an SD card.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">sector</td><td>Logical sector to be written. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">ns</td><td>Number of sectors to be written. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">src</td><td>Pointer to the location of the data to be written. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
<p>Implements <a class="el" href="class_block_device_interface.html#a5cb063692a65f092ccdfd14f8700b58a">BlockDeviceInterface</a>.</p>
</div>
</div>
<a class="anchor" id="a1edd70537e2d7fa556532790cf413b5c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool SdioCard::writeStart </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>sector</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Start a write multiple sectors sequence.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">sector</td><td>Address of first sector in sequence.</td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>This function is used with <a class="el" href="class_sdio_card.html#a8467e7ffafa45ff930b38a6f18e9547a">writeData()</a> and <a class="el" href="class_sdio_card.html#acb560c2ea1f30c646b96f02e728b0fe1">writeStop()</a> for optimized multiple sector writes.</dd></dl>
<dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
<p>Implements <a class="el" href="class_sd_card_interface.html#abf04f87ec5c49fe6d9e23c8ac4cf482d">SdCardInterface</a>.</p>
</div>
</div>
<a class="anchor" id="a82fe097fdbae26b3c8f92f215499cdf3"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool SdioCard::writeStart </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>sector</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>count</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Start a write multiple sectors sequence.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">sector</td><td>Address of first sector in sequence. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">count</td><td>Maximum sector count. </td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>This function is used with <a class="el" href="class_sdio_card.html#a8467e7ffafa45ff930b38a6f18e9547a">writeData()</a> and <a class="el" href="class_sdio_card.html#acb560c2ea1f30c646b96f02e728b0fe1">writeStop()</a> for optimized multiple sector writes.</dd></dl>
<dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
</div>
</div>
<a class="anchor" id="acb560c2ea1f30c646b96f02e728b0fe1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool SdioCard::writeStop </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>End a write multiple sectors sequence.</p>
<dl class="section return"><dt>Returns</dt><dd>The value true is returned for success and the value false is returned for failure. </dd></dl>
<p>Implements <a class="el" href="class_sd_card_interface.html#a2eac04896a05bd57730e96708934970f">SdCardInterface</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>ArduinoSdFs/libraries/SdFs/src/SdCard/SdioCard.h</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Sep 1 2017 03:20:54 for SdFs by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.10
</small></address>
</body>
</html>