STL compatible allocator to use with with 16 byte aligned types.
Example:
// Matrix4f requires 16 bytes alignment: std::map< int, Matrix4f, std::less<int>, aligned_allocator<std::pair<const int, Matrix4f> > > my_map_mat4; // Vector3f does not require 16 bytes alignment, no need to use Eigen's allocator: std::map< int, Vector3f > my_map_vec3;
Definition at line 521 of file Memory.h.
#include <src/Core/util/Memory.h>
Classes | |
| struct | rebind |
Public Types | |
| typedef size_t | size_type |
| typedef std::ptrdiff_t | difference_type |
| typedef T * | pointer |
| typedef const T * | const_pointer |
| typedef T & | reference |
| typedef const T & | const_reference |
| typedef T | value_type |
Public Member Functions | |
| pointer | address (reference value) const |
| const_pointer | address (const_reference value) const |
| aligned_allocator () throw () | |
| aligned_allocator (const aligned_allocator &) throw () | |
| template<class U > | |
| aligned_allocator (const aligned_allocator< U > &) throw () | |
| ~aligned_allocator () throw () | |
| size_type | max_size () const throw () |
| pointer | allocate (size_type num, const_pointer *hint=0) |
| void | construct (pointer p, const T &value) |
| void | destroy (pointer p) |
| void | deallocate (pointer p, size_type) |
| bool | operator!= (const aligned_allocator< T > &) const |
| bool | operator== (const aligned_allocator< T > &) const |
| typedef const T* aligned_allocator< T >::const_pointer |
| typedef const T& aligned_allocator< T >::const_reference |
| typedef std::ptrdiff_t aligned_allocator< T >::difference_type |
| typedef T* aligned_allocator< T >::pointer |
| typedef T& aligned_allocator< T >::reference |
| typedef size_t aligned_allocator< T >::size_type |
| typedef T aligned_allocator< T >::value_type |
| aligned_allocator< T >::aligned_allocator | ( | ) | throw () [inline] |
| aligned_allocator< T >::aligned_allocator | ( | const aligned_allocator< T > & | ) | throw () [inline] |
| aligned_allocator< T >::aligned_allocator | ( | const aligned_allocator< U > & | ) | throw () [inline] |
| aligned_allocator< T >::~aligned_allocator | ( | ) | throw () [inline] |
| pointer aligned_allocator< T >::address | ( | reference | value ) | const [inline] |
| const_pointer aligned_allocator< T >::address | ( | const_reference | value ) | const [inline] |
| pointer aligned_allocator< T >::allocate | ( | size_type | num, |
| const_pointer * | hint = 0 |
||
| ) | [inline] |
Definition at line 570 of file Memory.h.
References mrpt::system::os::aligned_malloc().
| void aligned_allocator< T >::construct | ( | pointer | p, |
| const T & | value | ||
| ) | [inline] |
| void aligned_allocator< T >::deallocate | ( | pointer | p, |
| size_type | |||
| ) | [inline] |
Definition at line 586 of file Memory.h.
References mrpt::system::os::aligned_free().
| void aligned_allocator< T >::destroy | ( | pointer | p ) | [inline] |
| size_type aligned_allocator< T >::max_size | ( | ) | const throw () [inline] |
| bool aligned_allocator< T >::operator!= | ( | const aligned_allocator< T > & | ) | const [inline] |
| bool aligned_allocator< T >::operator== | ( | const aligned_allocator< T > & | ) | const [inline] |
| Page generated by Doxygen 1.7.2 for MRPT 0.9.4 SVN: at Mon Jan 10 22:30:30 UTC 2011 |