1 #ifndef BOOST_SERIALIZATION_TRACKING_ENUM_HPP 2 #define BOOST_SERIALIZATION_TRACKING_ENUM_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 // tracking_enum.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 namespace boost { 20 namespace serialization { 21 22 // addresses of serialized objects may be tracked to avoid saving/loading 23 // redundant copies. This header defines a class trait that can be used 24 // to specify when objects should be tracked 25 26 // names for each tracking level 27 enum tracking_type 28 { 29 // never track this type 30 track_never = 0, 31 // track objects of this type if the object is serialized through a 32 // pointer. 33 track_selectively = 1, 34 // always track this type 35 track_always = 2 36 }; 37 38 } // namespace serialization 39 } // namespace boost 40 41 #endif // BOOST_SERIALIZATION_TRACKING_ENUM_HPP 42