|
libjmmcg
release_579_6_g8cffd
A C++ library containing an eclectic mix of useful, advanced components.
|
A very simple custom allocator that allocates a contiguous block of uninitialised items on the heap. More...
#include <memory_buffer.hpp>
Public Types | |
| enum | { stride =sizeof(element_type) } |
| typedef OST | os_traits |
| typedef os_traits::exception_type | exception_type |
| typedef El | element_type |
| The type of items to allocate, but not initialise. More... | |
| typedef buff_info_t::second_type | size_type |
| typedef unsigned char const * | const_iterator |
| typedef unsigned char * | iterator |
Public Member Functions | |
| BOOST_MPL_ASSERT ((boost::mpl::greater< boost::mpl::int_< stride >, boost::mpl::int_< 0 >>)) | |
| memory_buffer (size_type const num_objs) noexcept(false) FORCE_INLINE | |
| ~memory_buffer () noexcept(true) FORCE_INLINE | |
| memory_buffer (memory_buffer const &)=delete | |
| memory_buffer (memory_buffer &&)=delete | |
| void | operator= (memory_buffer const &)=delete |
| void | operator= (memory_buffer &&)=delete |
| const_iterator | data () const noexcept(true) FORCE_INLINE |
| iterator | data () noexcept(true) FORCE_INLINE |
| size_type __fastcall | max_size () const noexcept(true) FORCE_INLINE |
Friends | |
| tostream &__fastcall | operator<< (tostream &os, memory_buffer const &t) noexcept(false) |
A very simple custom allocator that allocates a contiguous block of uninitialised items on the heap.
Note that the items allocated are guaranteed not to be initialised.
Definition at line 43 of file memory_buffer.hpp.
| typedef unsigned char const* jmmcg::LIBJMMCG_VER_NAMESPACE::heap::memory_buffer< OST, El >::const_iterator |
Definition at line 54 of file memory_buffer.hpp.
| typedef El jmmcg::LIBJMMCG_VER_NAMESPACE::heap::memory_buffer< OST, El >::element_type |
The type of items to allocate, but not initialise.
Definition at line 47 of file memory_buffer.hpp.
| typedef os_traits::exception_type jmmcg::LIBJMMCG_VER_NAMESPACE::heap::memory_buffer< OST, El >::exception_type |
Definition at line 46 of file memory_buffer.hpp.
| typedef unsigned char* jmmcg::LIBJMMCG_VER_NAMESPACE::heap::memory_buffer< OST, El >::iterator |
Definition at line 55 of file memory_buffer.hpp.
| typedef OST jmmcg::LIBJMMCG_VER_NAMESPACE::heap::memory_buffer< OST, El >::os_traits |
Definition at line 45 of file memory_buffer.hpp.
| typedef buff_info_t::second_type jmmcg::LIBJMMCG_VER_NAMESPACE::heap::memory_buffer< OST, El >::size_type |
Definition at line 53 of file memory_buffer.hpp.
| anonymous enum |
| Enumerator | |
|---|---|
| stride | The sizeof(element_type) each item, specifically in bytes. |
Definition at line 57 of file memory_buffer.hpp.
|
inlineexplicitnoexcept |
| num_objs | The number of the items to be allocated. |
Definition at line 66 of file memory_buffer.hpp.
References jmmcg::LIBJMMCG_VER_NAMESPACE::heap::memory_buffer< OST, El >::stride.
|
inlinenoexcept |
Definition at line 81 of file memory_buffer.hpp.
|
delete |
|
delete |
| jmmcg::LIBJMMCG_VER_NAMESPACE::heap::memory_buffer< OST, El >::BOOST_MPL_ASSERT | ( | (boost::mpl::greater< boost::mpl::int_< stride >, boost::mpl::int_< 0 >>) | ) |
|
inlinenoexcept |
Definition at line 93 of file memory_buffer.hpp.
|
inlinenoexcept |
Definition at line 99 of file memory_buffer.hpp.
|
inlinenoexcept |
Definition at line 106 of file memory_buffer.hpp.
|
delete |
|
delete |
|
friend |
Definition at line 113 of file memory_buffer.hpp.