<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>add_service</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="WriteHandler.html" title="Write handler requirements">
<link rel="next" href="asio_handler_allocate.html" title="asio_handler_allocate">
</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="WriteHandler.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="asio_handler_allocate.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.add_service"></a><a class="link" href="add_service.html" title="add_service">add_service</a>
</h3></div></div></div>
<p>
        <a class="indexterm" name="id868379"></a>
      </p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span>
    <span class="keyword">typename</span> <a class="link" href="Service.html" title="Service requirements">Service</a><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">add_service</span><span class="special">(</span>
    <span class="identifier">io_service</span> <span class="special">&amp;</span> <span class="identifier">ios</span><span class="special">,</span>
    <span class="identifier">Service</span> <span class="special">*</span> <span class="identifier">svc</span><span class="special">);</span>
</pre>
<p>
        This function is used to add a service to the <a class="link" href="io_service.html" title="io_service"><code class="computeroutput"><span class="identifier">io_service</span></code></a>.
      </p>
<a name="boost_asio.reference.add_service.parameters"></a><h5>
<a name="id868503"></a>
        <a class="link" href="add_service.html#boost_asio.reference.add_service.parameters">Parameters</a>
      </h5>
<div class="variablelist">
<p class="title"><b></b></p>
<dl>
<dt><span class="term">ios</span></dt>
<dd><p>
              The <a class="link" href="io_service.html" title="io_service"><code class="computeroutput"><span class="identifier">io_service</span></code></a>
              object that owns the service.
            </p></dd>
<dt><span class="term">svc</span></dt>
<dd>
<p>
              The service object. On success, ownership of the service object is
              transferred to the <a class="link" href="io_service.html" title="io_service"><code class="computeroutput"><span class="identifier">io_service</span></code></a>. When the <a class="link" href="io_service.html" title="io_service"><code class="computeroutput"><span class="identifier">io_service</span></code></a>
              object is destroyed, it will destroy the service object by performing:
              
</p>
<pre class="programlisting"><span class="keyword">delete</span> <span class="keyword">static_cast</span><span class="special">&lt;</span><span class="identifier">io_service</span><span class="special">::</span><span class="identifier">service</span><span class="special">*&gt;(</span><span class="identifier">svc</span><span class="special">)</span> 
</pre>
<p>
            </p>
</dd>
</dl>
</div>
<a name="boost_asio.reference.add_service.exceptions"></a><h5>
<a name="id868653"></a>
        <a class="link" href="add_service.html#boost_asio.reference.add_service.exceptions">Exceptions</a>
      </h5>
<div class="variablelist">
<p class="title"><b></b></p>
<dl>
<dt><span class="term">boost::asio::service_already_exists</span></dt>
<dd><p>
              Thrown if a service of the given type is already present in the <a class="link" href="io_service.html" title="io_service"><code class="computeroutput"><span class="identifier">io_service</span></code></a>.
            </p></dd>
<dt><span class="term">boost::asio::invalid_service_owner</span></dt>
<dd><p>
              Thrown if the service's owning <a class="link" href="io_service.html" title="io_service"><code class="computeroutput"><span class="identifier">io_service</span></code></a> is not the <a class="link" href="io_service.html" title="io_service"><code class="computeroutput"><span class="identifier">io_service</span></code></a>
              object specified by the ios parameter.
            </p></dd>
</dl>
</div>
<a name="boost_asio.reference.add_service.requirements"></a><h5>
<a name="id868755"></a>
        <a class="link" href="add_service.html#boost_asio.reference.add_service.requirements">Requirements</a>
      </h5>
<p>
        <span class="bold"><strong>Header: </strong></span><code class="literal">boost/asio/io_service.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="WriteHandler.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="asio_handler_allocate.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
