summaryrefslogtreecommitdiffstats
path: root/src/boost/libs/serialization/test/polymorphic_derived2.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/boost/libs/serialization/test/polymorphic_derived2.cpp')
-rw-r--r--src/boost/libs/serialization/test/polymorphic_derived2.cpp52
1 files changed, 52 insertions, 0 deletions
diff --git a/src/boost/libs/serialization/test/polymorphic_derived2.cpp b/src/boost/libs/serialization/test/polymorphic_derived2.cpp
new file mode 100644
index 000000000..1c710d429
--- /dev/null
+++ b/src/boost/libs/serialization/test/polymorphic_derived2.cpp
@@ -0,0 +1,52 @@
+/////////1/////////2/////////3/////////4/////////5/////////6/////////7/////////8
+// polymorphic_derived2.cpp
+
+// (C) Copyright 2002 Robert Ramey - http://www.rrsd.com .
+// Use, modification and distribution is subject to the Boost Software
+// License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+// See http://www.boost.org for updates, documentation, and revision history.
+
+#include <boost/serialization/type_info_implementation.hpp>
+#include <boost/serialization/extended_type_info_no_rtti.hpp>
+#include <boost/serialization/export.hpp>
+
+#include "polymorphic_base.hpp"
+#include "polymorphic_derived2.hpp"
+
+template<class Archive>
+POLYMORPHIC_DERIVED2_DLL_DECL void polymorphic_derived2::serialize(
+ Archive &ar,
+ const unsigned int /* file_version */
+){
+ ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(polymorphic_base);
+}
+
+const char * polymorphic_derived2::get_key() const {
+ return "polymorphic_derived2";
+}
+POLYMORPHIC_DERIVED2_DLL_DECL
+polymorphic_derived2::polymorphic_derived2(){}
+POLYMORPHIC_DERIVED2_DLL_DECL
+polymorphic_derived2::~polymorphic_derived2(){}
+
+#include <boost/archive/polymorphic_oarchive.hpp>
+#include <boost/archive/polymorphic_iarchive.hpp>
+
+template
+POLYMORPHIC_DERIVED2_DLL_DECL void polymorphic_derived2::serialize(
+ boost::archive::polymorphic_oarchive &,
+ const unsigned int /* file_version */
+);
+template
+POLYMORPHIC_DERIVED2_DLL_DECL void polymorphic_derived2::serialize(
+ boost::archive::polymorphic_iarchive &,
+ const unsigned int
+);
+
+// MWerks users can do this to make their code work
+BOOST_SERIALIZATION_MWERKS_BASE_AND_DERIVED(polymorphic_base, polymorphic_derived2)
+
+// note: export has to be AFTER #includes for all archive classes
+BOOST_CLASS_EXPORT_IMPLEMENT(polymorphic_derived2)