#include <adaptive_pool.hpp>


Classes | |
| struct | node_pool | 
| struct | rebind | 
| Obtains adaptive_pool_base from adaptive_pool_base.  More... | |
Public Types | |
| typedef  SegmentManager::void_pointer  | void_pointer | 
| typedef SegmentManager | segment_manager | 
| typedef adaptive_pool_base < Version, T, SegmentManager, NodesPerBlock, MaxFreeBlocks, OverheadPercent >  | self_t | 
| typedef  boost::intrusive::pointer_traits < void_pointer >::template rebind_pointer< T >::type  | pointer | 
| typedef  boost::intrusive::pointer_traits < void_pointer >::template rebind_pointer< const T > ::type  | const_pointer | 
| typedef T | value_type | 
| typedef  ipcdetail::add_reference < value_type >::type  | reference | 
| typedef  ipcdetail::add_reference < const value_type >::type  | const_reference | 
| typedef segment_manager::size_type | size_type | 
| typedef  segment_manager::difference_type  | difference_type | 
| typedef  boost::interprocess::version_type < adaptive_pool_base, Version >  | version | 
| typedef  boost::container::container_detail::transform_multiallocation_chain < typename SegmentManager::multiallocation_chain, T >  | multiallocation_chain | 
Public Member Functions | |
| BOOST_STATIC_ASSERT ((Version<=2)) | |
| adaptive_pool_base (segment_manager *segment_mngr) | |
| Constructor from a segment manager.  More... | |
| adaptive_pool_base (const adaptive_pool_base &other) | |
| Copy constructor from other adaptive_pool_base.  More... | |
| adaptive_pool_base & | operator= (const adaptive_pool_base &other) | 
| Assignment from other adaptive_pool_base.  More... | |
| template<class T2 > | |
| adaptive_pool_base (const adaptive_pool_base< Version, T2, SegmentManager, NodesPerBlock, MaxFreeBlocks, OverheadPercent > &other) | |
| Copy constructor from related adaptive_pool_base.  More... | |
| ~adaptive_pool_base () | |
| Destructor, removes node_pool_t from memory if its reference count reaches to zero.  More... | |
| void * | get_node_pool () const | 
| Returns a pointer to the node pool.  More... | |
| segment_manager * | get_segment_manager () const | 
| Returns the segment manager.  More... | |
Friends | |
| void | swap (self_t &alloc1, self_t &alloc2) | 
| Swaps allocators.  More... | |
| typedef boost::intrusive:: pointer_traits<void_pointer>::template rebind_pointer<const T>::type boost::interprocess::ipcdetail::adaptive_pool_base< Version, T, SegmentManager, NodesPerBlock, MaxFreeBlocks, OverheadPercent >::const_pointer | 
| typedef ipcdetail::add_reference<const value_type>::type boost::interprocess::ipcdetail::adaptive_pool_base< Version, T, SegmentManager, NodesPerBlock, MaxFreeBlocks, OverheadPercent >::const_reference | 
| typedef segment_manager::difference_type boost::interprocess::ipcdetail::adaptive_pool_base< Version, T, SegmentManager, NodesPerBlock, MaxFreeBlocks, OverheadPercent >::difference_type | 
| typedef boost::container::container_detail::transform_multiallocation_chain<typename SegmentManager::multiallocation_chain, T> boost::interprocess::ipcdetail::adaptive_pool_base< Version, T, SegmentManager, NodesPerBlock, MaxFreeBlocks, OverheadPercent >::multiallocation_chain | 
| typedef boost::intrusive:: pointer_traits<void_pointer>::template rebind_pointer<T>::type boost::interprocess::ipcdetail::adaptive_pool_base< Version, T, SegmentManager, NodesPerBlock, MaxFreeBlocks, OverheadPercent >::pointer | 
| typedef ipcdetail::add_reference<value_type>::type boost::interprocess::ipcdetail::adaptive_pool_base< Version, T, SegmentManager, NodesPerBlock, MaxFreeBlocks, OverheadPercent >::reference | 
| typedef SegmentManager boost::interprocess::ipcdetail::adaptive_pool_base< Version, T, SegmentManager, NodesPerBlock, MaxFreeBlocks, OverheadPercent >::segment_manager | 
| typedef adaptive_pool_base<Version, T, SegmentManager, NodesPerBlock, MaxFreeBlocks, OverheadPercent> boost::interprocess::ipcdetail::adaptive_pool_base< Version, T, SegmentManager, NodesPerBlock, MaxFreeBlocks, OverheadPercent >::self_t | 
| typedef segment_manager::size_type boost::interprocess::ipcdetail::adaptive_pool_base< Version, T, SegmentManager, NodesPerBlock, MaxFreeBlocks, OverheadPercent >::size_type | 
| typedef T boost::interprocess::ipcdetail::adaptive_pool_base< Version, T, SegmentManager, NodesPerBlock, MaxFreeBlocks, OverheadPercent >::value_type | 
| typedef boost::interprocess::version_type<adaptive_pool_base, Version> boost::interprocess::ipcdetail::adaptive_pool_base< Version, T, SegmentManager, NodesPerBlock, MaxFreeBlocks, OverheadPercent >::version | 
| typedef SegmentManager::void_pointer boost::interprocess::ipcdetail::adaptive_pool_base< Version, T, SegmentManager, NodesPerBlock, MaxFreeBlocks, OverheadPercent >::void_pointer | 
      
  | 
  inline | 
Constructor from a segment manager.
If not present, constructs a node pool. Increments the reference count of the associated node pool. Can throw boost::interprocess::bad_alloc
      
  | 
  inline | 
Copy constructor from other adaptive_pool_base.
Increments the reference count of the associated node pool. Never throws
      
  | 
  inline | 
Copy constructor from related adaptive_pool_base.
If not present, constructs a node pool. Increments the reference count of the associated node pool. Can throw boost::interprocess::bad_alloc
      
  | 
  inline | 
Destructor, removes node_pool_t from memory if its reference count reaches to zero.
Never throws
| boost::interprocess::ipcdetail::adaptive_pool_base< Version, T, SegmentManager, NodesPerBlock, MaxFreeBlocks, OverheadPercent >::BOOST_STATIC_ASSERT | ( | (Version<=2) | ) | 
      
  | 
  inline | 
Returns a pointer to the node pool.
Never throws
Referenced by boost::interprocess::ipcdetail::operator!=(), and boost::interprocess::ipcdetail::operator==().
      
  | 
  inline | 
Returns the segment manager.
Never throws
      
  | 
  inline | 
Assignment from other adaptive_pool_base.
      
  | 
  friend | 
Swaps allocators.
Does not throw. If each allocator is placed in a different memory segment, the result is undefined.
Referenced by boost::interprocess::ipcdetail::adaptive_pool_base< 1, T, SegmentManager, NodesPerBlock, MaxFreeBlocks, OverheadPercent >::operator=().