1<html> 2<head> 3<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 4<title>dynamic_vector_buffer</title> 5<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css"> 6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1"> 7<link rel="home" href="../../boost_asio.html" title="Boost.Asio"> 8<link rel="up" href="../reference.html" title="Reference"> 9<link rel="prev" href="dynamic_string_buffer/size.html" title="dynamic_string_buffer::size"> 10<link rel="next" href="dynamic_vector_buffer/capacity.html" title="dynamic_vector_buffer::capacity"> 11</head> 12<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> 13<table cellpadding="2" width="100%"><tr> 14<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td> 15<td align="center"><a href="../../../../index.html">Home</a></td> 16<td align="center"><a href="../../../../libs/libraries.htm">Libraries</a></td> 17<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td> 18<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td> 19<td align="center"><a href="../../../../more/index.htm">More</a></td> 20</tr></table> 21<hr> 22<div class="spirit-nav"> 23<a accesskey="p" href="dynamic_string_buffer/size.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../boost_asio.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="dynamic_vector_buffer/capacity.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a> 24</div> 25<div class="section"> 26<div class="titlepage"><div><div><h3 class="title"> 27<a name="boost_asio.reference.dynamic_vector_buffer"></a><a class="link" href="dynamic_vector_buffer.html" title="dynamic_vector_buffer">dynamic_vector_buffer</a> 28</h3></div></div></div> 29<p> 30 Adapt a vector to the DynamicBuffer requirements. 31 </p> 32<pre class="programlisting">template< 33 typename Elem, 34 typename Allocator> 35class dynamic_vector_buffer 36</pre> 37<h5> 38<a name="boost_asio.reference.dynamic_vector_buffer.h0"></a> 39 <span class="phrase"><a name="boost_asio.reference.dynamic_vector_buffer.types"></a></span><a class="link" href="dynamic_vector_buffer.html#boost_asio.reference.dynamic_vector_buffer.types">Types</a> 40 </h5> 41<div class="informaltable"><table class="table"> 42<colgroup> 43<col> 44<col> 45</colgroup> 46<thead><tr> 47<th> 48 <p> 49 Name 50 </p> 51 </th> 52<th> 53 <p> 54 Description 55 </p> 56 </th> 57</tr></thead> 58<tbody> 59<tr> 60<td> 61 <p> 62 <a class="link" href="dynamic_vector_buffer/const_buffers_type.html" title="dynamic_vector_buffer::const_buffers_type"><span class="bold"><strong>const_buffers_type</strong></span></a> 63 </p> 64 </td> 65<td> 66 <p> 67 The type used to represent a sequence of constant buffers that 68 refers to the underlying memory. 69 </p> 70 </td> 71</tr> 72<tr> 73<td> 74 <p> 75 <a class="link" href="dynamic_vector_buffer/mutable_buffers_type.html" title="dynamic_vector_buffer::mutable_buffers_type"><span class="bold"><strong>mutable_buffers_type</strong></span></a> 76 </p> 77 </td> 78<td> 79 <p> 80 The type used to represent a sequence of mutable buffers that refers 81 to the underlying memory. 82 </p> 83 </td> 84</tr> 85</tbody> 86</table></div> 87<h5> 88<a name="boost_asio.reference.dynamic_vector_buffer.h1"></a> 89 <span class="phrase"><a name="boost_asio.reference.dynamic_vector_buffer.member_functions"></a></span><a class="link" href="dynamic_vector_buffer.html#boost_asio.reference.dynamic_vector_buffer.member_functions">Member 90 Functions</a> 91 </h5> 92<div class="informaltable"><table class="table"> 93<colgroup> 94<col> 95<col> 96</colgroup> 97<thead><tr> 98<th> 99 <p> 100 Name 101 </p> 102 </th> 103<th> 104 <p> 105 Description 106 </p> 107 </th> 108</tr></thead> 109<tbody> 110<tr> 111<td> 112 <p> 113 <a class="link" href="dynamic_vector_buffer/capacity.html" title="dynamic_vector_buffer::capacity"><span class="bold"><strong>capacity</strong></span></a> 114 </p> 115 </td> 116<td> 117 <p> 118 Get the maximum size that the buffer may grow to without triggering 119 reallocation. 120 </p> 121 </td> 122</tr> 123<tr> 124<td> 125 <p> 126 <a class="link" href="dynamic_vector_buffer/commit.html" title="dynamic_vector_buffer::commit"><span class="bold"><strong>commit</strong></span></a> 127 </p> 128 </td> 129<td> 130 <p> 131 DynamicBuffer_v1: Move bytes from the output sequence to the input 132 sequence. 133 </p> 134 </td> 135</tr> 136<tr> 137<td> 138 <p> 139 <a class="link" href="dynamic_vector_buffer/consume.html" title="dynamic_vector_buffer::consume"><span class="bold"><strong>consume</strong></span></a> 140 </p> 141 </td> 142<td> 143 <p> 144 DynamicBuffer_v1: Remove characters from the input sequence. DynamicBuffer_v2: 145 Consume the specified number of bytes from the beginning of the 146 underlying memory. 147 </p> 148 </td> 149</tr> 150<tr> 151<td> 152 <p> 153 <a class="link" href="dynamic_vector_buffer/data.html" title="dynamic_vector_buffer::data"><span class="bold"><strong>data</strong></span></a> 154 </p> 155 </td> 156<td> 157 <p> 158 DynamicBuffer_v1: Get a list of buffers that represents the input 159 sequence. <br> <span class="silver"> —</span><br> DynamicBuffer_v2: Get a sequence of buffers 160 that represents the underlying memory. 161 </p> 162 </td> 163</tr> 164<tr> 165<td> 166 <p> 167 <a class="link" href="dynamic_vector_buffer/dynamic_vector_buffer.html" title="dynamic_vector_buffer::dynamic_vector_buffer"><span class="bold"><strong>dynamic_vector_buffer</strong></span></a> <span class="silver">[constructor]</span> 168 </p> 169 </td> 170<td> 171 <p> 172 Construct a dynamic buffer from a vector. <br> <span class="silver"> —</span><br> DynamicBuffer_v2: 173 Copy construct a dynamic buffer. <br> <span class="silver"> —</span><br> Move construct a 174 dynamic buffer. 175 </p> 176 </td> 177</tr> 178<tr> 179<td> 180 <p> 181 <a class="link" href="dynamic_vector_buffer/grow.html" title="dynamic_vector_buffer::grow"><span class="bold"><strong>grow</strong></span></a> 182 </p> 183 </td> 184<td> 185 <p> 186 DynamicBuffer_v2: Grow the underlying memory by the specified number 187 of bytes. 188 </p> 189 </td> 190</tr> 191<tr> 192<td> 193 <p> 194 <a class="link" href="dynamic_vector_buffer/max_size.html" title="dynamic_vector_buffer::max_size"><span class="bold"><strong>max_size</strong></span></a> 195 </p> 196 </td> 197<td> 198 <p> 199 Get the maximum size of the dynamic buffer. 200 </p> 201 </td> 202</tr> 203<tr> 204<td> 205 <p> 206 <a class="link" href="dynamic_vector_buffer/prepare.html" title="dynamic_vector_buffer::prepare"><span class="bold"><strong>prepare</strong></span></a> 207 </p> 208 </td> 209<td> 210 <p> 211 DynamicBuffer_v1: Get a list of buffers that represents the output 212 sequence, with the given size. 213 </p> 214 </td> 215</tr> 216<tr> 217<td> 218 <p> 219 <a class="link" href="dynamic_vector_buffer/shrink.html" title="dynamic_vector_buffer::shrink"><span class="bold"><strong>shrink</strong></span></a> 220 </p> 221 </td> 222<td> 223 <p> 224 DynamicBuffer_v2: Shrink the underlying memory by the specified 225 number of bytes. 226 </p> 227 </td> 228</tr> 229<tr> 230<td> 231 <p> 232 <a class="link" href="dynamic_vector_buffer/size.html" title="dynamic_vector_buffer::size"><span class="bold"><strong>size</strong></span></a> 233 </p> 234 </td> 235<td> 236 <p> 237 DynamicBuffer_v1: Get the size of the input sequence. DynamicBuffer_v2: 238 Get the current size of the underlying memory. 239 </p> 240 </td> 241</tr> 242</tbody> 243</table></div> 244<p> 245 Requires that <code class="computeroutput">sizeof(Elem) == 1</code>. 246 </p> 247<h5> 248<a name="boost_asio.reference.dynamic_vector_buffer.h2"></a> 249 <span class="phrase"><a name="boost_asio.reference.dynamic_vector_buffer.requirements"></a></span><a class="link" href="dynamic_vector_buffer.html#boost_asio.reference.dynamic_vector_buffer.requirements">Requirements</a> 250 </h5> 251<p> 252 <span class="emphasis"><em>Header: </em></span><code class="literal">boost/asio/buffer.hpp</code> 253 </p> 254<p> 255 <span class="emphasis"><em>Convenience header: </em></span><code class="literal">boost/asio.hpp</code> 256 </p> 257</div> 258<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> 259<td align="left"></td> 260<td align="right"><div class="copyright-footer">Copyright © 2003-2020 Christopher M. 261 Kohlhoff<p> 262 Distributed under the Boost Software License, Version 1.0. (See accompanying 263 file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) 264 </p> 265</div></td> 266</tr></table> 267<hr> 268<div class="spirit-nav"> 269<a accesskey="p" href="dynamic_string_buffer/size.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../boost_asio.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="dynamic_vector_buffer/capacity.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a> 270</div> 271</body> 272</html> 273