12 #include <type_traits> 21 template <
class T,
size_t AligmentBytes = 16>
41 :
std::allocator<T>(other)
47 :
std::allocator<T>(other)
67 template <
typename T,
class... Args>
71 return std::allocate_shared<T>(
aligned_allocator_cpp11< U > other
const T & const_reference
pointer allocate(size_type num, const void *=nullptr)
aligned_allocator_cpp11(const aligned_allocator_cpp11< U > &other)
~aligned_allocator_cpp11()
Aligned allocator that is compatible with C++11 See: https://bitbucket.org/eigen/eigen/commits/f5b770...
std::ptrdiff_t difference_type
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
void * aligned_malloc(size_t bytes, size_t alignment)
Returns an aligned memory block.
std::shared_ptr< T > make_aligned_shared(Args &&... args)
Creates a shared_ptr with 16-byte aligned memory.
aligned_allocator_cpp11(const aligned_allocator_cpp11 &other)
void aligned_free(void *p)
Frees a memory block reserved by aligned_malloc.
void deallocate(pointer p, size_type)
aligned_allocator_cpp11()
GLuint GLuint GLsizei GLenum type