tobkit/libsigc++-2.2.3/docs/reference/html/group__adaptors.html
2009-12-29 11:14:14 +00:00

128 lines
9.4 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>libsigc++ 2.0: Adaptors</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head>
<body bgcolor="#ffffff">
<table border="0" width="100%">
<tr>
<td width="10%" height="40"><img src="../../images/libsigc_logo.gif" alt="logo" border="0" width="100%" height="100%"/></td>
<td width="90%" height="40"><img src="../../images/top.gif" alt="top" width="100%" height="40"/></td>
</tr>
</table>
<center>
<a class="qindex" href="../../index.html">Main Page</a> &nbsp;
<a class="qindex" href="modules.html">Groups</a> &nbsp;
<a class="qindex" href="namespaces.html"> Namespaces</a> &nbsp;
</center>
<hr width="100%"/>
<!-- Generated by Doxygen 1.5.1 -->
<h1>Adaptors</h1>
<p>
Collaboration diagram for Adaptors:<center><table><tr><td><img src="group__adaptors.png" border="0" alt="" usemap="#group____adaptors_map">
<map name="group____adaptors_map">
<area href="group__compose.html" shape="rect" coords="177,6,268,32" alt="">
<area href="group__bind.html" shape="rect" coords="148,56,297,83" alt="">
<area href="group__exception__catch.html" shape="rect" coords="155,107,291,134" alt="">
<area href="group__hide.html" shape="rect" coords="148,158,297,184" alt="">
<area href="group__group__.html" shape="rect" coords="189,208,256,235" alt="">
<area href="group__retype.html" shape="rect" coords="135,259,311,286" alt="">
</map></td></tr></table></center>
Adaptors are functors that alter the signature of a functor's operator()().
<a href="#_details">More...</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Modules</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__bind.html">bind(), bind_return()</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="group__bind.html#g2148290d2cf9c1961ec157a085badd5a">sigc::bind()</a> alters an arbitrary functor by fixing arguments to certain values. <br></td></tr>
<p>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__compose.html">compose()</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="group__compose.html#g57692495ec80dd855d4653adde4c8f49">sigc::compose()</a> combines two or three arbitrary functors. <br></td></tr>
<p>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__exception__catch.html">exception_catch()</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="namespacesigc.html#9aee9af00f94197bed616f6a5059c491">sigc::exception_catch()</a> catches an exception thrown from within the wrapped functor and directs it to a catcher functor. <br></td></tr>
<p>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hide.html">hide(), hide_return()</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="group__hide.html#g6e9653e79dbd111f458a2ccd690dadc6">sigc::hide()</a> alters an arbitrary functor in that it adds a parameter whose value is ignored on invocation of the returned functor. <br></td></tr>
<p>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__.html">group()</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="namespacesigc.html#d36281e6ca158599b36980a801f41aac">sigc::group()</a> alters an arbitrary functor by rebuilding its arguments from one or more lambda expressions. <br></td></tr>
<p>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__retype.html">retype(), retype_return()</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="group__retype.html#g9e7ecd809ebe0491bf96d63b34a3b7d6">sigc::retype()</a> alters a sigc::pointer_functor, a sigc::mem_functor or a <a class="el" href="classsigc_1_1slot.html">sigc::slot</a> in that it makes C-style casts to the functor's parameter types of all parameters passed through operator()(). <br></td></tr>
<p>
<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsigc_1_1adaptor__functor.html">sigc::adaptor_functor&lt;T_functor&gt;</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Converts an arbitrary functor into an adaptor type. <a href="structsigc_1_1adaptor__functor.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsigc_1_1adapts.html">sigc::adapts&lt;T_functor&gt;</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Base type for adaptors. <a href="structsigc_1_1adapts.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsigc_1_1adaptor__base.html">sigc::adaptor_base</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A hint to the compiler. <a href="structsigc_1_1adaptor__base.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsigc_1_1deduce__result__type.html">sigc::deduce_result_type&lt;T_functor, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, I_derives_adaptor_base&gt;</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deduce the return type of a functor. <a href="structsigc_1_1deduce__result__type.html#_details">More...</a><br></td></tr>
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T_action, class T_functor&gt; </td></tr>
<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__adaptors.html#gfb822cac23e9bf97c164793a36246d5c">sigc::visit_each</a> (const T_action&amp; _A_action, const adaptor_functor&lt;T_functor&gt;&amp; _A_target)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Performs a functor on each of the targets of a functor. <a href="#gfb822cac23e9bf97c164793a36246d5c"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Adaptors are functors that alter the signature of a functor's operator()().
<p>
The adaptor types libsigc++ provides are created with <a class="el" href="group__bind.html#g2148290d2cf9c1961ec157a085badd5a">bind()</a>, <a class="el" href="group__bind.html#g8a001b0bb588d2ac1af712781b89dc8a">bind_return()</a>, <a class="el" href="group__hide.html#g6e9653e79dbd111f458a2ccd690dadc6">hide()</a>, <a class="el" href="group__hide.html#gd7e18e1edbbefe13216eb344bd522f0a">hide_return()</a>, <a class="el" href="group__retype.html#g263b14f3b0e5616cd3b870d78a2627fa">retype_return()</a>, <a class="el" href="group__retype.html#g9e7ecd809ebe0491bf96d63b34a3b7d6">retype()</a>, <a class="el" href="group__compose.html#g57692495ec80dd855d4653adde4c8f49">compose()</a>, <a class="el" href="namespacesigc.html#9aee9af00f94197bed616f6a5059c491">exception_catch()</a> and <a class="el" href="namespacesigc.html#d36281e6ca158599b36980a801f41aac">group()</a>.<p>
You can easily derive your own adaptor type from <a class="el" href="structsigc_1_1adapts.html">sigc::adapts</a>. <hr><h2>Function Documentation</h2>
<a class="anchor" name="gfb822cac23e9bf97c164793a36246d5c"></a><!-- doxytag: member="sigc::visit_each" ref="gfb822cac23e9bf97c164793a36246d5c" args="(const T_action &amp;_A_action, const adaptor_functor&lt; T_functor &gt; &amp;_A_target)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template &lt;class T_action, class T_functor&gt; </div>
<table class="memname">
<tr>
<td class="memname">void sigc::visit_each </td>
<td>(</td>
<td class="paramtype">const T_action &amp;&nbsp;</td>
<td class="paramname"> <em>_A_action</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const adaptor_functor&lt; T_functor &gt; &amp;&nbsp;</td>
<td class="paramname"> <em>_A_target</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Performs a functor on each of the targets of a functor.
<p>
The function overload for <a class="el" href="structsigc_1_1adaptor__functor.html">sigc::adaptor_functor</a> performs a functor on the functor stored in the <a class="el" href="structsigc_1_1adaptor__functor.html">sigc::adaptor_functor</a> object.
</div>
</div><p>
<hr><address><small>
Generated for libsigc++ 2.0 by <a href="http://www.doxygen.org/index.html">
Doxygen</a> 1.5.1 &copy;&nbsp;1997-2001</small></address>
</body>
</html>