|
Boost Users : |
From: David Abrahams (dave_at_[hidden])
Date: 2004-08-10 10:04:09
Timothy Perrigo <tperrigo_at_[hidden]> writes:
> I'm just now treading into the (rather intimidating) waters of
> template metaprogramming, so I'm not even sure if it will fit what I'm
> trying to accomplish. I need to create a kind of registry to keep
> track of instances of variables of different types (actually, several
> of these registries, representing different system states); variables
> of a type would be identified by an unique (integer) id. In other
> words, the variables within a particular registry represent the state
> of the system at a given point in time, so although each registry
> would have variables of the same types and ids, the values of the
> variables in different registries may be different. If the variables
> were all of the same type, a simple map would work. What I would like
> is a way of asking this registry for a variable of a specified type
> and id, and get back the appropriate instance (of the appropriate
> type). I.e., something like the following would be ideal:
>
> MyType mt = registry.get<MyType>(my_id);
>
> Is there anything in the MPL (or elsewhere in Boost) that might help
> me accomplish what I'm looking to do? If not, does anyone have any
> design suggestions to accomplish this in another way? Any help would
> be appreciated!
Need more info.
Does each id map to just one type, or might there be different types
using the same ID in different registries of type R?
Is the id a runtime value, or is it known at compile-time?
-- Dave Abrahams Boost Consulting http://www.boost-consulting.com
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