Boost logo

Boost :

From: Matthias Troyer (troyer_at_[hidden])
Date: 2002-01-23 04:24:51


Dear Boosters,

In updating and rewriting my sources I got to the stage where
it would be preferably to use a "standard" persistence library
instead of my own custom one (which I've used for the past 7 years).

I have looked at Jens Maurer's efforts in the boost files section,
which unfortunately seems to be idling there and not developed further.
 From my experience I found three things that my own persistence
library supports but which I miss in Jens' (otherwise much nicer)
library.
I want to bring up these issues here:

i) I often have to (de)serialize large arrays of numbers, for which an
    optimized function should exist that can (de)serialize a C-array in
    one function call. This also allows support for data formats such as
    HDF

ii) (De)serialization of pointers

iii) using runtime polymorphism with the persistence library. At the
moment
    only compile time polymorphism is implemented, and the Reader/Writer
    needs to be chosen at compile time. This is a problem in my
applications,
    where the (de)serialization is controlled from an application
framework,
    which calls a virtual save/load function of a simulation object. For
this
    to work the save and load functions for the basic data types need to
be
    virtual functions too.

While issues i) and ii) can easily be addressed in Jens' library
prototype,
usage scenario in iii) (as far as I see) cannot be done in Jens' library
since
virtual template functions are impossible.

Any ideas/comments how to proceed with the persistence library, which
seems
to me a very important one?

Matthias


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