Hi,
I'm new to Boost Serialization library . I
wanted to use the library for some of my full fledge so I thought I
might as well test out the features that the library documentation
claimed it had . Many of the basic features did work but some of the
advanced features that I wanted most like object tracking and
serializing derived objects through a pointer to the base class gave me
some problems .
I faced the following two problems ( in order of decreasing priority ):
(1) Object Serialization : I have 4 pointers to 3 objects of the same
class , On deserializing these the pointers are mixed up . If while
writing out pointers 1 & 2 pointed to objects 1 and 2 , and
pointers 3 and 4 pointed to objects 1 and 3 then on restoration
pointers 1 & 2 pointed to objects 1 & 2 but pointers 3 & 4
pointed to objects 2 and 3 instead of 1 and 3 .
(2) Writing derived objects through pointer to base class : This
feature worked if I did a registration through
ar.register_type(static_cast<gps_moreAcc1 *>(NULL)) but did not
work if I did BOOST_CLASS_EXPORT( gps_moreAcc1) .
I get a "DoneAbort" message i.e a core dump .
I don't know too much about templates , so I was not able to debug the problem .
I have attached a program which exhibit both problems , but the code
that causes the second problem is commented out . This can be
reproduced by just commenting out ar.register_type calls and
uncommenting BOOST_CLASS_EXPORT macros .
I have added more comments in the source file .
Please let me know if I am doing something wrong or if these are know
problems with the serialization library or if the serialization library
cannot be handled by serialization .
+Mahesh