Public Types | Public Member Functions | List of all members
aligned_allocator< T > Class Template Reference

stl compatible allocator to use with with 16 byte aligned types More...

Public Types

typedef const T * const_pointer
 
typedef const T & const_reference
 
typedef std::ptrdiff_t difference_type
 
typedef T * pointer
 
typedef T & reference
 
typedef std::size_t size_type
 
typedef T value_type
 

Public Member Functions

pointer address (reference value) const
 
const_pointer address (const_reference value) const
 
 aligned_allocator (const aligned_allocator &) throw ()
 
template<class U >
 aligned_allocator (const aligned_allocator< U > &) throw ()
 
pointer allocate (size_type num, const void *hint=0)
 
void construct (pointer p, const T &value)
 
void deallocate (pointer p, size_type)
 
void destroy (pointer p)
 
size_type max_size () const throw ()
 
bool operator!= (const aligned_allocator< T > &other) const
 
bool operator== (const aligned_allocator< T > &other) const
 

Detailed Description

template<class T>
class Eigen::aligned_allocator< T >

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<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;

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