1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2<html> 3 4<head> 5<meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> 6<META http-equiv="Content-Style-Type" content="text/css"> 7<LINK rel="stylesheet" type="text/css" href="../CSS/revolution.css"> 8<title>NANDFreeBlocksAsync</title> 9</head> 10 11<body> 12 13<h1>NANDFreeBlocksAsync</h1> 14 15<h2>C Specification</h2> 16<dl><dd><pre><code> 17#include <revolution/nand.h> 18 19typedef void (*NANDCallback)( s32 result, NANDCommandBlock *block ); 20 21s32 NANDFreeBlocksAsync( u32 *bytes, u32 *inodes, NANDCallback cb, NANDCommandBlock *block ); 22</code></pre></dd></dl> 23 24<h2>Arguments</h2> 25<p> 26<TABLE border="1" > 27 <tr> 28<TD valign="top" width="120" bgcolor="#ffffe8"><CODE><STRONG><EM>bytes</EM></STRONG></CODE></TD> 29<TD width="520">A pointer to a u32-type variable that stores (in bytes) the file system's available space.</TD> 30 </tr> 31 <tr> 32<TD valign="top" width="120" bgcolor="#ffffe8"><CODE><STRONG><EM>inodes</EM></STRONG></CODE></TD> 33<TD width="520">A pointer to a u32-type variable that stores the number of free inodes in the file system.</TD> 34 </tr> 35 <tr> 36<TD valign="top" width="120" bgcolor="#ffffe8"><CODE><STRONG><EM>cb</EM></STRONG></CODE></TD> 37<TD width="520">Callback function to call when this function completes processing.</TD> 38 </tr> 39 <tr> 40<TD valign="top" width="120" bgcolor="#ffffe8"><CODE><STRONG><EM>block</EM></STRONG></CODE></TD> 41<TD width="520">Command block structure to be passed to the callback function.</TD> 42 </tr> 43</TABLE> 44</p> 45 46 47<h2>Return Values</h2> 48<p> 49Returns <CODE>NAND_RESULT_OK</CODE> when the request begins normally. 50<p> 51<code>NAND_RESULT_OK<br> NAND_RESULT_ALLOC_FAILED<br> NAND_RESULT_BUSY<br> NAND_RESULT_INVALID<br> NAND_RESULT_UNKNOWN<br> NAND_RESULT_FATAL_ERROR<br></code> 52</p> 53</p> 54 55<H2>Description</H2> 56<p> 57Obtains asynchronously the available space (in bytes) and the number of free i-nodes in the file system.<br>However, <font color="ff0000">you cannot use this function to determine whether new files or directories can be created</font> (to protect the free space reserved by the system). To determine whether new files and directories can be created, use <code>NANDCheck[Async]</code> or <code>NANDGetAvailableArea[Async]</code>. <code>NAND_RESULT_BUSY</code> is returned and this function call is denied when the queue for accepting requests inside the library is full. 58</p> 59 60<h2>See Also</h2> 61<p> 62<code><a href="./NANDFreeBlocks.html">NANDFreeBlocks</a></code>, <code><a href="./NANDCheck.html">NANDCheck</a></code>, <code><a href="./NANDCheckAsync.html">NANDCheckAsync</a></code>, <code><a href="./NANDGetAvailableArea.html">NANDGetAvailableArea</a></code>, <code><a href="./NANDGetAvailableAreaAsync.html">NANDGetAvailableAreaAsync</a></code> 63</p> 64 65<H2>Revision History</H2> 66<p> 672006/10/25 Expanded statement to include NANDGetAvailableArea[Async]. Added links to See Also.<br>2006/08/30 Added caution regarding the creation of new files and directories.<BR>2006/06/16 Initial version. <BR> 68</p> 69 70<hr> 71<P>CONFIDENTIAL</p> 72</BODY> 73</HTML> 74