An STL node allocator that uses a segment manager as memory source. More...
#include <interprocess_fwd.hpp>
Classes | |
struct | rebind |
Public Types | |
typedef boost::interprocess::version_type < node_allocator, 2 > | version |
typedef SegmentManager::void_pointer | void_pointer |
typedef SegmentManager | segment_manager |
typedef node_allocator_base < Version, T, SegmentManager, NodesPerBlock > | 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::container::container_detail::transform_multiallocation_chain < typename SegmentManager::multiallocation_chain, T > | multiallocation_chain |
Public Member Functions | |
node_allocator (SegmentManager *segment_mngr) | |
template<class T2 > | |
node_allocator (const node_allocator< T2, SegmentManager, NodesPerBlock > &other) | |
BOOST_STATIC_ASSERT ((Version<=2)) | |
void * | get_node_pool () const |
Returns a pointer to the node pool. More... | |
segment_manager * | get_segment_manager () const |
Returns the segment manager. More... | |
An STL node allocator that uses a segment manager as memory source.
The internal pointer type will of the same type (raw, smart) as "typename SegmentManager::void_pointer" type. This allows placing the allocator in shared memory, memory mapped-files, etc... This node allocator shares a segregated storage between all instances of node_allocator with equal sizeof(T) placed in the same segment group. NodesPerBlock is the number of nodes allocated at once when the allocator runs out of nodes
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
typedef boost::interprocess::version_type<node_allocator, 2> boost::interprocess::node_allocator< T, SegmentManager, NodesPerBlock >::version |
|
inherited |
|
inline |
|
inline |
|
inherited |
|
inlineinherited |
Returns a pointer to the node pool.
Never throws
|
inlineinherited |
Returns the segment manager.
Never throws