Remote Call Framework 3.3
SerializationProtocol_BS.hpp
1 
2 //******************************************************************************
3 // RCF - Remote Call Framework
4 //
5 // Copyright (c) 2005 - 2022, Delta V Software. All rights reserved.
6 // https://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 under GPL terms.
12 //
13 // Version: 3.3
14 // Contact: support <at> deltavsoft.com
15 //
16 //******************************************************************************
17 
18 #ifndef INCLUDE_RCF_PROTOCOL_BOOSTSERIALIZATION_HPP
19 #define INCLUDE_RCF_PROTOCOL_BOOSTSERIALIZATION_HPP
20 
21 #include <RCF/SerializationProtocol_Base.hpp>
22 
23 #if RCF_FEATURE_BOOST_SERIALIZATION==1
24 #include <boost/archive/binary_iarchive.hpp>
25 #include <boost/archive/binary_oarchive.hpp>
26 #include <boost/archive/text_iarchive.hpp>
27 #include <boost/archive/text_oarchive.hpp>
28 #endif
29 
30 #include <boost/serialization/base_object.hpp>
31 #include <boost/serialization/level.hpp>
32 #include <boost/serialization/string.hpp>
33 #include <boost/serialization/utility.hpp>
34 
35 namespace RCF {
36 
37 #if RCF_FEATURE_BOOST_SERIALIZATION==1
38 
39  template<>
40  class Protocol< Int<Sp_BsBinary> > :
41  public ProtocolImpl_BSer<boost::archive::binary_iarchive, boost::archive::binary_oarchive>
42  {
43  public:
44  static std::string getName()
45  {
46  return "Boost.Serialization binary serialization protocol.";
47  }
48  };
49 
50  template<>
51  class Protocol< Int<Sp_BsText> > :
52  public ProtocolImpl_BSer<boost::archive::text_iarchive, boost::archive::text_oarchive>
53  {
54  public:
55  static std::string getName()
56  {
57  return "Boost.Serialization text serialization protocol.";
58  }
59  };
60 
61 #endif
62 
63 } // namespace RCF
64 
65 #endif
Boost.Serialization text.
Definition: Enums.hpp:178
Boost.Serialization binary.
Definition: Enums.hpp:175
Definition: AmiIoHandler.hpp:23