oln::image3d< T, Exact > Class Template Reference

#include <image3d.hh>

Inheritance diagram for oln::image3d< T, Exact >:

Inheritance graph
[legend]
Collaboration diagram for oln::image3d< T, Exact >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef image3d< T, Exact > self_type
typedef image_id< image3d<
T, Exact > >::value_type 
value_type
typedef image_id< image3d<
T, Exact > >::exact_type 
exact_type
typedef image_id< image3d<
T, Exact > >::impl_type 
impl_type
typedef image< image_id< image3d<
T, Exact > >::dim, value_type,
impl_type, exact_type > 
super_type

Public Member Functions

 image3d (coord nslices, coord nrows, coord ncols, coord border=2)
 Allocate memory to contain an image3d with ncols column, nrows rows, and nslices slices plus a border width equal to 2 by default.

 image3d (const image3d_size &size)
 Allocate memory to contain an image3d with a size equal to size.

 image3d (self_type &rhs)
 Build a new image3d by performing a shallow copy of rhs, the points are not duplicated, but shared between rhs and the new image.

 image3d (const io::internal::anything &r)
 Perform a shallow copy from r to the new image, the points are not duplicated, but shared between the two images.

image3doperator= (const io::internal::anything &r)
 Perform a shallow copy from rhs to the current image, the points are ot duplicated, but shared between the two images.

exact_type & operator= (self_type rhs)
 Perform a shallow copy from r to the current image, the points are not duplicated but shared between the two images.

 image3d (const self_type &rhs)

Static Public Member Functions

std::string name ()

Protected Member Functions

exact_type clone_ () const
 Return a deep copy of the current image.


Friends

class abstract::image< exact_type >

Detailed Description

template<class T, class Exact>
class oln::image3d< T, Exact >

To instantiate an image3d with oln::rgb_8 as value_type, one can write:
oln::image3d<ntg::rgb_8> t;

Definition at line 89 of file image3d.hh.


Member Typedef Documentation

template<class T, class Exact>
typedef image_id<image3d<T, Exact> >::impl_type oln::image3d< T, Exact >::impl_type
 

Underlying implementation.

Reimplemented from oln::image< Dim, T, Impl, Exact >.

Definition at line 101 of file image3d.hh.

template<class T, class Exact>
typedef image_id<image3d<T, Exact> >::value_type oln::image3d< T, Exact >::value_type
 

Prefer the macro oln_value_type(I) to retrieve the value_type of an image.

Reimplemented from oln::image< Dim, T, Impl, Exact >.

Definition at line 99 of file image3d.hh.


Constructor & Destructor Documentation

template<class T, class Exact>
oln::image3d< T, Exact >::image3d self_type &  rhs  )  [inline]
 

Build a new image3d by performing a shallow copy of rhs, the points are not duplicated, but shared between rhs and the new image.

See also:
abstract::image::clone()

Definition at line 146 of file image3d.hh.

00146                             :
00147       super_type(rhs)
00148     {
00149       mlc_init_static_hierarchy(Exact);
00150     }

template<class T, class Exact>
oln::image3d< T, Exact >::image3d const io::internal::anything r  )  [inline]
 

Perform a shallow copy from r to the new image, the points are not duplicated, but shared between the two images.

See also:
abstract::image::clone()

Definition at line 160 of file image3d.hh.

References oln::io::internal::anything::assign().

00160                                          : super_type()
00161     {
00162       mlc_init_static_hierarchy(Exact);
00163       r.assign(*this);
00164     }


Member Function Documentation

template<class T, class Exact>
exact_type& oln::image3d< T, Exact >::operator= self_type  rhs  )  [inline]
 

Perform a shallow copy from r to the current image, the points are not duplicated but shared between the two images.

See also:
abstract::image::clone()

Reimplemented from oln::abstract::image_with_impl< Impl, Exact >.

Definition at line 187 of file image3d.hh.

References oln::abstract::image_with_impl< Impl, Exact >::assign().

00188     {
00189       return this->exact().assign(rhs.exact());
00190     }

template<class T, class Exact>
image3d& oln::image3d< T, Exact >::operator= const io::internal::anything r  )  [inline]
 

Perform a shallow copy from rhs to the current image, the points are ot duplicated, but shared between the two images.

See also:
abstract::image::clone()

Definition at line 174 of file image3d.hh.

References oln::io::internal::anything::assign().

00175     {
00176       return r.assign(*this);
00177     }


The documentation for this class was generated from the following file:
Generated on Thu Apr 15 20:14:19 2004 for Olena by doxygen 1.3.6-20040222