Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::interprocess::basic_managed_external_buffer< CharType, AllocationAlgorithm, IndexType > Class Template Reference

A basic user memory named object creation class. More...

#include <managed_external_buffer.hpp>

Inheritance diagram for boost::interprocess::basic_managed_external_buffer< CharType, AllocationAlgorithm, IndexType >:
Collaboration diagram for boost::interprocess::basic_managed_external_buffer< CharType, AllocationAlgorithm, IndexType >:

Public Types

typedef base_t::size_type size_type
 

Public Member Functions

 basic_managed_external_buffer ()
 Default constructor. More...
 
 basic_managed_external_buffer (create_only_t, void *addr, size_type size)
 Creates and places the segment manager. This can throw. More...
 
 basic_managed_external_buffer (open_only_t, void *addr, size_type size)
 Creates and places the segment manager. This can throw. More...
 
 basic_managed_external_buffer (BOOST_RV_REF(basic_managed_external_buffer) moved)
 Moves the ownership of "moved"'s managed memory to *this. Does not throw. More...
 
basic_managed_external_bufferoperator= (BOOST_RV_REF(basic_managed_external_buffer) moved)
 Moves the ownership of "moved"'s managed memory to *this. Does not throw. More...
 
void grow (size_type extra_bytes)
 
void swap (basic_managed_external_buffer &other)
 Swaps the ownership of the managed heap memories managed by *this and other. More...
 

Detailed Description

template<class CharType, class AllocationAlgorithm, template< class IndexConfig > class IndexType>
class boost::interprocess::basic_managed_external_buffer< CharType, AllocationAlgorithm, IndexType >

A basic user memory named object creation class.

Inherits all basic functionality from basic_managed_memory_impl<CharType, AllocationAlgorithm, IndexType>

Member Typedef Documentation

template<class CharType , class AllocationAlgorithm , template< class IndexConfig > class IndexType>
typedef base_t::size_type boost::interprocess::basic_managed_external_buffer< CharType, AllocationAlgorithm, IndexType >::size_type

Constructor & Destructor Documentation

template<class CharType , class AllocationAlgorithm , template< class IndexConfig > class IndexType>
boost::interprocess::basic_managed_external_buffer< CharType, AllocationAlgorithm, IndexType >::basic_managed_external_buffer ( )
inline

Default constructor.

Does nothing. Useful in combination with move semantics

template<class CharType , class AllocationAlgorithm , template< class IndexConfig > class IndexType>
boost::interprocess::basic_managed_external_buffer< CharType, AllocationAlgorithm, IndexType >::basic_managed_external_buffer ( create_only_t  ,
void *  addr,
size_type  size 
)
inline

Creates and places the segment manager. This can throw.

References BOOST_ASSERT.

template<class CharType , class AllocationAlgorithm , template< class IndexConfig > class IndexType>
boost::interprocess::basic_managed_external_buffer< CharType, AllocationAlgorithm, IndexType >::basic_managed_external_buffer ( open_only_t  ,
void *  addr,
size_type  size 
)
inline

Creates and places the segment manager. This can throw.

References BOOST_ASSERT.

template<class CharType , class AllocationAlgorithm , template< class IndexConfig > class IndexType>
boost::interprocess::basic_managed_external_buffer< CharType, AllocationAlgorithm, IndexType >::basic_managed_external_buffer ( BOOST_RV_REF(basic_managed_external_buffer< CharType, AllocationAlgorithm, IndexType >)  moved)
inline

Moves the ownership of "moved"'s managed memory to *this. Does not throw.

References boost::interprocess::basic_managed_external_buffer< CharType, AllocationAlgorithm, IndexType >::swap().

Member Function Documentation

template<class CharType , class AllocationAlgorithm , template< class IndexConfig > class IndexType>
void boost::interprocess::basic_managed_external_buffer< CharType, AllocationAlgorithm, IndexType >::grow ( size_type  extra_bytes)
inline
template<class CharType , class AllocationAlgorithm , template< class IndexConfig > class IndexType>
basic_managed_external_buffer& boost::interprocess::basic_managed_external_buffer< CharType, AllocationAlgorithm, IndexType >::operator= ( BOOST_RV_REF(basic_managed_external_buffer< CharType, AllocationAlgorithm, IndexType >)  moved)
inline

Moves the ownership of "moved"'s managed memory to *this. Does not throw.

References boost::move(), and boost::interprocess::basic_managed_external_buffer< CharType, AllocationAlgorithm, IndexType >::swap().

template<class CharType , class AllocationAlgorithm , template< class IndexConfig > class IndexType>
void boost::interprocess::basic_managed_external_buffer< CharType, AllocationAlgorithm, IndexType >::swap ( basic_managed_external_buffer< CharType, AllocationAlgorithm, IndexType > &  other)
inline

The documentation for this class was generated from the following files: