IOLink  IOL_v1.1.0_release
iolink::MultiImageViewFactory Class Reference

This factory is aimed at creating stack of ImageViews. More...

#include <iolink/view/MultiImageViewFactory.h>

Public Member Functions

 MultiImageViewFactory (const MultiImageViewFactory &other)=delete
 
 MultiImageViewFactory (MultiImageViewFactory &&other)=delete
 
MultiImageViewFactoryoperator= (const MultiImageViewFactory &other)=delete
 
MultiImageViewFactoryoperator= (MultiImageViewFactory &&other)=delete
 

Static Public Member Functions

static std::shared_ptr< MultiImageViewcreate ()
 Creates an empty MultiImageView.
 
static std::shared_ptr< MultiImageViewcreate (std::initializer_list< std::shared_ptr< ImageView >> init)
 Creates an MultiImageView with given list of frames. More...
 
static std::shared_ptr< MultiImageViewcreateFromList (std::shared_ptr< ImageView > *listImages, size_t count)
 Creates a MultiImageView with given list of frames. More...
 
static std::shared_ptr< MultiImageViewunstack (std::shared_ptr< ImageView > imageView, size_t idxDimensionUnstack)
 Creates a MultiImageView from an ImageView ImageView (whose dimension is greater than 2) is unstacked according to given dimension into a MultiImageView. More...
 
static std::shared_ptr< MultiImageViewunstack (std::shared_ptr< ImageView > imageView, ImageDimension dimension)
 Creates a MultiImageView from an ImageView ImageView (whose dimension is greater than 2) is unstacked according to given dimension into a MultiImageView. More...
 
static std::shared_ptr< MultiImageViewdeinterlace (std::shared_ptr< ImageView > imageView)
 Creates a MultiImageView from an ImageView, containing as many ImageViews as there are channels in original Image (one by channel). More...
 

Detailed Description

This factory is aimed at creating stack of ImageViews.

Member Function Documentation

◆ create()

static std::shared_ptr<MultiImageView> iolink::MultiImageViewFactory::create ( std::initializer_list< std::shared_ptr< ImageView >>  init)
static

Creates an MultiImageView with given list of frames.

Exceptions
Errorif one ImageView of the given list has invalid properties

◆ createFromList()

static std::shared_ptr<MultiImageView> iolink::MultiImageViewFactory::createFromList ( std::shared_ptr< ImageView > *  listImages,
size_t  count 
)
static

Creates a MultiImageView with given list of frames.

Parameters
listImagespointer on first array of ImageView to add in MultiImageView
countelements count in given array
Exceptions
Errorif one ImageView of the given list has invalid properties

◆ deinterlace()

static std::shared_ptr<MultiImageView> iolink::MultiImageViewFactory::deinterlace ( std::shared_ptr< ImageView imageView)
static

Creates a MultiImageView from an ImageView, containing as many ImageViews as there are channels in original Image (one by channel).

i.e. ImageView RGB => MultiImageView of 3 ImageViews (ImageView RED, ImageView GREEN, ImageView BLUE)

Parameters
imageViewImageView which must be deinterlaced
Returns
a MultiImageView with one ImageView for each channel of original ImageView
Exceptions
Errorif given ImageView has invalid properties

◆ unstack() [1/2]

static std::shared_ptr<MultiImageView> iolink::MultiImageViewFactory::unstack ( std::shared_ptr< ImageView imageView,
ImageDimension  dimension 
)
static

Creates a MultiImageView from an ImageView ImageView (whose dimension is greater than 2) is unstacked according to given dimension into a MultiImageView.

i.e. ImageView 3D (XYZ) === unstack according to Y ==> MultiImageView containing Y ImageViews (XZ)

Parameters
imageViewImageView whose dimension is greater than 2
dimensionImageDimension to unstack
Returns
a MultiImageView containing as many sub-frames as the size of given dimension in original Imageview
Exceptions
Errorif dimension is not contained into ImageView
Errorif given ImageView has invalid properties

◆ unstack() [2/2]

static std::shared_ptr<MultiImageView> iolink::MultiImageViewFactory::unstack ( std::shared_ptr< ImageView imageView,
size_t  idxDimensionUnstack 
)
static

Creates a MultiImageView from an ImageView ImageView (whose dimension is greater than 2) is unstacked according to given dimension into a MultiImageView.

i.e. ImageView 3D (XYZ) === unstack according to Y ==> MultiImageView containing Y ImageViews (XZ)

Parameters
imageViewImageView whose dimension is greater than 2
idxDimensionUnstackindex of dimension used for unstacking
Returns
a MultiImageView containing as many sub-frames as the size of given dimension in original Imageview
Exceptions
Errorif given ImageView has invalid properties

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