[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]
BasicImage< PIXELTYPE, Alloc > Class Template Reference |
Fundamental class template for images. More...
#include <vigra/basicimage.hxx>
Public Types | |
typedef IteratorTraits < traverser >::DefaultAccessor | Accessor |
typedef Alloc | allocator_type |
typedef traverser::column_iterator | column_iterator |
typedef const_traverser::column_iterator | const_column_iterator |
typedef PIXELTYPE const * | const_iterator |
typedef PIXELTYPE const * | const_pointer |
typedef PIXELTYPE const & | const_reference |
typedef const_traverser::row_iterator | const_row_iterator |
typedef ConstBasicImageIterator < PIXELTYPE, PIXELTYPE ** > | const_traverser |
typedef IteratorTraits < const_traverser > ::DefaultAccessor | ConstAccessor |
typedef ConstBasicImageIterator < PIXELTYPE, PIXELTYPE ** > | ConstIterator |
typedef PIXELTYPE const * | ConstScanOrderIterator |
typedef Diff2D | difference_type |
typedef PIXELTYPE * | iterator |
typedef BasicImageIterator < PIXELTYPE, PIXELTYPE ** > | Iterator |
typedef PIXELTYPE | PixelType |
typedef PIXELTYPE * | pointer |
typedef PIXELTYPE & | reference |
typedef traverser::row_iterator | row_iterator |
typedef PIXELTYPE * | ScanOrderIterator |
typedef Size2D | size_type |
typedef BasicImageIterator < PIXELTYPE, PIXELTYPE ** > | traverser |
typedef PIXELTYPE | value_type |
Public Member Functions | |
Accessor | accessor () |
ConstAccessor | accessor () const |
BasicImage () | |
BasicImage (Alloc const &alloc) | |
BasicImage (std::ptrdiff_t width, std::ptrdiff_t height, Alloc const &alloc=Alloc()) | |
BasicImage (difference_type const &size, Alloc const &alloc=Alloc()) | |
BasicImage (std::ptrdiff_t width, std::ptrdiff_t height, value_type const &d, Alloc const &alloc=Alloc()) | |
BasicImage (std::ptrdiff_t width, std::ptrdiff_t height, SkipInitializationTag, Alloc const &alloc=Alloc()) | |
BasicImage (difference_type const &size, value_type const &d, Alloc const &alloc=Alloc()) | |
BasicImage (difference_type const &size, SkipInitializationTag, Alloc const &alloc=Alloc()) | |
BasicImage (std::ptrdiff_t width, std::ptrdiff_t height, const_pointer d, Alloc const &alloc=Alloc()) | |
BasicImage (difference_type const &size, const_pointer d, Alloc const &alloc=Alloc()) | |
BasicImage (const BasicImage &rhs) | |
iterator | begin () |
const_iterator | begin () const |
column_iterator | columnBegin (std::ptrdiff_t x) |
const_column_iterator | columnBegin (std::ptrdiff_t x) const |
column_iterator | columnEnd (std::ptrdiff_t x) |
const_column_iterator | columnEnd (std::ptrdiff_t x) const |
const_pointer | data () const |
iterator | end () |
const_iterator | end () const |
std::ptrdiff_t | height () const |
BasicImage & | init (value_type const &pixel) |
bool | isInside (difference_type const &d) const |
traverser | lowerRight () |
const_traverser | lowerRight () const |
reference | operator() (std::ptrdiff_t dx, std::ptrdiff_t dy) |
const_reference | operator() (std::ptrdiff_t dx, std::ptrdiff_t dy) const |
BasicImage & | operator= (const BasicImage &rhs) |
BasicImage & | operator= (value_type pixel) |
reference | operator[] (difference_type const &d) |
const_reference | operator[] (difference_type const &d) const |
pointer | operator[] (std::ptrdiff_t dy) |
const_pointer | operator[] (std::ptrdiff_t dy) const |
void | resize (std::ptrdiff_t width, std::ptrdiff_t height) |
void | resize (difference_type const &size) |
void | resize (std::ptrdiff_t width, std::ptrdiff_t height, value_type const &d) |
void | resize (std::ptrdiff_t width, std::ptrdiff_t height, SkipInitializationTag) |
void | resizeCopy (std::ptrdiff_t width, std::ptrdiff_t height, const_pointer data) |
void | resizeCopy (const BasicImage &rhs) |
row_iterator | rowBegin (std::ptrdiff_t y) |
const_row_iterator | rowBegin (std::ptrdiff_t y) const |
row_iterator | rowEnd (std::ptrdiff_t y) |
const_row_iterator | rowEnd (std::ptrdiff_t y) const |
size_type | size () const |
void | swap (BasicImage &rhs) |
traverser | upperLeft () |
const_traverser | upperLeft () const |
std::ptrdiff_t | width () const |
~BasicImage () | |
Fundamental class template for images.
deprecated, use vigra::MultiArray instead
A customized memory allocator can be specified as a templated argument and passed in the constructor.
#include <vigra/basicimage.hxx>
Namespace: vigra
typedef PIXELTYPE value_type |
the BasicImage's pixel type
typedef PIXELTYPE PixelType |
the BasicImage's pixel type
typedef PIXELTYPE& reference |
the BasicImage's reference type (i.e. the return type of image[diff]
and image(dx,dy)
)
typedef PIXELTYPE const& const_reference |
the BasicImage's const reference type (i.e. the return type of image[diff]
and image(dx,dy)
when image
is const)
typedef PIXELTYPE* pointer |
the BasicImage's pointer type
typedef PIXELTYPE const* const_pointer |
the BasicImage's const pointer type
typedef PIXELTYPE* iterator |
the BasicImage's 1D random access iterator (note: lower case 'iterator' is a STL compatible 1D random access iterator, don't confuse with capitalized Iterator)
typedef PIXELTYPE* ScanOrderIterator |
deprecated, use iterator
instead
typedef PIXELTYPE const* const_iterator |
the BasicImage's 1D random access const iterator (note: lower case 'const_iterator' is a STL compatible 1D random access const iterator)
typedef PIXELTYPE const* ConstScanOrderIterator |
deprecated, use const_iterator
instead
typedef BasicImageIterator<PIXELTYPE, PIXELTYPE **> traverser |
the BasicImage's 2D random access iterator ('traverser')
typedef BasicImageIterator<PIXELTYPE, PIXELTYPE **> Iterator |
deprecated, use traverser
instead
typedef ConstBasicImageIterator<PIXELTYPE, PIXELTYPE **> const_traverser |
the BasicImage's 2D random access const iterator ('const traverser')
typedef ConstBasicImageIterator<PIXELTYPE, PIXELTYPE **> ConstIterator |
deprecated, use const_traverser
instead
typedef traverser::row_iterator row_iterator |
the row iterator associated with the traverser
typedef const_traverser::row_iterator const_row_iterator |
the const row iterator associated with the const_traverser
the column iterator associated with the traverser
the const column iterator associated with the const_traverser
typedef Diff2D difference_type |
the BasicImage's difference type (argument type of image[diff])
the BasicImage's size type (result type of image.size())
typedef IteratorTraits<traverser>::DefaultAccessor Accessor |
the BasicImage's default accessor
typedef IteratorTraits<const_traverser>::DefaultAccessor ConstAccessor |
the BasicImage's default const accessor
typedef Alloc allocator_type |
the BasicImage's allocator (default: std::allocator<value_type>)
BasicImage | ( | ) |
construct image of size 0x0
|
explicit |
construct image of size 0x0, use the specified allocator.
BasicImage | ( | std::ptrdiff_t | width, |
std::ptrdiff_t | height, | ||
Alloc const & | alloc = Alloc() |
||
) |
construct image of size width x height, use the specified allocator.
|
explicit |
construct image of size size.x x size.y, use the specified allocator.
BasicImage | ( | std::ptrdiff_t | width, |
std::ptrdiff_t | height, | ||
value_type const & | d, | ||
Alloc const & | alloc = Alloc() |
||
) |
construct image of size width*height and initialize every pixel with the value d (use this constructor, if value_type doesn't have a default constructor). Use the specified allocator.
BasicImage | ( | std::ptrdiff_t | width, |
std::ptrdiff_t | height, | ||
SkipInitializationTag | , | ||
Alloc const & | alloc = Alloc() |
||
) |
construct image of size width*height and try to skip initialization of the memory (see BasicImage::resize for details). Use the specified allocator.
|
explicit |
construct image of size size.x x size.y and initialize every pixel with given data (use this constructor, if value_type doesn't have a default constructor). Use the specified allocator.
|
explicit |
construct image of size size.x x size.y and try to skip initialization of the memory (see BasicImage::resize for details). Use the specified allocator.
BasicImage | ( | std::ptrdiff_t | width, |
std::ptrdiff_t | height, | ||
const_pointer | d, | ||
Alloc const & | alloc = Alloc() |
||
) |
construct image of size width*height and copy the data from the given C-style array d. Use the specified allocator.
|
explicit |
construct image of size size.x x size.y and copy the data from the given C-style array. Use the specified allocator.
BasicImage | ( | const BasicImage< PIXELTYPE, Alloc > & | rhs | ) |
copy rhs image
~BasicImage | ( | ) |
destructor
BasicImage< PIXELTYPE, Alloc > & operator= | ( | const BasicImage< PIXELTYPE, Alloc > & | rhs | ) |
copy rhs image (image is resized if necessary)
BasicImage< PIXELTYPE, Alloc > & operator= | ( | value_type | pixel | ) |
BasicImage< PIXELTYPE, Alloc > & init | ( | value_type const & | pixel | ) |
set Image with const value
void resize | ( | std::ptrdiff_t | width, |
std::ptrdiff_t | height | ||
) |
reset image to specified size (dimensions must not be negative) (old data are kept if new size matches old size)
void resize | ( | difference_type const & | size | ) |
reset image to specified size (dimensions must not be negative) (old data are kept if new size matches old size)
void resize | ( | std::ptrdiff_t | width, |
std::ptrdiff_t | height, | ||
value_type const & | d | ||
) |
reset image to specified size and initialize it with given data (use this if value_type doesn't have a default constructor, dimensions must not be negative, old data are kept if new size matches old size)
void resize | ( | std::ptrdiff_t | width, |
std::ptrdiff_t | height, | ||
SkipInitializationTag | |||
) |
reset image to specified size and skip initialization if possible (use this if value_type
is a built-in type or TinyVector<builtin>&
and the data is immediately overridden afterwards). If value_type
requires initialization, SkipInitialization
is ignored.
Usage:
void resizeCopy | ( | std::ptrdiff_t | width, |
std::ptrdiff_t | height, | ||
const_pointer | data | ||
) |
resize image to given size and initialize by copying data from the C-style array data.
void resizeCopy | ( | const BasicImage< PIXELTYPE, Alloc > & | rhs | ) |
resize image to size of other image and copy its data
void swap | ( | BasicImage< PIXELTYPE, Alloc > & | rhs | ) |
swap the internal data with the rhs image in constant time
std::ptrdiff_t width | ( | ) | const |
width of Image
std::ptrdiff_t height | ( | ) | const |
height of Image
size_type size | ( | ) | const |
size of Image
bool isInside | ( | difference_type const & | d | ) | const |
test whether a given coordinate is inside the image
reference operator[] | ( | difference_type const & | d | ) |
access pixel at given location.
usage: value_type value = image[Diff2D(1,2)]
const_reference operator[] | ( | difference_type const & | d | ) | const |
read pixel at given location.
usage: value_type value = image[Diff2D(1,2)]
reference operator() | ( | std::ptrdiff_t | dx, |
std::ptrdiff_t | dy | ||
) |
access pixel at given location.
usage: value_type value = image(1,2)
const_reference operator() | ( | std::ptrdiff_t | dx, |
std::ptrdiff_t | dy | ||
) | const |
read pixel at given location.
usage: value_type value = image(1,2)
pointer operator[] | ( | std::ptrdiff_t | dy | ) |
access pixel at given location. Note that the 'x' index is the trailing index.
usage: value_type value = image[2][1]
const_pointer operator[] | ( | std::ptrdiff_t | dy | ) | const |
read pixel at given location. Note that the 'x' index is the trailing index.
usage: value_type value = image[2][1]
traverser upperLeft | ( | ) |
init 2D random access iterator pointing to upper left pixel
traverser lowerRight | ( | ) |
init 2D random access iterator pointing to pixel(width, height), i.e. one pixel right and below lower right corner of the image as is common in C/C++.
const_traverser upperLeft | ( | ) | const |
init 2D random access const iterator pointing to upper left pixel
const_traverser lowerRight | ( | ) | const |
init 2D random access const iterator pointing to pixel(width, height), i.e. one pixel right and below lower right corner of the image as is common in C/C++.
iterator begin | ( | ) |
init 1D random access iterator pointing to first pixel
iterator end | ( | ) |
init 1D random access iterator pointing past the end
const_iterator begin | ( | ) | const |
init 1D random access const iterator pointing to first pixel
const_iterator end | ( | ) | const |
init 1D random access const iterator pointing past the end
row_iterator rowBegin | ( | std::ptrdiff_t | y | ) |
init 1D random access iterator pointing to first pixel of row y
row_iterator rowEnd | ( | std::ptrdiff_t | y | ) |
init 1D random access iterator pointing past the end of row y
const_row_iterator rowBegin | ( | std::ptrdiff_t | y | ) | const |
init 1D random access const iterator pointing to first pixel of row y
const_row_iterator rowEnd | ( | std::ptrdiff_t | y | ) | const |
init 1D random access const iterator pointing past the end of row y
column_iterator columnBegin | ( | std::ptrdiff_t | x | ) |
init 1D random access iterator pointing to first pixel of column x
column_iterator columnEnd | ( | std::ptrdiff_t | x | ) |
init 1D random access iterator pointing past the end of column x
const_column_iterator columnBegin | ( | std::ptrdiff_t | x | ) | const |
init 1D random access const iterator pointing to first pixel of column x
const_column_iterator columnEnd | ( | std::ptrdiff_t | x | ) | const |
init 1D random access const iterator pointing past the end of column x
const_pointer data | ( | ) | const |
get a pointer to the internal data
Accessor accessor | ( | ) |
return default accessor
ConstAccessor accessor | ( | ) | const |
return default const accessor
© Ullrich Köthe (ullrich.koethe@iwr.uni-heidelberg.de) |
html generated using doxygen and Python
|