C3DImage Class Referenceabstract
Basic data strctures and functions

The generic base type of a 3D image. More...

`#include <mia/3d/image.hh>`

Inheritance diagram for C3DImage:
[legend]
Collaboration diagram for C3DImage:
[legend]

## Public Types

typedef C3DBounds | dimsize_type
| generic type for the dimension of the image
typedef std::shared_ptr< C3DImage > | Pointer
| Pointer type of the image.

## Public Member Functions

virtual Pointer | clone () const =0
virtual std::pair< double, double > | get_minmax_intensity () const =0
E3DImageOrientation | get_orientation () const
C3DFVector | get_origin () const
EPixelType | get_pixel_type () const
C3DRotation | get_rotation () const
virtual const C3DBounds & | get_size () const =0
C3DFVector | get_voxel_size () const
void | set_orientation (E3DImageOrientation orient)
void | set_origin (const C3DFVector &voxel)
| set the origin i.e. world units of the pixel at (0,0,0)
void | set_rotation (const C3DRotation &voxel)
| set the rotation about the origin of the image
void | set_voxel_size (const C3DFVector &voxel)
| set the voxel size on world units
virtual size_t | size () const =0
virtual | ~C3DImage ()
| CAttributedData ()
| CAttributedData (const CAttributedData &org)
| CAttributedData (PAttributeMap attr)
CAttributedData & | operator= (const CAttributedData &org)
| Assignemt operator.
const PAttribute | get_attribute (const std::string &key) const
CAttributeMap::const_iterator | begin_attributes () const
CAttributeMap::const_iterator | end_attributes () const
void | set_attribute (const std::string &key, PAttribute attr)
void | set_attributes (CAttributeMap::const_iterator begin, CAttributeMap::const_iterator end)
void | set_attribute (const std::string &key, const std::string &value)
template<typename T>
void | set_attribute (const std::string &key, const T &value)
void | set_attribute (const std::string &key, const char *value)
const std::string | get_attribute_as_string (const std::string &key) const
| returns the requested attribute as string, returns an empty string if attribute doesn't exist
template<typename T>
const T | get_attribute_as (const std::string &key) const
template<typename T>
const T | get_attribute_as (const std::string &key, T default_value) const
void | delete_attribute (const std::string &key)
bool | has_attribute (const std::string &key) const
void | print (std::ostream &os) const

## Static Public Attributes

static const char * | data_descr
| data type description for the plug-in path component

## Protected Member Functions

| C3DImage ()
| standard constructor
| C3DImage (const CAttributedData &data, EPixelType type)
| C3DImage (EPixelType type)

## Detailed Description

The generic base type of a 3D image.

The base type of a 3D image with is used to move around the images in the code. This type is not prepared to hold actual data. Instead the templated type T3DImage derived from this class is used to hold image data of a certain voxel type.

Definition at line 46 of file 3d/image.hh.

## Member Typedef Documentation

## dimsize_type

typedef C3DBounds C3DImage::dimsize_type

generic type for the dimension of the image

Definition at line 71 of file 3d/image.hh.

## Pointer

typedef std::shared_ptr<C3DImage > C3DImage::Pointer

Pointer type of the image.

Definition at line 74 of file 3d/image.hh.

## Constructor & Destructor Documentation

## C3DImage() [1/3]

C3DImage::C3DImage | ( | const CAttributedData & | data,
|  | EPixelType | type )

protected

Constructor to create the base sceleton of the image

Parameters

  data | attributes (meta data) that belong to the image but is normally not required for processing
  type | pixel type of this image

References CAttributedData::CAttributedData().

## C3DImage() [2/3]

C3DImage::C3DImage | ( | EPixelType | type | ) |

explicit protected

Constructor to create the base sceleton of the image

Parameters

  type | pixel type of this image

## C3DImage() [3/3]

C3DImage::C3DImage | ( |  | ) |

protected

standard constructor

## ~C3DImage()

virtual C3DImage::~C3DImage | ( |  | ) |

virtual

## Member Function Documentation

## clone()

virtual Pointer C3DImage::clone | ( |  | ) | const

pure virtual

Returns
  a clone of the image with shared image data (copy-on-write is employed for iterator access)

Implemented in T3DImage< T >, T3DImage< bool >, T3DImage< double >, T3DImage< float >, T3DImage< int16_t >, T3DImage< int32_t >, T3DImage< int64_t >, T3DImage< int8_t >, T3DImage< uint16_t >, T3DImage< uint32_t >, T3DImage< uint64_t >, and T3DImage< uint8_t >.

## get_minmax_intensity()

virtual std::pair< double, double > C3DImage::get_minmax_intensity | ( |  | ) | const

pure virtual

Returns
  a pair (minimum, maximum) pixel intensity

Implemented in T3DImage< T >, T3DImage< bool >, T3DImage< double >, T3DImage< float >, T3DImage< int16_t >, T3DImage< int32_t >, T3DImage< int64_t >, T3DImage< int8_t >, T3DImage< uint16_t >, T3DImage< uint32_t >, T3DImage< uint64_t >, and T3DImage< uint8_t >.

## get_orientation()

E3DImageOrientation C3DImage::get_orientation | ( |  | ) | const

Returns
  the orientation of the image

## get_origin()

C3DFVector C3DImage::get_origin | ( |  | ) | const

Returns
  the origin i.e. world units of the pixel at (0,0,0)

## get_pixel_type()

EPixelType C3DImage::get_pixel_type | ( |  | ) | const

Returns
  the type of the pixels(voxels) in the image

## get_rotation()

C3DRotation C3DImage::get_rotation | ( |  | ) | const

Returns
  the rotation about the origin of the image

## get_size()

virtual const C3DBounds & C3DImage::get_size | ( |  | ) | const

pure virtual

Returns
  the 3D size of the image

Implemented in T3DImage< T >, T3DImage< bool >, T3DImage< double >, T3DImage< float >, T3DImage< int16_t >, T3DImage< int32_t >, T3DImage< int64_t >, T3DImage< int8_t >, T3DImage< uint16_t >, T3DImage< uint32_t >, T3DImage< uint64_t >, and T3DImage< uint8_t >.

## get_voxel_size()

C3DFVector C3DImage::get_voxel_size | ( |  | ) | const

Returns
  the voxel size in world units

## set_orientation()

void C3DImage::set_orientation | ( | E3DImageOrientation | orient | ) |

Set the orientation of the image

Parameters

  orient |

Remarks
  orientation is currently not really used

## set_origin()

void C3DImage::set_origin | ( | const C3DFVector & | voxel | ) |

set the origin i.e. world units of the pixel at (0,0,0)

## set_rotation()

void C3DImage::set_rotation | ( | const C3DRotation & | voxel | ) |

set the rotation about the origin of the image

## set_voxel_size()

void C3DImage::set_voxel_size | ( | const C3DFVector & | voxel | ) |

set the voxel size on world units

## size()

virtual size_t C3DImage::size | ( |  | ) | const

pure virtual

Returns
  the number of voxels

Implemented in T3DImage< T >, T3DImage< bool >, T3DImage< double >, T3DImage< float >, T3DImage< int16_t >, T3DImage< int32_t >, T3DImage< int64_t >, T3DImage< int8_t >, T3DImage< uint16_t >, T3DImage< uint32_t >, T3DImage< uint64_t >, and T3DImage< uint8_t >.

## Field Documentation

## data_descr

const char* C3DImage::data_descr

static

data type description for the plug-in path component

Definition at line 68 of file 3d/image.hh.

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

- 3d/image.hh