1<?xml version="1.0" encoding="utf-8"?> 2<!DOCTYPE section PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN" 3 "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd"> 4<!-- 5Copyright Douglas Gregor 2001-2004 6Copyright Frank Mori Hess 2007-2009 7 8Distributed under the Boost Software License, Version 1.0. (See accompanying 9file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 10--> 11<section last-revision="$Date: 2007-06-12 14:01:23 -0400 (Tue, 12 Jun 2007) $"> 12 <title>Introduction</title> 13 14 <para>The Boost.Signals2 library is an implementation of a managed 15 signals and slots system. Signals represent callbacks with multiple 16 targets, and are also called publishers or events in similar 17 systems. Signals are connected to some set of slots, which are 18 callback receivers (also called event targets or subscribers), which 19 are called when the signal is "emitted."</para> 20 21 <para>Signals and slots are managed, in that signals and slots (or, 22 more properly, objects that occur as part of the slots) can track 23 connections and are capable of automatically disconnecting signal/slot 24 connections when either is destroyed. This enables the user to make 25 signal/slot connections without expending a great effort to manage the 26 lifetimes of those connections with regard to the lifetimes of all 27 objects involved.</para> 28 29 <para>When signals are connected to multiple slots, there is a 30 question regarding the relationship between the return values of the 31 slots and the return value of the signals. Boost.Signals2 allows the 32 user to specify the manner in which multiple return values are 33 combined.</para> 34 35 <section> 36 <title>Signals2</title> 37 <para>This documentation describes a thread-safe variant of the 38 original Boost.Signals library. There have been some changes to 39 the interface to support thread-safety, mostly with respect to 40 automatic connection management. This implementation was written by 41 Frank Mori Hess. Acknowledgements are also due to Timmo Stange, Peter 42 Dimov, and Tony Van Eerd for ideas and feedback, and to Douglas Gregor 43 for the original version of Boost.Signals this effort was based on. 44 </para> 45 </section> 46</section> 47