Remote Call Framework 3.1
SerializationProtocol_BS.hpp
1 
2 //******************************************************************************
3 // RCF - Remote Call Framework
4 //
5 // Copyright (c) 2005 - 2019, Delta V Software. All rights reserved.
6 // http://www.deltavsoft.com
7 //
8 // RCF is distributed under dual licenses - closed source or GPL.
9 // Consult your particular license for conditions of use.
10 //
11 // If you have not purchased a commercial license, you are using RCF
12 // under GPL terms.
13 //
14 // Version: 3.1
15 // Contact: support <at> deltavsoft.com
16 //
17 //******************************************************************************
18 
19 #ifndef INCLUDE_RCF_PROTOCOL_BOOSTSERIALIZATION_HPP
20 #define INCLUDE_RCF_PROTOCOL_BOOSTSERIALIZATION_HPP
21 
22 #include <RCF/SerializationProtocol_Base.hpp>
23 
24 #if RCF_FEATURE_BOOST_SERIALIZATION==1
25 #include <boost/archive/binary_iarchive.hpp>
26 #include <boost/archive/binary_oarchive.hpp>
27 #include <boost/archive/text_iarchive.hpp>
28 #include <boost/archive/text_oarchive.hpp>
29 #endif
30 
31 #include <boost/serialization/base_object.hpp>
32 #include <boost/serialization/level.hpp>
33 #include <boost/serialization/string.hpp>
34 #include <boost/serialization/utility.hpp>
35 
36 namespace RCF {
37 
38 #if RCF_FEATURE_BOOST_SERIALIZATION==1
39 
40  template<>
41  class Protocol< Int<Sp_BsBinary> > :
42  public ProtocolImpl_BSer<boost::archive::binary_iarchive, boost::archive::binary_oarchive>
43  {
44  public:
45  static std::string getName()
46  {
47  return "Boost.Serialization binary serialization protocol.";
48  }
49  };
50 
51  template<>
52  class Protocol< Int<Sp_BsText> > :
53  public ProtocolImpl_BSer<boost::archive::text_iarchive, boost::archive::text_oarchive>
54  {
55  public:
56  static std::string getName()
57  {
58  return "Boost.Serialization text serialization protocol.";
59  }
60  };
61 
62 #endif
63 
64 } // namespace RCF
65 
66 #endif
Boost.Serialization text.
Definition: Enums.hpp:179
Boost.Serialization binary.
Definition: Enums.hpp:176
Definition: AmiIoHandler.hpp:24