1 #ifndef BOOST_ARCHIVE_BINARY_WIARCHIVE_HPP 2 #define BOOST_ARCHIVE_BINARY_WIARCHIVE_HPP 3 4 // MS compatible compilers support #pragma once 5 #if defined(_MSC_VER) 6 # pragma once 7 #endif 8 9 /////////1/////////2/////////3/////////4/////////5/////////6/////////7/////////8 10 // binary_wiarchive.hpp 11 12 // (C) Copyright 2002 Robert Ramey - http://www.rrsd.com . 13 // Use, modification and distribution is subject to the Boost Software 14 // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 15 // http://www.boost.org/LICENSE_1_0.txt) 16 17 // See http://www.boost.org for updates, documentation, and revision history. 18 19 #include <boost/config.hpp> 20 #ifdef BOOST_NO_STD_WSTREAMBUF 21 #error "wide char i/o not supported on this platform" 22 #else 23 24 #include <istream> // wistream 25 #include <boost/archive/binary_iarchive_impl.hpp> 26 #include <boost/archive/detail/register_archive.hpp> 27 28 namespace boost { 29 namespace archive { 30 31 class binary_wiarchive : 32 public binary_iarchive_impl< 33 binary_wiarchive, std::wistream::char_type, std::wistream::traits_type 34 > 35 { 36 public: binary_wiarchive(std::wistream & is,unsigned int flags=0)37 binary_wiarchive(std::wistream & is, unsigned int flags = 0) : 38 binary_iarchive_impl< 39 binary_wiarchive, std::wistream::char_type, std::wistream::traits_type 40 >(is, flags) 41 {} binary_wiarchive(std::wstreambuf & bsb,unsigned int flags=0)42 binary_wiarchive(std::wstreambuf & bsb, unsigned int flags = 0) : 43 binary_iarchive_impl< 44 binary_wiarchive, std::wistream::char_type, std::wistream::traits_type 45 >(bsb, flags) 46 {} 47 }; 48 49 } // namespace archive 50 } // namespace boost 51 52 // required by export 53 BOOST_SERIALIZATION_REGISTER_ARCHIVE(boost::archive::binary_wiarchive) 54 55 #endif // BOOST_NO_STD_WSTREAMBUF 56 #endif // BOOST_ARCHIVE_BINARY_WIARCHIVE_HPP 57