Welcome to mirror list, hosted at ThFree Co, Russian Federation.

structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html - github.com/windirstat/llfio.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 5e03394a93765dec908516056988f73ae693bbd1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
<!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.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>LLFIO: llfio_v2_xxx::io_multiplexer::_unsynchronised_io_operation_state Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">LLFIO
   &#160;<span id="projectnumber">v2.00 late beta</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;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&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">llfio_v2_xxx::io_multiplexer::_unsynchronised_io_operation_state Struct Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>An unsynchronised i/o operation state.  
 <a href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html#details">More...</a></p>

<p><code>#include &quot;io_multiplexer.hpp&quot;</code></p>
<div class="dynheader">
Inheritance diagram for llfio_v2_xxx::io_multiplexer::_unsynchronised_io_operation_state:</div>
<div class="dyncontent">
 <div class="center">
  <img src="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.png" usemap="#llfio_5Fv2_5Fxxx::io_5Fmultiplexer::_5Funsynchronised_5Fio_5Foperation_5Fstate_map" alt=""/>
  <map id="llfio_5Fv2_5Fxxx::io_5Fmultiplexer::_5Funsynchronised_5Fio_5Foperation_5Fstate_map" name="llfio_5Fv2_5Fxxx::io_5Fmultiplexer::_5Funsynchronised_5Fio_5Foperation_5Fstate_map">
<area href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__operation__state.html" title="An interface to a state for an i/o operation scheduled against an i/o multiplexer." alt="llfio_v2_xxx::io_multiplexer::io_operation_state" shape="rect" coords="0,0,374,24"/>
<area href="structllfio__v2__xxx_1_1io__multiplexer_1_1__synchronised__io__operation__state.html" title="A synchronised i/o operation state." alt="llfio_v2_xxx::io_multiplexer::_synchronised_io_operation_state" shape="rect" coords="0,112,374,136"/>
  </map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">union &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unionllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state_1_1payload__t.html">payload_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Variant storage.  <a href="unionllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state_1_1payload__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ac059f1ac51373dc506a7998fcf0b7147"><td class="memItemLeft" align="right" valign="top"><a id="ac059f1ac51373dc506a7998fcf0b7147"></a>
constexpr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html#ac059f1ac51373dc506a7998fcf0b7147">_unsynchronised_io_operation_state</a> ()</td></tr>
<tr class="memdesc:ac059f1ac51373dc506a7998fcf0b7147"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct an unknown state. <br /></td></tr>
<tr class="separator:ac059f1ac51373dc506a7998fcf0b7147"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3bd5f8aa3fff63f40b7280987e9e92f1"><td class="memItemLeft" align="right" valign="top"><a id="a3bd5f8aa3fff63f40b7280987e9e92f1"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html#a3bd5f8aa3fff63f40b7280987e9e92f1">_unsynchronised_io_operation_state</a> (<a class="el" href="classllfio__v2__xxx_1_1io__handle.html">io_handle</a> *_h, <a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__operation__state__visitor.html">io_operation_state_visitor</a> *_v, <a class="el" href="classllfio__v2__xxx_1_1io__multiplexer.html#a9991b48f4cd8c77ef7fd31e6c48003b3">registered_buffer_type</a> &amp;&amp;b, <a class="el" href="structllfio__v2__xxx_1_1deadline.html">deadline</a> d, <a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__request.html">io_request</a>&lt; <a class="el" href="classllfio__v2__xxx_1_1io__multiplexer.html#a6f5f10bf45bad03c994342e544675354">buffers_type</a> &gt; reqs)</td></tr>
<tr class="memdesc:a3bd5f8aa3fff63f40b7280987e9e92f1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct a read operation state. <br /></td></tr>
<tr class="separator:a3bd5f8aa3fff63f40b7280987e9e92f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72236e836e8d931921eed3969aee19e4"><td class="memItemLeft" align="right" valign="top"><a id="a72236e836e8d931921eed3969aee19e4"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html#a72236e836e8d931921eed3969aee19e4">_unsynchronised_io_operation_state</a> (<a class="el" href="classllfio__v2__xxx_1_1io__handle.html">io_handle</a> *_h, <a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__operation__state__visitor.html">io_operation_state_visitor</a> *_v, <a class="el" href="classllfio__v2__xxx_1_1io__multiplexer.html#a9991b48f4cd8c77ef7fd31e6c48003b3">registered_buffer_type</a> &amp;&amp;b, <a class="el" href="structllfio__v2__xxx_1_1deadline.html">deadline</a> d, <a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__request.html">io_request</a>&lt; <a class="el" href="classllfio__v2__xxx_1_1io__multiplexer.html#abc6841b44841c72c3778a3aee296a051">const_buffers_type</a> &gt; reqs)</td></tr>
<tr class="memdesc:a72236e836e8d931921eed3969aee19e4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct a write operation state. <br /></td></tr>
<tr class="separator:a72236e836e8d931921eed3969aee19e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b5ca94b944cff01b36d4d85dcaf0975"><td class="memItemLeft" align="right" valign="top"><a id="a3b5ca94b944cff01b36d4d85dcaf0975"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html#a3b5ca94b944cff01b36d4d85dcaf0975">_unsynchronised_io_operation_state</a> (<a class="el" href="classllfio__v2__xxx_1_1io__handle.html">io_handle</a> *_h, <a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__operation__state__visitor.html">io_operation_state_visitor</a> *_v, <a class="el" href="classllfio__v2__xxx_1_1io__multiplexer.html#a9991b48f4cd8c77ef7fd31e6c48003b3">registered_buffer_type</a> &amp;&amp;b, <a class="el" href="structllfio__v2__xxx_1_1deadline.html">deadline</a> d, <a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__request.html">io_request</a>&lt; <a class="el" href="classllfio__v2__xxx_1_1io__multiplexer.html#abc6841b44841c72c3778a3aee296a051">const_buffers_type</a> &gt; reqs, <a class="el" href="classllfio__v2__xxx_1_1io__multiplexer.html#ace3fed6888ea1b5b6f1f641e2cf7cd26">barrier_kind</a> kind)</td></tr>
<tr class="memdesc:a3b5ca94b944cff01b36d4d85dcaf0975"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct a barrier operation state. <br /></td></tr>
<tr class="separator:a3b5ca94b944cff01b36d4d85dcaf0975"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6121c00e99a0f542a3a3dd7948e70385"><td class="memItemLeft" align="right" valign="top"><a id="a6121c00e99a0f542a3a3dd7948e70385"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html#a6121c00e99a0f542a3a3dd7948e70385">_unsynchronised_io_operation_state</a> (<a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__result.html">io_result</a>&lt; <a class="el" href="classllfio__v2__xxx_1_1io__multiplexer.html#a6f5f10bf45bad03c994342e544675354">buffers_type</a> &gt; &amp;&amp;res)</td></tr>
<tr class="memdesc:a6121c00e99a0f542a3a3dd7948e70385"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct a finished read operation state. <br /></td></tr>
<tr class="separator:a6121c00e99a0f542a3a3dd7948e70385"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a15ba07e7c8a65bd0e68b66a246341fef"><td class="memItemLeft" align="right" valign="top"><a id="a15ba07e7c8a65bd0e68b66a246341fef"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html#a15ba07e7c8a65bd0e68b66a246341fef">_unsynchronised_io_operation_state</a> (<a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__result.html">io_result</a>&lt; <a class="el" href="classllfio__v2__xxx_1_1io__multiplexer.html#abc6841b44841c72c3778a3aee296a051">const_buffers_type</a> &gt; &amp;&amp;res)</td></tr>
<tr class="memdesc:a15ba07e7c8a65bd0e68b66a246341fef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct a finished write or barrier operation state. <br /></td></tr>
<tr class="separator:a15ba07e7c8a65bd0e68b66a246341fef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4bb3966e906c5fb81cfa50244a8b7a8b"><td class="memItemLeft" align="right" valign="top"><a id="a4bb3966e906c5fb81cfa50244a8b7a8b"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>_unsynchronised_io_operation_state</b> (const <a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html">_unsynchronised_io_operation_state</a> &amp;)=delete</td></tr>
<tr class="separator:a4bb3966e906c5fb81cfa50244a8b7a8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e7578c0eb50a0758a51d6eeb5855d56"><td class="memItemLeft" align="right" valign="top"><a id="a0e7578c0eb50a0758a51d6eeb5855d56"></a>
<a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html">_unsynchronised_io_operation_state</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html">_unsynchronised_io_operation_state</a> &amp;)=delete</td></tr>
<tr class="separator:a0e7578c0eb50a0758a51d6eeb5855d56"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a33dd639809167638c5ff88876ce6704e"><td class="memItemLeft" align="right" valign="top"><a id="a33dd639809167638c5ff88876ce6704e"></a>
<a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html">_unsynchronised_io_operation_state</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (<a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html">_unsynchronised_io_operation_state</a> &amp;&amp;)=delete</td></tr>
<tr class="separator:a33dd639809167638c5ff88876ce6704e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad4eb0fe836f3853d4498a2e1f3f84a98"><td class="memItemLeft" align="right" valign="top"><a id="ad4eb0fe836f3853d4498a2e1f3f84a98"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html#ad4eb0fe836f3853d4498a2e1f3f84a98">clear_storage</a> ()</td></tr>
<tr class="memdesc:ad4eb0fe836f3853d4498a2e1f3f84a98"><td class="mdescLeft">&#160;</td><td class="mdescRight">Used to clear the storage in this operation state. <br /></td></tr>
<tr class="separator:ad4eb0fe836f3853d4498a2e1f3f84a98"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6eac689d1ad153296e6a4a49f1ab0187"><td class="memItemLeft" align="right" valign="top"><a id="a6eac689d1ad153296e6a4a49f1ab0187"></a>
virtual void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html#a6eac689d1ad153296e6a4a49f1ab0187">invoke</a> (function_ptr&lt; void *(<a class="el" href="namespacellfio__v2__xxx.html#a8884e1fc12d34aeaa428539bf6298745">io_operation_state_type</a>)&gt; c) const noexcept override</td></tr>
<tr class="memdesc:a6eac689d1ad153296e6a4a49f1ab0187"><td class="mdescLeft">&#160;</td><td class="mdescRight">Invoke the callable with the per-i/o state lock held, if any. <br /></td></tr>
<tr class="separator:a6eac689d1ad153296e6a4a49f1ab0187"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a198468a39c9d472204cca865f0024c42"><td class="memItemLeft" align="right" valign="top"><a id="a198468a39c9d472204cca865f0024c42"></a>
virtual <a class="el" href="namespacellfio__v2__xxx.html#a8884e1fc12d34aeaa428539bf6298745">io_operation_state_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html#a198468a39c9d472204cca865f0024c42">current_state</a> () const noexcept override</td></tr>
<tr class="memdesc:a198468a39c9d472204cca865f0024c42"><td class="mdescLeft">&#160;</td><td class="mdescRight">Used to retrieve the current state of the i/o operation. <br /></td></tr>
<tr class="separator:a198468a39c9d472204cca865f0024c42"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9592253b7b44a733a5e1055f6ce7c367"><td class="memItemLeft" align="right" valign="top"><a id="a9592253b7b44a733a5e1055f6ce7c367"></a>
virtual <a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__result.html">io_result</a>&lt; <a class="el" href="classllfio__v2__xxx_1_1io__multiplexer.html#a6f5f10bf45bad03c994342e544675354">buffers_type</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html#a9592253b7b44a733a5e1055f6ce7c367">get_completed_read</a> () &amp;&amp;noexcept override</td></tr>
<tr class="memdesc:a9592253b7b44a733a5e1055f6ce7c367"><td class="mdescLeft">&#160;</td><td class="mdescRight">After an i/o operation has finished, can be used to retrieve the result if the visitor did not. <br /></td></tr>
<tr class="separator:a9592253b7b44a733a5e1055f6ce7c367"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c5cddbf8ac82a21701f314a772187e0"><td class="memItemLeft" align="right" valign="top"><a id="a2c5cddbf8ac82a21701f314a772187e0"></a>
virtual <a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__result.html">io_result</a>&lt; <a class="el" href="classllfio__v2__xxx_1_1io__multiplexer.html#abc6841b44841c72c3778a3aee296a051">const_buffers_type</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html#a2c5cddbf8ac82a21701f314a772187e0">get_completed_write_or_barrier</a> () &amp;&amp;noexcept override</td></tr>
<tr class="memdesc:a2c5cddbf8ac82a21701f314a772187e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">After an i/o operation has finished, can be used to retrieve the result if the visitor did not. <br /></td></tr>
<tr class="separator:a2c5cddbf8ac82a21701f314a772187e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58c5c78ce0aec95c010146024584ddcd"><td class="memItemLeft" align="right" valign="top"><a id="a58c5c78ce0aec95c010146024584ddcd"></a>
virtual <a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__operation__state.html">io_operation_state</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html#a58c5c78ce0aec95c010146024584ddcd">relocate_to</a> (byte *to_) noexcept override</td></tr>
<tr class="memdesc:a58c5c78ce0aec95c010146024584ddcd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Relocate the state to new storage, clearing the original state. Terminates the process if the state is in use. <br /></td></tr>
<tr class="separator:a58c5c78ce0aec95c010146024584ddcd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa302f3e0b65077bc3721db595f6acb98"><td class="memItemLeft" align="right" valign="top"><a id="aa302f3e0b65077bc3721db595f6acb98"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>_read_initiated</b> (<a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__operation__state_1_1lock__guard.html">lock_guard</a> &amp;g)</td></tr>
<tr class="separator:aa302f3e0b65077bc3721db595f6acb98"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:addd6076ed27d82c3614930d4524935b8"><td class="memItemLeft" align="right" valign="top"><a id="addd6076ed27d82c3614930d4524935b8"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>_read_completed</b> (<a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__operation__state_1_1lock__guard.html">lock_guard</a> &amp;g, <a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__result.html">io_result</a>&lt; <a class="el" href="classllfio__v2__xxx_1_1io__multiplexer.html#a6f5f10bf45bad03c994342e544675354">buffers_type</a> &gt; &amp;&amp;res)</td></tr>
<tr class="separator:addd6076ed27d82c3614930d4524935b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac363efe90328c9a7790d94c249a78f6b"><td class="memItemLeft" align="right" valign="top"><a id="ac363efe90328c9a7790d94c249a78f6b"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>_read_finished</b> (<a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__operation__state_1_1lock__guard.html">lock_guard</a> &amp;g)</td></tr>
<tr class="separator:ac363efe90328c9a7790d94c249a78f6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad1ee50a73100f34335b64de59d94214"><td class="memItemLeft" align="right" valign="top"><a id="aad1ee50a73100f34335b64de59d94214"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>_write_initiated</b> (<a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__operation__state_1_1lock__guard.html">lock_guard</a> &amp;g)</td></tr>
<tr class="separator:aad1ee50a73100f34335b64de59d94214"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa08fb625c75115401d281b61a83b8beb"><td class="memItemLeft" align="right" valign="top"><a id="aa08fb625c75115401d281b61a83b8beb"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>_write_completed</b> (<a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__operation__state_1_1lock__guard.html">lock_guard</a> &amp;g, <a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__result.html">io_result</a>&lt; <a class="el" href="classllfio__v2__xxx_1_1io__multiplexer.html#abc6841b44841c72c3778a3aee296a051">const_buffers_type</a> &gt; &amp;&amp;res)</td></tr>
<tr class="separator:aa08fb625c75115401d281b61a83b8beb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a14859e2590300a009a7edddb82d6f035"><td class="memItemLeft" align="right" valign="top"><a id="a14859e2590300a009a7edddb82d6f035"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>_barrier_initiated</b> (<a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__operation__state_1_1lock__guard.html">lock_guard</a> &amp;g)</td></tr>
<tr class="separator:a14859e2590300a009a7edddb82d6f035"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69b3c0981c57dc979e239e48742b30b6"><td class="memItemLeft" align="right" valign="top"><a id="a69b3c0981c57dc979e239e48742b30b6"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>_barrier_completed</b> (<a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__operation__state_1_1lock__guard.html">lock_guard</a> &amp;g, <a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__result.html">io_result</a>&lt; <a class="el" href="classllfio__v2__xxx_1_1io__multiplexer.html#abc6841b44841c72c3778a3aee296a051">const_buffers_type</a> &gt; &amp;&amp;res)</td></tr>
<tr class="separator:a69b3c0981c57dc979e239e48742b30b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b3e1a73a321f965ee0d60deeebd2e62"><td class="memItemLeft" align="right" valign="top"><a id="a9b3e1a73a321f965ee0d60deeebd2e62"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>_write_or_barrier_finished</b> (<a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__operation__state_1_1lock__guard.html">lock_guard</a> &amp;g)</td></tr>
<tr class="separator:a9b3e1a73a321f965ee0d60deeebd2e62"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a726f236aee993a04e1088e927cb7dd22"><td class="memItemLeft" align="right" valign="top"><a id="a726f236aee993a04e1088e927cb7dd22"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>read_initiated</b> ()</td></tr>
<tr class="separator:a726f236aee993a04e1088e927cb7dd22"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25b833d23952b4f790d852ca67bf2498"><td class="memItemLeft" align="right" valign="top"><a id="a25b833d23952b4f790d852ca67bf2498"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>read_completed</b> (<a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__result.html">io_result</a>&lt; <a class="el" href="classllfio__v2__xxx_1_1io__multiplexer.html#a6f5f10bf45bad03c994342e544675354">buffers_type</a> &gt; &amp;&amp;res)</td></tr>
<tr class="separator:a25b833d23952b4f790d852ca67bf2498"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a040be822742b91e92faf58626d9f315b"><td class="memItemLeft" align="right" valign="top"><a id="a040be822742b91e92faf58626d9f315b"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>read_finished</b> ()</td></tr>
<tr class="separator:a040be822742b91e92faf58626d9f315b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8e74f943b29d8de7889cc3ebfda7a3d2"><td class="memItemLeft" align="right" valign="top"><a id="a8e74f943b29d8de7889cc3ebfda7a3d2"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>write_initiated</b> ()</td></tr>
<tr class="separator:a8e74f943b29d8de7889cc3ebfda7a3d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84cd5ea7fe3d85bc70ac4d9a495fe3a1"><td class="memItemLeft" align="right" valign="top"><a id="a84cd5ea7fe3d85bc70ac4d9a495fe3a1"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>write_completed</b> (<a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__result.html">io_result</a>&lt; <a class="el" href="classllfio__v2__xxx_1_1io__multiplexer.html#abc6841b44841c72c3778a3aee296a051">const_buffers_type</a> &gt; &amp;&amp;res)</td></tr>
<tr class="separator:a84cd5ea7fe3d85bc70ac4d9a495fe3a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad0107b8c14a99e3dc26c54ba862b46e"><td class="memItemLeft" align="right" valign="top"><a id="aad0107b8c14a99e3dc26c54ba862b46e"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>barrier_initiated</b> ()</td></tr>
<tr class="separator:aad0107b8c14a99e3dc26c54ba862b46e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e19333dfa7de8cd69b17e8cb8ddc32f"><td class="memItemLeft" align="right" valign="top"><a id="a4e19333dfa7de8cd69b17e8cb8ddc32f"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>barrier_completed</b> (<a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__result.html">io_result</a>&lt; <a class="el" href="classllfio__v2__xxx_1_1io__multiplexer.html#abc6841b44841c72c3778a3aee296a051">const_buffers_type</a> &gt; &amp;&amp;res)</td></tr>
<tr class="separator:a4e19333dfa7de8cd69b17e8cb8ddc32f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a74d73db18493334a0b771bb394d83b59"><td class="memItemLeft" align="right" valign="top"><a id="a74d73db18493334a0b771bb394d83b59"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>write_or_barrier_finished</b> ()</td></tr>
<tr class="separator:a74d73db18493334a0b771bb394d83b59"><td class="memSeparator" colspan="2">&#160;</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:aa41379b452b50f267639b8d2ebbbdfa4"><td class="memItemLeft" align="right" valign="top"><a id="aa41379b452b50f267639b8d2ebbbdfa4"></a>
<a class="el" href="namespacellfio__v2__xxx.html#a8884e1fc12d34aeaa428539bf6298745">io_operation_state_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html#aa41379b452b50f267639b8d2ebbbdfa4">state</a> {io_operation_state_type::unknown}</td></tr>
<tr class="memdesc:aa41379b452b50f267639b8d2ebbbdfa4"><td class="mdescLeft">&#160;</td><td class="mdescRight">The current lifecycle state of this i/o operation. <br /></td></tr>
<tr class="separator:aa41379b452b50f267639b8d2ebbbdfa4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acda4e1f8e7713fb5a0c5e1cffbb8dcac"><td class="memItemLeft" align="right" valign="top"><a id="acda4e1f8e7713fb5a0c5e1cffbb8dcac"></a>
union <a class="el" href="unionllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state_1_1payload__t.html">llfio_v2_xxx::io_multiplexer::_unsynchronised_io_operation_state::payload_t</a>&#160;</td><td class="memItemRight" valign="bottom"><b>payload</b></td></tr>
<tr class="separator:acda4e1f8e7713fb5a0c5e1cffbb8dcac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0ea732afb9aed27c04d6f333ed815ae"><td class="memItemLeft" align="right" valign="top"><a id="aa0ea732afb9aed27c04d6f333ed815ae"></a>
<a class="el" href="classllfio__v2__xxx_1_1io__handle.html">io_handle</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__operation__state.html#aa0ea732afb9aed27c04d6f333ed815ae">h</a> {nullptr}</td></tr>
<tr class="memdesc:aa0ea732afb9aed27c04d6f333ed815ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">The i/o handle the i/o operation is upon. <br /></td></tr>
<tr class="separator:aa0ea732afb9aed27c04d6f333ed815ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a648d87148f5a16587c9f9c2a5663e20c"><td class="memItemLeft" align="right" valign="top"><a id="a648d87148f5a16587c9f9c2a5663e20c"></a>
<a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__operation__state__visitor.html">io_operation_state_visitor</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1io__operation__state.html#a648d87148f5a16587c9f9c2a5663e20c">visitor</a> {nullptr}</td></tr>
<tr class="memdesc:a648d87148f5a16587c9f9c2a5663e20c"><td class="mdescLeft">&#160;</td><td class="mdescRight">The state visitor supplied when the operation was initialised. <br /></td></tr>
<tr class="separator:a648d87148f5a16587c9f9c2a5663e20c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a8a3379a6af67a1656a2ee2f20058f847"><td class="memItemLeft" align="right" valign="top"><a id="a8a3379a6af67a1656a2ee2f20058f847"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>_unsynchronised_io_operation_state</b> (<a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html">_unsynchronised_io_operation_state</a> &amp;&amp;o) noexcept</td></tr>
<tr class="separator:a8a3379a6af67a1656a2ee2f20058f847"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a01b43e5fc4b158b62f809eb7974bc9b6"><td class="memItemLeft" align="right" valign="top"><a id="a01b43e5fc4b158b62f809eb7974bc9b6"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>_lock</b> () noexcept</td></tr>
<tr class="separator:a01b43e5fc4b158b62f809eb7974bc9b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84e74147ea57e8276546fb28cb0a20c7"><td class="memItemLeft" align="right" valign="top"><a id="a84e74147ea57e8276546fb28cb0a20c7"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>_unlock</b> () noexcept</td></tr>
<tr class="separator:a84e74147ea57e8276546fb28cb0a20c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>An unsynchronised i/o operation state. </p>
<p>This implementation does NOT use atomics during access. </p>
</div><hr/>The documentation for this struct was generated from the following file:<ul>
<li>include/llfio/v2.0/io_multiplexer.hpp</li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- 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="classllfio__v2__xxx_1_1io__multiplexer.html">io_multiplexer</a></li><li class="navelem"><a class="el" href="structllfio__v2__xxx_1_1io__multiplexer_1_1__unsynchronised__io__operation__state.html">_unsynchronised_io_operation_state</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.17 </li>
  </ul>
</div>
</body>
</html>