|
Boost : |
From: Yigong Liu (yigongliu_at_[hidden])
Date: 2006-02-27 03:01:43
Hello All,
Is there any interests in libraries for distributed message passing and
event dispatching? There are many aspects involved in the design of these
systems, such as choosing proper message/event id types, routing/dispatching
algorithms, synchronization strategies for routing data structures and
remote connection transport, etc.. Various application domains present
different requirements for performance and functionalities (in embedded
systems, integers or sub-int (bit-fields) are used as ids and routing is
based on registration table, while in the e-commerce applications,
class/structs with key attributes can be used as ids to facilitate more
advanced routings). I am working on a C++ template library for generic
publish/subscribe called Channel. Channel's major components (message IDs,
routing algorithms...) are configurable as template parameters. As a
namespace shared by peer threads, channels support publish/subscribe scope
control, message filtering, and translation. Channel is used the same way as
we use STL containers; by instantiating Channel template with proper id
type, id trait and routing algorithms, user can create customized message
passing and event dispatching facility for a particular application. More
documentations and code can be found at : http://channel.sourceforge.net
Right now Channel is built on top of ACE (adaptive communication
environment) to gain platform independence. Besides classes related to
socket connections and message marshaling, most channel classes are quite
platform independent. I am refactoring the code and move the platform
dependent code into a few policy classes.
I would like to know is there any interests in boost for such frameworks. If
so, I'll be glad to present a boostified version of the framework for a
review process and use existing boost classes for platform abstractions.
Thanks
Yigong
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk