| 1 | <?xml version="1.0" encoding="utf-8"?> |
|---|
| 2 | <!-- |
|---|
| 3 | Copyright (c) 2002 Douglas Gregor <doug.gregor -at- gmail.com> |
|---|
| 4 | |
|---|
| 5 | Distributed under the Boost Software License, Version 1.0. |
|---|
| 6 | (See accompanying file LICENSE_1_0.txt or copy at |
|---|
| 7 | http://www.boost.org/LICENSE_1_0.txt) |
|---|
| 8 | --> |
|---|
| 9 | <!DOCTYPE section PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN" |
|---|
| 10 | "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd"> |
|---|
| 11 | <section last-revision="$Date: 2006/11/03 19:45:40 $"> |
|---|
| 12 | <title>Introduction</title> |
|---|
| 13 | |
|---|
| 14 | <para>The Boost.Signals 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) track all |
|---|
| 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.Signals allows the |
|---|
| 32 | user to specify the manner in which multiple return values are |
|---|
| 33 | combined.</para> |
|---|
| 34 | |
|---|
| 35 | </section> |
|---|