
ok, I see.
thanks to all,
Vidal
"Robert Ramey"
What's the matter with my propose solution below of using the archive type as the "flag"?
If necessary you could define a special type of archive - confguration_data_archive and a simulation_data_archive. These would be "boiler plate" code modeled on the code from text_oarchive.hpp (or binary or) which would have the effect of creating a special archive types. These types can be used to dispatch the appropriate serializer.
class Foo { void serialize(confguration_data_iarchive & ar, const unsigned int version); void serialize(confguration_data_oarchive & ar, const unsigned int version); void serialize(simulation_data_iarchive & ar, const unsigned int version); void serialize(simulation_data_oarchive & ar, const unsigned int version); };
or if you want to get fancier you can use MPL type techiniques to make it slicker.
Robert Ramey