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

#include <image2d.hh>

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

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

Collaboration graph
[legend]
List of all members.

Public Types

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

Public Member Functions

 image2d ()
 image2d (coord nrows, coord ncols, coord border=2)
 Allocate memory to contain an image2d with ncols column and nrows rows plus a border width equal to 2 by default.
 image2d (const image2d_size &size)
 Allocate memory to contain an image2d with a size equal to size.
 image2d (self_type &rhs)
 Build a new image2d by performing a shallow copy of rhs, the points are not duplicated, but shared between rhs and the new image.
 image2d (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.
image2doperator= (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_typeoperator= (self_type rhs)
 Perform a shallow copy from r to the current image, the points are not duplicated but shared between the two images.
 image2d (const self_type &rhs)

Static Public Member Functions

static std::string name ()

Protected Member Functions

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

Friends

class abstract::image< exact_type >

Classes

struct  mute
 Define ret equal to image2d<U>. More...

Detailed Description

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

To instantiate an image2d with oln::rgb_8 as value_type, one can write:
oln::image2d<ntg::rgb_8> t = load("img.ppm");

Definition at line 89 of file image2d.hh.


Member Typedef Documentation

template<class T, class Exact>
typedef image_id<image2d<T, Exact> >::value_type oln::image2d< 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 image2d.hh.

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

Underlying implementation.

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

Definition at line 101 of file image2d.hh.


Constructor & Destructor Documentation

template<class T, class Exact>
oln::image2d< T, Exact >::image2d ( self_type rhs  )  [inline]

Build a new image2d 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 147 of file image2d.hh.

00147                             : // shallow copy
00148       super_type(rhs)
00149     {
00150       mlc_init_static_hierarchy(Exact);
00151     }

template<class T, class Exact>
oln::image2d< T, Exact >::image2d ( 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 161 of file image2d.hh.

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


Member Function Documentation

template<class T, class Exact>
image2d& oln::image2d< 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 176 of file image2d.hh.

00177     {
00178       return r.assign(*this);
00179     }

template<class T, class Exact>
exact_type& oln::image2d< 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 189 of file image2d.hh.

00190     {
00191       return this->exact().assign(rhs.exact());
00192     }


The documentation for this class was generated from the following file:
Generated on Tue Feb 20 20:24:13 2007 for Olena by  doxygen 1.5.1