intrusive_ref_counter.hpp 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. /*
  2. * Copyright Andrey Semashev 2007 - 2013.
  3. * Distributed under the Boost Software License, Version 1.0.
  4. * (See accompanying file LICENSE_1_0.txt or copy at
  5. * http://www.boost.org/LICENSE_1_0.txt)
  6. */
  7. /*!
  8. * \file intrusive_ref_counter.hpp
  9. * \author Andrey Semashev
  10. * \date 12.03.2009
  11. *
  12. * This header is deprecated, use boost/smart_ptr/intrusive_ref_counter.hpp instead. The header is left for
  13. * backward compatibility and will be removed in future versions.
  14. */
  15. #ifndef BOOST_LOG_UTILITY_INTRUSIVE_REF_COUNTER_HPP_INCLUDED_
  16. #define BOOST_LOG_UTILITY_INTRUSIVE_REF_COUNTER_HPP_INCLUDED_
  17. #include <boost/smart_ptr/intrusive_ptr.hpp>
  18. #include <boost/smart_ptr/intrusive_ref_counter.hpp>
  19. #include <boost/log/detail/config.hpp>
  20. #include <boost/log/detail/header.hpp>
  21. #ifdef BOOST_HAS_PRAGMA_ONCE
  22. #pragma once
  23. #endif
  24. #if defined(__GNUC__)
  25. #pragma message "Boost.Log: This header is deprecated, use boost/smart_ptr/intrusive_ref_counter.hpp instead."
  26. #elif defined(_MSC_VER)
  27. #pragma message("Boost.Log: This header is deprecated, use boost/smart_ptr/intrusive_ref_counter.hpp instead.")
  28. #endif
  29. namespace boost {
  30. BOOST_LOG_OPEN_NAMESPACE
  31. namespace aux {
  32. struct legacy_intrusive_ref_counter_root
  33. {
  34. virtual ~legacy_intrusive_ref_counter_root() {}
  35. };
  36. } // namespace aux
  37. typedef boost::intrusive_ref_counter< aux::legacy_intrusive_ref_counter_root > intrusive_ref_counter;
  38. BOOST_LOG_CLOSE_NAMESPACE // namespace log
  39. } // namespace boost
  40. #include <boost/log/detail/footer.hpp>
  41. #endif // BOOST_LOG_UTILITY_INTRUSIVE_REF_COUNTER_HPP_INCLUDED_