$extrastylesheet
Olena  User documentation 2.1
An Image Processing Platform
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
mln::image3d< T > Struct Template Reference

#include <mln/core/image/image3d.hh>

Public Member Functions

 image3d ()
 image3d (const box3d &b, unsigned bdr=border::thickness)
 image3d (int nslis, int nrows, int ncols, unsigned bdr=border::thickness)
const box3dbbox () const
unsigned border () const
const Tbuffer () const
Tbuffer ()
int delta_offset (const dpoint3d &dp) const
void destroy ()
const box3ddomain () const
const Telement (unsigned i) const
Telement (unsigned i)
bool has (const point3d &p) const
void init_ (const box3d &b, unsigned bdr=border::thickness)
bool is_valid () const
unsigned ncols () const
unsigned nelements () const
unsigned nrows () const
std::size_t nsites () const
unsigned nslis () const
const Toperator() (const point3d &p) const
Toperator() (const point3d &p)
point3d point_at_offset (unsigned o) const
const t_eligible_values_setvalues_eligible () const
const t_values_spacevalues_space () const
const box3dvbbox () const

Protected Attributes

mln::util::tracked_ptr
< internal::data< image3d< T > > > 
data_

Public Types

typedef box3d::bkd_piter bkd_piter
typedef Image< void > category
typedef box3d domain_t
typedef dpoint3d dpoint
typedef image3d< Texact_t
typedef box3d::fwd_piter fwd_piter
typedef Tlvalue
typedef fwd_piter piter
typedef point3d point
typedef box3d pset
typedef point3d psite
typedef const Trvalue
typedef box3d::site site
typedef image3d< tag::value_< T > > skeleton
typedef
internal::image_primary< T,
box3d, image3d< T > > 
super_
typedef mln::value::set< Tt_eligible_values_set
typedef mln::value::set
< typename
mln::value::super_value< T >
::ret
t_values_space
typedef T value

Detailed Description

template<typename T>
struct mln::image3d< T >

Basic 3D image class.

The parameter T is the type of pixel values. This image class stores data in memory and has a virtual border with constant thickness around data.

Definition at line 133 of file core/image/image3d.hh.

Constructor & Destructor Documentation

template<typename T>
mln::image3d< T >::image3d ( )

Constructor without argument.

template<typename T>
mln::image3d< T >::image3d ( const box3d b,
unsigned  bdr = border::thickness 
)

Constructor with a box and the border thickness (default is 3).

template<typename T>
mln::image3d< T >::image3d ( int  nslis,
int  nrows,
int  ncols,
unsigned  bdr = border::thickness 
)

Constructor with the numbers of offsets and the border thickness.

Member Function Documentation

template<typename T>
const box3d& mln::image3d< T >::bbox ( ) const

Give the bounding box domain.

template<typename T>
unsigned mln::image3d< T >::border ( ) const

Give the border thickness.

template<typename T>
const T* mln::image3d< T >::buffer ( ) const

Give a hook to the value buffer.

template<typename T>
T* mln::image3d< T >::buffer ( )

Give a hook to the value buffer.

template<typename T>
int mln::image3d< T >::delta_offset ( const dpoint3d dp) const

Fast Image method.

Give the offset corresponding to the delta-point dp.

void mln::internal::image_base< T, box3d , image3d< T > >::destroy ( )
inherited

Detach data from an image (free it if nobody else hold it).

template<typename T>
const box3d& mln::image3d< T >::domain ( ) const

Give the definition domain.

template<typename T>
const T& mln::image3d< T >::element ( unsigned  i) const

Read-only access to the image value located at offset i.

template<typename T>
T& mln::image3d< T >::element ( unsigned  i)

Read-write access to the image value located at offset i.

template<typename T>
bool mln::image3d< T >::has ( const point3d p) const

Test if p is valid.

Reimplemented from mln::internal::image_base< T, box3d, image3d< T > >.

template<typename T>
void mln::image3d< T >::init_ ( const box3d b,
unsigned  bdr = border::thickness 
)

INTERNAL_API Initialize an empty image.

bool mln::internal::image_base< T, box3d , image3d< T > >::is_valid ( ) const
inherited

Test if this image has been initialized; default impl.

template<typename T>
unsigned mln::image3d< T >::ncols ( ) const

Give the number of columns.

template<typename T>
unsigned mln::image3d< T >::nelements ( ) const

Give the number of cells (points including border ones).

template<typename T>
unsigned mln::image3d< T >::nrows ( ) const

Give the number of rows.

std::size_t mln::internal::image_base< T, box3d , image3d< T > >::nsites ( ) const
inherited

Give the number of sites of the image domain.

template<typename T>
unsigned mln::image3d< T >::nslis ( ) const

Give the number of slices.

template<typename T>
const T& mln::image3d< T >::operator() ( const point3d p) const

Read-only access to the image value located at point p.

template<typename T>
T& mln::image3d< T >::operator() ( const point3d p)

Read-write access to the image value located at point p.

template<typename T>
point3d mln::image3d< T >::point_at_offset ( unsigned  o) const

Give the point corresponding to the offset o.

const t_eligible_values_set& mln::internal::image_base< T, box3d , image3d< T > >::values_eligible ( ) const
inherited
const t_values_space& mln::internal::image_base< T, box3d , image3d< T > >::values_space ( ) const
inherited

Return the value space of the image.

template<typename T>
const box3d& mln::image3d< T >::vbbox ( ) const

virtual box, i.e., box including the virtual border

Member Data Documentation

mln::util::tracked_ptr< internal::data<image3d< T > > > mln::internal::image_base< T, box3d , image3d< T > >::data_
protectedinherited

INTERNAL_API Internal data, sharable by several images.

Definition at line 176 of file core/internal/image_base.hh.

Member Typedef Documentation

template<typename T>
typedef box3d ::bkd_piter mln::image3d< T >::bkd_piter

Definition at line 141 of file core/image/image3d.hh.

typedef Image<void> mln::Image< image3d< T > >::category
inherited

Definition at line 78 of file core/concept/image.hh.

typedef box3d mln::internal::image_base< T, box3d , image3d< T > >::domain_t
inherited

Site_Set associated type.

Definition at line 109 of file core/internal/image_base.hh.

template<typename T>
typedef dpoint3d mln::image3d< T >::dpoint

Definition at line 139 of file core/image/image3d.hh.

typedef image3d< T > mln::Object< image3d< T > >::exact_t
inherited

Definition at line 105 of file object.hh.

template<typename T>
typedef box3d ::fwd_piter mln::image3d< T >::fwd_piter

Definition at line 140 of file core/image/image3d.hh.

template<typename T>
typedef T& mln::image3d< T >::lvalue

Return type of read-write access.

Definition at line 156 of file core/image/image3d.hh.

typedef fwd_piter mln::internal::image_base< T, box3d , image3d< T > >::piter
inherited

Site_Iterator associated type; default definition is fwd_piter.

Definition at line 127 of file core/internal/image_base.hh.

template<typename T>
typedef point3d mln::image3d< T >::point

Definition at line 138 of file core/image/image3d.hh.

template<typename T>
typedef box3d mln::image3d< T >::pset

Definition at line 136 of file core/image/image3d.hh.

template<typename T>
typedef point3d mln::image3d< T >::psite

Definition at line 137 of file core/image/image3d.hh.

template<typename T>
typedef const T& mln::image3d< T >::rvalue

Return type of read-only access.

Definition at line 153 of file core/image/image3d.hh.

typedef box3d ::site mln::internal::image_base< T, box3d , image3d< T > >::site
inherited

Site associated type.

Definition at line 115 of file core/internal/image_base.hh.

template<typename T>
typedef image3d< tag::value_<T> > mln::image3d< T >::skeleton

Skeleton.

Definition at line 160 of file core/image/image3d.hh.

template<typename T>
typedef internal::image_primary< T, box3d, image3d<T> > mln::image3d< T >::super_

Super type.

Definition at line 147 of file core/image/image3d.hh.

Eligible-value-set associated type.

Definition at line 95 of file core/internal/image_base.hh.

Value space associated type.

Definition at line 102 of file core/internal/image_base.hh.

template<typename T>
typedef T mln::image3d< T >::value

Value associated type.

Definition at line 150 of file core/image/image3d.hh.