1 #ifndef color_yuv_category
2 #define color_yuv_category
3 // ::color::category::yuv<tag,reference>
4 
5 
6 
7 #include "./constant/reference.hpp"
8 
9 
10 namespace color
11  {
12   namespace category
13    {
14 
15     template< typename tag_name, ::color::constant::yuv::reference_enum reference_number >
16      struct yuv
17       {
18        typedef tag_name tag_type;
19       };
20 
21     template< ::color::constant::yuv::reference_enum reference_number > using yuv_uint8   = ::color::category::yuv< std::uint8_t , reference_number >;
22     template< ::color::constant::yuv::reference_enum reference_number > using yuv_uint16  = ::color::category::yuv< std::uint16_t, reference_number >;
23   //template< ::color::constant::yuv::reference_enum reference_number > using yuv_uint24  = ::color::category::yuv< std::uint24_t, reference_number >;
24     template< ::color::constant::yuv::reference_enum reference_number > using yuv_uint32  = ::color::category::yuv< std::uint32_t, reference_number >;
25   //template< ::color::constant::yuv::reference_enum reference_number > using yuv_uint48  = ::color::category::yuv< std::uint48_t, reference_number >;
26     template< ::color::constant::yuv::reference_enum reference_number > using yuv_uint64  = ::color::category::yuv< std::uint64_t, reference_number >;
27     template< ::color::constant::yuv::reference_enum reference_number > using yuv_float   = ::color::category::yuv< float        , reference_number >;
28     template< ::color::constant::yuv::reference_enum reference_number > using yuv_double  = ::color::category::yuv< double       , reference_number >;
29     template< ::color::constant::yuv::reference_enum reference_number > using yuv_ldouble = ::color::category::yuv< long double  , reference_number >;
30 
31    }
32  }
33 
34 #endif
35