diff options
Diffstat (limited to 'structllfio__v2__xxx_1_1native__handle__type.html')
-rw-r--r-- | structllfio__v2__xxx_1_1native__handle__type.html | 210 |
1 files changed, 163 insertions, 47 deletions
diff --git a/structllfio__v2__xxx_1_1native__handle__type.html b/structllfio__v2__xxx_1_1native__handle__type.html index cc4620a8..46cb8d91 100644 --- a/structllfio__v2__xxx_1_1native__handle__type.html +++ b/structllfio__v2__xxx_1_1native__handle__type.html @@ -1,9 +1,9 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> -<meta name="generator" content="Doxygen 1.8.13"/> +<meta name="generator" content="Doxygen 1.8.17"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>LLFIO: llfio_v2_xxx::native_handle_type Struct Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> @@ -13,9 +13,6 @@ <script type="text/javascript" src="resize.js"></script> <script type="text/javascript" src="navtreedata.js"></script> <script type="text/javascript" src="navtree.js"></script> -<script type="text/javascript"> - $(document).ready(initResizable); -</script> <link href="search/search.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="search/searchdata.js"></script> <script type="text/javascript" src="search/search.js"></script> @@ -29,7 +26,7 @@ <tr style="height: 56px;"> <td id="projectalign" style="padding-left: 0.5em;"> <div id="projectname">LLFIO -  <span id="projectnumber">v2.00 late alpha</span> +  <span id="projectnumber">v2.00 late beta</span> </div> </td> </tr> @@ -37,18 +34,21 @@ </table> </div> <!-- end header part --> -<!-- Generated by Doxygen 1.8.13 --> +<!-- Generated by Doxygen 1.8.17 --> <script type="text/javascript"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ var searchBox = new SearchBox("searchBox", "search",false,'Search'); +/* @license-end */ </script> <script type="text/javascript" src="menudata.js"></script> <script type="text/javascript" src="menu.js"></script> <script type="text/javascript"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(function() { initMenu('',true,false,'search.php','Search'); $(document).ready(function() { init_search(); }); }); -</script> +/* @license-end */</script> <div id="main-nav"></div> </div><!-- top --> <div id="side-nav" class="ui-resizable side-nav-resizable"> @@ -62,7 +62,9 @@ $(function() { </div> </div> <script type="text/javascript"> -$(document).ready(function(){initNavTree('structllfio__v2__xxx_1_1native__handle__type.html','');}); +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ +$(document).ready(function(){initNavTree('structllfio__v2__xxx_1_1native__handle__type.html',''); initResizable(); }); +/* @license-end */ </script> <div id="doc-content"> <!-- window showing the filter options --> @@ -97,14 +99,12 @@ $(document).ready(function(){initNavTree('structllfio__v2__xxx_1_1native__handle <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr class="memitem:aab66573d64b32857ecc113b87dd56489"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#aab66573d64b32857ecc113b87dd56489">QUICKCPPLIB_BITFIELD_BEGIN</a> (disposition)</td></tr> -<tr class="memdesc:aab66573d64b32857ecc113b87dd56489"><td class="mdescLeft"> </td><td class="mdescRight">The type of handle. <a href="#aab66573d64b32857ecc113b87dd56489">More...</a><br /></td></tr> +<tr class="memdesc:aab66573d64b32857ecc113b87dd56489"><td class="mdescLeft"> </td><td class="mdescRight">The type of handle. <a href="structllfio__v2__xxx_1_1native__handle__type.html#aab66573d64b32857ecc113b87dd56489">More...</a><br /></td></tr> <tr class="separator:aab66573d64b32857ecc113b87dd56489"><td class="memSeparator" colspan="2"> </td></tr> -<tr class="memitem:a2329417e016cd5ccd01794937c4eec3b"><td class="memItemLeft" align="right" valign="top"><a id="a2329417e016cd5ccd01794937c4eec3b"></a> - </td><td class="memItemRight" valign="bottom"><b>QUICKCPPLIB_BITFIELD_END</b> (disposition) disposition behaviour</td></tr> -<tr class="separator:a2329417e016cd5ccd01794937c4eec3b"><td class="memSeparator" colspan="2"> </td></tr> -<tr class="memitem:af9eb6d201364aae2e933da37caa4c1dd"><td class="memItemLeft" align="right" valign="top"><a id="af9eb6d201364aae2e933da37caa4c1dd"></a> -constexpr </td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#af9eb6d201364aae2e933da37caa4c1dd">native_handle_type</a> ()</td></tr> -<tr class="memdesc:af9eb6d201364aae2e933da37caa4c1dd"><td class="mdescLeft"> </td><td class="mdescRight">Constructs a default instance. <br /></td></tr> +<tr class="memitem:aefed8c6f2ff66097dc7cb88b6f439db6"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#aefed8c6f2ff66097dc7cb88b6f439db6">QUICKCPPLIB_BITFIELD_END</a> (disposition) union</td></tr> +<tr class="separator:aefed8c6f2ff66097dc7cb88b6f439db6"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:af9eb6d201364aae2e933da37caa4c1dd"><td class="memItemLeft" align="right" valign="top">constexpr </td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#af9eb6d201364aae2e933da37caa4c1dd">native_handle_type</a> ()</td></tr> +<tr class="memdesc:af9eb6d201364aae2e933da37caa4c1dd"><td class="mdescLeft"> </td><td class="mdescRight">Constructs a default instance. <a href="structllfio__v2__xxx_1_1native__handle__type.html#af9eb6d201364aae2e933da37caa4c1dd">More...</a><br /></td></tr> <tr class="separator:af9eb6d201364aae2e933da37caa4c1dd"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa014dc4620266c5e79ff574eab95559c"><td class="memItemLeft" align="right" valign="top"><a id="aa014dc4620266c5e79ff574eab95559c"></a> constexpr </td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#aa014dc4620266c5e79ff574eab95559c">native_handle_type</a> (disposition _behaviour, int _fd) noexcept</td></tr> @@ -142,6 +142,14 @@ constexpr </td><td class="memItemRight" valign="bottom"><a class="el" href= constexpr bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#af51f8cd2e901aa8fc6862eb85e66b20c">operator!</a> () const noexcept</td></tr> <tr class="memdesc:af51f8cd2e901aa8fc6862eb85e66b20c"><td class="mdescLeft"> </td><td class="mdescRight">True if invalid. <br /></td></tr> <tr class="separator:af51f8cd2e901aa8fc6862eb85e66b20c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a4cbeaf944ae68ff5811bd35b49767e73"><td class="memItemLeft" align="right" valign="top"><a id="a4cbeaf944ae68ff5811bd35b49767e73"></a> +constexpr bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#a4cbeaf944ae68ff5811bd35b49767e73">operator==</a> (const <a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html">native_handle_type</a> &o) const noexcept</td></tr> +<tr class="memdesc:a4cbeaf944ae68ff5811bd35b49767e73"><td class="mdescLeft"> </td><td class="mdescRight">True if equal. <br /></td></tr> +<tr class="separator:a4cbeaf944ae68ff5811bd35b49767e73"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a79de434e090572c409a53f70146a0ed1"><td class="memItemLeft" align="right" valign="top"><a id="a79de434e090572c409a53f70146a0ed1"></a> +constexpr bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#a79de434e090572c409a53f70146a0ed1">operator!=</a> (const <a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html">native_handle_type</a> &o) const noexcept</td></tr> +<tr class="memdesc:a79de434e090572c409a53f70146a0ed1"><td class="mdescLeft"> </td><td class="mdescRight">True if unequal. <br /></td></tr> +<tr class="separator:a79de434e090572c409a53f70146a0ed1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa179d5ae7c29ddec6b3d043d83c48444"><td class="memItemLeft" align="right" valign="top"><a id="aa179d5ae7c29ddec6b3d043d83c48444"></a> constexpr bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#aa179d5ae7c29ddec6b3d043d83c48444">is_valid</a> () const noexcept</td></tr> <tr class="memdesc:aa179d5ae7c29ddec6b3d043d83c48444"><td class="mdescLeft"> </td><td class="mdescRight">True if the handle is valid. <br /></td></tr> @@ -158,10 +166,10 @@ constexpr bool </td><td class="memItemRight" valign="bottom"><a class="el" constexpr bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#a38054fed025ad3deec2b5a5494e7e57d">is_append_only</a> () const noexcept</td></tr> <tr class="memdesc:a38054fed025ad3deec2b5a5494e7e57d"><td class="mdescLeft"> </td><td class="mdescRight">True if the handle is append only. <br /></td></tr> <tr class="separator:a38054fed025ad3deec2b5a5494e7e57d"><td class="memSeparator" colspan="2"> </td></tr> -<tr class="memitem:ac392ebf1b70123ed39196591a06bded5"><td class="memItemLeft" align="right" valign="top"><a id="ac392ebf1b70123ed39196591a06bded5"></a> -constexpr bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#ac392ebf1b70123ed39196591a06bded5">is_overlapped</a> () const noexcept</td></tr> -<tr class="memdesc:ac392ebf1b70123ed39196591a06bded5"><td class="mdescLeft"> </td><td class="mdescRight">True if overlapped. <br /></td></tr> -<tr class="separator:ac392ebf1b70123ed39196591a06bded5"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ae5b2862752c1af2b4419a5fefa4938aa"><td class="memItemLeft" align="right" valign="top"><a id="ae5b2862752c1af2b4419a5fefa4938aa"></a> +constexpr bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#ae5b2862752c1af2b4419a5fefa4938aa">is_nonblocking</a> () const noexcept</td></tr> +<tr class="memdesc:ae5b2862752c1af2b4419a5fefa4938aa"><td class="mdescLeft"> </td><td class="mdescRight">True if nonblocking. <br /></td></tr> +<tr class="separator:ae5b2862752c1af2b4419a5fefa4938aa"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aeb3c171595f7024ce75223b9f866caca"><td class="memItemLeft" align="right" valign="top"><a id="aeb3c171595f7024ce75223b9f866caca"></a> constexpr bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#aeb3c171595f7024ce75223b9f866caca">is_seekable</a> () const noexcept</td></tr> <tr class="memdesc:aeb3c171595f7024ce75223b9f866caca"><td class="mdescLeft"> </td><td class="mdescRight">True if seekable. <br /></td></tr> @@ -182,6 +190,14 @@ constexpr bool </td><td class="memItemRight" valign="bottom"><a class="el" constexpr bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#ad6992242c9715661a4b737a21e860f32">is_symlink</a> () const noexcept</td></tr> <tr class="memdesc:ad6992242c9715661a4b737a21e860f32"><td class="mdescLeft"> </td><td class="mdescRight">True if a symlink. <br /></td></tr> <tr class="separator:ad6992242c9715661a4b737a21e860f32"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a6624b7cdc2d9bd750de87485b9a1555e"><td class="memItemLeft" align="right" valign="top"><a id="a6624b7cdc2d9bd750de87485b9a1555e"></a> +constexpr bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#a6624b7cdc2d9bd750de87485b9a1555e">is_pipe</a> () const noexcept</td></tr> +<tr class="memdesc:a6624b7cdc2d9bd750de87485b9a1555e"><td class="mdescLeft"> </td><td class="mdescRight">True if a pipe. <br /></td></tr> +<tr class="separator:a6624b7cdc2d9bd750de87485b9a1555e"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a7ee5e453d67fadc701bdd6971cd85450"><td class="memItemLeft" align="right" valign="top"><a id="a7ee5e453d67fadc701bdd6971cd85450"></a> +constexpr bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#a7ee5e453d67fadc701bdd6971cd85450">is_socket</a> () const noexcept</td></tr> +<tr class="memdesc:a7ee5e453d67fadc701bdd6971cd85450"><td class="mdescLeft"> </td><td class="mdescRight">True if a socket. <br /></td></tr> +<tr class="separator:a7ee5e453d67fadc701bdd6971cd85450"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa9773fae5d91f769e281cc05df1f0e6c"><td class="memItemLeft" align="right" valign="top"><a id="aa9773fae5d91f769e281cc05df1f0e6c"></a> constexpr bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#aa9773fae5d91f769e281cc05df1f0e6c">is_multiplexer</a> () const noexcept</td></tr> <tr class="memdesc:aa9773fae5d91f769e281cc05df1f0e6c"><td class="mdescLeft"> </td><td class="mdescRight">True if a multiplexer like BSD kqueues, Linux epoll or Windows IOCP. <br /></td></tr> @@ -194,33 +210,50 @@ constexpr bool </td><td class="memItemRight" valign="bottom"><a class="el" constexpr bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#a06a72a1c1d822c05aa040e7bc06dc2a8">is_section</a> () const noexcept</td></tr> <tr class="memdesc:a06a72a1c1d822c05aa040e7bc06dc2a8"><td class="mdescLeft"> </td><td class="mdescRight">True if a memory section. <br /></td></tr> <tr class="separator:a06a72a1c1d822c05aa040e7bc06dc2a8"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a390f2bbc4b0485179fa56ef275f97763"><td class="memItemLeft" align="right" valign="top"><a id="a390f2bbc4b0485179fa56ef275f97763"></a> +constexpr bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#a390f2bbc4b0485179fa56ef275f97763">is_allocation</a> () const noexcept</td></tr> +<tr class="memdesc:a390f2bbc4b0485179fa56ef275f97763"><td class="mdescLeft"> </td><td class="mdescRight">True if a memory allocation. <br /></td></tr> +<tr class="separator:a390f2bbc4b0485179fa56ef275f97763"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a> Public Attributes</h2></td></tr> -<tr class="memitem:a532ebde342768f6d77304e8e7846832a"><td class="memItemLeft" ><a id="a532ebde342768f6d77304e8e7846832a"></a> -union {</td></tr> -<tr class="memitem:a1f728845b9e31fbda2ba6d0dd4aa7e30"><td class="memItemLeft" > -   intptr_t   <b>_init</b> {-1}</td></tr> -<tr class="separator:a1f728845b9e31fbda2ba6d0dd4aa7e30"><td class="memSeparator" colspan="2"> </td></tr> -<tr class="memitem:a5df3f342764867923f4eb5a0b0dc78d5"><td class="memItemLeft" > -   int   <a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#a6d63f413705982a84f4140640e4340af">fd</a></td></tr> -<tr class="memdesc:a5df3f342764867923f4eb5a0b0dc78d5"><td class="mdescLeft"> </td><td class="mdescRight">A POSIX file descriptor. <br /></td></tr> -<tr class="separator:a5df3f342764867923f4eb5a0b0dc78d5"><td class="memSeparator" colspan="2"> </td></tr> -<tr class="memitem:a603ac64e5ef92e4c4ef8b285556c3832"><td class="memItemLeft" > -   int   <a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#a8a38d56b1a9a3ee70799df3dac04edfc">pid</a></td></tr> -<tr class="memdesc:a603ac64e5ef92e4c4ef8b285556c3832"><td class="mdescLeft"> </td><td class="mdescRight">A POSIX process identifier. <br /></td></tr> -<tr class="separator:a603ac64e5ef92e4c4ef8b285556c3832"><td class="memSeparator" colspan="2"> </td></tr> -<tr class="memitem:ac2ba6557aea3fa916206780e46e0a840"><td class="memItemLeft" > -   win::handle   <a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html#afbc6866f3f80808fbe3ca903d15b5481">h</a></td></tr> -<tr class="memdesc:ac2ba6557aea3fa916206780e46e0a840"><td class="mdescLeft"> </td><td class="mdescRight">A Windows HANDLE. <br /></td></tr> -<tr class="separator:ac2ba6557aea3fa916206780e46e0a840"><td class="memSeparator" colspan="2"> </td></tr> -<tr class="memitem:a532ebde342768f6d77304e8e7846832a"><td class="memItemLeft" valign="top">}; </td><td class="memItemRight" valign="bottom"></td></tr> -<tr class="memdesc:a532ebde342768f6d77304e8e7846832a"><td class="mdescLeft"> </td><td class="mdescRight">The behaviour of the handle. <br /></td></tr> -<tr class="separator:a532ebde342768f6d77304e8e7846832a"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a967ace482f3fe7fd3c6e24bffee25888"><td class="memItemLeft" align="right" valign="top"><a id="a967ace482f3fe7fd3c6e24bffee25888"></a> +disposition </td><td class="memItemRight" valign="bottom"><b>behaviour</b></td></tr> +<tr class="separator:a967ace482f3fe7fd3c6e24bffee25888"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><p>A native handle type used for wrapping file descriptors, process ids or HANDLEs. Unmanaged, wrap in a handle object to manage. </p> -</div><h2 class="groupheader">Member Function Documentation</h2> +</div><h2 class="groupheader">Constructor & Destructor Documentation</h2> +<a id="af9eb6d201364aae2e933da37caa4c1dd"></a> +<h2 class="memtitle"><span class="permalink"><a href="#af9eb6d201364aae2e933da37caa4c1dd">◆ </a></span>native_handle_type()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">constexpr llfio_v2_xxx::native_handle_type::native_handle_type </td> + <td>(</td> + <td class="paramname"></td><td>)</td> + <td></td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">constexpr</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>Constructs a default instance. </p> +<p>The behaviour of the handle </p> +<div class="fragment"><div class="line"><a name="l00092"></a><span class="lineno"> 92</span> {} <span class="comment">// NOLINT</span></div> +</div><!-- fragment --> +</div> +</div> +<h2 class="groupheader">Member Function Documentation</h2> <a id="aab66573d64b32857ecc113b87dd56489"></a> <h2 class="memtitle"><span class="permalink"><a href="#aab66573d64b32857ecc113b87dd56489">◆ </a></span>QUICKCPPLIB_BITFIELD_BEGIN()</h2> @@ -250,18 +283,96 @@ union {</td></tr> <p>< Is readable</p> <p>< Is writable</p> <p>< Is append only</p> -<p>< Requires additional synchronisation</p> +<p>< Requires additional synchronisation (Windows: <code>OVERLAPPED</code>; POSIX: <code>O_NONBLOCK</code>)</p> <p>< Is seekable</p> <p>< Requires sector aligned i/o (typically 512 or 4096)</p> <p>< Is a regular file</p> <p>< Is a directory</p> <p>< Is a symlink</p> +<p>< Is a pipe</p> +<p>< Is a socket</p> <p>< Is a kqueue/epoll/iocp</p> <p>< Is a child process</p> -<p>< Is a memory section </p> -<div class="fragment"><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  {</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  invalid = 0U, <span class="comment">//!< Invalid handle</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="comment"></span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  readable = 1U << 0U, <span class="comment">//!< Is readable</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="comment"></span> writable = 1U << 1U, <span class="comment">//!< Is writable</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="comment"></span> append_only = 1U << 2U, <span class="comment">//!< Is append only</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="comment"></span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  overlapped = 1U << 4U, <span class="comment">//!< Requires additional synchronisation</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="comment"></span> seekable = 1U << 5U, <span class="comment">//!< Is seekable</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="comment"></span> aligned_io = 1U << 6U, <span class="comment">//!< Requires sector aligned i/o (typically 512 or 4096)</span></div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="comment"></span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  <a class="code" href="namespacellfio__v2__xxx.html#af31a062639499a79ef5cc8aed16ba65d">file</a> = 1U << 8U, <span class="comment">//!< Is a regular file</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="comment"></span> <a class="code" href="namespacellfio__v2__xxx.html#a3d112d170c1d485e1120de06eef02375">directory</a> = 1U << 9U, <span class="comment">//!< Is a directory</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="comment"></span> symlink = 1U << 10U, <span class="comment">//!< Is a symlink</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="comment"></span> multiplexer = 1U << 11U, <span class="comment">//!< Is a kqueue/epoll/iocp</span></div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="comment"></span> process = 1U << 12U, <span class="comment">//!< Is a child process</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="comment"></span> <a class="code" href="namespacellfio__v2__xxx.html#ac9be77116e7a2d8c029dd066dfa363fb">section</a> = 1U << 13U, <span class="comment">//!< Is a memory section</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="comment"></span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  _child_close_executed = 1U << 28U <span class="comment">// used to trap when vptr has become corrupted</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  }</div><div class="ttc" id="namespacellfio__v2__xxx_html_a3d112d170c1d485e1120de06eef02375"><div class="ttname"><a href="namespacellfio__v2__xxx.html#a3d112d170c1d485e1120de06eef02375">llfio_v2_xxx::directory</a></div><div class="ttdeci">result< directory_handle > directory(const path_handle &base, directory_handle::path_view_type path, directory_handle::mode _mode=directory_handle::mode::read, directory_handle::creation _creation=directory_handle::creation::open_existing, directory_handle::caching _caching=directory_handle::caching::all, directory_handle::flag flags=directory_handle::flag::none) noexcept</div><div class="ttdef"><b>Definition:</b> directory_handle.hpp:347</div></div> -<div class="ttc" id="namespacellfio__v2__xxx_html_af31a062639499a79ef5cc8aed16ba65d"><div class="ttname"><a href="namespacellfio__v2__xxx.html#af31a062639499a79ef5cc8aed16ba65d">llfio_v2_xxx::file</a></div><div class="ttdeci">result< file_handle > file(const path_handle &base, file_handle::path_view_type path, file_handle::mode _mode=file_handle::mode::read, file_handle::creation _creation=file_handle::creation::open_existing, file_handle::caching _caching=file_handle::caching::all, file_handle::flag flags=file_handle::flag::none) noexcept</div><div class="ttdef"><b>Definition:</b> file_handle.hpp:501</div></div> -<div class="ttc" id="namespacellfio__v2__xxx_html_ac9be77116e7a2d8c029dd066dfa363fb"><div class="ttname"><a href="namespacellfio__v2__xxx.html#ac9be77116e7a2d8c029dd066dfa363fb">llfio_v2_xxx::section</a></div><div class="ttdeci">result< section_handle > section(file_handle &backing, section_handle::extent_type maximum_size, section_handle::flag _flag) noexcept</div><div class="ttdoc">Create a memory section backed by a file. </div><div class="ttdef"><b>Definition:</b> map_handle.hpp:686</div></div> +<p>< Is a memory section</p> +<p>< Is a memory allocation</p> +<p>< Issue write reordering barriers at various points</p> +<p>< Is serving metadata from the kernel cache</p> +<p>< Is serving reads from the kernel cache</p> +<p>< Is writing back from kernel cache rather than writing through</p> +<p>< Writes are not flushed to storage quickly</p> +<div class="fragment"><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  {</div> +<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  invalid = 0U, <span class="comment">//!< Invalid handle</span></div> +<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="comment"></span> </div> +<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  readable = 1U << 0U, <span class="comment">//!< Is readable</span></div> +<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="comment"></span> writable = 1U << 1U, <span class="comment">//!< Is writable</span></div> +<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="comment"></span> append_only = 1U << 2U, <span class="comment">//!< Is append only</span></div> +<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="comment"></span> </div> +<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  nonblocking = 1U << 4U, <span class="comment">//!< Requires additional synchronisation (Windows: `OVERLAPPED`; POSIX: `O_NONBLOCK`)</span></div> +<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="comment"></span> seekable = 1U << 5U, <span class="comment">//!< Is seekable</span></div> +<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="comment"></span> aligned_io = 1U << 6U, <span class="comment">//!< Requires sector aligned i/o (typically 512 or 4096)</span></div> +<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="comment"></span> </div> +<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  <a class="code" href="namespacellfio__v2__xxx.html#af31a062639499a79ef5cc8aed16ba65d">file</a> = 1U << 8U, <span class="comment">//!< Is a regular file</span></div> +<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="comment"></span> <a class="code" href="namespacellfio__v2__xxx.html#a3d112d170c1d485e1120de06eef02375">directory</a> = 1U << 9U, <span class="comment">//!< Is a directory</span></div> +<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="comment"></span> symlink = 1U << 10U, <span class="comment">//!< Is a symlink</span></div> +<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="comment"></span> pipe = 1U << 11U, <span class="comment">//!< Is a pipe</span></div> +<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="comment"></span> socket = 1U << 12U, <span class="comment">//!< Is a socket</span></div> +<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="comment"></span> <a class="code" href="namespacellfio__v2__xxx_1_1this__thread.html#afd6a1f179a8f8027f6c051badadf2707">multiplexer</a> = 1U << 13U, <span class="comment">//!< Is a kqueue/epoll/iocp</span></div> +<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="comment"></span> process = 1U << 14U, <span class="comment">//!< Is a child process</span></div> +<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="comment"></span> <a class="code" href="namespacellfio__v2__xxx.html#ac9be77116e7a2d8c029dd066dfa363fb">section</a> = 1U << 15U, <span class="comment">//!< Is a memory section</span></div> +<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="comment"></span> allocation = 1U << 16U, <span class="comment">//!< Is a memory allocation</span></div> +<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment"></span> </div> +<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  safety_barriers = 1U << 20U, <span class="comment">//!< Issue write reordering barriers at various points</span></div> +<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="comment"></span> cache_metadata = 1U << 21U, <span class="comment">//!< Is serving metadata from the kernel cache</span></div> +<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="comment"></span> cache_reads = 1U << 22U, <span class="comment">//!< Is serving reads from the kernel cache</span></div> +<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="comment"></span> cache_writes = 1U << 23U, <span class="comment">//!< Is writing back from kernel cache rather than writing through</span></div> +<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="comment"></span> cache_temporary = 1U << 24U, <span class="comment">//!< Writes are not flushed to storage quickly</span></div> +<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="comment"></span> </div> +<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  _is_connected = 1U << 28U, <span class="comment">// used by pipe_handle on Windows to store connectedness</span></div> +<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  _multiplexer_state_bit0 = 1U << 29U, <span class="comment">// per-handle state bits used by an i/o multiplexer</span></div> +<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  _multiplexer_state_bit1 = 1U << 30U, <span class="comment">// per-handle state bits used by an i/o multiplexer</span></div> +<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  _child_close_executed = 1U << 31U <span class="comment">// used to trap when vptr has become corrupted</span></div> +<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  } <a class="code" href="structllfio__v2__xxx_1_1native__handle__type.html#aefed8c6f2ff66097dc7cb88b6f439db6">QUICKCPPLIB_BITFIELD_END</a>(disposition)</div> +</div><!-- fragment --> +</div> +</div> +<a id="aefed8c6f2ff66097dc7cb88b6f439db6"></a> +<h2 class="memtitle"><span class="permalink"><a href="#aefed8c6f2ff66097dc7cb88b6f439db6">◆ </a></span>QUICKCPPLIB_BITFIELD_END()</h2> + +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">llfio_v2_xxx::native_handle_type::QUICKCPPLIB_BITFIELD_END </td> + <td>(</td> + <td class="paramtype">disposition </td> + <td class="paramname"></td><td>)</td> + <td></td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">inline</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> +<p>A POSIX file descriptor</p> +<p>A POSIX process identifier</p> +<p>A Windows HANDLE</p> +<p>A third party pointer</p> +<div class="fragment"><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  {</div> +<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  intptr_t _init{-1};<span class="comment"></span></div> +<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="comment"> //! A POSIX file descriptor</span></div> +<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="comment"></span> <span class="keywordtype">int</span> fd; <span class="comment">// NOLINT</span><span class="comment"></span></div> +<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="comment"> //! A POSIX process identifier</span></div> +<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="comment"></span> <span class="keywordtype">int</span> pid; <span class="comment">// NOLINT</span><span class="comment"></span></div> +<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="comment"> //! A Windows HANDLE</span></div> +<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="comment"></span> win::handle h; <span class="comment">// NOLINT</span><span class="comment"></span></div> +<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="comment"> //! A third party pointer</span></div> +<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="comment"></span> <span class="keywordtype">void</span> *ptr;</div> +<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  };</div> </div><!-- fragment --> </div> </div> @@ -270,13 +381,18 @@ union {</td></tr> </ul> </div><!-- contents --> </div><!-- doc-content --> +<div class="ttc" id="astructllfio__v2__xxx_1_1native__handle__type_html_aefed8c6f2ff66097dc7cb88b6f439db6"><div class="ttname"><a href="structllfio__v2__xxx_1_1native__handle__type.html#aefed8c6f2ff66097dc7cb88b6f439db6">llfio_v2_xxx::native_handle_type::QUICKCPPLIB_BITFIELD_END</a></div><div class="ttdeci">QUICKCPPLIB_BITFIELD_END(disposition) union</div><div class="ttdef"><b>Definition:</b> native_handle_type.hpp:76</div></div> +<div class="ttc" id="anamespacellfio__v2__xxx_html_a3d112d170c1d485e1120de06eef02375"><div class="ttname"><a href="namespacellfio__v2__xxx.html#a3d112d170c1d485e1120de06eef02375">llfio_v2_xxx::directory</a></div><div class="ttdeci">result< directory_handle > directory(const path_handle &base, directory_handle::path_view_type path, directory_handle::mode _mode=directory_handle::mode::read, directory_handle::creation _creation=directory_handle::creation::open_existing, directory_handle::caching _caching=directory_handle::caching::all, directory_handle::flag flags=directory_handle::flag::none) noexcept</div><div class="ttdef"><b>Definition:</b> directory_handle.hpp:394</div></div> +<div class="ttc" id="anamespacellfio__v2__xxx_1_1this__thread_html_afd6a1f179a8f8027f6c051badadf2707"><div class="ttname"><a href="namespacellfio__v2__xxx_1_1this__thread.html#afd6a1f179a8f8027f6c051badadf2707">llfio_v2_xxx::this_thread::multiplexer</a></div><div class="ttdeci">io_multiplexer * multiplexer() noexcept</div><div class="ttdoc">Return the calling thread's current i/o multiplexer.</div></div> +<div class="ttc" id="anamespacellfio__v2__xxx_html_af31a062639499a79ef5cc8aed16ba65d"><div class="ttname"><a href="namespacellfio__v2__xxx.html#af31a062639499a79ef5cc8aed16ba65d">llfio_v2_xxx::file</a></div><div class="ttdeci">result< file_handle > file(const path_handle &base, file_handle::path_view_type path, file_handle::mode _mode=file_handle::mode::read, file_handle::creation _creation=file_handle::creation::open_existing, file_handle::caching _caching=file_handle::caching::all, file_handle::flag flags=file_handle::flag::none) noexcept</div><div class="ttdef"><b>Definition:</b> file_handle.hpp:418</div></div> +<div class="ttc" id="anamespacellfio__v2__xxx_html_ac9be77116e7a2d8c029dd066dfa363fb"><div class="ttname"><a href="namespacellfio__v2__xxx.html#ac9be77116e7a2d8c029dd066dfa363fb">llfio_v2_xxx::section</a></div><div class="ttdeci">result< section_handle > section(file_handle &backing, section_handle::extent_type maximum_size, section_handle::flag _flag) noexcept</div><div class="ttdoc">Create a memory section backed by a file.</div><div class="ttdef"><b>Definition:</b> map_handle.hpp:899</div></div> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> <ul> <li class="navelem"><a class="el" href="namespacellfio__v2__xxx.html">llfio_v2_xxx</a></li><li class="navelem"><a class="el" href="structllfio__v2__xxx_1_1native__handle__type.html">native_handle_type</a></li> <li class="footer">Generated by <a href="http://www.doxygen.org/index.html"> - <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li> + <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li> </ul> </div> </body> |