IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
Public Member Functions | Protected Member Functions | Friends | List of all members
ipsdk::image::BaseImageGeometry Class Referenceabstract

Base class for image geometry. More...

#include <BaseImageGeometry.h>

Inheritance diagram for ipsdk::image::BaseImageGeometry:
ipsdk::BaseSerializationObject ipsdk::BaseDynamicObject ipsdk::image::HeterogeneousImageGeometry ipsdk::image::HomogeneousImageGeometry

Public Member Functions

virtual eImageGeometryType getImageGeometryType () const =0
 retrieve image geometry type
 
bool isInit () const
 retrieve object initialisation flag
 
ipUInt64 getNbTotPlans () const
 retrieve total number of plans for geometry More...
 
bool isValidPixelIdx (const ipUInt64 x, const ipUInt64 y) const
 check whether a pixel index is valid given geometry More...
 
ipUInt64 getNbPixels () const
 retrieve total number of pixels associated to geometry More...
 
ipUInt64 getFullMemorySize () const
 retrieve total memory size associated to geometry (in octets) More...
 
const eImageBufferTypegetBufferType () const
 retrieve image data type More...
 
virtual const eImageBufferTypegetBufferType (const ipUInt64 tPlanIdx) const
 retrieve image data type for a given temporal plan More...
 
void resize (const VolumeGeometry &volumeGeometry, const ColorGeometry &colorGeometry, const TemporalGeometry &temporalGeometry, const ipUInt64 sizeX, const ipUInt64 sizeY)
 change image geometry dimensions More...
 
virtual void resize (const VolumeGeometry &volumeGeometry, const ColorGeometry &colorGeometry, const TemporalGeometry &temporalGeometry, const ipUInt64 sizeX, const ipUInt64 sizeY, const eImageBufferType &imageBufferType)
 change image geometry dimensions and image buffer type More...
 
virtual void setImageBufferType (const eImageBufferType &imageBufferType)
 change image buffer type associated to all plans More...
 
ImagePlanGeometry getPlanGeometry (const ipUInt64 tPlanIdx) const
 retrieve image plan geometry for a given plan More...
 
ipUInt64 getPlanNbPixels () const
 retrieve image plan number of pixels More...
 
ipUInt64 getPlanMemorySize (const ipUInt64 tPlanIdx=0) const
 retrieve image plan full memory size for a given plan More...
 
void clear ()
 clear object data
 
Constructors and destructors
 BaseImageGeometry ()
 
virtual ~BaseImageGeometry ()=0
 
const VolumeGeometrygetVolumeGeometry () const
 retrieve volume geometry (z) More...
 
VolumeGeometrygetVolumeGeometry ()
 retrieve volume geometry (z) More...
 
const eVolumeGeometryTypegetVolumeGeometryType () const
 retrieve volume geometry (z) More...
 
ipUInt64 getSizeZ () const
 retrieve volume geometry (z) More...
 
const ColorGeometrygetColorGeometry () const
 retrieve color geometry (c) More...
 
ColorGeometrygetColorGeometry ()
 retrieve color geometry (c) More...
 
const eColorGeometryTypegetColorGeometryType () const
 retrieve color geometry (c) More...
 
ipUInt64 getSizeC () const
 retrieve color geometry (c) More...
 
const TemporalGeometrygetTemporalGeometry () const
 retrieve temporal geometry (t) More...
 
TemporalGeometrygetTemporalGeometry ()
 retrieve temporal geometry (t) More...
 
const eTemporalGeometryTypegetTemporalGeometryType () const
 retrieve temporal geometry (t) More...
 
ipUInt64 getSizeT () const
 retrieve temporal geometry (t) More...
 
ipUInt64 getSizeX () const
 retrieve image x and y plan size More...
 
ipUInt64 getSizeY () const
 retrieve image x and y plan size More...
 
bool isValidPlanIdx (const ipUInt64 zPlanIdx, const ipUInt64 cPlanIdx, const ipUInt64 tPlanIdx) const
 check whether a plan index is valid given geometry More...
 
bool isValidPlanIdx (const PlanIndex &planIdx) const
 check whether a plan index is valid given geometry More...
 
void setVolumeGeometryType (const eVolumeGeometryType &vType)
 Setters of geometry types : More...
 
void setColorGeometryType (const eColorGeometryType &cType)
 Setters of geometry types : More...
 
void setTemporalGeometryType (const eTemporalGeometryType &tType)
 Setters of geometry types : More...
 
- Public Member Functions inherited from ipsdk::BaseSerializationObject
 BaseSerializationObject ()
 Default constructor.
 
virtual ~BaseSerializationObject ()=0
 destructor
 
- Public Member Functions inherited from ipsdk::BaseDynamicObject
virtual const std::string & getClassName () const
 method allowing to retrieve object class name
 
virtual BaseDynamicObjectcreateNew () const =0
 method allowing to create new instance of current object type
 
virtual DynamicObjectPtr createShared () const =0
 method allowing to create new shared instance of current object type
 
virtual bool hasCopySupport () const =0
 check whether objet has copy support
 
virtual BaseDynamicObjectduplicate () const =0
 method allowing to duplicate current object More...
 
virtual DynamicObjectPtr duplicateShared () const =0
 method allowing shared duplication of current object More...
 
 BaseDynamicObject ()
 
virtual ~BaseDynamicObject ()=0
 

Protected Member Functions

void initBase (const VolumeGeometry &volumeGeometry, const ColorGeometry &colorGeometry, const TemporalGeometry &temporalGeometry, const ipUInt64 sizeX, const ipUInt64 sizeY, const eImageBufferType &imageBufferType)
 base class initialization method
 
virtual void clearDerived ()
 clear of object data in derived class
 
- Protected Member Functions inherited from ipsdk::BaseSerializationObject
virtual BoolResult write (BaseOArchive &ar) const
 method allowing to ensure serialization write part for object
 
virtual BoolResult read (BaseIArchive &ar)
 method allowing to ensure serialization read part for object
 
- Protected Member Functions inherited from ipsdk::BaseDynamicObject
virtual void initCtorCopy (const BaseDynamicObject &object)
 
virtual void copy (const BaseDynamicObject &object)
 method allowing to copy data from another object
 

Friends

class BaseCompleteImage
 
class DiskPlanStorage
 
class UserPlanStorage
 

Additional Inherited Members

- Static Public Member Functions inherited from ipsdk::BaseSerializationObject
static ipUInt32 getVersion ()
 method allowing to retrieve class version information for serialization
 
- Static Public Member Functions inherited from ipsdk::BaseDynamicObject
static const std::string & getTypeName ()
 method allowing to retrieve name associated to class
 

Detailed Description

Base class for image geometry.

Author
E. Noirfalise
Date
2014/06/06

Member Function Documentation

◆ getVolumeGeometry() [1/2]

const VolumeGeometry& ipsdk::image::BaseImageGeometry::getVolumeGeometry ( ) const

retrieve volume geometry (z)

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ getVolumeGeometry() [2/2]

VolumeGeometry& ipsdk::image::BaseImageGeometry::getVolumeGeometry ( )

retrieve volume geometry (z)

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ getVolumeGeometryType()

const eVolumeGeometryType& ipsdk::image::BaseImageGeometry::getVolumeGeometryType ( ) const

retrieve volume geometry (z)

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ getSizeZ()

ipUInt64 ipsdk::image::BaseImageGeometry::getSizeZ ( ) const

retrieve volume geometry (z)

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ getColorGeometry() [1/2]

const ColorGeometry& ipsdk::image::BaseImageGeometry::getColorGeometry ( ) const

retrieve color geometry (c)

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ getColorGeometry() [2/2]

ColorGeometry& ipsdk::image::BaseImageGeometry::getColorGeometry ( )

retrieve color geometry (c)

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ getColorGeometryType()

const eColorGeometryType& ipsdk::image::BaseImageGeometry::getColorGeometryType ( ) const

retrieve color geometry (c)

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ getSizeC()

ipUInt64 ipsdk::image::BaseImageGeometry::getSizeC ( ) const

retrieve color geometry (c)

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ getTemporalGeometry() [1/2]

const TemporalGeometry& ipsdk::image::BaseImageGeometry::getTemporalGeometry ( ) const

retrieve temporal geometry (t)

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ getTemporalGeometry() [2/2]

TemporalGeometry& ipsdk::image::BaseImageGeometry::getTemporalGeometry ( )

retrieve temporal geometry (t)

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ getTemporalGeometryType()

const eTemporalGeometryType& ipsdk::image::BaseImageGeometry::getTemporalGeometryType ( ) const

retrieve temporal geometry (t)

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ getSizeT()

ipUInt64 ipsdk::image::BaseImageGeometry::getSizeT ( ) const

retrieve temporal geometry (t)

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ getSizeX()

ipUInt64 ipsdk::image::BaseImageGeometry::getSizeX ( ) const

retrieve image x and y plan size

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ getSizeY()

ipUInt64 ipsdk::image::BaseImageGeometry::getSizeY ( ) const

retrieve image x and y plan size

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ getNbTotPlans()

ipUInt64 ipsdk::image::BaseImageGeometry::getNbTotPlans ( ) const

retrieve total number of plans for geometry

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ isValidPlanIdx() [1/2]

bool ipsdk::image::BaseImageGeometry::isValidPlanIdx ( const ipUInt64  zPlanIdx,
const ipUInt64  cPlanIdx,
const ipUInt64  tPlanIdx 
) const

check whether a plan index is valid given geometry

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ isValidPlanIdx() [2/2]

bool ipsdk::image::BaseImageGeometry::isValidPlanIdx ( const PlanIndex planIdx) const

check whether a plan index is valid given geometry

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ isValidPixelIdx()

bool ipsdk::image::BaseImageGeometry::isValidPixelIdx ( const ipUInt64  x,
const ipUInt64  y 
) const

check whether a pixel index is valid given geometry

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ getNbPixels()

ipUInt64 ipsdk::image::BaseImageGeometry::getNbPixels ( ) const

retrieve total number of pixels associated to geometry

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ getFullMemorySize()

ipUInt64 ipsdk::image::BaseImageGeometry::getFullMemorySize ( ) const

retrieve total memory size associated to geometry (in octets)

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ getBufferType() [1/2]

const eImageBufferType& ipsdk::image::BaseImageGeometry::getBufferType ( ) const

retrieve image data type

Note
a returned value of eImageBufferType::eIBT_None stands for heterogeneous buffer type (sequence case)
Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ getBufferType() [2/2]

virtual const eImageBufferType& ipsdk::image::BaseImageGeometry::getBufferType ( const ipUInt64  tPlanIdx) const
virtual

retrieve image data type for a given temporal plan

Exceptions
ipsdk::image::IPSDKImageExceptionif tPlanIdx >= getSizeT()

Reimplemented in ipsdk::image::HeterogeneousImageGeometry.

◆ resize() [1/2]

void ipsdk::image::BaseImageGeometry::resize ( const VolumeGeometry volumeGeometry,
const ColorGeometry colorGeometry,
const TemporalGeometry temporalGeometry,
const ipUInt64  sizeX,
const ipUInt64  sizeY 
)

change image geometry dimensions

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ resize() [2/2]

virtual void ipsdk::image::BaseImageGeometry::resize ( const VolumeGeometry volumeGeometry,
const ColorGeometry colorGeometry,
const TemporalGeometry temporalGeometry,
const ipUInt64  sizeX,
const ipUInt64  sizeY,
const eImageBufferType imageBufferType 
)
virtual

change image geometry dimensions and image buffer type

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false
ipsdk::image::IPSDKImageExceptionif imageBufferType == eImageBufferType::eIBT_None

Reimplemented in ipsdk::image::HeterogeneousImageGeometry.

◆ setImageBufferType()

virtual void ipsdk::image::BaseImageGeometry::setImageBufferType ( const eImageBufferType imageBufferType)
virtual

change image buffer type associated to all plans

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false
ipsdk::image::IPSDKImageExceptionif imageBufferType == eImageBufferType::eIBT_None

Reimplemented in ipsdk::image::HeterogeneousImageGeometry.

◆ getPlanGeometry()

ImagePlanGeometry ipsdk::image::BaseImageGeometry::getPlanGeometry ( const ipUInt64  tPlanIdx) const

retrieve image plan geometry for a given plan

Exceptions
ipsdk::image::IPSDKImageExceptionif tPlanIdx >= getSizeT()

◆ getPlanNbPixels()

ipUInt64 ipsdk::image::BaseImageGeometry::getPlanNbPixels ( ) const

retrieve image plan number of pixels

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ getPlanMemorySize()

ipUInt64 ipsdk::image::BaseImageGeometry::getPlanMemorySize ( const ipUInt64  tPlanIdx = 0) const

retrieve image plan full memory size for a given plan

Exceptions
ipsdk::image::IPSDKImageExceptionif tPlanIdx >= getSizeT()

◆ setVolumeGeometryType()

void ipsdk::image::BaseImageGeometry::setVolumeGeometryType ( const eVolumeGeometryType vType)

Setters of geometry types :

  • allow to switch from 3D to 2D if sizeZ == 1 or from 2D to 3D regardless of sizeZ
  • allow to switch from Color to Grey if sizeC == 1 or from Grey to Color regardless of sizeC
  • allow to switch from Sequence to Single if sizeT == 1 or from Single to Sequence regardless of sizeT
    Exceptions
    ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ setColorGeometryType()

void ipsdk::image::BaseImageGeometry::setColorGeometryType ( const eColorGeometryType cType)

Setters of geometry types :

  • allow to switch from 3D to 2D if sizeZ == 1 or from 2D to 3D regardless of sizeZ
  • allow to switch from Color to Grey if sizeC == 1 or from Grey to Color regardless of sizeC
  • allow to switch from Sequence to Single if sizeT == 1 or from Single to Sequence regardless of sizeT
    Exceptions
    ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ setTemporalGeometryType()

void ipsdk::image::BaseImageGeometry::setTemporalGeometryType ( const eTemporalGeometryType tType)

Setters of geometry types :

  • allow to switch from 3D to 2D if sizeZ == 1 or from 2D to 3D regardless of sizeZ
  • allow to switch from Color to Grey if sizeC == 1 or from Grey to Color regardless of sizeC
  • allow to switch from Sequence to Single if sizeT == 1 or from Single to Sequence regardless of sizeT
    Exceptions
    ipsdk::image::IPSDKImageExceptionif isInit() == false

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