1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132
|
<!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: sigc::signal< T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7 > Class Template Reference</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>
<a class="qindex" href="modules.html">Groups</a>
<a class="qindex" href="namespaces.html"> Namespaces</a>
</center>
<hr width="100%"/>
<!-- Generated by Doxygen 1.3.9.1 -->
<h1>sigc::signal< T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7 > Class Template Reference<br>
<small>
[<a class="el" href="group__signal.html">Signals</a>]</small>
</h1>Convenience wrapper for the numbered sigc::signal# templates.
<a href="#_details">More...</a>
<p>
Inheritance diagram for sigc::signal< T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7 >:<p><center><img src="classsigc_1_1signal__inherit__graph.png" border="0" usemap="#sigc_1_1signal_3_01T__return_00_01T__arg1_00_01T__arg2_00_01T__arg3_00_01T__arg4_00_01T__arg5_00_01T__arg6_00_01T__arg7_01_4__inherit__map" alt="Inheritance graph"></center>
<map name="sigc_1_1signal_3_01T__return_00_01T__arg1_00_01T__arg2_00_01T__arg3_00_01T__arg4_00_01T__arg5_00_01T__arg6_00_01T__arg7_01_4__inherit__map">
<area href="classsigc_1_1signal7.html" shape="rect" coords="7,158,541,182" alt="">
<area href="structsigc_1_1signal__base.html" shape="rect" coords="213,84,335,108" alt="">
<area href="structsigc_1_1trackable.html" shape="rect" coords="221,9,327,33" alt="">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="classsigc_1_1signal-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1signal.html#a0">signal</a> ()</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1signal.html#a1">signal</a> (const <a class="el" href="classsigc_1_1signal.html">signal</a>& src)</td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
<h3>template <class T_return, class T_arg1 = nil, class T_arg2 = nil, class T_arg3 = nil, class T_arg4 = nil, class T_arg5 = nil, class T_arg6 = nil, class T_arg7 = nil><br>
class sigc::signal< T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7 ></h3>
Convenience wrapper for the numbered sigc::signal# templates.
<p>
signal can be used to <a class="el" href="classsigc_1_1signal7.html#a0">connect()</a> slots that are invoked during subsequent calls to <a class="el" href="classsigc_1_1signal7.html#a1">emit()</a>. Any functor or slot can be passed into <a class="el" href="classsigc_1_1signal7.html#a0">connect()</a>. It is converted into a slot implicitly.<p>
If you want to connect one signal to another, use <a class="el" href="classsigc_1_1signal7.html#a3">make_slot()</a> to retrieve a functor that emits the signal when invoked.<p>
Be careful if you directly pass one signal into the <a class="el" href="classsigc_1_1signal7.html#a0">connect()</a> method of another: a shallow copy of the signal is made and the signal's slots are not disconnected until both the signal and its clone are destroyed which is probably not what you want!<p>
An STL-style list interface for the signal's list of slots can be retrieved with <a class="el" href="classsigc_1_1signal7.html#a4">slots()</a>. This interface supports iteration, insertion and removal of slots.<p>
The template arguments determine the function signature of the <a class="el" href="classsigc_1_1signal7.html#a1">emit()</a> function:<ul>
<li><em>T_return</em> The desired return type of the <a class="el" href="classsigc_1_1signal7.html#a1">emit()</a> function.</li><li><em>T_arg1</em> Argument type used in the definition of <a class="el" href="classsigc_1_1signal7.html#a1">emit()</a>. The default <code>nil</code> means no argument.</li><li><em>T_arg2</em> Argument type used in the definition of <a class="el" href="classsigc_1_1signal7.html#a1">emit()</a>. The default <code>nil</code> means no argument.</li><li><em>T_arg3</em> Argument type used in the definition of <a class="el" href="classsigc_1_1signal7.html#a1">emit()</a>. The default <code>nil</code> means no argument.</li><li><em>T_arg4</em> Argument type used in the definition of <a class="el" href="classsigc_1_1signal7.html#a1">emit()</a>. The default <code>nil</code> means no argument.</li><li><em>T_arg5</em> Argument type used in the definition of <a class="el" href="classsigc_1_1signal7.html#a1">emit()</a>. The default <code>nil</code> means no argument.</li><li><em>T_arg6</em> Argument type used in the definition of <a class="el" href="classsigc_1_1signal7.html#a1">emit()</a>. The default <code>nil</code> means no argument.</li><li><em>T_arg7</em> Argument type used in the definition of <a class="el" href="classsigc_1_1signal7.html#a1">emit()</a>. The default <code>nil</code> means no argument.</li></ul>
<p>
To specify an accumulator type the nested class <a class="el" href="classsigc_1_1signal_1_1accumulated.html">signal::accumulated</a> can be used.<p>
<dl compact><dt><b>Example:</b></dt><dd><div class="fragment"><pre class="fragment"> <span class="keywordtype">void</span> foo(<span class="keywordtype">int</span>) {}
<a class="code" href="classsigc_1_1signal.html">sigc::signal<void, long></a> sig;
sig.<a class="code" href="classsigc_1_1signal7.html#a0">connect</a>(sigc::ptr_fun(&foo));
sig.<a class="code" href="classsigc_1_1signal7.html#a1">emit</a>(19);
</pre></div></dd></dl>
<p>
<hr><h2>Constructor & Destructor Documentation</h2>
<a class="anchor" name="a0" doxytag="sigc::signal::signal"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" colspan="4">
template <class T_return, class T_arg1 = nil, class T_arg2 = nil, class T_arg3 = nil, class T_arg4 = nil, class T_arg5 = nil, class T_arg6 = nil, class T_arg7 = nil> </td>
</tr>
<tr>
<td class="md" nowrap valign="top"><a class="el" href="classsigc_1_1signal.html">sigc::signal</a><T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7>::<a class="el" href="classsigc_1_1signal.html">signal</a> </td>
<td class="md" valign="top">(</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top"> ) </td>
<td class="md" nowrap><code> [inline]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
</td>
<td>
<p>
</td>
</tr>
</table>
<a class="anchor" name="a1" doxytag="sigc::signal::signal"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" colspan="4">
template <class T_return, class T_arg1 = nil, class T_arg2 = nil, class T_arg3 = nil, class T_arg4 = nil, class T_arg5 = nil, class T_arg6 = nil, class T_arg7 = nil> </td>
</tr>
<tr>
<td class="md" nowrap valign="top"><a class="el" href="classsigc_1_1signal.html">sigc::signal</a><T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7>::<a class="el" href="classsigc_1_1signal.html">signal</a> </td>
<td class="md" valign="top">(</td>
<td class="md" nowrap valign="top">const <a class="el" href="classsigc_1_1signal.html">signal</a><T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7>& </td>
<td class="mdname1" valign="top" nowrap> <em>src</em> </td>
<td class="md" valign="top"> ) </td>
<td class="md" nowrap><code> [inline]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
</td>
<td>
<p>
</td>
</tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="signal_8h.html">signal.h</a></ul>
<hr><address><small>
Generated for libsigc++ 2.0 by <a href="http://www.doxygen.org/index.html">
Doxygen</a> 1.3.9.1 © 1997-2001</small></address>
</body>
</html>
|