|
Boost Users : |
From: Doug Gregor (dgregor_at_[hidden])
Date: 2004-11-17 10:49:19
On Nov 17, 2004, at 9:20 AM, Foster, Gareth wrote:
> I was just reading some mention of bugs in boost::signal,
They weren't actually bugs :)
> is this
> implementation in competition with libsigc++? i.e. does it aim to do
> the
> same job, but under a different license, or is there perhaps some
> fundamental design difference between the two?
The Signals library aims to be much more flexible than libsigc++ and to
have an interface that is more comfortable for Boost. For instance,
slots are just function objects with similar signatures (like
Boost.Function, because Function is used in Signals), one can combine
the results of calling multiple slots into a single return value via an
arbitrary function object, and the lifetime of signals & slots is
automatically tied to "trackable" objects used in bind expressions to
build slots.
Basically, libsigc++ is a monolithic entity covering single and
multiple-target callbacks, slots, and slot binding, Signals tackles
only the multiple-target callbacks, relying on other Boost libraries
(especially Function and Signals) to do most of the work, so it
integrates cleanly with the rest of Boost.
Doug
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net