diff options
Diffstat (limited to 'doc/html/signals2/rationale.html')
-rw-r--r--[-rwxr-xr-x] | doc/html/signals2/rationale.html | 46 |
1 files changed, 23 insertions, 23 deletions
diff --git a/doc/html/signals2/rationale.html b/doc/html/signals2/rationale.html index 5899faa6f9..a663264fd2 100755..100644 --- a/doc/html/signals2/rationale.html +++ b/doc/html/signals2/rationale.html @@ -26,17 +26,17 @@ <div class="titlepage"><div><div><h2 class="title" style="clear: both"> <a name="signals2.rationale"></a>Design Rationale</h2></div></div></div> <div class="toc"><dl> -<dt><span class="section"><a href="rationale.html#id3177984">User-level Connection Management</a></span></dt> -<dt><span class="section"><a href="rationale.html#id3178156">Automatic Connection Management</a></span></dt> -<dt><span class="section"><a href="rationale.html#id3178316"><code class="computeroutput">optional_last_value</code> as the Default Combiner</a></span></dt> -<dt><span class="section"><a href="rationale.html#id3178376">Combiner Interface</a></span></dt> -<dt><span class="section"><a href="rationale.html#id3178457">Connection Interfaces: += operator</a></span></dt> -<dt><span class="section"><a href="rationale.html#id3178628">Signals2 Mutex Classes</a></span></dt> -<dt><span class="section"><a href="rationale.html#id3178722">Comparison with other Signal/Slot implementations</a></span></dt> +<dt><span class="section"><a href="rationale.html#id3234382">User-level Connection Management</a></span></dt> +<dt><span class="section"><a href="rationale.html#id3234554">Automatic Connection Management</a></span></dt> +<dt><span class="section"><a href="rationale.html#id3234714"><code class="computeroutput">optional_last_value</code> as the Default Combiner</a></span></dt> +<dt><span class="section"><a href="rationale.html#id3234774">Combiner Interface</a></span></dt> +<dt><span class="section"><a href="rationale.html#id3234855">Connection Interfaces: += operator</a></span></dt> +<dt><span class="section"><a href="rationale.html#id3235026">Signals2 Mutex Classes</a></span></dt> +<dt><span class="section"><a href="rationale.html#id3235120">Comparison with other Signal/Slot implementations</a></span></dt> </dl></div> <div class="section"> <div class="titlepage"><div><div><h3 class="title"> -<a name="id3177984"></a>User-level Connection Management</h3></div></div></div> +<a name="id3234382"></a>User-level Connection Management</h3></div></div></div> <p> Users need to have fine control over the connection of signals to slots and their eventual disconnection. The primary approach taken by Boost.Signals2 is to return a @@ -44,14 +44,14 @@ connected/disconnected query, manual disconnection, and an automatic disconnection on destruction mode (<code class="computeroutput"><a class="link" href="../boost/signals2/scoped_connection.html" title="Class scoped_connection">signals2::scoped_connection</a></code>). In addition, two other interfaces are supported by the - <code class="computeroutput"><a class="link" href="../boost/signals2/signal.html#id1070266-bb">signal::disconnect</a></code> overloaded method:</p> + <code class="computeroutput"><a class="link" href="../boost/signals2/signal.html#id1379521-bb">signal::disconnect</a></code> overloaded method:</p> <div class="itemizedlist"><ul class="itemizedlist" type="disc"> <li class="listitem"><p><span class="bold"><strong>Pass slot to disconnect</strong></span>: in this interface model, the disconnection of a slot connected with - <code class="computeroutput">sig.<a class="link" href="../boost/signals2/signal.html#id1144782-bb">connect</a>(typeof(sig)::slot_type(slot_func))</code> is + <code class="computeroutput">sig.<a class="link" href="../boost/signals2/signal.html#id1093981-bb">connect</a>(typeof(sig)::slot_type(slot_func))</code> is performed via - <code class="computeroutput">sig.<a class="link" href="../boost/signals2/signal.html#id1070266-bb">disconnect</a>(slot_func)</code>. Internally, + <code class="computeroutput">sig.<a class="link" href="../boost/signals2/signal.html#id1379521-bb">disconnect</a>(slot_func)</code>. Internally, a linear search using slot comparison is performed and the slot, if found, is removed from the list. Unfortunately, querying connectedness ends up as a @@ -79,14 +79,14 @@ </ul></div> <p> This type of interface is supported in Boost.Signals2 via the slot grouping mechanism, and the overload of - <code class="computeroutput"><a class="link" href="../boost/signals2/signal.html#id1070266-bb">signal::disconnect</a></code> + <code class="computeroutput"><a class="link" href="../boost/signals2/signal.html#id1379521-bb">signal::disconnect</a></code> which takes an argument of the signal's <code class="computeroutput">Group</code> type.</p> </li> </ul></div> </div> <div class="section"> <div class="titlepage"><div><div><h3 class="title"> -<a name="id3178156"></a>Automatic Connection Management</h3></div></div></div> +<a name="id3234554"></a>Automatic Connection Management</h3></div></div></div> <p>Automatic connection management in Signals2 depends on the use of <code class="computeroutput">boost::shared_ptr</code> to manage the lifetimes of tracked objects. This is differs from @@ -128,7 +128,7 @@ </div> <div class="section"> <div class="titlepage"><div><div><h3 class="title"> -<a name="id3178316"></a><code class="computeroutput">optional_last_value</code> as the Default Combiner</h3></div></div></div> +<a name="id3234714"></a><code class="computeroutput">optional_last_value</code> as the Default Combiner</h3></div></div></div> <p> The default combiner for Boost.Signals2 has changed from the <code class="computeroutput">last_value</code> combiner used by default in the original Boost.Signals library. @@ -144,7 +144,7 @@ </div> <div class="section"> <div class="titlepage"><div><div><h3 class="title"> -<a name="id3178376"></a>Combiner Interface</h3></div></div></div> +<a name="id3234774"></a>Combiner Interface</h3></div></div></div> <p> The Combiner interface was chosen to mimic a call to an algorithm in the C++ standard library. It is felt that by viewing slot call results as merely a sequence of values accessed by input @@ -272,9 +272,9 @@ private: </div> <div class="section"> <div class="titlepage"><div><div><h3 class="title"> -<a name="id3178457"></a>Connection Interfaces: += operator</h3></div></div></div> +<a name="id3234855"></a>Connection Interfaces: += operator</h3></div></div></div> <p> Boost.Signals2 supports a connection syntax with the form - <code class="computeroutput">sig.<a class="link" href="../boost/signals2/signal.html#id1144782-bb">connect</a>(slot)</code>, but a + <code class="computeroutput">sig.<a class="link" href="../boost/signals2/signal.html#id1093981-bb">connect</a>(slot)</code>, but a more terse syntax <code class="computeroutput">sig += slot</code> has been suggested (and has been used by other signals & slots implementations). There are several reasons as to why this syntax has been @@ -312,7 +312,7 @@ private: </div> <div class="section"> <div class="titlepage"><div><div><h3 class="title"> -<a name="id3178628"></a>Signals2 Mutex Classes</h3></div></div></div> +<a name="id3235026"></a>Signals2 Mutex Classes</h3></div></div></div> <p> The Boost.Signals2 library provides 2 mutex classes: <code class="computeroutput"><a class="link" href="../boost/signals2/mutex.html" title="Class mutex">boost::signals2::mutex</a></code>, and <code class="computeroutput"><a class="link" href="../boost/signals2/dummy_mutex.html" title="Class dummy_mutex">boost::signals2::dummy_mutex</a></code>. The motivation for providing @@ -330,14 +330,14 @@ private: </div> <div class="section"> <div class="titlepage"><div><div><h3 class="title"> -<a name="id3178722"></a>Comparison with other Signal/Slot implementations</h3></div></div></div> +<a name="id3235120"></a>Comparison with other Signal/Slot implementations</h3></div></div></div> <div class="toc"><dl> -<dt><span class="section"><a href="rationale.html#id3178729">libsigc++</a></span></dt> -<dt><span class="section"><a href="rationale.html#id3178800">.NET delegates</a></span></dt> +<dt><span class="section"><a href="rationale.html#id3235127">libsigc++</a></span></dt> +<dt><span class="section"><a href="rationale.html#id3235198">.NET delegates</a></span></dt> </dl></div> <div class="section"> <div class="titlepage"><div><div><h4 class="title"> -<a name="id3178729"></a>libsigc++</h4></div></div></div> +<a name="id3235127"></a>libsigc++</h4></div></div></div> <p> <a href="http://libsigc.sourceforge.net" target="_top">libsigc++</a> is a C++ signals & slots library that originally started as part of an initiative to wrap the C interfaces to <a href="http://www.gtk.org" target="_top">GTK</a> libraries in C++, and has @@ -367,7 +367,7 @@ private: </div> <div class="section"> <div class="titlepage"><div><div><h4 class="title"> -<a name="id3178800"></a>.NET delegates</h4></div></div></div> +<a name="id3235198"></a>.NET delegates</h4></div></div></div> <p> <a href="http://www.microsoft.com" target="_top">Microsoft</a> has introduced the .NET Framework and an associated set of languages and language extensions, one of which is the |