25 namespace FotoSHOCKcore {
41 enum Enum {value_ANY, value_SAME,
42 value_gray, value_RGB, value_CMY, value_CMYK, value_XYZ, value_Lab, value_YUV, value_HLS, value_HSV};
51 : m_ID(value_RGB), m_requiredBands(3), m_cmsFormatter(COLORSPACE_SH(PT_RGB)) {};
67 constexpr
operator Enum()
const {
return m_ID;};
78 constexpr cmsUInt32Number
cmsFormatter()
const {
return m_cmsFormatter;};
81 constexpr
ColorSpace(
const Enum v,
const unsigned int bands,
const cmsUInt32Number formatter)
82 : m_ID(v), m_requiredBands(bands), m_cmsFormatter(formatter) {}
85 unsigned int m_requiredBands;
86 cmsUInt32Number m_cmsFormatter;
101 static constexpr
ColorSpace gray =
ColorSpace(ColorSpace::value_gray, 1, COLORSPACE_SH(PT_GRAY));
104 static constexpr
ColorSpace CMYK =
ColorSpace(ColorSpace::value_CMYK, 4, COLORSPACE_SH(PT_CMYK));