diff DEPENDENCIES/generic/include/boost/interprocess/interprocess_fwd.hpp @ 101:c530137014c0

Update Boost headers (1.58.0)
author Chris Cannam
date Mon, 07 Sep 2015 11:12:49 +0100
parents 2665513ce2d3
children
line wrap: on
line diff
--- a/DEPENDENCIES/generic/include/boost/interprocess/interprocess_fwd.hpp	Fri Sep 04 12:01:02 2015 +0100
+++ b/DEPENDENCIES/generic/include/boost/interprocess/interprocess_fwd.hpp	Mon Sep 07 11:12:49 2015 +0100
@@ -11,37 +11,126 @@
 #ifndef BOOST_INTERPROCESS_FWD_HPP
 #define BOOST_INTERPROCESS_FWD_HPP
 
-#if defined (_MSC_VER) && (_MSC_VER >= 1200)
+#ifndef BOOST_CONFIG_HPP
+#  include <boost/config.hpp>
+#endif
+#
+#if defined(BOOST_HAS_PRAGMA_ONCE)
 #  pragma once
 #endif
 
+#include <boost/interprocess/detail/std_fwd.hpp>
+
+//! \file
+//! This header file forward declares the basic interprocess types:
+//!   - boost::interprocess::offset_ptr;
+//!   - boost::interprocess::permissions;
+//!   - boost::interprocess::mapped_region;
+//!   - boost::interprocess::file_mapping;
+//!   - boost::interprocess::shared_memory_object;
+//!   - boost::interprocess::windows_shared_memory;
+//!   - boost::interprocess::xsi_shared_memory;
+//!
+//! The following synchronization mechanisms and locks:
+//!   - boost::interprocess::null_mutex;
+//!   - boost::interprocess::interprocess_mutex;
+//!   - boost::interprocess::interprocess_recursive_mutex;
+//!   - boost::interprocess::interprocess_semaphore;
+//!   - boost::interprocess::named_mutex;
+//!   - boost::interprocess::named_recursive_mutex;
+//!   - boost::interprocess::named_semaphore;
+//!   - boost::interprocess::interprocess_sharable_mutex;
+//!   - boost::interprocess::interprocess_condition;
+//!   - boost::interprocess::scoped_lock;
+//!   - boost::interprocess::sharable_lock;
+//!   - boost::interprocess::upgradable_lock;
+//!
+//! The following mutex families:
+//!   - boost::interprocess::mutex_family;
+//!   - boost::interprocess::null_mutex_family;
+//!
+//! The following allocators:
+//!   - boost::interprocess::allocator;
+//!   - boost::interprocess::node_allocator;
+//!   - boost::interprocess::private_node_allocator;
+//!   - boost::interprocess::cached_node_allocator;
+//!   - boost::interprocess::adaptive_pool;
+//!   - boost::interprocess::private_adaptive_pool;
+//!   - boost::interprocess::cached_adaptive_pool;
+//!
+//! The following allocation algorithms:
+//!   - boost::interprocess::simple_seq_fit;
+//!   - boost::interprocess::rbtree_best_fit;
+//!
+//! The following index types:
+//!   - boost::interprocess::flat_map_index;
+//!   - boost::interprocess::iset_index;
+//!   - boost::interprocess::iunordered_set_index;
+//!   - boost::interprocess::map_index;
+//!   - boost::interprocess::null_index;
+//!   - boost::interprocess::unordered_map_index;
+//!
+//! The following managed memory types:
+//!   - boost::interprocess::segment_manager;
+//!   - boost::interprocess::basic_managed_external_buffer
+//!   - boost::interprocess::managed_external_buffer
+//!   - boost::interprocess::wmanaged_external_buffer
+//!   - boost::interprocess::basic_managed_shared_memory
+//!   - boost::interprocess::managed_shared_memory
+//!   - boost::interprocess::wmanaged_shared_memory
+//!   - boost::interprocess::basic_managed_windows_shared_memory
+//!   - boost::interprocess::managed_windows_shared_memory
+//!   - boost::interprocess::wmanaged_windows_shared_memory
+//!   - boost::interprocess::basic_managed_xsi_shared_memory
+//!   - boost::interprocess::managed_xsi_shared_memory
+//!   - boost::interprocess::wmanaged_xsi_shared_memory
+//!   - boost::interprocess::fixed_managed_shared_memory
+//!   - boost::interprocess::wfixed_managed_shared_memory
+//!   - boost::interprocess::basic_managed_heap_memory
+//!   - boost::interprocess::managed_heap_memory
+//!   - boost::interprocess::wmanaged_heap_memory
+//!   - boost::interprocess::basic_managed_mapped_file
+//!   - boost::interprocess::managed_mapped_file
+//!   - boost::interprocess::wmanaged_mapped_file
+//!
+//! The following exception types:
+//!   - boost::interprocess::interprocess_exception
+//!   - boost::interprocess::lock_exception
+//!   - boost::interprocess::bad_alloc
+//!
+//! The following stream types:
+//!   - boost::interprocess::basic_bufferbuf
+//!   - boost::interprocess::basic_ibufferstream
+//!   - boost::interprocess::basic_obufferstream
+//!   - boost::interprocess::basic_bufferstream
+//!   - boost::interprocess::basic_vectorbuf
+//!   - boost::interprocess::basic_ivectorstream
+//!   - boost::interprocess::basic_ovectorstream
+//!   - boost::interprocess::basic_vectorstream
+//!
+//! The following smart pointer types:
+//!   - boost::interprocess::scoped_ptr
+//!   - boost::interprocess::intrusive_ptr
+//!   - boost::interprocess::shared_ptr
+//!   - boost::interprocess::weak_ptr
+//!
+//! The following interprocess communication types:
+//!   - boost::interprocess::message_queue_t;
+//!   - boost::interprocess::message_queue;
+
 #include <boost/interprocess/detail/config_begin.hpp>
 #include <boost/interprocess/detail/workaround.hpp>
 
+#if !defined(BOOST_INTERPROCESS_DOXYGEN_INVOKED)
+
 #include <cstddef>
 
 //////////////////////////////////////////////////////////////////////////////
 //                        Standard predeclarations
 //////////////////////////////////////////////////////////////////////////////
 
-/// @cond
-
-namespace boost{
-namespace intrusive{
-}}
-
-namespace boost{
-namespace interprocess{
-namespace bi = boost::intrusive;
-}}
-
-#include <utility>
-#include <memory>
-#include <functional>
-#include <iosfwd>
-#include <string>
-
-/// @endcond
+namespace boost{  namespace intrusive{ }  }
+namespace boost{  namespace interprocess{ namespace bi = boost::intrusive; }  }
 
 namespace boost { namespace interprocess {
 
@@ -57,17 +146,20 @@
 
 class shared_memory_object;
 
-#if defined (BOOST_INTERPROCESS_WINDOWS) || defined(BOOST_INTERPROCESS_DOXYGEN_INVOKED)
+#if defined (BOOST_INTERPROCESS_WINDOWS)
 class windows_shared_memory;
 #endif   //#if defined (BOOST_INTERPROCESS_WINDOWS)
 
+#if defined(BOOST_INTERPROCESS_XSI_SHARED_MEMORY_OBJECTS)
+class xsi_shared_memory;
+#endif   //#if defined (BOOST_INTERPROCESS_WINDOWS)
+
 //////////////////////////////////////////////////////////////////////////////
-//              mapped file/mapped region/mapped_file
+//              file mapping / mapped region
 //////////////////////////////////////////////////////////////////////////////
 
 class file_mapping;
 class mapped_region;
-class mapped_file;
 
 //////////////////////////////////////////////////////////////////////////////
 //                               Mutexes
@@ -95,7 +187,6 @@
 //                   Other synchronization classes
 //////////////////////////////////////////////////////////////////////////////
 
-class barrier;
 class interprocess_sharable_mutex;
 class interprocess_condition;
 
@@ -128,19 +219,16 @@
 template<class T, class SegmentManager, std::size_t NodesPerBlock = 64>
 class cached_node_allocator;
 
-template<class T, class SegmentManager, std::size_t NodesPerBlock = 64, std::size_t MaxFreeBlocks = 2
-         , unsigned char OverheadPercent = 5
->
+template< class T, class SegmentManager, std::size_t NodesPerBlock = 64
+        , std::size_t MaxFreeBlocks = 2, unsigned char OverheadPercent = 5 >
 class adaptive_pool;
 
-template<class T, class SegmentManager, std::size_t NodesPerBlock = 64, std::size_t MaxFreeBlocks = 2
-         , unsigned char OverheadPercent = 5
->
+template< class T, class SegmentManager, std::size_t NodesPerBlock = 64
+        , std::size_t MaxFreeBlocks = 2, unsigned char OverheadPercent = 5 >
 class private_adaptive_pool;
 
-template<class T, class SegmentManager, std::size_t NodesPerBlock = 64, std::size_t MaxFreeBlocks = 2
-         , unsigned char OverheadPercent = 5
->
+template< class T, class SegmentManager, std::size_t NodesPerBlock = 64
+        , std::size_t MaxFreeBlocks = 2, unsigned char OverheadPercent = 5 >
 class cached_adaptive_pool;
 
 
@@ -150,7 +238,8 @@
 
 static const std::size_t offset_type_alignment = 0;
 
-template <class T, class DifferenceType = std::ptrdiff_t, class OffsetType = std::size_t, std::size_t Alignment = offset_type_alignment>
+template < class T, class DifferenceType = std::ptrdiff_t
+         , class OffsetType = std::size_t, std::size_t Alignment = offset_type_alignment>
 class offset_ptr;
 
 //////////////////////////////////////////////////////////////////////////////
@@ -231,7 +320,7 @@
 //                      Windows shared memory managed memory classes
 //////////////////////////////////////////////////////////////////////////////
 
-#if defined (BOOST_INTERPROCESS_WINDOWS) || defined(BOOST_INTERPROCESS_DOXYGEN_INVOKED)
+#if defined (BOOST_INTERPROCESS_WINDOWS)
 
 template <class CharType
          ,class MemoryAlgorithm
@@ -252,7 +341,7 @@
 
 #endif   //#if defined (BOOST_INTERPROCESS_WINDOWS)
 
-#if defined(BOOST_INTERPROCESS_XSI_SHARED_MEMORY_OBJECTS) || defined(BOOST_INTERPROCESS_DOXYGEN_INVOKED)
+#if defined(BOOST_INTERPROCESS_XSI_SHARED_MEMORY_OBJECTS)
 
 template <class CharType
          ,class MemoryAlgorithm
@@ -409,9 +498,7 @@
 
 }}  //namespace boost { namespace interprocess {
 
-//////////////////////////////////////////////////////////////////////////////
-//                                  CONTAINERS
-//////////////////////////////////////////////////////////////////////////////
+#endif   //#if !defined(BOOST_INTERPROCESS_DOXYGEN_INVOKED)
 
 #include <boost/interprocess/detail/config_end.hpp>