C3DImage Class Referenceabstract

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 More...
 
typedef std::shared_ptr< C3DImagePointer
 Pointer type of the image. More...
 

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 C3DBoundsget_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) More...
 
void set_rotation (const C3DRotation &voxel)
 set the rotation about the origin of the image More...
 
void set_voxel_size (const C3DFVector &voxel)
 set the voxel size on world units More...
 
virtual size_t size () const =0
 
virtual ~C3DImage ()
 
- Public Member Functions inherited from CAttributedData
CAttributeMap::const_iterator begin_attributes () const
 
void delete_attribute (const std::string &key)
 
CAttributeMap::const_iterator end_attributes () const
 
const PAttribute get_attribute (const std::string &key) const
 
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
 
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 More...
 
bool has_attribute (const std::string &key) const
 
CAttributedDataoperator= (const CAttributedData &org)
 Assignemt operator. More...
 
void print (std::ostream &os) const
 
void set_attribute (const std::string &key, PAttribute attr)
 
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)
 
void set_attributes (CAttributeMap::const_iterator begin, CAttributeMap::const_iterator end)
 
 CAttributedData ()
 
 CAttributedData (const CAttributedData &org)
 
 CAttributedData (PAttributeMap attr)
 

Static Public Attributes

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

Protected Member Functions

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

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

generic type for the dimension of the image

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

◆ Pointer

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

Pointer type of the image.

Definition at line 73 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
dataattributes (meta data) that belong to the image but is normally not required for processing
typepixel type of this image

◆ C3DImage() [2/3]

C3DImage::C3DImage ( EPixelType  type)
explicitprotected

Constructor to create the base sceleton of the image

Parameters
typepixel 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 >.

◆ 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 >.

Referenced by T3DImage< T >::get_gradient().

◆ 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 >.

Referenced by T3DImage< T >::get_gradient().

◆ 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 >.

Referenced by T3DImage< T >::end_range_with_boundary_flags().

Field Documentation

◆ data_descr

const char* C3DImage::data_descr
static

data type description for the plug-in path component

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


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