]> git.tdb.fi Git - ext/sigc++-2.0.git/blob - untracked/docs/reference/html/classsigc_1_1slot__base.html
Import libsigc++ 2.10.8 sources
[ext/sigc++-2.0.git] / untracked / docs / reference / html / classsigc_1_1slot__base.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml">
3 <head>
4 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5 <meta http-equiv="X-UA-Compatible" content="IE=9"/>
6 <meta name="generator" content="Doxygen 1.9.1"/>
7 <meta name="viewport" content="width=device-width, initial-scale=1"/>
8 <title>libsigc++: sigc::slot_base Class Reference</title>
9 <link href="tabs.css" rel="stylesheet" type="text/css"/>
10 <script type="text/javascript" src="jquery.js"></script>
11 <script type="text/javascript" src="dynsections.js"></script>
12 <link href="doxygen.css" rel="stylesheet" type="text/css" />
13 <link href="doxygen-extra.css" rel="stylesheet" type="text/css"/>
14 </head>
15 <body>
16 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
17 <div id="titlearea">
18 <table cellspacing="0" cellpadding="0">
19  <tbody>
20  <tr style="height: 56px;">
21   <td id="projectalign" style="padding-left: 0.5em;">
22    <div id="projectname">libsigc++
23    &#160;<span id="projectnumber">2.10.8</span>
24    </div>
25   </td>
26  </tr>
27  </tbody>
28 </table>
29 </div>
30 <!-- end header part -->
31 <!-- Generated by Doxygen 1.9.1 -->
32 <script type="text/javascript" src="menudata.js"></script>
33 <script type="text/javascript" src="menu.js"></script>
34 <script type="text/javascript">
35 /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
36 $(function() {
37   initMenu('',false,false,'search.php','Search');
38 });
39 /* @license-end */</script>
40 <div id="main-nav"></div>
41 <div id="nav-path" class="navpath">
42   <ul>
43 <li class="navelem"><a class="el" href="namespacesigc.html">sigc</a></li><li class="navelem"><a class="el" href="classsigc_1_1slot__base.html">slot_base</a></li>  </ul>
44 </div>
45 </div><!-- top -->
46 <div class="header">
47   <div class="summary">
48 <a href="#pub-types">Public Types</a> &#124;
49 <a href="#pub-methods">Public Member Functions</a> &#124;
50 <a href="#pub-attribs">Public Attributes</a> &#124;
51 <a href="classsigc_1_1slot__base-members.html">List of all members</a>  </div>
52   <div class="headertitle">
53 <div class="title">sigc::slot_base Class Reference<div class="ingroups"><a class="el" href="group__sigcfunctors.html">Functors</a> &raquo; <a class="el" href="group__slot.html">Slots</a></div></div>  </div>
54 </div><!--header-->
55 <div class="contents">
56
57 <p>Base type for slots.  
58  <a href="classsigc_1_1slot__base.html#details">More...</a></p>
59
60 <p><code>#include &lt;sigc++/functors/slot_base.h&gt;</code></p>
61 <div class="dynheader">
62 Inheritance diagram for sigc::slot_base:</div>
63 <div class="dyncontent">
64 <div class="center"><img src="classsigc_1_1slot__base__inherit__graph.png" border="0" usemap="#asigc_1_1slot__base_inherit__map" alt="Inheritance graph"/></div>
65 <map name="asigc_1_1slot__base_inherit__map" id="asigc_1_1slot__base_inherit__map">
66 <area shape="rect" title="Base type for slots." alt="" coords="193,389,312,415"/>
67 <area shape="rect" href="classsigc_1_1slot7.html" title=" " alt="" coords="374,23,535,79"/>
68 <area shape="rect" href="classsigc_1_1slot0.html" title="Converts an arbitrary functor to a unified type which is opaque." alt="" coords="369,126,541,153"/>
69 <area shape="rect" href="classsigc_1_1slot1.html" title="Converts an arbitrary functor to a unified type which is opaque." alt="" coords="374,195,535,236"/>
70 <area shape="rect" href="classsigc_1_1slot2.html" title="Converts an arbitrary functor to a unified type which is opaque." alt="" coords="374,272,535,313"/>
71 <area shape="rect" href="classsigc_1_1slot3.html" title="Converts an arbitrary functor to a unified type which is opaque." alt="" coords="360,344,549,385"/>
72 <area shape="rect" href="classsigc_1_1slot4.html" title="Converts an arbitrary functor to a unified type which is opaque." alt="" coords="365,410,544,466"/>
73 <area shape="rect" href="classsigc_1_1slot5.html" title="Converts an arbitrary functor to a unified type which is opaque." alt="" coords="365,490,544,546"/>
74 <area shape="rect" href="classsigc_1_1slot6.html" title="Converts an arbitrary functor to a unified type which is opaque." alt="" coords="360,570,549,626"/>
75 <area shape="rect" href="classsigc_1_1slot7.html" title="Converts an arbitrary functor to a unified type which is opaque." alt="" coords="365,651,544,721"/>
76 <area shape="rect" href="classsigc_1_1slot_3_01T__return_07T__arg_8_8_8_08_4.html" title="Converts an arbitrary functor to a unified type which is opaque." alt="" coords="380,745,529,787"/>
77 <area shape="rect" href="structsigc_1_1functor__base.html" title="A hint to the compiler." alt="" coords="5,389,145,415"/>
78 <area shape="rect" href="classsigc_1_1slot.html" title="Convenience wrapper for the numbered sigc::slot# templates." alt="" coords="615,5,793,76"/>
79 <area shape="rect" href="classsigc_1_1slot_3_01T__return_00_01nil_00_01nil_00_01nil_00_01nil_00_01nil_00_01nil_00_01nil_01_4.html" title="Convenience wrapper for the numbered sigc::slot0 template." alt="" coords="627,101,781,157"/>
80 <area shape="rect" href="classsigc_1_1slot_3_01T__return_00_01T__arg1_00_01nil_00_01nil_00_01nil_00_01nil_00_01nil_00_01nil_01_4.html" title="Convenience wrapper for the numbered sigc::slot1 template." alt="" coords="627,181,781,237"/>
81 <area shape="rect" href="classsigc_1_1slot_3_01T__return_00_01T__arg1_00_01T__arg2_00_01nil_00_01nil_00_01nil_00_01nil_00_01nil_01_4.html" title="Convenience wrapper for the numbered sigc::slot2 template." alt="" coords="627,261,781,317"/>
82 <area shape="rect" href="classsigc_1_1slot_3_01T__return_00_01T__arg1_00_01T__arg2_00_01T__arg3_00_01nil_00_01nil_00_01nil_00_01nil_01_4.html" title="Convenience wrapper for the numbered sigc::slot3 template." alt="" coords="615,341,793,397"/>
83 <area shape="rect" href="classsigc_1_1slot_3_01T__return_00_01T__arg1_00_01T__arg2_00_01T__arg3_00_01T__arg4_00_01nil_00_01nil_00_01nil_01_4.html" title="Convenience wrapper for the numbered sigc::slot4 template." alt="" coords="615,421,793,477"/>
84 <area shape="rect" href="classsigc_1_1slot_3_01T__return_00_01T__arg1_00_01T__arg2_00_01T__arg3_00_01T__arg4_00_01T__arg5_00_01nil_00_01nil_01_4.html" title="Convenience wrapper for the numbered sigc::slot5 template." alt="" coords="611,501,797,557"/>
85 <area shape="rect" href="classsigc_1_1slot_3_01T__return_00_01T__arg1_00_01T__arg2_00_01T__arg3_00_01T__arg4_00_01T__arg5_00_01T__arg6_00_01nil_01_4.html" title="Convenience wrapper for the numbered sigc::slot6 template." alt="" coords="597,581,811,637"/>
86 </map>
87 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
88 <table class="memberdecls">
89 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
90 Public Types</h2></td></tr>
91 <tr class="memitem:a7e1a0c2fe43a42187810e8997abeb341"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="structsigc_1_1trackable.html#a3338954d7565534bd945290b798e13ed">trackable::func_destroy_notify</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1slot__base.html#a7e1a0c2fe43a42187810e8997abeb341">func_destroy_notify</a></td></tr>
92 <tr class="separator:a7e1a0c2fe43a42187810e8997abeb341"><td class="memSeparator" colspan="2">&#160;</td></tr>
93 </table><table class="memberdecls">
94 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
95 Public Member Functions</h2></td></tr>
96 <tr class="memitem:a182d5db71ef371838c73bcf1c135cd9a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1slot__base.html#a182d5db71ef371838c73bcf1c135cd9a">slot_base</a> () noexcept</td></tr>
97 <tr class="memdesc:a182d5db71ef371838c73bcf1c135cd9a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs an empty slot.  <a href="classsigc_1_1slot__base.html#a182d5db71ef371838c73bcf1c135cd9a">More...</a><br /></td></tr>
98 <tr class="separator:a182d5db71ef371838c73bcf1c135cd9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
99 <tr class="memitem:aadcbb54832b5207bddf89ac5433b531a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1slot__base.html#aadcbb54832b5207bddf89ac5433b531a">slot_base</a> (const <a class="el" href="classsigc_1_1slot__base.html">slot_base</a> &amp; src)</td></tr>
100 <tr class="memdesc:aadcbb54832b5207bddf89ac5433b531a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a slot, copying an existing one.  <a href="classsigc_1_1slot__base.html#aadcbb54832b5207bddf89ac5433b531a">More...</a><br /></td></tr>
101 <tr class="separator:aadcbb54832b5207bddf89ac5433b531a"><td class="memSeparator" colspan="2">&#160;</td></tr>
102 <tr class="memitem:a5fbc2bf38a0d9ebcbe13d578d2b3d5a1"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1slot__base.html#a5fbc2bf38a0d9ebcbe13d578d2b3d5a1">slot_base</a> (rep_type * rep) noexcept</td></tr>
103 <tr class="memdesc:a5fbc2bf38a0d9ebcbe13d578d2b3d5a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a slot from an existing slot_rep object.  <a href="classsigc_1_1slot__base.html#a5fbc2bf38a0d9ebcbe13d578d2b3d5a1">More...</a><br /></td></tr>
104 <tr class="separator:a5fbc2bf38a0d9ebcbe13d578d2b3d5a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
105 <tr class="memitem:ad1fee67a5885e424c275ad0f48fc81b1"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1slot__base.html#ad1fee67a5885e424c275ad0f48fc81b1">slot_base</a> (<a class="el" href="classsigc_1_1slot__base.html">slot_base</a> &amp;&amp; src)</td></tr>
106 <tr class="memdesc:ad1fee67a5885e424c275ad0f48fc81b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a slot, moving an existing one.  <a href="classsigc_1_1slot__base.html#ad1fee67a5885e424c275ad0f48fc81b1">More...</a><br /></td></tr>
107 <tr class="separator:ad1fee67a5885e424c275ad0f48fc81b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
108 <tr class="memitem:a75c18c50860f63fb020fc2953576ea57"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1slot__base.html#a75c18c50860f63fb020fc2953576ea57">~slot_base</a> ()</td></tr>
109 <tr class="separator:a75c18c50860f63fb020fc2953576ea57"><td class="memSeparator" colspan="2">&#160;</td></tr>
110 <tr class="memitem:a8e37cc8f4b57898a288680e59bea2694"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1slot__base.html#a8e37cc8f4b57898a288680e59bea2694">add_destroy_notify_callback</a> (void *<a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01635.html#a4a0b2b9455f1e2025d77ba49b3863e33">data</a>, <a class="el" href="classsigc_1_1slot__base.html#a7e1a0c2fe43a42187810e8997abeb341">func_destroy_notify</a> func) const</td></tr>
111 <tr class="memdesc:a8e37cc8f4b57898a288680e59bea2694"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a callback that is executed (notified) when the slot is detroyed.  <a href="classsigc_1_1slot__base.html#a8e37cc8f4b57898a288680e59bea2694">More...</a><br /></td></tr>
112 <tr class="separator:a8e37cc8f4b57898a288680e59bea2694"><td class="memSeparator" colspan="2">&#160;</td></tr>
113 <tr class="memitem:a657a8473164c963a5ca4828c88121bb9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1slot__base.html#a657a8473164c963a5ca4828c88121bb9">block</a> (bool should_block=true) noexcept</td></tr>
114 <tr class="memdesc:a657a8473164c963a5ca4828c88121bb9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the blocking state.  <a href="classsigc_1_1slot__base.html#a657a8473164c963a5ca4828c88121bb9">More...</a><br /></td></tr>
115 <tr class="separator:a657a8473164c963a5ca4828c88121bb9"><td class="memSeparator" colspan="2">&#160;</td></tr>
116 <tr class="memitem:a2f266b6147c4a6bbc5b68994d2dc1517"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1slot__base.html#a2f266b6147c4a6bbc5b68994d2dc1517">blocked</a> () const noexcept</td></tr>
117 <tr class="memdesc:a2f266b6147c4a6bbc5b68994d2dc1517"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns whether the slot is blocked.  <a href="classsigc_1_1slot__base.html#a2f266b6147c4a6bbc5b68994d2dc1517">More...</a><br /></td></tr>
118 <tr class="separator:a2f266b6147c4a6bbc5b68994d2dc1517"><td class="memSeparator" colspan="2">&#160;</td></tr>
119 <tr class="memitem:a4042d221f7f07a7394d2eb0f14db2857"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1slot__base.html#a4042d221f7f07a7394d2eb0f14db2857">disconnect</a> ()</td></tr>
120 <tr class="memdesc:a4042d221f7f07a7394d2eb0f14db2857"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disconnects the slot.  <a href="classsigc_1_1slot__base.html#a4042d221f7f07a7394d2eb0f14db2857">More...</a><br /></td></tr>
121 <tr class="separator:a4042d221f7f07a7394d2eb0f14db2857"><td class="memSeparator" colspan="2">&#160;</td></tr>
122 <tr class="memitem:ae6ac6ca962a1f6a7506d0817165b5cef"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1slot__base.html#ae6ac6ca962a1f6a7506d0817165b5cef">empty</a> () const noexcept</td></tr>
123 <tr class="memdesc:ae6ac6ca962a1f6a7506d0817165b5cef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns whether the slot is invalid.  <a href="classsigc_1_1slot__base.html#ae6ac6ca962a1f6a7506d0817165b5cef">More...</a><br /></td></tr>
124 <tr class="separator:ae6ac6ca962a1f6a7506d0817165b5cef"><td class="memSeparator" colspan="2">&#160;</td></tr>
125 <tr class="memitem:a90d4d7d6037973a94d7dfd7ba9a5feb9"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1slot__base.html#a90d4d7d6037973a94d7dfd7ba9a5feb9">operator bool</a> () const noexcept</td></tr>
126 <tr class="memdesc:a90d4d7d6037973a94d7dfd7ba9a5feb9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests whether a slot is null, because the default constructor was used.  <a href="classsigc_1_1slot__base.html#a90d4d7d6037973a94d7dfd7ba9a5feb9">More...</a><br /></td></tr>
127 <tr class="separator:a90d4d7d6037973a94d7dfd7ba9a5feb9"><td class="memSeparator" colspan="2">&#160;</td></tr>
128 <tr class="memitem:a19522528264f1646f8ed982b0042ffad"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classsigc_1_1slot__base.html">slot_base</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1slot__base.html#a19522528264f1646f8ed982b0042ffad">operator=</a> (const <a class="el" href="classsigc_1_1slot__base.html">slot_base</a> &amp; src)</td></tr>
129 <tr class="memdesc:a19522528264f1646f8ed982b0042ffad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Overrides this slot, making a copy from another slot.  <a href="classsigc_1_1slot__base.html#a19522528264f1646f8ed982b0042ffad">More...</a><br /></td></tr>
130 <tr class="separator:a19522528264f1646f8ed982b0042ffad"><td class="memSeparator" colspan="2">&#160;</td></tr>
131 <tr class="memitem:a64e36f28ee61a94c0496fe76f6b3e813"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classsigc_1_1slot__base.html">slot_base</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1slot__base.html#a64e36f28ee61a94c0496fe76f6b3e813">operator=</a> (<a class="el" href="classsigc_1_1slot__base.html">slot_base</a> &amp;&amp; src)</td></tr>
132 <tr class="memdesc:a64e36f28ee61a94c0496fe76f6b3e813"><td class="mdescLeft">&#160;</td><td class="mdescRight">Overrides this slot, making a move from another slot.  <a href="classsigc_1_1slot__base.html#a64e36f28ee61a94c0496fe76f6b3e813">More...</a><br /></td></tr>
133 <tr class="separator:a64e36f28ee61a94c0496fe76f6b3e813"><td class="memSeparator" colspan="2">&#160;</td></tr>
134 <tr class="memitem:a69c55dedaa35626f288754d55b3da66c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1slot__base.html#a69c55dedaa35626f288754d55b3da66c">remove_destroy_notify_callback</a> (void *<a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01635.html#a4a0b2b9455f1e2025d77ba49b3863e33">data</a>) const</td></tr>
135 <tr class="memdesc:a69c55dedaa35626f288754d55b3da66c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove a callback previously installed with <a class="el" href="classsigc_1_1slot__base.html#a8e37cc8f4b57898a288680e59bea2694" title="Add a callback that is executed (notified) when the slot is detroyed.">add_destroy_notify_callback()</a>.  <a href="classsigc_1_1slot__base.html#a69c55dedaa35626f288754d55b3da66c">More...</a><br /></td></tr>
136 <tr class="separator:a69c55dedaa35626f288754d55b3da66c"><td class="memSeparator" colspan="2">&#160;</td></tr>
137 <tr class="memitem:aa7d281de451d5f47923f4ff1c5b7f2c9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1slot__base.html#aa7d281de451d5f47923f4ff1c5b7f2c9">set_parent</a> (void * parent, void *(* cleanup)(void *)) const noexcept</td></tr>
138 <tr class="memdesc:aa7d281de451d5f47923f4ff1c5b7f2c9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the parent of this slot.  <a href="classsigc_1_1slot__base.html#aa7d281de451d5f47923f4ff1c5b7f2c9">More...</a><br /></td></tr>
139 <tr class="separator:aa7d281de451d5f47923f4ff1c5b7f2c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
140 <tr class="memitem:a25ad0bd4d2cea4dbfcd09f7d393d266d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1slot__base.html#a25ad0bd4d2cea4dbfcd09f7d393d266d">unblock</a> () noexcept</td></tr>
141 <tr class="memdesc:a25ad0bd4d2cea4dbfcd09f7d393d266d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unsets the blocking state.  <a href="classsigc_1_1slot__base.html#a25ad0bd4d2cea4dbfcd09f7d393d266d">More...</a><br /></td></tr>
142 <tr class="separator:a25ad0bd4d2cea4dbfcd09f7d393d266d"><td class="memSeparator" colspan="2">&#160;</td></tr>
143 </table><table class="memberdecls">
144 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
145 Public Attributes</h2></td></tr>
146 <tr class="memitem:a9dc4958860c0f8300b461a743b7f2a2b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1slot__base.html#a9dc4958860c0f8300b461a743b7f2a2b">blocked_</a></td></tr>
147 <tr class="memdesc:a9dc4958860c0f8300b461a743b7f2a2b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates whether the slot is blocked.  <a href="classsigc_1_1slot__base.html#a9dc4958860c0f8300b461a743b7f2a2b">More...</a><br /></td></tr>
148 <tr class="separator:a9dc4958860c0f8300b461a743b7f2a2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
149 <tr class="memitem:aa482f7dfc73c6950abde0fd51b3125b5"><td class="memItemLeft" align="right" valign="top">rep_type *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1slot__base.html#aa482f7dfc73c6950abde0fd51b3125b5">rep_</a></td></tr>
150 <tr class="memdesc:aa482f7dfc73c6950abde0fd51b3125b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Typed slot_rep object that contains a functor.  <a href="classsigc_1_1slot__base.html#aa482f7dfc73c6950abde0fd51b3125b5">More...</a><br /></td></tr>
151 <tr class="separator:aa482f7dfc73c6950abde0fd51b3125b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
152 </table>
153 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
154 <div class="textblock"><p>Base type for slots. </p>
155 <p><a class="el" href="classsigc_1_1slot__base.html" title="Base type for slots.">slot_base</a> integrates most of the interface of the derived <a class="el" href="classsigc_1_1slot.html" title="Convenience wrapper for the numbered sigc::slot# templates.">sigc::slot</a> templates. slots can be connected to signals, be disconnected at some later point (<a class="el" href="classsigc_1_1slot__base.html#a4042d221f7f07a7394d2eb0f14db2857" title="Disconnects the slot.">disconnect()</a>) and temporarily be blocked (<a class="el" href="classsigc_1_1slot__base.html#a657a8473164c963a5ca4828c88121bb9" title="Sets the blocking state.">block()</a>, <a class="el" href="classsigc_1_1slot__base.html#a25ad0bd4d2cea4dbfcd09f7d393d266d" title="Unsets the blocking state.">unblock()</a>). The validity of a slot can be tested with <a class="el" href="classsigc_1_1slot__base.html#ae6ac6ca962a1f6a7506d0817165b5cef" title="Returns whether the slot is invalid.">empty()</a>.</p>
156 <p>The internal representation of a sigc::internal::slot_rep derived type is built from <a class="el" href="classsigc_1_1slot__base.html" title="Base type for slots.">slot_base</a>'s derivations. <a class="el" href="classsigc_1_1slot__base.html#aa7d281de451d5f47923f4ff1c5b7f2c9" title="Sets the parent of this slot.">set_parent()</a> is used to register a notification callback that is executed when the slot gets invalid. <a class="el" href="classsigc_1_1slot__base.html#a8e37cc8f4b57898a288680e59bea2694" title="Add a callback that is executed (notified) when the slot is detroyed.">add_destroy_notify_callback()</a> is used by connection objects to add a notification callback that is executed on destruction. </p>
157 </div><h2 class="groupheader">Member Typedef Documentation</h2>
158 <a id="a7e1a0c2fe43a42187810e8997abeb341"></a>
159 <h2 class="memtitle"><span class="permalink"><a href="#a7e1a0c2fe43a42187810e8997abeb341">&#9670;&#160;</a></span>func_destroy_notify</h2>
160
161 <div class="memitem">
162 <div class="memproto">
163       <table class="memname">
164         <tr>
165           <td class="memname">typedef <a class="el" href="structsigc_1_1trackable.html#a3338954d7565534bd945290b798e13ed">trackable::func_destroy_notify</a> <a class="el" href="classsigc_1_1slot__base.html#a7e1a0c2fe43a42187810e8997abeb341">sigc::slot_base::func_destroy_notify</a></td>
166         </tr>
167       </table>
168 </div><div class="memdoc">
169
170 </div>
171 </div>
172 <h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
173 <a id="a182d5db71ef371838c73bcf1c135cd9a"></a>
174 <h2 class="memtitle"><span class="permalink"><a href="#a182d5db71ef371838c73bcf1c135cd9a">&#9670;&#160;</a></span>slot_base() <span class="overload">[1/4]</span></h2>
175
176 <div class="memitem">
177 <div class="memproto">
178 <table class="mlabels">
179   <tr>
180   <td class="mlabels-left">
181       <table class="memname">
182         <tr>
183           <td class="memname">sigc::slot_base::slot_base </td>
184           <td>(</td>
185           <td class="paramname"></td><td>)</td>
186           <td></td>
187         </tr>
188       </table>
189   </td>
190   <td class="mlabels-right">
191 <span class="mlabels"><span class="mlabel">noexcept</span></span>  </td>
192   </tr>
193 </table>
194 </div><div class="memdoc">
195
196 <p>Constructs an empty slot. </p>
197
198 </div>
199 </div>
200 <a id="a5fbc2bf38a0d9ebcbe13d578d2b3d5a1"></a>
201 <h2 class="memtitle"><span class="permalink"><a href="#a5fbc2bf38a0d9ebcbe13d578d2b3d5a1">&#9670;&#160;</a></span>slot_base() <span class="overload">[2/4]</span></h2>
202
203 <div class="memitem">
204 <div class="memproto">
205 <table class="mlabels">
206   <tr>
207   <td class="mlabels-left">
208       <table class="memname">
209         <tr>
210           <td class="memname">sigc::slot_base::slot_base </td>
211           <td>(</td>
212           <td class="paramtype">rep_type *&#160;</td>
213           <td class="paramname"><em>rep</em></td><td>)</td>
214           <td></td>
215         </tr>
216       </table>
217   </td>
218   <td class="mlabels-right">
219 <span class="mlabels"><span class="mlabel">explicit</span><span class="mlabel">noexcept</span></span>  </td>
220   </tr>
221 </table>
222 </div><div class="memdoc">
223
224 <p>Constructs a slot from an existing slot_rep object. </p>
225 <dl class="params"><dt>Parameters</dt><dd>
226   <table class="params">
227     <tr><td class="paramname">rep</td><td>The slot_rep object this slot should contain. </td></tr>
228   </table>
229   </dd>
230 </dl>
231
232 </div>
233 </div>
234 <a id="aadcbb54832b5207bddf89ac5433b531a"></a>
235 <h2 class="memtitle"><span class="permalink"><a href="#aadcbb54832b5207bddf89ac5433b531a">&#9670;&#160;</a></span>slot_base() <span class="overload">[3/4]</span></h2>
236
237 <div class="memitem">
238 <div class="memproto">
239       <table class="memname">
240         <tr>
241           <td class="memname">sigc::slot_base::slot_base </td>
242           <td>(</td>
243           <td class="paramtype">const <a class="el" href="classsigc_1_1slot__base.html">slot_base</a> &amp;&#160;</td>
244           <td class="paramname"><em>src</em></td><td>)</td>
245           <td></td>
246         </tr>
247       </table>
248 </div><div class="memdoc">
249
250 <p>Constructs a slot, copying an existing one. </p>
251 <dl class="params"><dt>Parameters</dt><dd>
252   <table class="params">
253     <tr><td class="paramname">src</td><td>The existing slot to copy. </td></tr>
254   </table>
255   </dd>
256 </dl>
257
258 </div>
259 </div>
260 <a id="ad1fee67a5885e424c275ad0f48fc81b1"></a>
261 <h2 class="memtitle"><span class="permalink"><a href="#ad1fee67a5885e424c275ad0f48fc81b1">&#9670;&#160;</a></span>slot_base() <span class="overload">[4/4]</span></h2>
262
263 <div class="memitem">
264 <div class="memproto">
265       <table class="memname">
266         <tr>
267           <td class="memname">sigc::slot_base::slot_base </td>
268           <td>(</td>
269           <td class="paramtype"><a class="el" href="classsigc_1_1slot__base.html">slot_base</a> &amp;&amp;&#160;</td>
270           <td class="paramname"><em>src</em></td><td>)</td>
271           <td></td>
272         </tr>
273       </table>
274 </div><div class="memdoc">
275
276 <p>Constructs a slot, moving an existing one. </p>
277 <p>If <code>src</code> is connected to a parent (e.g. a signal), it is copied, not moved. </p><dl class="params"><dt>Parameters</dt><dd>
278   <table class="params">
279     <tr><td class="paramname">src</td><td>The existing slot to move or copy. </td></tr>
280   </table>
281   </dd>
282 </dl>
283
284 </div>
285 </div>
286 <a id="a75c18c50860f63fb020fc2953576ea57"></a>
287 <h2 class="memtitle"><span class="permalink"><a href="#a75c18c50860f63fb020fc2953576ea57">&#9670;&#160;</a></span>~slot_base()</h2>
288
289 <div class="memitem">
290 <div class="memproto">
291       <table class="memname">
292         <tr>
293           <td class="memname">sigc::slot_base::~slot_base </td>
294           <td>(</td>
295           <td class="paramname"></td><td>)</td>
296           <td></td>
297         </tr>
298       </table>
299 </div><div class="memdoc">
300
301 </div>
302 </div>
303 <h2 class="groupheader">Member Function Documentation</h2>
304 <a id="a8e37cc8f4b57898a288680e59bea2694"></a>
305 <h2 class="memtitle"><span class="permalink"><a href="#a8e37cc8f4b57898a288680e59bea2694">&#9670;&#160;</a></span>add_destroy_notify_callback()</h2>
306
307 <div class="memitem">
308 <div class="memproto">
309       <table class="memname">
310         <tr>
311           <td class="memname">void sigc::slot_base::add_destroy_notify_callback </td>
312           <td>(</td>
313           <td class="paramtype">void *&#160;</td>
314           <td class="paramname"><em>data</em>, </td>
315         </tr>
316         <tr>
317           <td class="paramkey"></td>
318           <td></td>
319           <td class="paramtype"><a class="el" href="classsigc_1_1slot__base.html#a7e1a0c2fe43a42187810e8997abeb341">func_destroy_notify</a>&#160;</td>
320           <td class="paramname"><em>func</em>&#160;</td>
321         </tr>
322         <tr>
323           <td></td>
324           <td>)</td>
325           <td></td><td> const</td>
326         </tr>
327       </table>
328 </div><div class="memdoc">
329
330 <p>Add a callback that is executed (notified) when the slot is detroyed. </p>
331 <p>This function is used internally by connection objects. </p><dl class="params"><dt>Parameters</dt><dd>
332   <table class="params">
333     <tr><td class="paramname">data</td><td>Passed into func upon notification. </td></tr>
334     <tr><td class="paramname">func</td><td>Callback executed upon destruction of the object. </td></tr>
335   </table>
336   </dd>
337 </dl>
338
339 </div>
340 </div>
341 <a id="a657a8473164c963a5ca4828c88121bb9"></a>
342 <h2 class="memtitle"><span class="permalink"><a href="#a657a8473164c963a5ca4828c88121bb9">&#9670;&#160;</a></span>block()</h2>
343
344 <div class="memitem">
345 <div class="memproto">
346 <table class="mlabels">
347   <tr>
348   <td class="mlabels-left">
349       <table class="memname">
350         <tr>
351           <td class="memname">bool sigc::slot_base::block </td>
352           <td>(</td>
353           <td class="paramtype">bool&#160;</td>
354           <td class="paramname"><em>should_block</em> = <code>true</code></td><td>)</td>
355           <td></td>
356         </tr>
357       </table>
358   </td>
359   <td class="mlabels-right">
360 <span class="mlabels"><span class="mlabel">noexcept</span></span>  </td>
361   </tr>
362 </table>
363 </div><div class="memdoc">
364
365 <p>Sets the blocking state. </p>
366 <p>If <em>should_block</em> is <code>true</code> then the blocking state is set. Subsequent calls to <a class="el" href="classsigc_1_1slot7.html#a28e18e1a9adc88a4758be7d2497fc88d" title="Invoke the contained functor unless slot is in blocking state.">slot::operator()()</a> don't invoke the functor contained by this slot until <a class="el" href="classsigc_1_1slot__base.html#a25ad0bd4d2cea4dbfcd09f7d393d266d" title="Unsets the blocking state.">unblock()</a> or <a class="el" href="classsigc_1_1slot__base.html#a657a8473164c963a5ca4828c88121bb9" title="Sets the blocking state.">block()</a> with <em>should_block</em> = <code>false</code> is called. </p><dl class="params"><dt>Parameters</dt><dd>
367   <table class="params">
368     <tr><td class="paramname">should_block</td><td>Indicates whether the blocking state should be set or unset. </td></tr>
369   </table>
370   </dd>
371 </dl>
372 <dl class="section return"><dt>Returns</dt><dd><code>true</code> if the slot was in blocking state before. </dd></dl>
373
374 </div>
375 </div>
376 <a id="a2f266b6147c4a6bbc5b68994d2dc1517"></a>
377 <h2 class="memtitle"><span class="permalink"><a href="#a2f266b6147c4a6bbc5b68994d2dc1517">&#9670;&#160;</a></span>blocked()</h2>
378
379 <div class="memitem">
380 <div class="memproto">
381 <table class="mlabels">
382   <tr>
383   <td class="mlabels-left">
384       <table class="memname">
385         <tr>
386           <td class="memname">bool sigc::slot_base::blocked </td>
387           <td>(</td>
388           <td class="paramname"></td><td>)</td>
389           <td> const</td>
390         </tr>
391       </table>
392   </td>
393   <td class="mlabels-right">
394 <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">noexcept</span></span>  </td>
395   </tr>
396 </table>
397 </div><div class="memdoc">
398
399 <p>Returns whether the slot is blocked. </p>
400 <dl class="section return"><dt>Returns</dt><dd><code>true</code> if the slot is blocked. </dd></dl>
401
402 </div>
403 </div>
404 <a id="a4042d221f7f07a7394d2eb0f14db2857"></a>
405 <h2 class="memtitle"><span class="permalink"><a href="#a4042d221f7f07a7394d2eb0f14db2857">&#9670;&#160;</a></span>disconnect()</h2>
406
407 <div class="memitem">
408 <div class="memproto">
409       <table class="memname">
410         <tr>
411           <td class="memname">void sigc::slot_base::disconnect </td>
412           <td>(</td>
413           <td class="paramname"></td><td>)</td>
414           <td></td>
415         </tr>
416       </table>
417 </div><div class="memdoc">
418
419 <p>Disconnects the slot. </p>
420 <p>Invalidates the slot and notifies the parent. </p>
421
422 </div>
423 </div>
424 <a id="ae6ac6ca962a1f6a7506d0817165b5cef"></a>
425 <h2 class="memtitle"><span class="permalink"><a href="#ae6ac6ca962a1f6a7506d0817165b5cef">&#9670;&#160;</a></span>empty()</h2>
426
427 <div class="memitem">
428 <div class="memproto">
429 <table class="mlabels">
430   <tr>
431   <td class="mlabels-left">
432       <table class="memname">
433         <tr>
434           <td class="memname">bool sigc::slot_base::empty </td>
435           <td>(</td>
436           <td class="paramname"></td><td>)</td>
437           <td> const</td>
438         </tr>
439       </table>
440   </td>
441   <td class="mlabels-right">
442 <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">noexcept</span></span>  </td>
443   </tr>
444 </table>
445 </div><div class="memdoc">
446
447 <p>Returns whether the slot is invalid. </p>
448 <dl class="section return"><dt>Returns</dt><dd><code>true</code> if the slot is invalid (empty). </dd></dl>
449
450 </div>
451 </div>
452 <a id="a90d4d7d6037973a94d7dfd7ba9a5feb9"></a>
453 <h2 class="memtitle"><span class="permalink"><a href="#a90d4d7d6037973a94d7dfd7ba9a5feb9">&#9670;&#160;</a></span>operator bool()</h2>
454
455 <div class="memitem">
456 <div class="memproto">
457 <table class="mlabels">
458   <tr>
459   <td class="mlabels-left">
460       <table class="memname">
461         <tr>
462           <td class="memname">sigc::slot_base::operator bool </td>
463           <td>(</td>
464           <td class="paramname"></td><td>)</td>
465           <td> const</td>
466         </tr>
467       </table>
468   </td>
469   <td class="mlabels-right">
470 <span class="mlabels"><span class="mlabel">explicit</span><span class="mlabel">noexcept</span></span>  </td>
471   </tr>
472 </table>
473 </div><div class="memdoc">
474
475 <p>Tests whether a slot is null, because the default constructor was used. </p>
476 <p>Test a slot for null like so: </p><div class="fragment"><div class="line"><span class="keywordflow">if</span>(slot)</div>
477 <div class="line"> do_something()</div>
478 </div><!-- fragment --> 
479 </div>
480 </div>
481 <a id="a19522528264f1646f8ed982b0042ffad"></a>
482 <h2 class="memtitle"><span class="permalink"><a href="#a19522528264f1646f8ed982b0042ffad">&#9670;&#160;</a></span>operator=() <span class="overload">[1/2]</span></h2>
483
484 <div class="memitem">
485 <div class="memproto">
486       <table class="memname">
487         <tr>
488           <td class="memname"><a class="el" href="classsigc_1_1slot__base.html">slot_base</a>&amp; sigc::slot_base::operator= </td>
489           <td>(</td>
490           <td class="paramtype">const <a class="el" href="classsigc_1_1slot__base.html">slot_base</a> &amp;&#160;</td>
491           <td class="paramname"><em>src</em></td><td>)</td>
492           <td></td>
493         </tr>
494       </table>
495 </div><div class="memdoc">
496
497 <p>Overrides this slot, making a copy from another slot. </p>
498 <dl class="params"><dt>Parameters</dt><dd>
499   <table class="params">
500     <tr><td class="paramname">src</td><td>The slot from which to make a copy. </td></tr>
501   </table>
502   </dd>
503 </dl>
504 <dl class="section return"><dt>Returns</dt><dd><code>this</code>. </dd></dl>
505
506 </div>
507 </div>
508 <a id="a64e36f28ee61a94c0496fe76f6b3e813"></a>
509 <h2 class="memtitle"><span class="permalink"><a href="#a64e36f28ee61a94c0496fe76f6b3e813">&#9670;&#160;</a></span>operator=() <span class="overload">[2/2]</span></h2>
510
511 <div class="memitem">
512 <div class="memproto">
513       <table class="memname">
514         <tr>
515           <td class="memname"><a class="el" href="classsigc_1_1slot__base.html">slot_base</a>&amp; sigc::slot_base::operator= </td>
516           <td>(</td>
517           <td class="paramtype"><a class="el" href="classsigc_1_1slot__base.html">slot_base</a> &amp;&amp;&#160;</td>
518           <td class="paramname"><em>src</em></td><td>)</td>
519           <td></td>
520         </tr>
521       </table>
522 </div><div class="memdoc">
523
524 <p>Overrides this slot, making a move from another slot. </p>
525 <p>If <code>src</code> is connected to a parent (e.g. a signal), it is copied, not moved. </p><dl class="params"><dt>Parameters</dt><dd>
526   <table class="params">
527     <tr><td class="paramname">src</td><td>The slot from which to move or copy. </td></tr>
528   </table>
529   </dd>
530 </dl>
531 <dl class="section return"><dt>Returns</dt><dd><code>this</code>. </dd></dl>
532
533 </div>
534 </div>
535 <a id="a69c55dedaa35626f288754d55b3da66c"></a>
536 <h2 class="memtitle"><span class="permalink"><a href="#a69c55dedaa35626f288754d55b3da66c">&#9670;&#160;</a></span>remove_destroy_notify_callback()</h2>
537
538 <div class="memitem">
539 <div class="memproto">
540       <table class="memname">
541         <tr>
542           <td class="memname">void sigc::slot_base::remove_destroy_notify_callback </td>
543           <td>(</td>
544           <td class="paramtype">void *&#160;</td>
545           <td class="paramname"><em>data</em></td><td>)</td>
546           <td> const</td>
547         </tr>
548       </table>
549 </div><div class="memdoc">
550
551 <p>Remove a callback previously installed with <a class="el" href="classsigc_1_1slot__base.html#a8e37cc8f4b57898a288680e59bea2694" title="Add a callback that is executed (notified) when the slot is detroyed.">add_destroy_notify_callback()</a>. </p>
552 <p>The callback is not executed. </p><dl class="params"><dt>Parameters</dt><dd>
553   <table class="params">
554     <tr><td class="paramname">data</td><td>Parameter passed into previous call to <a class="el" href="classsigc_1_1slot__base.html#a8e37cc8f4b57898a288680e59bea2694" title="Add a callback that is executed (notified) when the slot is detroyed.">add_destroy_notify_callback()</a>. </td></tr>
555   </table>
556   </dd>
557 </dl>
558
559 </div>
560 </div>
561 <a id="aa7d281de451d5f47923f4ff1c5b7f2c9"></a>
562 <h2 class="memtitle"><span class="permalink"><a href="#aa7d281de451d5f47923f4ff1c5b7f2c9">&#9670;&#160;</a></span>set_parent()</h2>
563
564 <div class="memitem">
565 <div class="memproto">
566 <table class="mlabels">
567   <tr>
568   <td class="mlabels-left">
569       <table class="memname">
570         <tr>
571           <td class="memname">void sigc::slot_base::set_parent </td>
572           <td>(</td>
573           <td class="paramtype">void *&#160;</td>
574           <td class="paramname"><em>parent</em>, </td>
575         </tr>
576         <tr>
577           <td class="paramkey"></td>
578           <td></td>
579           <td class="paramtype">void *(*)(void *)&#160;</td>
580           <td class="paramname"><em>cleanup</em>&#160;</td>
581         </tr>
582         <tr>
583           <td></td>
584           <td>)</td>
585           <td></td><td> const</td>
586         </tr>
587       </table>
588   </td>
589   <td class="mlabels-right">
590 <span class="mlabels"><span class="mlabel">noexcept</span></span>  </td>
591   </tr>
592 </table>
593 </div><div class="memdoc">
594
595 <p>Sets the parent of this slot. </p>
596 <p>This function is used by signals to register a notification callback. This notification callback is executed when the slot becomes invalid because of some referred object dying. </p><dl class="params"><dt>Parameters</dt><dd>
597   <table class="params">
598     <tr><td class="paramname">parent</td><td>The new parent. </td></tr>
599     <tr><td class="paramname">cleanup</td><td>The notification callback. </td></tr>
600   </table>
601   </dd>
602 </dl>
603
604 </div>
605 </div>
606 <a id="a25ad0bd4d2cea4dbfcd09f7d393d266d"></a>
607 <h2 class="memtitle"><span class="permalink"><a href="#a25ad0bd4d2cea4dbfcd09f7d393d266d">&#9670;&#160;</a></span>unblock()</h2>
608
609 <div class="memitem">
610 <div class="memproto">
611 <table class="mlabels">
612   <tr>
613   <td class="mlabels-left">
614       <table class="memname">
615         <tr>
616           <td class="memname">bool sigc::slot_base::unblock </td>
617           <td>(</td>
618           <td class="paramname"></td><td>)</td>
619           <td></td>
620         </tr>
621       </table>
622   </td>
623   <td class="mlabels-right">
624 <span class="mlabels"><span class="mlabel">noexcept</span></span>  </td>
625   </tr>
626 </table>
627 </div><div class="memdoc">
628
629 <p>Unsets the blocking state. </p>
630 <dl class="section return"><dt>Returns</dt><dd><code>true</code> if the slot was in blocking state before. </dd></dl>
631
632 </div>
633 </div>
634 <h2 class="groupheader">Member Data Documentation</h2>
635 <a id="a9dc4958860c0f8300b461a743b7f2a2b"></a>
636 <h2 class="memtitle"><span class="permalink"><a href="#a9dc4958860c0f8300b461a743b7f2a2b">&#9670;&#160;</a></span>blocked_</h2>
637
638 <div class="memitem">
639 <div class="memproto">
640       <table class="memname">
641         <tr>
642           <td class="memname">bool sigc::slot_base::blocked_</td>
643         </tr>
644       </table>
645 </div><div class="memdoc">
646
647 <p>Indicates whether the slot is blocked. </p>
648
649 </div>
650 </div>
651 <a id="aa482f7dfc73c6950abde0fd51b3125b5"></a>
652 <h2 class="memtitle"><span class="permalink"><a href="#aa482f7dfc73c6950abde0fd51b3125b5">&#9670;&#160;</a></span>rep_</h2>
653
654 <div class="memitem">
655 <div class="memproto">
656 <table class="mlabels">
657   <tr>
658   <td class="mlabels-left">
659       <table class="memname">
660         <tr>
661           <td class="memname">rep_type* sigc::slot_base::rep_</td>
662         </tr>
663       </table>
664   </td>
665   <td class="mlabels-right">
666 <span class="mlabels"><span class="mlabel">mutable</span></span>  </td>
667   </tr>
668 </table>
669 </div><div class="memdoc">
670
671 <p>Typed slot_rep object that contains a functor. </p>
672
673 </div>
674 </div>
675 </div><!-- contents -->
676 <!-- start footer part -->
677 <hr class="footer"/><address class="footer"><small>
678 Generated on Fri Feb 11 2022 15:40:59 for libsigc++ by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
679 </small></address>
680 </body>
681 </html>