OPAL
Public Types | Public Member Functions | Protected Attributes | Friends | List of all members
Image< T > Class Template Reference

Public Types

using PixelType = T
 

Public Member Functions

 Image (size_t h, size_t w, const T &value=T())
 
 Image (const Image< T > &other)=default
 
 Image (Image< T > &&other)=default
 
void Resize (size_t h, size_t w, const T &value=T())
 
void Fill (const T &value)
 
size_t getHeight () const
 
size_t getWidth () const
 
size_t getSize () const
 
bool isEmpty () const
 
Image< T > & operator= (Image< T > other)
 
template<class U >
Image< U > castTo () const
 
bool operator== (const Image< T > &other) const
 
bool operator!= (const Image< T > &other) const
 
Image< T > & operator+= (const Image< T > &other)
 
Image< T > & operator-= (const Image< T > &other)
 
auto operator() (size_t i, size_t j) -> decltype(data[0])
 
auto operator() (size_t i, size_t j) const -> decltype(data[0])
 
auto operator[] (size_t i) -> decltype(data.at(i))
 
auto operator[] (size_t i) const -> decltype(data.at(i))
 
auto begin () -> decltype(data.begin())
 
auto begin () const -> decltype(data.begin())
 
auto end () -> decltype(data.end())
 
auto end () const -> decltype(data.end())
 

Protected Attributes

size_t Height
 
size_t Width
 
std::vector< T > data
 

Friends

std::istream & operator>> (std::istream &is, Image< T > &m)
 
std::ostream & operator<< (std::ostream &os, const Image< T > &m)
 
void swap (Image< T > &first, Image< T > &second)
 
Image< T > operator+ (Image< T > lhs, const Image< T > &rhs)
 
Image< T > operator- (Image< T > lhs, const Image< T > &rhs)
 

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