3 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
4 <title>buffer (with strategies)</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="../../../../index.html" title="Chapter 1. Geometry">
8 <link rel="up" href="../buffer.html" title="buffer">
9 <link rel="prev" href="buffer_4.html" title="buffer">
10 <link rel="next" href="return_buffer.html" title="return_buffer">
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>
22 <div class="spirit-nav">
23 <a accesskey="p" href="buffer_4.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../buffer.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="return_buffer.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
26 <div class="titlepage"><div><div><h5 class="title">
27 <a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies"></a><a class="link" href="buffer_7_with_strategies.html" title="buffer (with strategies)">buffer
29 </h5></div></div></div>
31 <a class="indexterm" name="idm46187008039696"></a>
32 Calculates the buffer of a geometry.
35 <a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.h0"></a>
36 <span class="phrase"><a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.description"></a></span><a class="link" href="buffer_7_with_strategies.html#geometry.reference.algorithms.buffer.buffer_7_with_strategies.description">Description</a>
39 The free function buffer calculates the buffer (a polygon being the spatial
40 point set collection within a specified maximum distance from a geometry)
44 <a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.h1"></a>
45 <span class="phrase"><a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.synopsis"></a></span><a class="link" href="buffer_7_with_strategies.html#geometry.reference.algorithms.buffer.buffer_7_with_strategies.synopsis">Synopsis</a>
49 <pre class="programlisting"><span class="keyword">template</span><span class="special"><</span><span class="keyword">typename</span> <span class="identifier">GeometryIn</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">MultiPolygon</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">DistanceStrategy</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">SideStrategy</span><span class="special">,</span>
50 <span class="keyword">typename</span> <span class="identifier">JoinStrategy</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">EndStrategy</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">PointStrategy</span><span class="special">></span>
51 <span class="keyword">void</span> <span class="identifier">buffer</span><span class="special">(</span><span class="identifier">GeometryIn</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">geometry_in</span><span class="special">,</span> <span class="identifier">MultiPolygon</span> <span class="special">&</span> <span class="identifier">geometry_out</span><span class="special">,</span> <span class="identifier">DistanceStrategy</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">distance_strategy</span><span class="special">,</span>
52 <span class="identifier">SideStrategy</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">side_strategy</span><span class="special">,</span> <span class="identifier">JoinStrategy</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">join_strategy</span><span class="special">,</span> <span class="identifier">EndStrategy</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">end_strategy</span><span class="special">,</span>
53 <span class="identifier">PointStrategy</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">point_strategy</span><span class="special">)</span></pre>
57 <a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.h2"></a>
58 <span class="phrase"><a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.parameters"></a></span><a class="link" href="buffer_7_with_strategies.html#geometry.reference.algorithms.buffer.buffer_7_with_strategies.parameters">Parameters</a>
60 <div class="informaltable"><table class="table">
93 GeometryIn const &
98 Any type fulfilling a Geometry Concept
108 A model of the specified concept
120 A type fulfilling the MultiPolygon Concept
130 output multi polygon (or std:: collection of polygons), will
131 contain a buffered version of the input geometry
138 DistanceStrategy const &
143 A strategy defining distance (or radius)
153 The distance strategy to be used
160 SideStrategy const &
165 A strategy defining creation along sides
175 The side strategy to be used
182 JoinStrategy const &
187 A strategy defining creation around convex corners
197 The join strategy to be used
204 EndStrategy const &
209 A strategy defining creation at linestring ends
219 The end strategy to be used
226 PointStrategy const &
231 A strategy defining creation around points
241 The point strategy to be used
248 <a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.h3"></a>
249 <span class="phrase"><a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.header"></a></span><a class="link" href="buffer_7_with_strategies.html#geometry.reference.algorithms.buffer.buffer_7_with_strategies.header">Header</a>
255 <code class="computeroutput"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span></code>
261 <code class="computeroutput"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">/</span><span class="identifier">algorithms</span><span class="special">/</span><span class="identifier">buffer</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span></code>
264 <a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.h4"></a>
265 <span class="phrase"><a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.strategies"></a></span><a class="link" href="buffer_7_with_strategies.html#geometry.reference.algorithms.buffer.buffer_7_with_strategies.strategies">Strategies</a>
268 The 5 strategies give the user control to the generated buffer
270 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
271 <li class="listitem">
272 convex corners can be rounded or sharp
274 <li class="listitem">
275 line-ends can be rounded or flat
277 <li class="listitem">
278 distance can be symmetric or assymetric, and positive or negative
280 <li class="listitem">
281 around points the shape can be circular or square
283 <li class="listitem">
284 the sides can be controlled (currently there is only one option provided)
288 By specifying a negative distance for the distance_strategy, for the
289 (multi) polygon case, the polygon will be smaller (also known as deflate).
290 The distance cannot be 0.
293 The next figure shows where in the generated buffer the strategies have
297 <span class="inlinemediaobject"><img src="../../../../img/algorithms/buffer_strategies.png" alt="buffer_strategies"></span>
300 <a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.h5"></a>
301 <span class="phrase"><a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.conformance"></a></span><a class="link" href="buffer_7_with_strategies.html#geometry.reference.algorithms.buffer.buffer_7_with_strategies.conformance">Conformance</a>
304 The function buffer implements function Buffer from the <a href="http://www.opengeospatial.org/standards/sfa" target="_top">OGC
305 Simple Feature Specification</a>.
308 It is conformant if used with the following combination of strategies:
309 <a class="link" href="../../strategies/strategy_buffer_join_round.html" title="strategy::buffer::join_round">join_round</a>,
310 <a class="link" href="../../strategies/strategy_buffer_end_round.html" title="strategy::buffer::end_round">end_round</a>,
311 <a class="link" href="../../strategies/strategy_buffer_distance_symmetric.html" title="strategy::buffer::distance_symmetric">distance_symmetric</a>,
312 <a class="link" href="../../strategies/strategy_buffer_point_circle.html" title="strategy::buffer::point_circle">point_circle</a>,
316 <a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.h6"></a>
317 <span class="phrase"><a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.supported_geometries"></a></span><a class="link" href="buffer_7_with_strategies.html#geometry.reference.algorithms.buffer.buffer_7_with_strategies.supported_geometries">Supported
320 <div class="informaltable"><table class="table">
349 <span class="inlinemediaobject"><img src="../../../../img/ok.png" alt="ok"></span>
354 <span class="inlinemediaobject"><img src="../../../../img/ok.png" alt="ok"></span>
366 <span class="inlinemediaobject"><img src="../../../../img/nyi.png" alt="nyi"></span>
371 <span class="inlinemediaobject"><img src="../../../../img/nyi.png" alt="nyi"></span>
383 <span class="inlinemediaobject"><img src="../../../../img/nyi.png" alt="nyi"></span>
388 <span class="inlinemediaobject"><img src="../../../../img/nyi.png" alt="nyi"></span>
400 <span class="inlinemediaobject"><img src="../../../../img/ok.png" alt="ok"></span>
405 <span class="inlinemediaobject"><img src="../../../../img/nyi.png" alt="nyi"></span>
417 <span class="inlinemediaobject"><img src="../../../../img/ok.png" alt="ok"></span>
422 <span class="inlinemediaobject"><img src="../../../../img/nyi.png" alt="nyi"></span>
434 <span class="inlinemediaobject"><img src="../../../../img/ok.png" alt="ok"></span>
439 <span class="inlinemediaobject"><img src="../../../../img/nyi.png" alt="nyi"></span>
451 <span class="inlinemediaobject"><img src="../../../../img/ok.png" alt="ok"></span>
456 <span class="inlinemediaobject"><img src="../../../../img/nyi.png" alt="nyi"></span>
468 <span class="inlinemediaobject"><img src="../../../../img/ok.png" alt="ok"></span>
473 <span class="inlinemediaobject"><img src="../../../../img/nyi.png" alt="nyi"></span>
485 <span class="inlinemediaobject"><img src="../../../../img/ok.png" alt="ok"></span>
490 <span class="inlinemediaobject"><img src="../../../../img/nyi.png" alt="nyi"></span>
497 <a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.h7"></a>
498 <span class="phrase"><a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.examples"></a></span><a class="link" href="buffer_7_with_strategies.html#geometry.reference.algorithms.buffer.buffer_7_with_strategies.examples">Examples</a>
501 Shows how the buffer algorithm can be used to create a buffer of a linestring,
502 a multi point, a multi polygon
506 <pre class="programlisting"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
507 <span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">/</span><span class="identifier">geometries</span><span class="special">/</span><span class="identifier">point_xy</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
508 <span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">/</span><span class="identifier">geometries</span><span class="special">/</span><span class="identifier">geometries</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
511 <span class="keyword">int</span> <span class="identifier">main</span><span class="special">()</span>
512 <span class="special">{</span>
513 <span class="keyword">typedef</span> <span class="keyword">double</span> <span class="identifier">coordinate_type</span><span class="special">;</span>
514 <span class="keyword">typedef</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">model</span><span class="special">::</span><span class="identifier">d2</span><span class="special">::</span><span class="identifier">point_xy</span><span class="special"><</span><span class="identifier">coordinate_type</span><span class="special">></span> <span class="identifier">point</span><span class="special">;</span>
515 <span class="keyword">typedef</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">model</span><span class="special">::</span><span class="identifier">polygon</span><span class="special"><</span><span class="identifier">point</span><span class="special">></span> <span class="identifier">polygon</span><span class="special">;</span>
517 <span class="comment">// Declare strategies</span>
518 <span class="keyword">const</span> <span class="keyword">double</span> <span class="identifier">buffer_distance</span> <span class="special">=</span> <span class="number">1.0</span><span class="special">;</span>
519 <span class="keyword">const</span> <span class="keyword">int</span> <span class="identifier">points_per_circle</span> <span class="special">=</span> <span class="number">36</span><span class="special">;</span>
520 <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">strategy</span><span class="special">::</span><span class="identifier">buffer</span><span class="special">::</span><span class="identifier">distance_symmetric</span><span class="special"><</span><span class="identifier">coordinate_type</span><span class="special">></span> <span class="identifier">distance_strategy</span><span class="special">(</span><span class="identifier">buffer_distance</span><span class="special">);</span>
521 <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">strategy</span><span class="special">::</span><span class="identifier">buffer</span><span class="special">::</span><span class="identifier">join_round</span> <span class="identifier">join_strategy</span><span class="special">(</span><span class="identifier">points_per_circle</span><span class="special">);</span>
522 <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">strategy</span><span class="special">::</span><span class="identifier">buffer</span><span class="special">::</span><span class="identifier">end_round</span> <span class="identifier">end_strategy</span><span class="special">(</span><span class="identifier">points_per_circle</span><span class="special">);</span>
523 <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">strategy</span><span class="special">::</span><span class="identifier">buffer</span><span class="special">::</span><span class="identifier">point_circle</span> <span class="identifier">circle_strategy</span><span class="special">(</span><span class="identifier">points_per_circle</span><span class="special">);</span>
524 <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">strategy</span><span class="special">::</span><span class="identifier">buffer</span><span class="special">::</span><span class="identifier">side_straight</span> <span class="identifier">side_strategy</span><span class="special">;</span>
526 <span class="comment">// Declare output</span>
527 <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">model</span><span class="special">::</span><span class="identifier">multi_polygon</span><span class="special"><</span><span class="identifier">polygon</span><span class="special">></span> <span class="identifier">result</span><span class="special">;</span>
529 <span class="comment">// Declare/fill a linestring</span>
530 <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">model</span><span class="special">::</span><span class="identifier">linestring</span><span class="special"><</span><span class="identifier">point</span><span class="special">></span> <span class="identifier">ls</span><span class="special">;</span>
531 <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">read_wkt</span><span class="special">(</span><span class="string">"LINESTRING(0 0,4 5,7 4,10 6)"</span><span class="special">,</span> <span class="identifier">ls</span><span class="special">);</span>
533 <span class="comment">// Create the buffer of a linestring</span>
534 <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">buffer</span><span class="special">(</span><span class="identifier">ls</span><span class="special">,</span> <span class="identifier">result</span><span class="special">,</span>
535 <span class="identifier">distance_strategy</span><span class="special">,</span> <span class="identifier">side_strategy</span><span class="special">,</span>
536 <span class="identifier">join_strategy</span><span class="special">,</span> <span class="identifier">end_strategy</span><span class="special">,</span> <span class="identifier">circle_strategy</span><span class="special">);</span>
539 <span class="comment">// Declare/fill a multi point</span>
540 <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">model</span><span class="special">::</span><span class="identifier">multi_point</span><span class="special"><</span><span class="identifier">point</span><span class="special">></span> <span class="identifier">mp</span><span class="special">;</span>
541 <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">read_wkt</span><span class="special">(</span><span class="string">"MULTIPOINT((3 3),(4 4),(6 2))"</span><span class="special">,</span> <span class="identifier">mp</span><span class="special">);</span>
543 <span class="comment">// Create the buffer of a multi point</span>
544 <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">buffer</span><span class="special">(</span><span class="identifier">mp</span><span class="special">,</span> <span class="identifier">result</span><span class="special">,</span>
545 <span class="identifier">distance_strategy</span><span class="special">,</span> <span class="identifier">side_strategy</span><span class="special">,</span>
546 <span class="identifier">join_strategy</span><span class="special">,</span> <span class="identifier">end_strategy</span><span class="special">,</span> <span class="identifier">circle_strategy</span><span class="special">);</span>
549 <span class="comment">// Declare/fill a multi_polygon</span>
550 <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">model</span><span class="special">::</span><span class="identifier">multi_polygon</span><span class="special"><</span><span class="identifier">polygon</span><span class="special">></span> <span class="identifier">mpol</span><span class="special">;</span>
551 <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">read_wkt</span><span class="special">(</span><span class="string">"MULTIPOLYGON(((0 1,2 5,5 3,0 1)),((1 1,5 2,5 0,1 1)))"</span><span class="special">,</span> <span class="identifier">mpol</span><span class="special">);</span>
553 <span class="comment">// Create the buffer of a multi polygon</span>
554 <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">buffer</span><span class="special">(</span><span class="identifier">mpol</span><span class="special">,</span> <span class="identifier">result</span><span class="special">,</span>
555 <span class="identifier">distance_strategy</span><span class="special">,</span> <span class="identifier">side_strategy</span><span class="special">,</span>
556 <span class="identifier">join_strategy</span><span class="special">,</span> <span class="identifier">end_strategy</span><span class="special">,</span> <span class="identifier">circle_strategy</span><span class="special">);</span>
559 <span class="keyword">return</span> <span class="number">0</span><span class="special">;</span>
560 <span class="special">}</span>
565 <a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.h8"></a>
566 <span class="phrase"><a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.the_linestring_case"></a></span><a class="link" href="buffer_7_with_strategies.html#geometry.reference.algorithms.buffer.buffer_7_with_strategies.the_linestring_case">The
570 <span class="inlinemediaobject"><img src="../../../../img/algorithms/buffer_linestring.png" alt="buffer_linestring"></span>
573 <a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.h9"></a>
574 <span class="phrase"><a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.the_multi_point_case"></a></span><a class="link" href="buffer_7_with_strategies.html#geometry.reference.algorithms.buffer.buffer_7_with_strategies.the_multi_point_case">The
578 <span class="inlinemediaobject"><img src="../../../../img/algorithms/buffer_multi_point.png" alt="buffer_multi_point"></span>
581 <a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.h10"></a>
582 <span class="phrase"><a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.the_multi_polygon_case"></a></span><a class="link" href="buffer_7_with_strategies.html#geometry.reference.algorithms.buffer.buffer_7_with_strategies.the_multi_polygon_case">The
583 multi_polygon case</a>
586 <span class="inlinemediaobject"><img src="../../../../img/algorithms/buffer_multi_polygon.png" alt="buffer_multi_polygon"></span>
589 <a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.h11"></a>
590 <span class="phrase"><a name="geometry.reference.algorithms.buffer.buffer_7_with_strategies.available_strategies"></a></span><a class="link" href="buffer_7_with_strategies.html#geometry.reference.algorithms.buffer.buffer_7_with_strategies.available_strategies">Available
593 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
594 <li class="listitem">
595 JoinStrategy: <a class="link" href="../../strategies/strategy_buffer_join_round.html" title="strategy::buffer::join_round">join_round
598 <li class="listitem">
599 JoinStrategy: <a class="link" href="../../strategies/strategy_buffer_join_miter.html" title="strategy::buffer::join_miter">join_miter
602 <li class="listitem">
603 EndStrategy: <a class="link" href="../../strategies/strategy_buffer_end_round.html" title="strategy::buffer::end_round">end_round
606 <li class="listitem">
607 EndStrategy: <a class="link" href="../../strategies/strategy_buffer_end_flat.html" title="strategy::buffer::end_flat">end_flat
610 <li class="listitem">
611 DistanceStrategy: <a class="link" href="../../strategies/strategy_buffer_distance_symmetric.html" title="strategy::buffer::distance_symmetric">distance_symmetric</a>
613 <li class="listitem">
614 DistanceStrategy: <a class="link" href="../../strategies/strategy_buffer_distance_asymmetric.html" title="strategy::buffer::distance_asymmetric">distance_asymmetric</a>
616 <li class="listitem">
617 PointStrategy: <a class="link" href="../../strategies/strategy_buffer_point_circle.html" title="strategy::buffer::point_circle">point_circle
620 <li class="listitem">
621 PointStrategy: <a class="link" href="../../strategies/strategy_buffer_point_square.html" title="strategy::buffer::point_square">point_square
624 <li class="listitem">
625 PointStrategy: <a class="link" href="../../strategies/strategy_buffer_geographic_point_circle.html" title="strategy::buffer::geographic_point_circle">geographic_point_circle
628 <li class="listitem">
629 SideStrategy: <a class="link" href="../../strategies/strategy_buffer_side_straight.html" title="strategy::buffer::side_straight">side_straight
634 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
635 <td align="left"></td>
636 <td align="right"><div class="copyright-footer">Copyright © 2009-2019 Barend Gehrels, Bruno Lalande, Mateusz Loskot, Adam
637 Wulkiewicz, Oracle and/or its affiliates<p>
638 Distributed under the Boost Software License, Version 1.0. (See accompanying
639 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>)
644 <div class="spirit-nav">
645 <a accesskey="p" href="buffer_4.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../buffer.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="return_buffer.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>