Sophie

Sophie

distrib > Mandriva > 2010.1 > i586 > by-pkgid > 4f5f2dc0f55b453456458df885792b0b > files > 111

ucommon-doc-5.0.4-1mdv2010.2.i586.rpm

<!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"/>
<title>ucommon: ucommon::fsys Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.6.3 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li><a href="classes.html"><span>Data&nbsp;Structure&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="a00208.html">ucommon</a>::<a class="el" href="a00052.html">fsys</a>
  </div>
</div>
<div class="contents">
<h1>ucommon::fsys Class Reference</h1><!-- doxytag: class="ucommon::fsys" -->
<p>A container for generic and o/s portable threadsafe file system functions.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="a00185_source.html">fsys.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for ucommon::fsys:</div>
<div class="dynsection">
<div class="center"><img src="a00385.png" border="0" usemap="#ucommon_1_1fsys_inherit__map" alt="Inheritance graph"/></div>
<map name="ucommon_1_1fsys_inherit__map" id="ucommon_1_1fsys_inherit__map">
<area shape="rect" id="node3" href="a00050.html" title="A generic file streaming class built from the buffer protocol." alt="" coords="5,80,157,107"/></map>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a8077a56ced2b26f2bcefa74dbacb4e90">access_t</a> { <br/>
&nbsp;&nbsp;<b>ACCESS_RDONLY</b>, 
<b>ACCESS_WRONLY</b>, 
<b>ACCESS_REWRITE</b>, 
<b>ACCESS_RDWR</b> =  ACCESS_REWRITE, 
<br/>
&nbsp;&nbsp;<b>ACCESS_APPEND</b>, 
<b>ACCESS_SHARED</b>, 
<b>ACCESS_DIRECTORY</b>, 
<b>ACCESS_STREAM</b>, 
<br/>
&nbsp;&nbsp;<b>ACCESS_RANDOM</b>
<br/>
 }</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><p>Enumerated file access modes. </p>
<br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afad81e541db45bd52f3c2d3ddde16f06"></a><!-- doxytag: member="ucommon::fsys::fileinfo_t" ref="afad81e541db45bd52f3c2d3ddde16f06" args="" -->
typedef struct stat&nbsp;</td><td class="memItemRight" valign="bottom"><b>fileinfo_t</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac1346469625016aaf46d9e18fa806927"></a><!-- doxytag: member="ucommon::fsys::offset_t" ref="ac1346469625016aaf46d9e18fa806927" args="" -->
typedef long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#ac1346469625016aaf46d9e18fa806927">offset_t</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">File offset type. <br/></td></tr>
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a57953f372602bece151b1728a87f6e3c">assign</a> (fd_t descriptor)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assign descriptor directly.  <a href="#a57953f372602bece151b1728a87f6e3c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5f98de42e6b96a6d49274876890cef8f"></a><!-- doxytag: member="ucommon::fsys::close" ref="a5f98de42e6b96a6d49274876890cef8f" args="(void)" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a5f98de42e6b96a6d49274876890cef8f">close</a> (void)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Close a fsys resource. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#af0e1b7f59483b9a78aea4ff99a85b2dc">create</a> (char *path, <a class="el" href="a00052.html#a8077a56ced2b26f2bcefa74dbacb4e90">access_t</a> access, unsigned mode)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Open a file descriptor directly.  <a href="#af0e1b7f59483b9a78aea4ff99a85b2dc"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a332b1d622b0d150679df32c1c7f45813">drop</a> (<a class="el" href="a00052.html#ac1346469625016aaf46d9e18fa806927">offset_t</a> size=0)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Drop cached data from start of file.  <a href="#a332b1d622b0d150679df32c1c7f45813"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a64d2dde2a77bcf501fada13a24b0f189">err</a> (void)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get last error.  <a href="#a64d2dde2a77bcf501fada13a24b0f189"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#ace024588e3e50c6f198e80900270b67c">fileinfo</a> (fileinfo_t *buffer)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get status of open descriptor.  <a href="#ace024588e3e50c6f198e80900270b67c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#aab0d7d6300d500cb099cd944092825b1">fsys</a> (char *path, <a class="el" href="a00052.html#a8077a56ced2b26f2bcefa74dbacb4e90">access_t</a> access, unsigned permission)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a fsys descriptor by creating a file.  <a href="#aab0d7d6300d500cb099cd944092825b1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a5b291bc094724c38d13b633c260211d0">fsys</a> (char *path, <a class="el" href="a00052.html#a8077a56ced2b26f2bcefa74dbacb4e90">access_t</a> access)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a fsys descriptor by opening an existing file or directory.  <a href="#a5b291bc094724c38d13b633c260211d0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#ade1c4a57295f0776d96add2ab7c41b31">fsys</a> (<a class="el" href="a00052.html">fsys</a> &amp;descriptor)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy (dup) an existing fsys descriptor.  <a href="#ade1c4a57295f0776d96add2ab7c41b31"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad610c74ff3f45e02711ee181d8c5b9ed"></a><!-- doxytag: member="ucommon::fsys::fsys" ref="ad610c74ff3f45e02711ee181d8c5b9ed" args="(fd_t handle)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#ad610c74ff3f45e02711ee181d8c5b9ed">fsys</a> (fd_t handle)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Contruct fsys from raw file handle. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aebae392e548efb729ad054eec0f6b0be"></a><!-- doxytag: member="ucommon::fsys::fsys" ref="aebae392e548efb729ad054eec0f6b0be" args="()" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#aebae392e548efb729ad054eec0f6b0be">fsys</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Construct an unattached fsys descriptor. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">fd_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a7d1aa162f6b5851b90459c1f9a7afb87">getHandle</a> (void)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the native system descriptor handle of the file descriptor.  <a href="#a7d1aa162f6b5851b90459c1f9a7afb87"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a6f7625861b517e87f898db6abcf81a95">istty</a> (void)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">See if current file stream is a tty device.  <a href="#a6f7625861b517e87f898db6abcf81a95"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a95f5f3549c1bfe5d1ee6377e0383c4ed">open</a> (char *path, <a class="el" href="a00052.html#a8077a56ced2b26f2bcefa74dbacb4e90">access_t</a> access)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Open a file or directory.  <a href="#a95f5f3549c1bfe5d1ee6377e0383c4ed"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a269ab395fe6fda9e52386d433cf71cbb">operator bool</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Test if file descriptor is open.  <a href="#a269ab395fe6fda9e52386d433cf71cbb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a37239ece4b4670d79425d2f3037e1920">operator fd_t</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the descriptor from the object by casting reference.  <a href="#a37239ece4b4670d79425d2f3037e1920"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a071ed559ea10c2e1706c401b2ec924f5">operator!</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Test if file descriptor is closed.  <a href="#a071ed559ea10c2e1706c401b2ec924f5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">fd_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a07fd84d9c32d58a1a084b5432b92a2a0">operator*</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the descriptor from the object by pointer reference.  <a href="#a07fd84d9c32d58a1a084b5432b92a2a0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#ae7b78533085f7398d710f4b49cdb144b">operator=</a> (fd_t descriptor)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assing file descriptor from system descriptor.  <a href="#ae7b78533085f7398d710f4b49cdb144b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a9d0f7cce5d100b9003b2698742b0205b">operator=</a> (<a class="el" href="a00052.html">fsys</a> &amp;descriptor)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assign file descriptor by duplicating another descriptor.  <a href="#a9d0f7cce5d100b9003b2698742b0205b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">ssize_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#aab71ef039e7534892f1cf1079f6946ee">read</a> (void *buffer, size_t count)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Read data from descriptor or scan directory.  <a href="#aab71ef039e7534892f1cf1079f6946ee"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">fd_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a729c086d4c8c0ef70b0a83a40eb74813">release</a> (void)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Release descriptor, do not close.  <a href="#a729c086d4c8c0ef70b0a83a40eb74813"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a0876e4cf31f06a406c9f196bcdbc0bb0">seek</a> (<a class="el" href="a00052.html#ac1346469625016aaf46d9e18fa806927">offset_t</a> offset)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the position of a file descriptor.  <a href="#a0876e4cf31f06a406c9f196bcdbc0bb0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#afd3c7859ab6f37aba59c5d90c4dd2dcd">set</a> (fd_t descriptor)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set with external descriptor.  <a href="#afd3c7859ab6f37aba59c5d90c4dd2dcd"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#af44354ced9a645a848d915c594f38e4c">sync</a> (void)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Commit changes to the filesystem.  <a href="#af44354ced9a645a848d915c594f38e4c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a17d1f69b6a6984dcd0b992fff6f65ec0">trunc</a> (<a class="el" href="a00052.html#ac1346469625016aaf46d9e18fa806927">offset_t</a> offset)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Truncate file to specified length.  <a href="#a17d1f69b6a6984dcd0b992fff6f65ec0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">ssize_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#acb4d6ea069d89ba1f1441242a3fd354d">write</a> (void *buffer, size_t count)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Write data to descriptor.  <a href="#acb4d6ea069d89ba1f1441242a3fd354d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad5fa03f9b3fb10cf8bc81400b7b046bc"></a><!-- doxytag: member="ucommon::fsys::~fsys" ref="ad5fa03f9b3fb10cf8bc81400b7b046bc" args="()" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#ad5fa03f9b3fb10cf8bc81400b7b046bc">~fsys</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Close and release a file descriptor. <br/></td></tr>
<tr><td colspan="2"><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a250b15840c34aed0130a702183b770aa">access</a> (char *path, unsigned mode)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Test path access.  <a href="#a250b15840c34aed0130a702183b770aa"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#add474e57af4b712054ffc9b1e0c19fef">assign</a> (<a class="el" href="a00052.html">fsys</a> &amp;object, fd_t descriptor)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assign a descriptor directly.  <a href="#add474e57af4b712054ffc9b1e0c19fef"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#af72db94278a75d73dac726cc41fec231">change</a> (char *path, unsigned mode)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Change file access mode.  <a href="#af72db94278a75d73dac726cc41fec231"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a97946b22ddb0e091ad5661b2cc91929a">changeDir</a> (char *path)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set directory prefix (chdir).  <a href="#a97946b22ddb0e091ad5661b2cc91929a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#aa7a235ac17b8a6e7cb24c375b8cb6348">close</a> (<a class="el" href="a00052.html">fsys</a> &amp;descriptor)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Close a file descriptor or directory directly.  <a href="#aa7a235ac17b8a6e7cb24c375b8cb6348"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#ad598aaa938b46e54d2a0a41acfe7a932">copy</a> (char *source, char *target, size_t size=1024)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy a file.  <a href="#ad598aaa938b46e54d2a0a41acfe7a932"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a42d9b7665beec9f61f5388d1a162780b">create</a> (<a class="el" href="a00052.html">fsys</a> &amp;object, char *path, <a class="el" href="a00052.html#a8077a56ced2b26f2bcefa74dbacb4e90">access_t</a> access, unsigned mode)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">create a file descriptor or directory directly.  <a href="#a42d9b7665beec9f61f5388d1a162780b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a1e3cf79d274dbb05f77d26be202cb8d7">createDir</a> (char *path, unsigned mode)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Simple direct method to create a directory.  <a href="#a1e3cf79d274dbb05f77d26be202cb8d7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a3c91015a55c118198cdff5e1ae6cdd5c">drop</a> (<a class="el" href="a00052.html">fsys</a> &amp;descriptor, <a class="el" href="a00052.html#ac1346469625016aaf46d9e18fa806927">offset_t</a> size)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Drop cached data from a file descriptor.  <a href="#a3c91015a55c118198cdff5e1ae6cdd5c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#ab4d022bc617221ca6b335926fadd4533">fileinfo</a> (char *path, fileinfo_t *buffer)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Stat a file.  <a href="#ab4d022bc617221ca6b335926fadd4533"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a4a74b773161f33bd6ed66c56df2d8d56">find</a> (<a class="el" href="a00052.html">fsys</a> &amp;module, char *symbol)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Find symbol in loaded module.  <a href="#a4a74b773161f33bd6ed66c56df2d8d56"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#af945b54d726912eb47b25bf0bf96f962">getPrefix</a> (char *path, size_t size)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get current directory prefix (pwd).  <a href="#af945b54d726912eb47b25bf0bf96f962"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#abf5f445b3c0bc68533b56b7e99fd333d">hardlink</a> (char *path, char *target)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a hard link.  <a href="#abf5f445b3c0bc68533b56b7e99fd333d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a16dfaacd01f9d0ebf94f99daa2d7b5a1"></a><!-- doxytag: member="ucommon::fsys::ischar" ref="a16dfaacd01f9d0ebf94f99daa2d7b5a1" args="(struct stat *inode)" -->
static bool&nbsp;</td><td class="memItemRight" valign="bottom"><b>ischar</b> (struct stat *inode)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a94e1058232ea2b0388b2233f3fcea361"></a><!-- doxytag: member="ucommon::fsys::isdev" ref="a94e1058232ea2b0388b2233f3fcea361" args="(struct stat *inode)" -->
static bool&nbsp;</td><td class="memItemRight" valign="bottom"><b>isdev</b> (struct stat *inode)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4291a03d674d2e07b6a3be71e588a914"></a><!-- doxytag: member="ucommon::fsys::isdir" ref="a4291a03d674d2e07b6a3be71e588a914" args="(struct stat *inode)" -->
static bool&nbsp;</td><td class="memItemRight" valign="bottom"><b>isdir</b> (struct stat *inode)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a51e7d624fd259e21b202f4a9d4485fcd">isdir</a> (char *path)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Test if path is a directory.  <a href="#a51e7d624fd259e21b202f4a9d4485fcd"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adf6c9151c820fa505b83bbcda46ecdc8"></a><!-- doxytag: member="ucommon::fsys::isdisk" ref="adf6c9151c820fa505b83bbcda46ecdc8" args="(struct stat *inode)" -->
static bool&nbsp;</td><td class="memItemRight" valign="bottom"><b>isdisk</b> (struct stat *inode)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae589323ffefa32c3626c0d1bb245bda2"></a><!-- doxytag: member="ucommon::fsys::isfile" ref="ae589323ffefa32c3626c0d1bb245bda2" args="(struct stat *inode)" -->
static bool&nbsp;</td><td class="memItemRight" valign="bottom"><b>isfile</b> (struct stat *inode)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#abb9260f43bea0e1c09f91a3099e50f1c">isfile</a> (char *path)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Test if path is a file.  <a href="#abb9260f43bea0e1c09f91a3099e50f1c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#ad516bcc52e6b37e0d1f5d86fa6756109">ishidden</a> (char *path)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Test if path is a hidden file.  <a href="#ad516bcc52e6b37e0d1f5d86fa6756109"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a11872776cfaf0dbb7c7a04522aac8d8a"></a><!-- doxytag: member="ucommon::fsys::islink" ref="a11872776cfaf0dbb7c7a04522aac8d8a" args="(struct stat *inode)" -->
static bool&nbsp;</td><td class="memItemRight" valign="bottom"><b>islink</b> (struct stat *inode)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a05fd11ba1dc068f9ea946ef069f09b56">islink</a> (char *path)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Test if path is a symlink.  <a href="#a05fd11ba1dc068f9ea946ef069f09b56"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af254c511ee5ebf6b1b34db773106a741"></a><!-- doxytag: member="ucommon::fsys::issys" ref="af254c511ee5ebf6b1b34db773106a741" args="(struct stat *inode)" -->
static bool&nbsp;</td><td class="memItemRight" valign="bottom"><b>issys</b> (struct stat *inode)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a5102510621099732ae2b3efdd36543fb">istty</a> (fd_t fd)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">See if the file handle is a tty device.  <a href="#a5102510621099732ae2b3efdd36543fb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#ac0c40e5634f35df3b6da75b5a1940b9d">link</a> (char *path, char *target)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a symbolic link.  <a href="#ac0c40e5634f35df3b6da75b5a1940b9d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#adbdb7fbafd09e38f16934ce8b0602e26">linkinfo</a> (char *path, char *buffer, size_t size)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Read a symbolic link to get it's target.  <a href="#adbdb7fbafd09e38f16934ce8b0602e26"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a94a2ca1523ef786babd950c096fdfec0">load</a> (<a class="el" href="a00052.html">fsys</a> &amp;module, char *path)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Load a plugin into memory.  <a href="#a94a2ca1523ef786babd950c096fdfec0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a46565ca081861af29eaf23deda2f1752">load</a> (char *path)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Load an unmaged plugin directly.  <a href="#a46565ca081861af29eaf23deda2f1752"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a882c1f41e0f6311b7a15f6b615a74ff3">open</a> (<a class="el" href="a00052.html">fsys</a> &amp;object, char *path, <a class="el" href="a00052.html#a8077a56ced2b26f2bcefa74dbacb4e90">access_t</a> access)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Open a file or directory.  <a href="#a882c1f41e0f6311b7a15f6b615a74ff3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static ssize_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#aa64d573956be5107945d7824fe73fd83">read</a> (<a class="el" href="a00052.html">fsys</a> &amp;descriptor, void *buffer, size_t count)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Read data from file descriptor or directory.  <a href="#aa64d573956be5107945d7824fe73fd83"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afc3100ed883b82b9610f97df1e2bc1f7"></a><!-- doxytag: member="ucommon::fsys::remapError" ref="afc3100ed883b82b9610f97df1e2bc1f7" args="(void)" -->
static int&nbsp;</td><td class="memItemRight" valign="bottom"><b>remapError</b> (void)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a3bd225bd1b0db7d94fcb9d2c1500dd47">remove</a> (char *path)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove a file.  <a href="#a3bd225bd1b0db7d94fcb9d2c1500dd47"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a46240853a5ddda459328fd2d504735c3">removeDir</a> (char *path)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Simple direct method to remove a directory.  <a href="#a46240853a5ddda459328fd2d504735c3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a16c80dadcc315394eee3cadf5aff9dbb">rename</a> (char *oldpath, char *newpath)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Rename a file.  <a href="#a16c80dadcc315394eee3cadf5aff9dbb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a0126e62848992422e58f882cd290f383">seek</a> (<a class="el" href="a00052.html">fsys</a> &amp;descriptor, <a class="el" href="a00052.html#ac1346469625016aaf46d9e18fa806927">offset_t</a> offset)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the position of a file descriptor.  <a href="#a0126e62848992422e58f882cd290f383"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a308f32aaf03de4805a6307abdca73433">unlink</a> (char *path)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove a symbolic link explicitly.  <a href="#a308f32aaf03de4805a6307abdca73433"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a3c39c5e63138d5443c98a0abf979f413">unload</a> (<a class="el" href="a00052.html">fsys</a> &amp;module)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">unload a specific plugin.  <a href="#a3c39c5e63138d5443c98a0abf979f413"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static ssize_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#abd09ce130e91417cc27af0cf1ff93ecd">write</a> (<a class="el" href="a00052.html">fsys</a> &amp;descriptor, void *buffer, size_t count)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">write data to file descriptor.  <a href="#abd09ce130e91417cc27af0cf1ff93ecd"></a><br/></td></tr>
<tr><td colspan="2"><h2>Static Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5d4dd8856ba149757838aa99b80dfa63"></a><!-- doxytag: member="ucommon::fsys::end" ref="a5d4dd8856ba149757838aa99b80dfa63" args="" -->
static <a class="el" href="a00052.html#ac1346469625016aaf46d9e18fa806927">offset_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00052.html#a5d4dd8856ba149757838aa99b80dfa63">end</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Used to mark "append" in set position operations. <br/></td></tr>
<tr><td colspan="2"><h2>Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a15462092f70fde1e66ba260d56c6b3ac"></a><!-- doxytag: member="ucommon::fsys::error" ref="a15462092f70fde1e66ba260d56c6b3ac" args="" -->
int&nbsp;</td><td class="memItemRight" valign="bottom"><b>error</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af5052b6fe35e9b2efdb451b8145f17b0"></a><!-- doxytag: member="ucommon::fsys::fd" ref="af5052b6fe35e9b2efdb451b8145f17b0" args="" -->
fd_t&nbsp;</td><td class="memItemRight" valign="bottom"><b>fd</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a572f9b0220948350cc1941599f89b91e"></a><!-- doxytag: member="ucommon::fsys::ptr" ref="a572f9b0220948350cc1941599f89b91e" args="" -->
void *&nbsp;</td><td class="memItemRight" valign="bottom"><b>ptr</b></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>A container for generic and o/s portable threadsafe file system functions. </p>
<p>These are based roughly on their posix equivilents. For libpth, the system calls are wrapped. The native file descriptor or handle may be used, but it is best to use "class fsys" instead because it can capture the errno of a file operation in a threadsafe and platform independent manner, including for mswindows targets. </p>

<p>Definition at line <a class="el" href="a00185_source.html#l00080">80</a> of file <a class="el" href="a00185_source.html">fsys.h</a>.</p>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ade1c4a57295f0776d96add2ab7c41b31"></a><!-- doxytag: member="ucommon::fsys::fsys" ref="ade1c4a57295f0776d96add2ab7c41b31" args="(fsys &amp;descriptor)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ucommon::fsys::fsys </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00052.html">fsys</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>descriptor</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Copy (dup) an existing fsys descriptor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>descriptor</em>&nbsp;</td><td>to copy from. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a5b291bc094724c38d13b633c260211d0"></a><!-- doxytag: member="ucommon::fsys::fsys" ref="a5b291bc094724c38d13b633c260211d0" args="(char *path, access_t access)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ucommon::fsys::fsys </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00052.html#a8077a56ced2b26f2bcefa74dbacb4e90">access_t</a>&nbsp;</td>
          <td class="paramname"> <em>access</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a fsys descriptor by opening an existing file or directory. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>of file to open for created descriptor. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>access</em>&nbsp;</td><td>mode of file. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aab0d7d6300d500cb099cd944092825b1"></a><!-- doxytag: member="ucommon::fsys::fsys" ref="aab0d7d6300d500cb099cd944092825b1" args="(char *path, access_t access, unsigned permission)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ucommon::fsys::fsys </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00052.html#a8077a56ced2b26f2bcefa74dbacb4e90">access_t</a>&nbsp;</td>
          <td class="paramname"> <em>access</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&nbsp;</td>
          <td class="paramname"> <em>permission</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a fsys descriptor by creating a file. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>of file to create for descriptor. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>access</em>&nbsp;</td><td>mode of file access. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>permission</em>&nbsp;</td><td>mode of file. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a250b15840c34aed0130a702183b770aa"></a><!-- doxytag: member="ucommon::fsys::access" ref="a250b15840c34aed0130a702183b770aa" args="(char *path, unsigned mode)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int ucommon::fsys::access </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&nbsp;</td>
          <td class="paramname"> <em>mode</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Test path access. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>to test. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>mode</em>&nbsp;</td><td>to test for. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>error number or 0 on success. </dd></dl>

</div>
</div>
<a class="anchor" id="add474e57af4b712054ffc9b1e0c19fef"></a><!-- doxytag: member="ucommon::fsys::assign" ref="add474e57af4b712054ffc9b1e0c19fef" args="(fsys &amp;object, fd_t descriptor)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static void ucommon::fsys::assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00052.html">fsys</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>object</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">fd_t&nbsp;</td>
          <td class="paramname"> <em>descriptor</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assign a descriptor directly. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>object</em>&nbsp;</td><td>to assign descriptor to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>descriptor</em>&nbsp;</td><td>to assign. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="a00185_source.html#l00433">433</a> of file <a class="el" href="a00185_source.html">fsys.h</a>.</p>

</div>
</div>
<a class="anchor" id="a57953f372602bece151b1728a87f6e3c"></a><!-- doxytag: member="ucommon::fsys::assign" ref="a57953f372602bece151b1728a87f6e3c" args="(fd_t descriptor)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ucommon::fsys::assign </td>
          <td>(</td>
          <td class="paramtype">fd_t&nbsp;</td>
          <td class="paramname"> <em>descriptor</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assign descriptor directly. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>descriptor</em>&nbsp;</td><td>to assign. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="a00185_source.html#l00425">425</a> of file <a class="el" href="a00185_source.html">fsys.h</a>.</p>

</div>
</div>
<a class="anchor" id="af72db94278a75d73dac726cc41fec231"></a><!-- doxytag: member="ucommon::fsys::change" ref="af72db94278a75d73dac726cc41fec231" args="(char *path, unsigned mode)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int ucommon::fsys::change </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&nbsp;</td>
          <td class="paramname"> <em>mode</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Change file access mode. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>to change. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>mode</em>&nbsp;</td><td>to assign. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>error number or 0 on success. </dd></dl>

</div>
</div>
<a class="anchor" id="a97946b22ddb0e091ad5661b2cc91929a"></a><!-- doxytag: member="ucommon::fsys::changeDir" ref="a97946b22ddb0e091ad5661b2cc91929a" args="(char *path)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int ucommon::fsys::changeDir </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set directory prefix (chdir). </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>to change to. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>error number or 0 on success. </dd></dl>

</div>
</div>
<a class="anchor" id="aa7a235ac17b8a6e7cb24c375b8cb6348"></a><!-- doxytag: member="ucommon::fsys::close" ref="aa7a235ac17b8a6e7cb24c375b8cb6348" args="(fsys &amp;descriptor)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static void ucommon::fsys::close </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00052.html">fsys</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>descriptor</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Close a file descriptor or directory directly. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>descriptor</em>&nbsp;</td><td>to close. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="a00185_source.html#l00496">496</a> of file <a class="el" href="a00185_source.html">fsys.h</a>.</p>

</div>
</div>
<a class="anchor" id="ad598aaa938b46e54d2a0a41acfe7a932"></a><!-- doxytag: member="ucommon::fsys::copy" ref="ad598aaa938b46e54d2a0a41acfe7a932" args="(char *source, char *target, size_t size=1024)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int ucommon::fsys::copy </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>source</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>target</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>size</em> = <code>1024</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Copy a file. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>source</em>&nbsp;</td><td>file. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>target</em>&nbsp;</td><td>file. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>size</em>&nbsp;</td><td>of buffer. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>error number or 0 on success. </dd></dl>

</div>
</div>
<a class="anchor" id="a42d9b7665beec9f61f5388d1a162780b"></a><!-- doxytag: member="ucommon::fsys::create" ref="a42d9b7665beec9f61f5388d1a162780b" args="(fsys &amp;object, char *path, access_t access, unsigned mode)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static void ucommon::fsys::create </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00052.html">fsys</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>object</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00052.html#a8077a56ced2b26f2bcefa74dbacb4e90">access_t</a>&nbsp;</td>
          <td class="paramname"> <em>access</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&nbsp;</td>
          <td class="paramname"> <em>mode</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>create a file descriptor or directory directly. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>object</em>&nbsp;</td><td>to assign descriptor for created file. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>of file to create. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>access</em>&nbsp;</td><td>mode of descriptor. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>mode</em>&nbsp;</td><td>of file if created. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="a00185_source.html#l00527">527</a> of file <a class="el" href="a00185_source.html">fsys.h</a>.</p>

</div>
</div>
<a class="anchor" id="af0e1b7f59483b9a78aea4ff99a85b2dc"></a><!-- doxytag: member="ucommon::fsys::create" ref="af0e1b7f59483b9a78aea4ff99a85b2dc" args="(char *path, access_t access, unsigned mode)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ucommon::fsys::create </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00052.html#a8077a56ced2b26f2bcefa74dbacb4e90">access_t</a>&nbsp;</td>
          <td class="paramname"> <em>access</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&nbsp;</td>
          <td class="paramname"> <em>mode</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Open a file descriptor directly. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>of file to create. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>access</em>&nbsp;</td><td>mode of descriptor. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>mode</em>&nbsp;</td><td>of file if created. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a1e3cf79d274dbb05f77d26be202cb8d7"></a><!-- doxytag: member="ucommon::fsys::createDir" ref="a1e3cf79d274dbb05f77d26be202cb8d7" args="(char *path, unsigned mode)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int ucommon::fsys::createDir </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&nbsp;</td>
          <td class="paramname"> <em>mode</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Simple direct method to create a directory. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>of directory to create. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>mode</em>&nbsp;</td><td>of directory. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>error number or 0 on success. </dd></dl>

</div>
</div>
<a class="anchor" id="a3c91015a55c118198cdff5e1ae6cdd5c"></a><!-- doxytag: member="ucommon::fsys::drop" ref="a3c91015a55c118198cdff5e1ae6cdd5c" args="(fsys &amp;descriptor, offset_t size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int ucommon::fsys::drop </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00052.html">fsys</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>descriptor</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00052.html#ac1346469625016aaf46d9e18fa806927">offset_t</a>&nbsp;</td>
          <td class="paramname"> <em>size</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Drop cached data from a file descriptor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>descriptor</em>&nbsp;</td><td>to set. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>size</em>&nbsp;</td><td>of region from start of file to drop or all. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>error number or 0 on success. </dd></dl>

<p>Definition at line <a class="el" href="a00185_source.html#l00411">411</a> of file <a class="el" href="a00185_source.html">fsys.h</a>.</p>

</div>
</div>
<a class="anchor" id="a332b1d622b0d150679df32c1c7f45813"></a><!-- doxytag: member="ucommon::fsys::drop" ref="a332b1d622b0d150679df32c1c7f45813" args="(offset_t size=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ucommon::fsys::drop </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00052.html#ac1346469625016aaf46d9e18fa806927">offset_t</a>&nbsp;</td>
          <td class="paramname"> <em>size</em> = <code>0</code></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Drop cached data from start of file. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>size</em>&nbsp;</td><td>of region to drop or until end of file. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>error number or 0 on success. </dd></dl>

</div>
</div>
<a class="anchor" id="a64d2dde2a77bcf501fada13a24b0f189"></a><!-- doxytag: member="ucommon::fsys::err" ref="a64d2dde2a77bcf501fada13a24b0f189" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ucommon::fsys::err </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get last error. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>error number. </dd></dl>

<p>Definition at line <a class="el" href="a00185_source.html#l00508">508</a> of file <a class="el" href="a00185_source.html">fsys.h</a>.</p>

</div>
</div>
<a class="anchor" id="ab4d022bc617221ca6b335926fadd4533"></a><!-- doxytag: member="ucommon::fsys::fileinfo" ref="ab4d022bc617221ca6b335926fadd4533" args="(char *path, fileinfo_t *buffer)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int ucommon::fsys::fileinfo </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">fileinfo_t *&nbsp;</td>
          <td class="paramname"> <em>buffer</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Stat a file. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>of file to stat. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>buffer</em>&nbsp;</td><td>to save stat info. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>error number or 0 on success. </dd></dl>

</div>
</div>
<a class="anchor" id="ace024588e3e50c6f198e80900270b67c"></a><!-- doxytag: member="ucommon::fsys::fileinfo" ref="ace024588e3e50c6f198e80900270b67c" args="(fileinfo_t *buffer)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ucommon::fsys::fileinfo </td>
          <td>(</td>
          <td class="paramtype">fileinfo_t *&nbsp;</td>
          <td class="paramname"> <em>buffer</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get status of open descriptor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>buffer</em>&nbsp;</td><td>to save status info in. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>error number or 0 on success. </dd></dl>

</div>
</div>
<a class="anchor" id="a4a74b773161f33bd6ed66c56df2d8d56"></a><!-- doxytag: member="ucommon::fsys::find" ref="a4a74b773161f33bd6ed66c56df2d8d56" args="(fsys &amp;module, char *symbol)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static void* ucommon::fsys::find </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00052.html">fsys</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>module</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>symbol</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Find symbol in loaded module. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>module</em>&nbsp;</td><td>to search. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>symbol</em>&nbsp;</td><td>to search for. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>address of symbol or NULL if not found. </dd></dl>

</div>
</div>
<a class="anchor" id="a7d1aa162f6b5851b90459c1f9a7afb87"></a><!-- doxytag: member="ucommon::fsys::getHandle" ref="a7d1aa162f6b5851b90459c1f9a7afb87" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">fd_t ucommon::fsys::getHandle </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the native system descriptor handle of the file descriptor. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>native os descriptor. </dd></dl>

<p>Definition at line <a class="el" href="a00185_source.html#l00207">207</a> of file <a class="el" href="a00185_source.html">fsys.h</a>.</p>

</div>
</div>
<a class="anchor" id="af945b54d726912eb47b25bf0bf96f962"></a><!-- doxytag: member="ucommon::fsys::getPrefix" ref="af945b54d726912eb47b25bf0bf96f962" args="(char *path, size_t size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int ucommon::fsys::getPrefix </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>size</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get current directory prefix (pwd). </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>to save directory into. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>size</em>&nbsp;</td><td>of path we can save. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>error number or 0 on success. </dd></dl>

</div>
</div>
<a class="anchor" id="abf5f445b3c0bc68533b56b7e99fd333d"></a><!-- doxytag: member="ucommon::fsys::hardlink" ref="abf5f445b3c0bc68533b56b7e99fd333d" args="(char *path, char *target)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int ucommon::fsys::hardlink </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>target</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a hard link. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>to create link to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>target</em>&nbsp;</td><td>of link. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>error number or 0 on success. </dd></dl>

</div>
</div>
<a class="anchor" id="a51e7d624fd259e21b202f4a9d4485fcd"></a><!-- doxytag: member="ucommon::fsys::isdir" ref="a51e7d624fd259e21b202f4a9d4485fcd" args="(char *path)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static bool ucommon::fsys::isdir </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Test if path is a directory. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>to test. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if exists and is directory. </dd></dl>

</div>
</div>
<a class="anchor" id="abb9260f43bea0e1c09f91a3099e50f1c"></a><!-- doxytag: member="ucommon::fsys::isfile" ref="abb9260f43bea0e1c09f91a3099e50f1c" args="(char *path)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static bool ucommon::fsys::isfile </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Test if path is a file. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>to test. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if exists and is file. </dd></dl>

</div>
</div>
<a class="anchor" id="ad516bcc52e6b37e0d1f5d86fa6756109"></a><!-- doxytag: member="ucommon::fsys::ishidden" ref="ad516bcc52e6b37e0d1f5d86fa6756109" args="(char *path)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static bool ucommon::fsys::ishidden </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Test if path is a hidden file. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>to test. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if exists and is hidden. </dd></dl>

</div>
</div>
<a class="anchor" id="a05fd11ba1dc068f9ea946ef069f09b56"></a><!-- doxytag: member="ucommon::fsys::islink" ref="a05fd11ba1dc068f9ea946ef069f09b56" args="(char *path)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static bool ucommon::fsys::islink </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Test if path is a symlink. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>to test. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if exists and is symlink. </dd></dl>

</div>
</div>
<a class="anchor" id="a5102510621099732ae2b3efdd36543fb"></a><!-- doxytag: member="ucommon::fsys::istty" ref="a5102510621099732ae2b3efdd36543fb" args="(fd_t fd)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static bool ucommon::fsys::istty </td>
          <td>(</td>
          <td class="paramtype">fd_t&nbsp;</td>
          <td class="paramname"> <em>fd</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>See if the file handle is a tty device. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if device. </dd></dl>

</div>
</div>
<a class="anchor" id="a6f7625861b517e87f898db6abcf81a95"></a><!-- doxytag: member="ucommon::fsys::istty" ref="a6f7625861b517e87f898db6abcf81a95" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool ucommon::fsys::istty </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>See if current file stream is a tty device. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if device. </dd></dl>

</div>
</div>
<a class="anchor" id="ac0c40e5634f35df3b6da75b5a1940b9d"></a><!-- doxytag: member="ucommon::fsys::link" ref="ac0c40e5634f35df3b6da75b5a1940b9d" args="(char *path, char *target)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int ucommon::fsys::link </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>target</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a symbolic link. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>to create. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>target</em>&nbsp;</td><td>of link. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>error number or 0 on success. </dd></dl>

</div>
</div>
<a class="anchor" id="adbdb7fbafd09e38f16934ce8b0602e26"></a><!-- doxytag: member="ucommon::fsys::linkinfo" ref="adbdb7fbafd09e38f16934ce8b0602e26" args="(char *path, char *buffer, size_t size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int ucommon::fsys::linkinfo </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>size</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Read a symbolic link to get it's target. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>of link. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>buffer</em>&nbsp;</td><td>to save target into. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>size</em>&nbsp;</td><td>of buffer. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a94a2ca1523ef786babd950c096fdfec0"></a><!-- doxytag: member="ucommon::fsys::load" ref="a94a2ca1523ef786babd950c096fdfec0" args="(fsys &amp;module, char *path)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static void ucommon::fsys::load </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00052.html">fsys</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>module</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Load a plugin into memory. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>module</em>&nbsp;</td><td>for management. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>to plugin. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a46565ca081861af29eaf23deda2f1752"></a><!-- doxytag: member="ucommon::fsys::load" ref="a46565ca081861af29eaf23deda2f1752" args="(char *path)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int ucommon::fsys::load </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Load an unmaged plugin directly. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>to plugin. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>error number or 0 on success. </dd></dl>

</div>
</div>
<a class="anchor" id="a882c1f41e0f6311b7a15f6b615a74ff3"></a><!-- doxytag: member="ucommon::fsys::open" ref="a882c1f41e0f6311b7a15f6b615a74ff3" args="(fsys &amp;object, char *path, access_t access)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static void ucommon::fsys::open </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00052.html">fsys</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>object</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00052.html#a8077a56ced2b26f2bcefa74dbacb4e90">access_t</a>&nbsp;</td>
          <td class="paramname"> <em>access</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Open a file or directory. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>object</em>&nbsp;</td><td>to assign descriptor for opened file. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>of file to open. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>access</em>&nbsp;</td><td>mode of descriptor. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="a00185_source.html#l00517">517</a> of file <a class="el" href="a00185_source.html">fsys.h</a>.</p>

</div>
</div>
<a class="anchor" id="a95f5f3549c1bfe5d1ee6377e0383c4ed"></a><!-- doxytag: member="ucommon::fsys::open" ref="a95f5f3549c1bfe5d1ee6377e0383c4ed" args="(char *path, access_t access)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ucommon::fsys::open </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00052.html#a8077a56ced2b26f2bcefa74dbacb4e90">access_t</a>&nbsp;</td>
          <td class="paramname"> <em>access</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Open a file or directory. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>of file to open. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>access</em>&nbsp;</td><td>mode of descriptor. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a269ab395fe6fda9e52386d433cf71cbb"></a><!-- doxytag: member="ucommon::fsys::operator bool" ref="a269ab395fe6fda9e52386d433cf71cbb" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ucommon::fsys::operator bool </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Test if file descriptor is open. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if open. </dd></dl>

<p>Definition at line <a class="el" href="a00185_source.html#l00181">181</a> of file <a class="el" href="a00185_source.html">fsys.h</a>.</p>

</div>
</div>
<a class="anchor" id="a37239ece4b4670d79425d2f3037e1920"></a><!-- doxytag: member="ucommon::fsys::operator fd_t" ref="a37239ece4b4670d79425d2f3037e1920" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ucommon::fsys::operator fd_t </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the descriptor from the object by casting reference. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>low level file handle. </dd></dl>

<p>Definition at line <a class="el" href="a00185_source.html#l00174">174</a> of file <a class="el" href="a00185_source.html">fsys.h</a>.</p>

</div>
</div>
<a class="anchor" id="a071ed559ea10c2e1706c401b2ec924f5"></a><!-- doxytag: member="ucommon::fsys::operator!" ref="a071ed559ea10c2e1706c401b2ec924f5" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool ucommon::fsys::operator! </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Test if file descriptor is closed. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if closed. </dd></dl>

<p>Definition at line <a class="el" href="a00185_source.html#l00188">188</a> of file <a class="el" href="a00185_source.html">fsys.h</a>.</p>

</div>
</div>
<a class="anchor" id="a07fd84d9c32d58a1a084b5432b92a2a0"></a><!-- doxytag: member="ucommon::fsys::operator*" ref="a07fd84d9c32d58a1a084b5432b92a2a0" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">fd_t ucommon::fsys::operator* </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the descriptor from the object by pointer reference. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>low level file handle. </dd></dl>

<p>Definition at line <a class="el" href="a00185_source.html#l00167">167</a> of file <a class="el" href="a00185_source.html">fsys.h</a>.</p>

</div>
</div>
<a class="anchor" id="ae7b78533085f7398d710f4b49cdb144b"></a><!-- doxytag: member="ucommon::fsys::operator=" ref="ae7b78533085f7398d710f4b49cdb144b" args="(fd_t descriptor)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ucommon::fsys::operator= </td>
          <td>(</td>
          <td class="paramtype">fd_t&nbsp;</td>
          <td class="paramname"> <em>descriptor</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assing file descriptor from system descriptor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>descriptor</em>&nbsp;</td><td>to dup from. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a9d0f7cce5d100b9003b2698742b0205b"></a><!-- doxytag: member="ucommon::fsys::operator=" ref="a9d0f7cce5d100b9003b2698742b0205b" args="(fsys &amp;descriptor)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ucommon::fsys::operator= </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00052.html">fsys</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>descriptor</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assign file descriptor by duplicating another descriptor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>descriptor</em>&nbsp;</td><td>to dup from. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aa64d573956be5107945d7824fe73fd83"></a><!-- doxytag: member="ucommon::fsys::read" ref="aa64d573956be5107945d7824fe73fd83" args="(fsys &amp;descriptor, void *buffer, size_t count)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static ssize_t ucommon::fsys::read </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00052.html">fsys</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>descriptor</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>count</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Read data from file descriptor or directory. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>descriptor</em>&nbsp;</td><td>to read from. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>buffer</em>&nbsp;</td><td>to read into. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>count</em>&nbsp;</td><td>of bytes to read. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>bytes transferred, -1 if error. </dd></dl>

<p>Definition at line <a class="el" href="a00185_source.html#l00383">383</a> of file <a class="el" href="a00185_source.html">fsys.h</a>.</p>

</div>
</div>
<a class="anchor" id="aab71ef039e7534892f1cf1079f6946ee"></a><!-- doxytag: member="ucommon::fsys::read" ref="aab71ef039e7534892f1cf1079f6946ee" args="(void *buffer, size_t count)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ssize_t ucommon::fsys::read </td>
          <td>(</td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>count</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Read data from descriptor or scan directory. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>buffer</em>&nbsp;</td><td>to read into. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>count</em>&nbsp;</td><td>of bytes to read. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>bytes transferred, -1 if error. </dd></dl>

</div>
</div>
<a class="anchor" id="a729c086d4c8c0ef70b0a83a40eb74813"></a><!-- doxytag: member="ucommon::fsys::release" ref="a729c086d4c8c0ef70b0a83a40eb74813" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">fd_t ucommon::fsys::release </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Release descriptor, do not close. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>handle being released. </dd></dl>

</div>
</div>
<a class="anchor" id="a3bd225bd1b0db7d94fcb9d2c1500dd47"></a><!-- doxytag: member="ucommon::fsys::remove" ref="a3bd225bd1b0db7d94fcb9d2c1500dd47" args="(char *path)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int ucommon::fsys::remove </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Remove a file. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>of file. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>error number or 0 on success. </dd></dl>

</div>
</div>
<a class="anchor" id="a46240853a5ddda459328fd2d504735c3"></a><!-- doxytag: member="ucommon::fsys::removeDir" ref="a46240853a5ddda459328fd2d504735c3" args="(char *path)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int ucommon::fsys::removeDir </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Simple direct method to remove a directory. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>to remove. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>error number or 0 on success. </dd></dl>

</div>
</div>
<a class="anchor" id="a16c80dadcc315394eee3cadf5aff9dbb"></a><!-- doxytag: member="ucommon::fsys::rename" ref="a16c80dadcc315394eee3cadf5aff9dbb" args="(char *oldpath, char *newpath)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int ucommon::fsys::rename </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>oldpath</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>newpath</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Rename a file. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>oldpath</em>&nbsp;</td><td>to rename from. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>newpath</em>&nbsp;</td><td>to rename to. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>error number or 0 on success. </dd></dl>

</div>
</div>
<a class="anchor" id="a0126e62848992422e58f882cd290f383"></a><!-- doxytag: member="ucommon::fsys::seek" ref="a0126e62848992422e58f882cd290f383" args="(fsys &amp;descriptor, offset_t offset)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int ucommon::fsys::seek </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00052.html">fsys</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>descriptor</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00052.html#ac1346469625016aaf46d9e18fa806927">offset_t</a>&nbsp;</td>
          <td class="paramname"> <em>offset</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the position of a file descriptor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>descriptor</em>&nbsp;</td><td>to set. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>offset</em>&nbsp;</td><td>from start of file or "end" to append. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>error number or 0 on success. </dd></dl>

<p>Definition at line <a class="el" href="a00185_source.html#l00402">402</a> of file <a class="el" href="a00185_source.html">fsys.h</a>.</p>

</div>
</div>
<a class="anchor" id="a0876e4cf31f06a406c9f196bcdbc0bb0"></a><!-- doxytag: member="ucommon::fsys::seek" ref="a0876e4cf31f06a406c9f196bcdbc0bb0" args="(offset_t offset)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ucommon::fsys::seek </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00052.html#ac1346469625016aaf46d9e18fa806927">offset_t</a>&nbsp;</td>
          <td class="paramname"> <em>offset</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the position of a file descriptor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>offset</em>&nbsp;</td><td>from start of file or "end" to append. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>error number or 0 on success. </dd></dl>

<p>Reimplemented in <a class="el" href="a00050.html#a481a4fec8c50cd5a299727c03318a7c6">ucommon::fbuf</a>.</p>

</div>
</div>
<a class="anchor" id="afd3c7859ab6f37aba59c5d90c4dd2dcd"></a><!-- doxytag: member="ucommon::fsys::set" ref="afd3c7859ab6f37aba59c5d90c4dd2dcd" args="(fd_t descriptor)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ucommon::fsys::set </td>
          <td>(</td>
          <td class="paramtype">fd_t&nbsp;</td>
          <td class="paramname"> <em>descriptor</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set with external descriptor. </p>
<p>Closes existing file if open. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>descriptor</em>&nbsp;</td><td>of open file. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="af44354ced9a645a848d915c594f38e4c"></a><!-- doxytag: member="ucommon::fsys::sync" ref="af44354ced9a645a848d915c594f38e4c" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ucommon::fsys::sync </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Commit changes to the filesystem. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>error number or 0 on success. </dd></dl>

</div>
</div>
<a class="anchor" id="a17d1f69b6a6984dcd0b992fff6f65ec0"></a><!-- doxytag: member="ucommon::fsys::trunc" ref="a17d1f69b6a6984dcd0b992fff6f65ec0" args="(offset_t offset)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ucommon::fsys::trunc </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00052.html#ac1346469625016aaf46d9e18fa806927">offset_t</a>&nbsp;</td>
          <td class="paramname"> <em>offset</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Truncate file to specified length. </p>
<p>The file pointer is positioned to the new end of file. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>offset</em>&nbsp;</td><td>to truncate to. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if truncate successful. </dd></dl>

<p>Reimplemented in <a class="el" href="a00050.html#a0b04f3e397d0d7b43f68db3f5d9cbf6f">ucommon::fbuf</a>.</p>

</div>
</div>
<a class="anchor" id="a308f32aaf03de4805a6307abdca73433"></a><!-- doxytag: member="ucommon::fsys::unlink" ref="a308f32aaf03de4805a6307abdca73433" args="(char *path)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int ucommon::fsys::unlink </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>path</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Remove a symbolic link explicitly. </p>
<p>Other kinds of files are also deleted. This should be used when uncertain about symlinks requiring special support. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>to remove. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>error number or 0 on success. </dd></dl>

</div>
</div>
<a class="anchor" id="a3c39c5e63138d5443c98a0abf979f413"></a><!-- doxytag: member="ucommon::fsys::unload" ref="a3c39c5e63138d5443c98a0abf979f413" args="(fsys &amp;module)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static void ucommon::fsys::unload </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00052.html">fsys</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>module</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>unload a specific plugin. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>module</em>&nbsp;</td><td>to unload </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="abd09ce130e91417cc27af0cf1ff93ecd"></a><!-- doxytag: member="ucommon::fsys::write" ref="abd09ce130e91417cc27af0cf1ff93ecd" args="(fsys &amp;descriptor, void *buffer, size_t count)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static ssize_t ucommon::fsys::write </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00052.html">fsys</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>descriptor</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>count</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>write data to file descriptor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>descriptor</em>&nbsp;</td><td>to write to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>buffer</em>&nbsp;</td><td>to write from. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>count</em>&nbsp;</td><td>of bytes to write. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>bytes transferred, -1 if error. </dd></dl>

<p>Definition at line <a class="el" href="a00185_source.html#l00393">393</a> of file <a class="el" href="a00185_source.html">fsys.h</a>.</p>

</div>
</div>
<a class="anchor" id="acb4d6ea069d89ba1f1441242a3fd354d"></a><!-- doxytag: member="ucommon::fsys::write" ref="acb4d6ea069d89ba1f1441242a3fd354d" args="(void *buffer, size_t count)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ssize_t ucommon::fsys::write </td>
          <td>(</td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>count</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Write data to descriptor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>buffer</em>&nbsp;</td><td>to write from. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>count</em>&nbsp;</td><td>of bytes to write. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>bytes transferred, -1 if error. </dd></dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>ucommon/<a class="el" href="a00185_source.html">fsys.h</a></li>
</ul>
</div>
<hr class="footer"/><address style="text-align: right;"><small>Generated on Thu Jul 14 16:39:36 2011 for ucommon by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.3 </small></address>
</body>
</html>