mln::value::rgb< n > Struct Template Reference

Color class for red-green-blue where every component is n-bit encoded. More...

#include <rgb.hh>

Inheritance diagram for mln::value::rgb< n >:

Inheritance graph

List of all members.

Public Types

typedef int_u< n > blue_t
typedef Value< void > category
typedef C enc
 Encoding associated type.
typedef V equiv
 Equivalent associated type.
typedef E exact_t
typedef int_u< n > green_t
typedef N interop
 Interoperation associated type.
typedef int_u< n > red_t

Public Member Functions

C & handle_ ()
 operator algebra::vec< 3, float > () const
 operator algebra::vec< 3, int > () const
rgb< n > & operator= (const rgb< n > &rhs)
 Assignment.
 rgb (const algebra::vec< 3, float > &rhs)
 rgb (const algebra::vec< 3, int_u< n > > &rhs)
 rgb (const algebra::vec< 3, unsigned > &rhs)
 rgb (const algebra::vec< 3, int > &rhs)
 Constructor from a algebra::vec.
 rgb (int r, int g, int b)
 Constructor from component values.
 rgb ()
 Constructor without argument.
const C & to_enc () const
 Explicit conversion towards encoding type.
to_equiv () const
 Explicit conversion towards equivalent type.
to_interop () const
 Explicit conversion towards interoperation type.
int_u< n > & blue ()
int_u< n > blue () const
int_u< n > & comp (unsigned k)
int_u< n > comp (unsigned k) const
int_u< n > & green ()
int_u< n > green () const
int_u< n > & red ()
int_u< n > red () const
 Acces to red/green/blue component.
 rgb (const mln::literal::olive_t &)
 rgb (const mln::literal::yellow_t &)
 rgb (const mln::literal::magenta_t &)
 rgb (const mln::literal::cyan_t &)
 rgb (const mln::literal::violet_t &)
 rgb (const mln::literal::teal_t &)
 rgb (const mln::literal::purple_t &)
 rgb (const mln::literal::pink_t &)
 rgb (const mln::literal::orange_t &)
 rgb (const mln::literal::lime_t &)
 rgb (const mln::literal::brown_t &)
 rgb (const mln::literal::green_t &)
 rgb (const mln::literal::blue_t &)
 rgb (const mln::literal::red_t &)
 rgb (const mln::literal::dark_gray_t &)
 rgb (const mln::literal::medium_gray_t &)
 rgb (const mln::literal::light_gray_t &)
 rgb (const mln::literal::black_t &)
 rgb (const mln::literal::white_t &)
 Constructors with literals.

Static Public Attributes

static const rgb< n > zero
 Zero value.

Protected Attributes

enc v_


Detailed Description

template<unsigned n>
struct mln::value::rgb< n >

Color class for red-green-blue where every component is n-bit encoded.

Definition at line 239 of file value/rgb.hh.


Member Typedef Documentation

template<unsigned n>
typedef int_u<n> mln::value::rgb< n >::blue_t

Definition at line 252 of file value/rgb.hh.

template<typename E>
typedef Value<void> mln::Value< E >::category [inherited]

Reimplemented from mln::Object< E >.

Reimplemented in mln::value::Data< E >, mln::value::Floating< E >, mln::value::Integer< E >, mln::value::Scalar< E >, mln::value::Structured< E >, mln::value::Symbolic< E >, mln::value::Floating< mln::value::float01 >, mln::value::Floating< mln::value::graylevel_f >, mln::value::Floating< mln::value::float01_< n > >, mln::value::Floating< mln::value::internal::gray_f >, mln::value::Floating< mln::value::float01_f >, mln::value::Integer< mln::value::int_s< n > >, mln::value::Integer< mln::value::int_u_sat< n > >, mln::value::Integer< mln::value::graylevel< n > >, mln::value::Integer< mln::util::object_id< edge_tag, unsigned > >, mln::value::Integer< mln::util::object_id< Tag, V > >, mln::value::Integer< mln::util::object_id< vertex_tag, unsigned > >, mln::value::Integer< mln::value::int_u< n > >, mln::value::Scalar< mln::value::int_s< n > >, mln::value::Scalar< mln::value::int_u_sat< n > >, mln::value::Scalar< mln::value::graylevel< n > >, mln::value::Scalar< mln::value::float01 >, mln::value::Scalar< mln::value::scalar_< T > >, mln::value::Scalar< mln::value::sign >, mln::value::Scalar< mln::value::internal::gray_< n > >, mln::value::Scalar< mln::util::object_id< edge_tag, unsigned > >, mln::value::Scalar< mln::value::graylevel_f >, mln::value::Scalar< mln::value::float01_< n > >, mln::value::Scalar< mln::util::object_id< Tag, V > >, mln::value::Scalar< mln::value::internal::gray_f >, mln::value::Scalar< mln::util::object_id< vertex_tag, unsigned > >, mln::value::Scalar< mln::value::float01_f >, mln::value::Scalar< mln::value::int_u< n > >, and mln::value::Symbolic< mln::value::label< n > >.

Definition at line 59 of file core/concept/value.hh.

template<typename V, typename C, typename N, typename E>
typedef C mln::value::internal::value_like_< V, C, N, E >::enc [inherited]

Encoding associated type.

Reimplemented in mln::value::internal::gray_< n >, and mln::value::label< n >.

Definition at line 60 of file value_like.hh.

template<typename V, typename C, typename N, typename E>
typedef V mln::value::internal::value_like_< V, C, N, E >::equiv [inherited]

Equivalent associated type.

Reimplemented in mln::value::internal::gray_< n >.

Definition at line 57 of file value_like.hh.

template<typename E>
typedef E mln::Object< E >::exact_t [inherited]

Definition at line 172 of file object.hh.

template<unsigned n>
typedef int_u<n> mln::value::rgb< n >::green_t

Definition at line 251 of file value/rgb.hh.

template<typename V, typename C, typename N, typename E>
typedef N mln::value::internal::value_like_< V, C, N, E >::interop [inherited]

Interoperation associated type.

Definition at line 63 of file value_like.hh.

template<unsigned n>
typedef int_u<n> mln::value::rgb< n >::red_t

Definition at line 250 of file value/rgb.hh.


Constructor & Destructor Documentation

template<unsigned n>
mln::value::rgb< n >::rgb (  )  [inline]

Constructor without argument.

Definition at line 413 of file value/rgb.hh.

template<unsigned n>
mln::value::rgb< n >::rgb ( int  r,
int  g,
int  b 
) [inline]

Constructor from component values.

Definition at line 449 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const algebra::vec< 3, int > &  rhs  )  [inline]

Constructor from a algebra::vec.

Definition at line 419 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const algebra::vec< 3, unsigned > &  rhs  )  [inline]

Definition at line 426 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const algebra::vec< 3, int_u< n > > &  rhs  )  [inline]

Definition at line 433 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const algebra::vec< 3, float > &  rhs  )  [inline]

Definition at line 440 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const mln::literal::white_t  )  [inline]

Constructors with literals.

Definition at line 464 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const mln::literal::black_t  )  [inline]

Definition at line 473 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const mln::literal::light_gray_t  )  [inline]

Definition at line 482 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const mln::literal::medium_gray_t  )  [inline]

Definition at line 491 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const mln::literal::dark_gray_t  )  [inline]

Definition at line 500 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const mln::literal::red_t  )  [inline]

Definition at line 509 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const mln::literal::blue_t  )  [inline]

Definition at line 527 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const mln::literal::green_t  )  [inline]

Definition at line 518 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const mln::literal::brown_t  )  [inline]

Definition at line 536 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const mln::literal::lime_t  )  [inline]

Definition at line 545 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const mln::literal::orange_t  )  [inline]

Definition at line 554 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const mln::literal::pink_t  )  [inline]

Definition at line 563 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const mln::literal::purple_t  )  [inline]

Definition at line 572 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const mln::literal::teal_t  )  [inline]

Definition at line 581 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const mln::literal::violet_t  )  [inline]

Definition at line 590 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const mln::literal::cyan_t  )  [inline]

Definition at line 599 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const mln::literal::magenta_t  )  [inline]

Definition at line 608 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const mln::literal::yellow_t  )  [inline]

Definition at line 617 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::rgb ( const mln::literal::olive_t  )  [inline]

Definition at line 626 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.


Member Function Documentation

template<unsigned n>
int_u<n>& mln::value::rgb< n >::blue (  )  [inline]

Definition at line 262 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
int_u<n> mln::value::rgb< n >::blue (  )  const [inline]

template<unsigned n>
int_u<n>& mln::value::rgb< n >::comp ( unsigned  k  )  [inline]

Definition at line 265 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
int_u<n> mln::value::rgb< n >::comp ( unsigned  k  )  const [inline]

template<unsigned n>
int_u<n>& mln::value::rgb< n >::green (  )  [inline]

Definition at line 259 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
int_u<n> mln::value::rgb< n >::green (  )  const [inline]

template<typename V, typename C, typename N, typename E>
C& mln::value::internal::value_like_< V, C, N, E >::handle_ (  )  [inline, inherited]

Definition at line 76 of file value_like.hh.

Referenced by mln::value::operator>>().

template<unsigned n>
mln::value::rgb< n >::operator algebra::vec< 3, float > (  )  const [inline]

Definition at line 283 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
mln::value::rgb< n >::operator algebra::vec< 3, int > (  )  const [inline]

Definition at line 281 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
rgb< n > & mln::value::rgb< n >::operator= ( const rgb< n > &  rhs  )  [inline]

Assignment.

Definition at line 636 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
int_u<n>& mln::value::rgb< n >::red (  )  [inline]

Definition at line 256 of file value/rgb.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<unsigned n>
int_u<n> mln::value::rgb< n >::red (  )  const [inline]

template<typename V, typename C, typename N, typename E>
const C & mln::value::internal::value_like_< V, C, N, E >::to_enc (  )  const [inline, inherited]

template<typename V, typename C, typename N, typename E>
V mln::value::internal::value_like_< V, C, N, E >::to_equiv (  )  const [inline, inherited]

Explicit conversion towards equivalent type.

Definition at line 102 of file value_like.hh.

References mln::value::internal::value_like_< V, C, N, E >::v_.

template<typename V, typename C, typename N, typename E>
N mln::value::internal::value_like_< V, C, N, E >::to_interop (  )  const [inline, inherited]

Explicit conversion towards interoperation type.

Definition at line 118 of file value_like.hh.

Referenced by mln::value::operator*(), mln::value::operator+(), mln::value::operator-(), and mln::value::operator/().


Member Data Documentation

template<typename V, typename C, typename N, typename E>
enc mln::value::internal::value_like_< V, C, N, E >::v_ [protected, inherited]

Definition at line 79 of file value_like.hh.

Referenced by mln::value::rgb< n >::blue(), mln::value::rgb< n >::comp(), mln::value::float01_< n >::float01_(), mln::value::float01_f::float01_f(), mln::value::internal::gray_< n >::gray_(), mln::value::internal::gray_f::gray_f(), mln::value::graylevel< n >::graylevel(), mln::value::graylevel_f::graylevel_f(), mln::value::rgb< n >::green(), mln::value::internal::value_like_< mln::value::float01_f, float01_f::enc, mln::value::internal::gray_f, mln::value::graylevel_f >::handle_(), mln::value::int_s< n >::int_s(), mln::value::int_u< n >::int_u(), mln::value::int_u_sat< n >::int_u_sat(), mln::algebra::quat::inv(), mln::algebra::quat::is_null(), mln::algebra::quat::is_pure(), mln::algebra::quat::is_unit(), mln::value::label< n >::label(), mln::value::label< n >::next(), mln::value::int_u< n >::next(), mln::value::rgb< n >::operator algebra::vec< 3, float >(), mln::value::rgb< n >::operator algebra::vec< 3, int >(), mln::algebra::quat::operator const algebra::vec< 4, float > &(), mln::value::float01_f::operator float(), mln::value::float01_< n >::operator float(), mln::value::internal::gray_f::operator gray_< m >(), mln::value::internal::gray_< n >::operator gray_< m >(), mln::value::internal::gray_f::operator graylevel< m >(), mln::value::internal::gray_< n >::operator graylevel< m >(), mln::value::internal::gray_f::operator graylevel_f(), mln::value::internal::gray_< n >::operator graylevel_f(), mln::value::int_u_sat< n >::operator int(), mln::value::int_u< n >::operator unsigned(), mln::value::label< n >::operator++(), mln::value::int_u_sat< n >::operator+=(), mln::value::int_u< n >::operator-(), mln::value::label< n >::operator--(), mln::value::int_u_sat< n >::operator-=(), mln::value::rgb< n >::operator=(), mln::algebra::quat::operator=(), mln::value::label< n >::operator=(), mln::value::int_u_sat< n >::operator=(), mln::value::int_u< n >::operator=(), mln::value::int_s< n >::operator=(), mln::value::graylevel_f::operator=(), mln::value::graylevel< n >::operator=(), mln::value::internal::gray_f::operator=(), mln::value::internal::gray_< n >::operator=(), mln::value::float01_f::operator=(), mln::value::float01_< n >::operator=(), mln::value::label< n >::prev(), mln::algebra::quat::quat(), mln::value::rgb< n >::red(), mln::value::rgb< n >::rgb(), mln::algebra::quat::s(), mln::value::float01_< n >::set_ind(), mln::algebra::quat::set_unit(), mln::algebra::quat::set_v(), mln::algebra::quat::sprod(), mln::value::internal::value_like_< V, C, N, E >::to_enc(), mln::value::internal::value_like_< V, C, N, E >::to_equiv(), mln::value::graylevel< n >::to_float(), mln::algebra::quat::to_vec(), mln::algebra::quat::v(), mln::value::graylevel_f::value(), mln::value::graylevel< n >::value(), mln::value::internal::gray_f::value(), mln::value::internal::gray_< n >::value(), mln::value::float01_f::value(), and mln::value::float01_< n >::value().

template<unsigned n>
const rgb< n > mln::value::rgb< n >::zero [inline, static]

Zero value.

Definition at line 313 of file value/rgb.hh.


Generated on Sun May 16 02:03:18 2010 for Milena (Olena) by  doxygen 1.5.6