Boost logo

Boost :

From: E. Gladyshev (eegg_at_[hidden])
Date: 2004-03-09 23:44:07


----- Original Message -----
From: "Jody Hagins" <jody-boost-011304_at_[hidden]>
To: <boost_at_[hidden]>
Sent: Tuesday, March 09, 2004 9:37 AM
Subject: Re: [boost] enumeration interface for boost::signals

[...]
>
> If I understand the original statement, I have a similar requirement,
> and have done it by implementing an addition class, I call multisignal
> (after multimap, multiset, and so forth). It basically holds an
> addition to the tuple library that I call dynamic_tuple, which provides
> direct access to any type, while preserving type safety both at run time
> and compile time. You can use a type as an index into a dynamic_tuple,
> and still get constant time lookup. This forms a basis for the
> multisignal, which provides a wrapper around Boost.Signal to allow
> multiple signals to be raised, using the same signal object. The
> algorithmic complexity can be minimized to constant time lookup of the
> signal object using another libary I call type_to_index, which provides
> a special zero-based index for a specific type, relative to the
> collection in which the type is used as an index.
>
>
> Sounds complicated, but it is quite simple. However, to get the
> type_to_index, you have to create explicit template instantiations, or
> allow static data members (which some are opposed to, depending on OS
> preference).
>

I don't think that it's what I was talking about.

Using one signal object for propagating multiple events types
is not a problem. You can use tuple or variant.

My problem is in accessing the singnal slots randomly
in an efficient way.

Eugene


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk