Lagrange
ImageStorage Class Reference

Public Types

template<typename T >
using aligned_allocator = tbb::cache_aligned_allocator< T >
 
template<typename T >
using aligned_vector = std::vector< T, aligned_allocator< T > >
 

Public Member Functions

 ImageStorage (size_t width, size_t height, size_t alignment)
 
 ImageStorage (size_t width, size_t height, size_t stride, unsigned char *data)
 
 ImageStorage (const ImageStorage &other)
 
 ImageStorage (ImageStorage &&other) noexcept
 
ImageStorageoperator= (const ImageStorage &other)
 
ImageStorageoperator= (ImageStorage &&other) noexcept
 
void clear_buffer (unsigned char ch)
 
auto get_full_size () const
 
auto get_full_stride () const
 
const auto * data () const
 
auto * data ()
 

Protected Member Functions

void reset ()
 
bool resize (size_t width, size_t height, size_t alignment)
 

Protected Attributes

aligned_vector< unsigned char > m_buffer
 
unsigned char * m_buffer_weak_ptr = nullptr
 
unsigned char * m_data_ptr = nullptr
 
Eigen::Matrix< size_t, 2, 1 > m_full_size
 
size_t m_full_stride
 

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