cgv
Loading...
Searching...
No Matches
cgv::media::color_base< T, cm, am > Class Template Reference

minimal data interface for color used to implement conversion. More...

#include <color.h>

Public Types

typedef T component_type
 type of color components
 

Public Member Functions

 color_base ()
 standard constructor does not initialize components
 
template<typename T2 , ColorModel cm2, AlphaModel am2>
 color_base (const color_base< T2, cm2, am2 > &c2)
 copy constructor uses color conversion if necessary
 
T & at (unsigned int i)
 access to components
 
const T & at (unsigned int i) const
 const access to components
 
T & alpha ()
 return alpha component
 
const T & alpha () const
 return alpha component
 

Static Public Attributes

static const unsigned int nr_color_components = color_model_traits<cm>::nr_components
 static and const access to number of color components
 
static const unsigned int nr_alpha_components = alpha_model_traits<am>::nr_components
 static and const access to number of alpha components
 
static const unsigned int nr_components = nr_color_components + nr_alpha_components
 static and const access to total number of components
 

Protected Attributes

components [nr_components]
 

Detailed Description

template<typename T, ColorModel cm, AlphaModel am = NO_ALPHA>
class cgv::media::color_base< T, cm, am >

minimal data interface for color used to implement conversion.

Definition at line 50 of file color.h.

Member Typedef Documentation

◆ component_type

template<typename T , ColorModel cm, AlphaModel am = NO_ALPHA>
typedef T cgv::media::color_base< T, cm, am >::component_type

type of color components

Definition at line 60 of file color.h.

Constructor & Destructor Documentation

◆ color_base() [1/2]

template<typename T , ColorModel cm, AlphaModel am = NO_ALPHA>
cgv::media::color_base< T, cm, am >::color_base ( )
inline

standard constructor does not initialize components

Definition at line 62 of file color.h.

◆ color_base() [2/2]

template<typename T , ColorModel cm, AlphaModel am = NO_ALPHA>
template<typename T2 , ColorModel cm2, AlphaModel am2>
cgv::media::color_base< T, cm, am >::color_base ( const color_base< T2, cm2, am2 > &  c2)
inline

copy constructor uses color conversion if necessary

Definition at line 65 of file color.h.

Member Function Documentation

◆ alpha() [1/2]

template<typename T , ColorModel cm, AlphaModel am = NO_ALPHA>
T & cgv::media::color_base< T, cm, am >::alpha ( )
inline

return alpha component

Definition at line 73 of file color.h.

References cgv::media::color_base< T, cm, am >::nr_color_components.

◆ alpha() [2/2]

template<typename T , ColorModel cm, AlphaModel am = NO_ALPHA>
const T & cgv::media::color_base< T, cm, am >::alpha ( ) const
inline

return alpha component

Definition at line 75 of file color.h.

References cgv::media::color_base< T, cm, am >::nr_color_components.

◆ at() [1/2]

◆ at() [2/2]

template<typename T , ColorModel cm, AlphaModel am = NO_ALPHA>
const T & cgv::media::color_base< T, cm, am >::at ( unsigned int  i) const
inline

const access to components

Definition at line 71 of file color.h.

Member Data Documentation

◆ components

template<typename T , ColorModel cm, AlphaModel am = NO_ALPHA>
T cgv::media::color_base< T, cm, am >::components[nr_components]
protected

Definition at line 77 of file color.h.

◆ nr_alpha_components

template<typename T , ColorModel cm, AlphaModel am = NO_ALPHA>
const unsigned int cgv::media::color_base< T, cm, am >::nr_alpha_components = alpha_model_traits<am>::nr_components
static

static and const access to number of alpha components

Definition at line 56 of file color.h.

◆ nr_color_components

template<typename T , ColorModel cm, AlphaModel am = NO_ALPHA>
const unsigned int cgv::media::color_base< T, cm, am >::nr_color_components = color_model_traits<cm>::nr_components
static

static and const access to number of color components

Definition at line 54 of file color.h.

Referenced by cgv::media::color_base< T, cm, am >::alpha(), and cgv::media::color_base< T, cm, am >::alpha().

◆ nr_components

template<typename T , ColorModel cm, AlphaModel am = NO_ALPHA>
const unsigned int cgv::media::color_base< T, cm, am >::nr_components = nr_color_components + nr_alpha_components
static

static and const access to total number of components

Definition at line 58 of file color.h.


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