[ 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>
Fundamental class template for images.
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
BasicImage | ( | Alloc const & | alloc | ) | [explicit] |
construct image of size 0x0, use the specified allocator.
BasicImage | ( | int | width, |
int | height, | ||
Alloc const & | alloc = Alloc() |
||
) |
construct image of size width x height, use the specified allocator.
BasicImage | ( | difference_type const & | size, |
Alloc const & | alloc = Alloc() |
||
) | [explicit] |
construct image of size size.x x size.y, use the specified allocator.
BasicImage | ( | int | width, |
int | 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 | ( | int | width, |
int | 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.
BasicImage | ( | difference_type const & | size, |
value_type const & | d, | ||
Alloc const & | alloc = Alloc() |
||
) | [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.
BasicImage | ( | difference_type const & | size, |
SkipInitializationTag | , | ||
Alloc const & | alloc = Alloc() |
||
) | [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 | ( | int | width, |
int | 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.
BasicImage | ( | difference_type const & | size, |
const_pointer | d, | ||
Alloc const & | alloc = Alloc() |
||
) | [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 | ( | int | width, |
int | 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 | ( | int | width, |
int | 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 | ( | int | width, |
int | 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:
image.resize(new_width, new_height, SkipInitialization);
void resizeCopy | ( | int | width, |
int | 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
int width | ( | ) | const |
width of Image
int height | ( | ) | const |
height 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() | ( | int | dx, |
int | dy | ||
) |
access pixel at given location.
usage: value_type value = image(1,2)
const_reference operator() | ( | int | dx, |
int | dy | ||
) | const |
read pixel at given location.
usage: value_type value = image(1,2)
pointer operator[] | ( | int | 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[] | ( | int | dy | ) | const |
read pixel at given location. Note that the 'x' index is the trailing index.
usage: value_type value = image[2][1]
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++.
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 | ( | int | y | ) |
init 1D random access iterator pointing to first pixel of row y
row_iterator rowEnd | ( | int | y | ) |
init 1D random access iterator pointing past the end of row y
const_row_iterator rowBegin | ( | int | y | ) | const |
init 1D random access const iterator pointing to first pixel of row y
const_row_iterator rowEnd | ( | int | y | ) | const |
init 1D random access const iterator pointing past the end of row y
column_iterator columnBegin | ( | int | x | ) |
init 1D random access iterator pointing to first pixel of column x
column_iterator columnEnd | ( | int | x | ) |
init 1D random access iterator pointing past the end of column x
const_column_iterator columnBegin | ( | int | x | ) | const |
init 1D random access const iterator pointing to first pixel of column x
const_column_iterator columnEnd | ( | int | 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
ConstAccessor accessor | ( | ) | const |
return default const accessor
© Ullrich Köthe (ullrich.koethe@iwr.uni-heidelberg.de) |
html generated using doxygen and Python
|