1 #ifndef BOOST_ARCHIVE_BINARY_WOARCHIVE_HPP 2 #define BOOST_ARCHIVE_BINARY_WOARCHIVE_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_woarchive.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 <ostream> 25 #include <boost/archive/binary_oarchive_impl.hpp> 26 #include <boost/archive/detail/register_archive.hpp> 27 28 namespace boost { 29 namespace archive { 30 31 // do not derive from this class. If you want to extend this functionality 32 // via inhertance, derived from binary_oarchive_impl instead. This will 33 // preserve correct static polymorphism. 34 class binary_woarchive : 35 public binary_oarchive_impl< 36 binary_woarchive, std::wostream::char_type, std::wostream::traits_type 37 > 38 { 39 public: binary_woarchive(std::wostream & os,unsigned int flags=0)40 binary_woarchive(std::wostream & os, unsigned int flags = 0) : 41 binary_oarchive_impl< 42 binary_woarchive, std::wostream::char_type, std::wostream::traits_type 43 >(os, flags) 44 {} binary_woarchive(std::wstreambuf & bsb,unsigned int flags=0)45 binary_woarchive(std::wstreambuf & bsb, unsigned int flags = 0) : 46 binary_oarchive_impl< 47 binary_woarchive, std::wostream::char_type, std::wostream::traits_type 48 >(bsb, flags) 49 {} 50 }; 51 52 } // namespace archive 53 } // namespace boost 54 55 // required by export 56 BOOST_SERIALIZATION_REGISTER_ARCHIVE(boost::archive::binary_woarchive) 57 58 #endif // BOOST_NO_STD_WSTREAMBUF 59 #endif // BOOST_ARCHIVE_BINARY_WOARCHIVE_HPP 60