Boost logo

Boost Users :

Subject: Re: [Boost-users] mpi/serialization: broadcasting derived class hrough base pointer 1.47
From: MM (finjulhich_at_[hidden])
Date: 2012-01-24 09:23:21


>Matthias Troyer,
>
>I send the broadcast with
>
>
>send.cpp
>boost::mpi::broadcast( , const derived*&, )
>
>
>receive.cpp
>boost::mpi::broadcast( , base*&, )
>
>both .cpp files contain BOOST_CLASS_EXPORT_KEY macro for the derived types.
>
>send succeeds while receive throws unregistered exception however.
>
>Robert Ramey,
>while debugging, could you point out where I should see the class name
being sent down the archive?
>and where it is read from the archive?
>
>Thanks,
>
>MM

I confirm that on the reception side, the class name is not found in the
archive (debugging this).

typedef templateclass<arg> myclass;

On the sending side, I have BOOST_CLASS_EXPORT_KEY(
namespace::namespace::myclass )

I don't know why it is not sent down the pipe.

Could someone pinpoint where I should see the class name sent in the mpi
archive code?
It is obvious where for input but not for output.

MM


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