1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml">
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.8.9.1"/>
7 <title>libsigc++: sigc::track_obj_functor< T_functor, T_obj > Class Template Reference</title>
8 <link href="tabs.css" rel="stylesheet" type="text/css"/>
9 <script type="text/javascript" src="jquery.js"></script>
10 <script type="text/javascript" src="dynsections.js"></script>
11 <link href="doxygen.css" rel="stylesheet" type="text/css" />
12 <link href="doxygen-extra.css" rel="stylesheet" type="text/css"/>
15 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
17 <table cellspacing="0" cellpadding="0">
19 <tr style="height: 56px;">
20 <td style="padding-left: 0.5em;">
21 <div id="projectname">libsigc++
22  <span id="projectnumber">2.99.2</span>
29 <!-- end header part -->
30 <!-- Generated by Doxygen 1.8.9.1 -->
31 <div id="navrow1" class="tabs">
33 <li><a href="index.html"><span>Main Page</span></a></li>
34 <li><a href="pages.html"><span>Related Pages</span></a></li>
35 <li><a href="modules.html"><span>Modules</span></a></li>
36 <li><a href="namespaces.html"><span>Namespaces</span></a></li>
37 <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
40 <div id="navrow2" class="tabs2">
42 <li><a href="annotated.html"><span>Class List</span></a></li>
43 <li><a href="classes.html"><span>Class Index</span></a></li>
44 <li><a href="inherits.html"><span>Class Hierarchy</span></a></li>
45 <li><a href="functions.html"><span>Class Members</span></a></li>
48 <div id="nav-path" class="navpath">
50 <li class="navelem"><a class="el" href="namespacesigc.html">sigc</a></li><li class="navelem"><a class="el" href="classsigc_1_1track__obj__functor.html">track_obj_functor</a></li> </ul>
55 <a href="#pub-types">Public Types</a> |
56 <a href="#pub-methods">Public Member Functions</a> |
57 <a href="classsigc_1_1track__obj__functor-members.html">List of all members</a> </div>
58 <div class="headertitle">
59 <div class="title">sigc::track_obj_functor< T_functor, T_obj > Class Template Reference<div class="ingroups"><a class="el" href="group__adaptors.html">Adaptors</a> » <a class="el" href="group__track__obj.html">track_obj()</a></div></div> </div>
61 <div class="contents">
63 <p><a class="el" href="classsigc_1_1track__obj__functor.html" title="track_obj_functor wraps a functor and stores a reference to a trackable object. ">track_obj_functor</a> wraps a functor and stores a reference to a trackable object.
64 <a href="classsigc_1_1track__obj__functor.html#details">More...</a></p>
66 <p><code>#include <sigc++/adaptors/track_obj.h></code></p>
67 <div class="dynheader">
68 Inheritance diagram for sigc::track_obj_functor< T_functor, T_obj >:</div>
69 <div class="dyncontent">
70 <div class="center"><img src="classsigc_1_1track__obj__functor__inherit__graph.png" border="0" usemap="#sigc_1_1track__obj__functor_3_01T__functor_00_01T__obj_01_4_inherit__map" alt="Inheritance graph"/></div>
71 <map name="sigc_1_1track__obj__functor_3_01T__functor_00_01T__obj_01_4_inherit__map" id="sigc_1_1track__obj__functor_3_01T__functor_00_01T__obj_01_4_inherit__map">
72 <area shape="rect" id="node2" href="structsigc_1_1adapts.html" title="Base type for adaptors. " alt="" coords="5,155,193,181"/><area shape="rect" id="node3" href="structsigc_1_1adaptor__base.html" title="A hint to the compiler. " alt="" coords="28,80,171,107"/><area shape="rect" id="node4" href="structsigc_1_1functor__base.html" title="A hint to the compiler. " alt="" coords="30,5,169,32"/></map>
73 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
74 <table class="memberdecls">
75 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
76 Public Types</h2></td></tr>
77 <tr class="memitem:a745b0be2872899ecb5a63abaab021461"><td class="memItemLeft" align="right" valign="top">using </td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1track__obj__functor.html#a745b0be2872899ecb5a63abaab021461">adaptor_type</a> = typename <a class="el" href="structsigc_1_1adapts.html">adapts</a>< T_functor >::<a class="el" href="structsigc_1_1adapts.html#a944f414e6d1a98cf42aa48e82b52a079">adaptor_type</a></td></tr>
78 <tr class="separator:a745b0be2872899ecb5a63abaab021461"><td class="memSeparator" colspan="2"> </td></tr>
79 <tr class="memitem:a37e253a11695cc3972d4ac0c0bdc7067"><td class="memItemLeft" align="right" valign="top">using </td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1track__obj__functor.html#a37e253a11695cc3972d4ac0c0bdc7067">result_type</a> = typename adaptor_type::result_type</td></tr>
80 <tr class="separator:a37e253a11695cc3972d4ac0c0bdc7067"><td class="memSeparator" colspan="2"> </td></tr>
81 <tr class="inherit_header pub_types_structsigc_1_1adapts"><td colspan="2" onclick="javascript:toggleInherit('pub_types_structsigc_1_1adapts')"><img src="closed.png" alt="-"/> Public Types inherited from <a class="el" href="structsigc_1_1adapts.html">sigc::adapts< T_functor ></a></td></tr>
82 <tr class="memitem:a944f414e6d1a98cf42aa48e82b52a079 inherit pub_types_structsigc_1_1adapts"><td class="memItemLeft" align="right" valign="top">using </td><td class="memItemRight" valign="bottom"><a class="el" href="structsigc_1_1adapts.html#a944f414e6d1a98cf42aa48e82b52a079">adaptor_type</a> = typename <a class="el" href="structsigc_1_1adaptor__trait.html">adaptor_trait</a>< T_functor >::<a class="el" href="structsigc_1_1adapts.html#a944f414e6d1a98cf42aa48e82b52a079">adaptor_type</a></td></tr>
83 <tr class="separator:a944f414e6d1a98cf42aa48e82b52a079 inherit pub_types_structsigc_1_1adapts"><td class="memSeparator" colspan="2"> </td></tr>
84 <tr class="memitem:a4514810fc2ec4e274748d8970a7052e2 inherit pub_types_structsigc_1_1adapts"><td class="memItemLeft" align="right" valign="top">using </td><td class="memItemRight" valign="bottom"><a class="el" href="structsigc_1_1adapts.html#a4514810fc2ec4e274748d8970a7052e2">result_type</a> = typename <a class="el" href="structsigc_1_1adaptor__trait.html">adaptor_trait</a>< T_functor >::<a class="el" href="structsigc_1_1adapts.html#a4514810fc2ec4e274748d8970a7052e2">result_type</a></td></tr>
85 <tr class="separator:a4514810fc2ec4e274748d8970a7052e2 inherit pub_types_structsigc_1_1adapts"><td class="memSeparator" colspan="2"> </td></tr>
86 </table><table class="memberdecls">
87 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
88 Public Member Functions</h2></td></tr>
89 <tr class="memitem:ab6030b10a894943a6b7ce18a93af190b"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1track__obj__functor.html#ab6030b10a894943a6b7ce18a93af190b">track_obj_functor</a> (const T_functor& _A_func, const T_obj&..._A_obj)</td></tr>
90 <tr class="memdesc:ab6030b10a894943a6b7ce18a93af190b"><td class="mdescLeft"> </td><td class="mdescRight">Constructs a <a class="el" href="classsigc_1_1track__obj__functor.html" title="track_obj_functor wraps a functor and stores a reference to a trackable object. ">track_obj_functor</a> object that wraps the passed functor and stores a reference to the passed trackable objects. <a href="#ab6030b10a894943a6b7ce18a93af190b">More...</a><br /></td></tr>
91 <tr class="separator:ab6030b10a894943a6b7ce18a93af190b"><td class="memSeparator" colspan="2"> </td></tr>
92 <tr class="memitem:a2b24b2c0f4b81238d229285f12405378"><td class="memItemLeft" align="right" valign="top">decltype(auto) </td><td class="memItemRight" valign="bottom"><a class="el" href="classsigc_1_1track__obj__functor.html#a2b24b2c0f4b81238d229285f12405378">operator()</a> ()</td></tr>
93 <tr class="memdesc:a2b24b2c0f4b81238d229285f12405378"><td class="mdescLeft"> </td><td class="mdescRight">Invokes the wrapped functor. <a href="#a2b24b2c0f4b81238d229285f12405378">More...</a><br /></td></tr>
94 <tr class="separator:a2b24b2c0f4b81238d229285f12405378"><td class="memSeparator" colspan="2"> </td></tr>
95 <tr class="memitem:ae184d32911fdefbe868edfe9921d4b41"><td class="memTemplParams" colspan="2">template<typename... T_arg> </td></tr>
96 <tr class="memitem:ae184d32911fdefbe868edfe9921d4b41"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto) </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classsigc_1_1track__obj__functor.html#ae184d32911fdefbe868edfe9921d4b41">operator()</a> (T_arg&&..._A_arg)</td></tr>
97 <tr class="memdesc:ae184d32911fdefbe868edfe9921d4b41"><td class="mdescLeft"> </td><td class="mdescRight">Invokes the wrapped functor passing on the arguments. <a href="#ae184d32911fdefbe868edfe9921d4b41">More...</a><br /></td></tr>
98 <tr class="separator:ae184d32911fdefbe868edfe9921d4b41"><td class="memSeparator" colspan="2"> </td></tr>
99 <tr class="inherit_header pub_methods_structsigc_1_1adapts"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_structsigc_1_1adapts')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="structsigc_1_1adapts.html">sigc::adapts< T_functor ></a></td></tr>
100 <tr class="memitem:a947b69ccbdcabd4ef4163dcab96096f8 inherit pub_methods_structsigc_1_1adapts"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="structsigc_1_1adapts.html#a947b69ccbdcabd4ef4163dcab96096f8">adapts</a> (const T_functor& _A_functor)</td></tr>
101 <tr class="memdesc:a947b69ccbdcabd4ef4163dcab96096f8 inherit pub_methods_structsigc_1_1adapts"><td class="mdescLeft"> </td><td class="mdescRight">Constructs an adaptor that wraps the passed functor. <a href="#a947b69ccbdcabd4ef4163dcab96096f8">More...</a><br /></td></tr>
102 <tr class="separator:a947b69ccbdcabd4ef4163dcab96096f8 inherit pub_methods_structsigc_1_1adapts"><td class="memSeparator" colspan="2"> </td></tr>
103 </table><table class="memberdecls">
104 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
105 Additional Inherited Members</h2></td></tr>
106 <tr class="inherit_header pub_attribs_structsigc_1_1adapts"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_structsigc_1_1adapts')"><img src="closed.png" alt="-"/> Public Attributes inherited from <a class="el" href="structsigc_1_1adapts.html">sigc::adapts< T_functor ></a></td></tr>
107 <tr class="memitem:a2f4b37eb160708baf17de57f2abce7a7 inherit pub_attribs_structsigc_1_1adapts"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structsigc_1_1adapts.html#a944f414e6d1a98cf42aa48e82b52a079">adaptor_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structsigc_1_1adapts.html#a2f4b37eb160708baf17de57f2abce7a7">functor_</a></td></tr>
108 <tr class="memdesc:a2f4b37eb160708baf17de57f2abce7a7 inherit pub_attribs_structsigc_1_1adapts"><td class="mdescLeft"> </td><td class="mdescRight">Adaptor that is invoked from operator()(). <a href="#a2f4b37eb160708baf17de57f2abce7a7">More...</a><br /></td></tr>
109 <tr class="separator:a2f4b37eb160708baf17de57f2abce7a7 inherit pub_attribs_structsigc_1_1adapts"><td class="memSeparator" colspan="2"> </td></tr>
111 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
112 <div class="textblock"><h3>template<typename T_functor, typename... T_obj><br />
113 class sigc::track_obj_functor< T_functor, T_obj ></h3>
115 <p><a class="el" href="classsigc_1_1track__obj__functor.html" title="track_obj_functor wraps a functor and stores a reference to a trackable object. ">track_obj_functor</a> wraps a functor and stores a reference to a trackable object. </p>
116 <p>Use the convenience function <a class="el" href="group__track__obj.html#ga2d8c46509a25df9c7ad37b8712d16ab1" title="Creates an adaptor of type sigc::track_obj_functor which wraps a functor. ">track_obj()</a> to create an instance of <a class="el" href="classsigc_1_1track__obj__functor.html" title="track_obj_functor wraps a functor and stores a reference to a trackable object. ">track_obj_functor</a>.</p>
117 <dl class="tparams"><dt>Template Parameters</dt><dd>
118 <table class="tparams">
119 <tr><td class="paramname">T_functor</td><td>The type of functor to wrap. </td></tr>
120 <tr><td class="paramname">T_obj</td><td>The types of the trackable objects.</td></tr>
124 <dl class="since_2_4"><dt><b><a class="el" href="since_2_4.html#_since_2_4000007">Since libsigc++ 2.4:</a></b></dt><dd></dd></dl>
125 </div><h2 class="groupheader">Member Typedef Documentation</h2>
126 <a class="anchor" id="a745b0be2872899ecb5a63abaab021461"></a>
127 <div class="memitem">
128 <div class="memproto">
129 <div class="memtemplate">
130 template <typename T_functor , typename... T_obj> </div>
131 <table class="memname">
133 <td class="memname">using <a class="el" href="classsigc_1_1track__obj__functor.html">sigc::track_obj_functor</a>< T_functor, T_obj >::<a class="el" href="structsigc_1_1adapts.html#a944f414e6d1a98cf42aa48e82b52a079">adaptor_type</a> = typename <a class="el" href="structsigc_1_1adapts.html">adapts</a><T_functor>::<a class="el" href="structsigc_1_1adapts.html#a944f414e6d1a98cf42aa48e82b52a079">adaptor_type</a></td>
136 </div><div class="memdoc">
140 <a class="anchor" id="a37e253a11695cc3972d4ac0c0bdc7067"></a>
141 <div class="memitem">
142 <div class="memproto">
143 <div class="memtemplate">
144 template <typename T_functor , typename... T_obj> </div>
145 <table class="memname">
147 <td class="memname">using <a class="el" href="classsigc_1_1track__obj__functor.html">sigc::track_obj_functor</a>< T_functor, T_obj >::<a class="el" href="structsigc_1_1adapts.html#a4514810fc2ec4e274748d8970a7052e2">result_type</a> = typename adaptor_type::result_type</td>
150 </div><div class="memdoc">
154 <h2 class="groupheader">Constructor & Destructor Documentation</h2>
155 <a class="anchor" id="ab6030b10a894943a6b7ce18a93af190b"></a>
156 <div class="memitem">
157 <div class="memproto">
158 <div class="memtemplate">
159 template <typename T_functor , typename... T_obj> </div>
160 <table class="mlabels">
162 <td class="mlabels-left">
163 <table class="memname">
165 <td class="memname"><a class="el" href="classsigc_1_1track__obj__functor.html">sigc::track_obj_functor</a>< T_functor, T_obj >::<a class="el" href="classsigc_1_1track__obj__functor.html">track_obj_functor</a> </td>
167 <td class="paramtype">const T_functor & </td>
168 <td class="paramname"><em>_A_func</em>, </td>
171 <td class="paramkey"></td>
173 <td class="paramtype">const T_obj &... </td>
174 <td class="paramname"><em>_A_obj</em> </td>
183 <td class="mlabels-right">
184 <span class="mlabels"><span class="mlabel">inline</span></span> </td>
187 </div><div class="memdoc">
189 <p>Constructs a <a class="el" href="classsigc_1_1track__obj__functor.html" title="track_obj_functor wraps a functor and stores a reference to a trackable object. ">track_obj_functor</a> object that wraps the passed functor and stores a reference to the passed trackable objects. </p>
190 <dl class="params"><dt>Parameters</dt><dd>
191 <table class="params">
192 <tr><td class="paramname">_A_func</td><td>Functor. </td></tr>
193 <tr><td class="paramname">_A_obj</td><td>Trackable objects. </td></tr>
200 <h2 class="groupheader">Member Function Documentation</h2>
201 <a class="anchor" id="a2b24b2c0f4b81238d229285f12405378"></a>
202 <div class="memitem">
203 <div class="memproto">
204 <div class="memtemplate">
205 template <typename T_functor , typename... T_obj> </div>
206 <table class="mlabels">
208 <td class="mlabels-left">
209 <table class="memname">
211 <td class="memname">decltype(auto) <a class="el" href="classsigc_1_1track__obj__functor.html">sigc::track_obj_functor</a>< T_functor, T_obj >::operator() </td>
213 <td class="paramname"></td><td>)</td>
218 <td class="mlabels-right">
219 <span class="mlabels"><span class="mlabel">inline</span></span> </td>
222 </div><div class="memdoc">
224 <p>Invokes the wrapped functor. </p>
225 <dl class="section return"><dt>Returns</dt><dd>The return value of the functor invocation. </dd></dl>
229 <a class="anchor" id="ae184d32911fdefbe868edfe9921d4b41"></a>
230 <div class="memitem">
231 <div class="memproto">
232 <div class="memtemplate">
233 template <typename T_functor , typename... T_obj> </div>
234 <div class="memtemplate">
235 template <typename... T_arg> </div>
236 <table class="mlabels">
238 <td class="mlabels-left">
239 <table class="memname">
241 <td class="memname">decltype(auto) <a class="el" href="classsigc_1_1track__obj__functor.html">sigc::track_obj_functor</a>< T_functor, T_obj >::operator() </td>
243 <td class="paramtype">T_arg &&... </td>
244 <td class="paramname"><em>_A_arg</em></td><td>)</td>
249 <td class="mlabels-right">
250 <span class="mlabels"><span class="mlabel">inline</span></span> </td>
253 </div><div class="memdoc">
255 <p>Invokes the wrapped functor passing on the arguments. </p>
256 <dl class="params"><dt>Parameters</dt><dd>
257 <table class="params">
258 <tr><td class="paramname">_A_arg...</td><td>Arguments to be passed on to the functor. </td></tr>
262 <dl class="section return"><dt>Returns</dt><dd>The return value of the functor invocation. </dd></dl>
266 </div><!-- contents -->
267 <!-- start footer part -->
268 <hr class="footer"/><address class="footer"><small>
269 Generated on Wed Mar 16 2016 20:53:28 for libsigc++ by  <a href="http://www.doxygen.org/index.html">
270 <img class="footer" src="doxygen.png" alt="doxygen"/>