vigra_ext::MultiLayerImage< Image, Mask > Struct Template Reference

A multilayer image is simply a collection consisting of multiple ROIImages. More...

#include <MultiLayerImage.h>

List of all members.

Public Types

typedef Image::value_type image_value_type
typedef Image::traverser image_traverser
typedef Image::const_traverser const_image_traverser
typedef Image::Accessor ImageAccessor
typedef Image::ConstAccessor ConstImageAccessor
typedef Mask::value_type mask_value_type
typedef Mask::traverser mask_traverser
typedef Mask::const_traverser const_mask_traverser
typedef Mask::Accessor MaskAccessor
typedef Mask::ConstAccessor ConstMaskAccessor

Public Member Functions

 MultiLayerImage ()
 ~MultiLayerImage ()
unsigned int layers ()
ROIImage< Image, Mask > & appendLayer ()
void removeLayer (unsigned int i)
vigra::Rect2D boundingBox ()
 calculate the bounding box of all images.
ROIImage< Image, Mask > & GetLayer (unsigned int i)
template<class ImgIter, class MaskIter>
void getCut (int x, int y, ImgIter image_iter, MaskIter mask_iter) const
 get all image and mask data at a given point.

Protected Attributes

LayerVector m_layers
 the data storage.

Private Types

typedef std::vector< ROIImage<
Image, Mask > * > 
LayerVector
typedef LayerVector::iterator LayerIterator
typedef LayerVector::const_iterator ConstLayerIterator
typedef std::vector< image_value_typevalue_type


Detailed Description

template<class Image, class Mask>
struct vigra_ext::MultiLayerImage< Image, Mask >

A multilayer image is simply a collection consisting of multiple ROIImages.

It contains some simple methods to iterate over the image.

Definition at line 37 of file MultiLayerImage.h.


Member Typedef Documentation

template<class Image, class Mask>
typedef Image::const_traverser vigra_ext::MultiLayerImage< Image, Mask >::const_image_traverser
 

Definition at line 46 of file MultiLayerImage.h.

template<class Image, class Mask>
typedef Mask::const_traverser vigra_ext::MultiLayerImage< Image, Mask >::const_mask_traverser
 

Definition at line 52 of file MultiLayerImage.h.

template<class Image, class Mask>
typedef Image::ConstAccessor vigra_ext::MultiLayerImage< Image, Mask >::ConstImageAccessor
 

Definition at line 48 of file MultiLayerImage.h.

template<class Image, class Mask>
typedef LayerVector::const_iterator vigra_ext::MultiLayerImage< Image, Mask >::ConstLayerIterator [private]
 

Definition at line 59 of file MultiLayerImage.h.

template<class Image, class Mask>
typedef Mask::ConstAccessor vigra_ext::MultiLayerImage< Image, Mask >::ConstMaskAccessor
 

Definition at line 54 of file MultiLayerImage.h.

template<class Image, class Mask>
typedef Image::traverser vigra_ext::MultiLayerImage< Image, Mask >::image_traverser
 

Definition at line 45 of file MultiLayerImage.h.

template<class Image, class Mask>
typedef Image::value_type vigra_ext::MultiLayerImage< Image, Mask >::image_value_type
 

Definition at line 44 of file MultiLayerImage.h.

template<class Image, class Mask>
typedef Image::Accessor vigra_ext::MultiLayerImage< Image, Mask >::ImageAccessor
 

Definition at line 47 of file MultiLayerImage.h.

template<class Image, class Mask>
typedef LayerVector::iterator vigra_ext::MultiLayerImage< Image, Mask >::LayerIterator [private]
 

Definition at line 58 of file MultiLayerImage.h.

template<class Image, class Mask>
typedef std::vector<ROIImage<Image, Mask>*> vigra_ext::MultiLayerImage< Image, Mask >::LayerVector [private]
 

Definition at line 57 of file MultiLayerImage.h.

template<class Image, class Mask>
typedef Mask::traverser vigra_ext::MultiLayerImage< Image, Mask >::mask_traverser
 

Definition at line 51 of file MultiLayerImage.h.

template<class Image, class Mask>
typedef Mask::value_type vigra_ext::MultiLayerImage< Image, Mask >::mask_value_type
 

Definition at line 50 of file MultiLayerImage.h.

template<class Image, class Mask>
typedef Mask::Accessor vigra_ext::MultiLayerImage< Image, Mask >::MaskAccessor
 

Definition at line 53 of file MultiLayerImage.h.

template<class Image, class Mask>
typedef std::vector<image_value_type> vigra_ext::MultiLayerImage< Image, Mask >::value_type [private]
 

Definition at line 61 of file MultiLayerImage.h.


Constructor & Destructor Documentation

template<class Image, class Mask>
vigra_ext::MultiLayerImage< Image, Mask >::MultiLayerImage  )  [inline]
 

Definition at line 64 of file MultiLayerImage.h.

template<class Image, class Mask>
vigra_ext::MultiLayerImage< Image, Mask >::~MultiLayerImage  )  [inline]
 

Definition at line 69 of file MultiLayerImage.h.


Member Function Documentation

template<class Image, class Mask>
ROIImage<Image, Mask>& vigra_ext::MultiLayerImage< Image, Mask >::appendLayer  )  [inline]
 

Definition at line 83 of file MultiLayerImage.h.

template<class Image, class Mask>
vigra::Rect2D vigra_ext::MultiLayerImage< Image, Mask >::boundingBox  )  [inline]
 

calculate the bounding box of all images.

Definition at line 98 of file MultiLayerImage.h.

References vigra_ext::ROIImage< Image, Mask >::boundingBox().

template<class Image, class Mask>
template<class ImgIter, class MaskIter>
void vigra_ext::MultiLayerImage< Image, Mask >::getCut int  x,
int  y,
ImgIter  image_iter,
MaskIter  mask_iter
const [inline]
 

get all image and mask data at a given point.

They are copied into the containers given by image_iter and mask_iter.

This is SLOW.

Definition at line 126 of file MultiLayerImage.h.

References vigra_ext::ROIImage< Image, Mask >::getMask().

template<class Image, class Mask>
ROIImage<Image, Mask>& vigra_ext::MultiLayerImage< Image, Mask >::GetLayer unsigned int  i  ) 
 

template<class Image, class Mask>
unsigned int vigra_ext::MultiLayerImage< Image, Mask >::layers  )  [inline]
 

Definition at line 78 of file MultiLayerImage.h.

template<class Image, class Mask>
void vigra_ext::MultiLayerImage< Image, Mask >::removeLayer unsigned int  i  )  [inline]
 

Definition at line 90 of file MultiLayerImage.h.


Member Data Documentation

template<class Image, class Mask>
LayerVector vigra_ext::MultiLayerImage< Image, Mask >::m_layers [protected]
 

the data storage.

Definition at line 143 of file MultiLayerImage.h.


The documentation for this struct was generated from the following file:
Generated on Wed Jul 16 01:25:58 2014 for Hugintrunk by  doxygen 1.3.9.1