|
Image with static geometry. More...
#include <ImageChannel.h>
Public Member Functions | |
Channel (const Channel &channel) | |
virtual Channel & | getChannel (size_t i) |
virtual const Channel & | getChannel (size_t i) const |
virtual Channel & | getAlphaChannel (size_t i=0) |
virtual const Channel & | getAlphaChannel (size_t i=0) const |
Public Member Functions inherited from ImageFrame | |
ImageFrame (const ImageFrame &src) | |
virtual const ImageConf & | getConf () const |
void | setPhysicalRange (const Range< double > &range, bool rescale=false) |
Sets the supported range for physical values and optionally adjusts the scaling for maximal resolution. | |
void | setPhysicalRange (double min, double max, bool rescale=false) |
Sets the supported range for physical values and optionally adjusts the scaling for maximal resolution. | |
const iterator & | begin () |
Returns iterator pointing to the first image element. | |
const iterator & | end () |
Returns the iterator pointing to the element after the last element of the image buffer. | |
const const_iterator & | begin () const |
Returns iterator pointing to the first image element. | |
const const_iterator & | end () const |
Returns the iterator pointing to the element after the last element of the image buffer. | |
size_t | address (size_t i) const |
Computes the index location from image coordinates. Does not involve bit resolution. More... | |
size_t | address (size_t i, size_t j) const |
Computes the index location from image coordinates. Does not involve bit resolution. More... | |
size_t | address (size_t i, size_t j, size_t k) const |
Computes the index location from image coordinates. Does not involve bit resolution. More... | |
const void * | getBuffer () const |
Returns the pointer to the start of the image array. More... | |
void * | getBuffer () |
Returns the pointer to the start of the image array. More... | |
template<class T > | |
void | put (size_t i, T x) |
Sets the intensity in location i to x . See \address. More... | |
template<class T > | |
void | put (size_t i, size_t j, T x) |
Sets the intensity at location i ,j to x . See address(). More... | |
template<class T > | |
void | put (size_t i, size_t j, size_t k, T x) |
Sets the intensity at location i ,j,k to x . More... | |
template<class T , class P > | |
void | put (const Point2D< P > &p, T x) |
Gets the intensity at location p= (i,j) . More... | |
void | putScaled (size_t i, size_t j, double x) |
Put intensity using original physical value. More... | |
template<class T > | |
T | get (size_t i) const |
Gets the intensity at location i . See address(). More... | |
template<class T > | |
T | get (size_t i, size_t j) const |
Gets the intensity at location i ,j . More... | |
template<class T > | |
T | get (size_t i, size_t j, size_t k) const |
Gets the intensity at location i ,j,k . More... | |
double | getScaled (size_t i, size_t j) const |
Get intensity in original physical scale. More... | |
template<class T , class P > | |
T | get (const Point2D< P > &p) const |
Gets the intensity at location p= (i,j) . More... | |
template<class T , class P > | |
void | putPixel (const Point2D< P > &p, const std::vector< T > &pixel) const |
template<class T , class P > | |
void | getPixel (const Point2D< P > &p, std::vector< T > &pixel) const |
void | clear () |
Sets the intensities to zero. Does not change image geometry. See resetGeometry(). | |
template<class T > | |
void | fill (T x) |
Sets the intensities to given value. Does not change image geometry. | |
void | copyData (const ImageFrame &src) |
Copies data. Does not change encoding, geometry, or coordinate policy. | |
bool | hasOverlap (const ImageFrame &image) const |
Checks if images have a common memory segment. | |
bool | hasSameSegment (const ImageFrame &image) const |
Return true, if both frames have same type and are using the same data segment. More... | |
virtual const FlexVariableMap & | getProperties () const |
void | setName (const std::string &s) |
const std::string & | getName () const |
void | toStream (std::ostream &ostr=std::cout) const |
Prints images geometry, buffer size and type information. | |
virtual void | initialize (const std::type_info &t, const Geometry &geometry) |
Returns numeric channel index from "r", "g", "b", or "a" or a non-negative number in string format. More... | |
virtual void | initialize (const std::type_info &t, size_t width, size_t height, size_t imageChannels=1, size_t alphaChannels=0) |
Sets the type and allocates a data buffer. | |
Public Member Functions inherited from ImageLike | |
ImageLike (const ImageLike &image) | |
const std::type_info & | getType () const |
Get the storage type. | |
bool | typeIsSet () const |
virtual const Geometry & | getGeometry () const |
size_t | getWidth () const |
size_t | getHeight () const |
size_t | getArea () const |
size_t | getChannelCount () const |
const size_t | getImageChannelCount () const |
const size_t | getAlphaChannelCount () const |
bool | hasAlphaChannel () const |
size_t | getVolume () const |
bool | isEmpty () const |
const CoordinatePolicy & | getCoordinatePolicy () const |
Coord policy. | |
CoordinatePolicy & | getCoordinatePolicy () |
Coord policy. | |
template<class T > | |
void | setCoordinatePolicy (const T &policy) |
void | setCoordinatePolicy (EdgePolicy::index_t xUnderFlowPolicy, EdgePolicy::index_t yUnderFlowPolicy, EdgePolicy::index_t xOverFlowPolicy, EdgePolicy::index_t yOverFlowPolicy) |
virtual const drain::ValueScaling & | getScaling () const |
virtual drain::ValueScaling & | getScaling () |
virtual void | setScaling (const drain::ValueScaling &scaling) |
virtual void | setScaling (double scale, double offset) |
template<class T > | |
drain::typeLimiter< T >::value_t | getLimiter () const |
Additional Inherited Members | |
Public Types inherited from ImageFrame | |
typedef CastableIterator | const_iterator |
typedef CastableIterator | iterator |
Public Attributes inherited from ImageFrame | |
FlexVariableMap | properties |
Container for user-defined KEY=VALUE metadata. | |
Protected Member Functions inherited from ImageFrame | |
void | init () |
void | adjustBuffer () |
Resize data buffer to match the geometry. | |
void | setStorageType (const std::type_info &type) |
Sets the storage type of the image - typically unsigned char, unsigned int or float. Calls setDefaultLimits(). | |
void | unsetType () |
void | setView (const ImageFrame &src, size_t channelStart, size_t channelCount, bool catenate=false) |
Sets the image to view the data and scaling of another image. More... | |
bool | isView () const |
Returns true, if the image "points to" another image. For example, channels are views. | |
virtual void | updateChannelVector () const |
Updates channel vector. Copies scaling of the host image. More... | |
template<class T > | |
T * | retrieve (size_t a) |
template<class T > | |
const T * | retrieve (size_t a) const |
Protected Attributes inherited from ImageFrame | |
unsigned char * | bufferPtr |
iterator | segmentBegin |
iterator | segmentEnd |
FlexVariableMap const * | propertiesPtr |
std::string | name |
std::vector< unsigned char > | buffer |
Protected Attributes inherited from ImageLike | |
ImageConf | conf |
Image with static geometry.
ImageFrame is an image which has a fixed type and geometry.
The pixel array is readable and writable. Scaling and coordinate handlers can be altered.