<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>windows::overlapped_ptr</title>
<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../boost_asio.html" title="Boost.Asio">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="windows__basic_stream_handle/write_some/overload2.html" title="windows::basic_stream_handle::write_some (2 of 2 overloads)">
<link rel="next" href="windows__overlapped_ptr/complete.html" title="windows::overlapped_ptr::complete">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
<td align="center"><a href="../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="windows__basic_stream_handle/write_some/overload2.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="windows__overlapped_ptr/complete.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="boost_asio.reference.windows__overlapped_ptr"></a><a class="link" href="windows__overlapped_ptr.html" title="windows::overlapped_ptr">windows::overlapped_ptr</a>
</h3></div></div></div>
<p>
        Wraps a handler to create an OVERLAPPED object for use with overlapped I/O.
      </p>
<pre class="programlisting"><span class="keyword">class</span> <span class="identifier">overlapped_ptr</span> <span class="special">:</span>
  <span class="identifier">noncopyable</span>
</pre>
<a name="boost_asio.reference.windows__overlapped_ptr.member_functions"></a><h5>
<a name="id1386241"></a>
        <a class="link" href="windows__overlapped_ptr.html#boost_asio.reference.windows__overlapped_ptr.member_functions">Member
        Functions</a>
      </h5>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
                <p>
                  Name
                </p>
              </th>
<th>
                <p>
                  Description
                </p>
              </th>
</tr></thead>
<tbody>
<tr>
<td>
                <p>
                  <a class="link" href="windows__overlapped_ptr/complete.html" title="windows::overlapped_ptr::complete"><span class="bold"><strong>complete</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Post completion notification for overlapped operation. Releases
                  ownership.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="windows__overlapped_ptr/get.html" title="windows::overlapped_ptr::get"><span class="bold"><strong>get</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Get the contained OVERLAPPED object.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="windows__overlapped_ptr/overlapped_ptr.html" title="windows::overlapped_ptr::overlapped_ptr"><span class="bold"><strong>overlapped_ptr</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Construct an empty overlapped_ptr.
                </p>
                <p>
                  Construct an overlapped_ptr to contain the specified handler.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="windows__overlapped_ptr/release.html" title="windows::overlapped_ptr::release"><span class="bold"><strong>release</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Release ownership of the OVERLAPPED object.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="windows__overlapped_ptr/reset.html" title="windows::overlapped_ptr::reset"><span class="bold"><strong>reset</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Reset to empty.
                </p>
                <p>
                  Reset to contain the specified handler, freeing any current OVERLAPPED
                  object.
                </p>
              </td>
</tr>
<tr>
<td>
                <p>
                  <a class="link" href="windows__overlapped_ptr/_overlapped_ptr.html" title="windows::overlapped_ptr::~overlapped_ptr"><span class="bold"><strong>~overlapped_ptr</strong></span></a>
                </p>
              </td>
<td>
                <p>
                  Destructor automatically frees the OVERLAPPED object unless released.
                </p>
              </td>
</tr>
</tbody>
</table></div>
<p>
        A special-purpose smart pointer used to wrap an application handler so that
        it can be passed as the LPOVERLAPPED argument to overlapped I/O functions.
      </p>
<a name="boost_asio.reference.windows__overlapped_ptr.thread_safety"></a><h5>
<a name="id1386498"></a>
        <a class="link" href="windows__overlapped_ptr.html#boost_asio.reference.windows__overlapped_ptr.thread_safety">Thread
        Safety</a>
      </h5>
<p>
        <span class="bold"><strong>Distinct</strong></span> <span class="bold"><strong>objects:</strong></span>
        Safe.
      </p>
<p>
        <span class="bold"><strong>Shared</strong></span> <span class="bold"><strong>objects:</strong></span>
        Unsafe.
      </p>
<a name="boost_asio.reference.windows__overlapped_ptr.requirements"></a><h5>
<a name="id1386550"></a>
        <a class="link" href="windows__overlapped_ptr.html#boost_asio.reference.windows__overlapped_ptr.requirements">Requirements</a>
      </h5>
<p>
        <span class="bold"><strong>Header: </strong></span><code class="literal">boost/asio/windows/overlapped_ptr.hpp</code>
      </p>
<p>
        <span class="bold"><strong>Convenience header: </strong></span><code class="literal">boost/asio.hpp</code>
      </p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003 - 2010 Christopher M. Kohlhoff<p>
        Distributed under the Boost Software License, Version 1.0. (See accompanying
        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>)
      </p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="windows__basic_stream_handle/write_some/overload2.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="windows__overlapped_ptr/complete.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
