8#ifndef SkColorSpace_DEFINED
9#define SkColorSpace_DEFINED
46 { 2.4f, (
float)(1/1.055), (
float)(0.055/1.055), (
float)(1/12.92), 0.04045f, 0.0f, 0.0f };
49 { 2.2f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f };
52 { 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f };
55 {2.22222f, 0.909672f, 0.0903276f, 0.222222f, 0.0812429f, 0, 0};
58 {-2.0f, -107/128.0f, 1.0f, 32/2523.0f, 2413/128.0f, -2392/128.0f, 8192/1305.0f };
61 {-3.0f, 2.0f, 2.0f, 1/0.17883277f, 0.28466892f, 0.55991073f, 0.0f };
88 { 0.515102f, 0.291965f, 0.157153f },
89 { 0.241182f, 0.692236f, 0.0665819f },
90 { -0.00104941f, 0.0418818f, 0.784378f },
94 { 0.673459f, 0.165661f, 0.125100f },
95 { 0.279033f, 0.675338f, 0.0456288f },
96 { -0.00193139f, 0.0299794f, 0.797162f },
100 { 1.0f, 0.0f, 0.0f },
101 { 0.0f, 1.0f, 0.0f },
102 { 0.0f, 0.0f, 1.0f },
138 bool gammaCloseToSRGB()
const;
143 bool gammaIsLinear()
const;
206 size_t writeToMemory(
void* memory)
const;
216 void transferFn(
float gabcdef[7])
const;
222 uint64_t
hash()
const {
return (uint64_t)fTransferFnHash << 32 | fToXYZD50Hash; }
229 void computeLazyDstFields()
const;
231 uint32_t fTransferFnHash;
232 uint32_t fToXYZD50Hash;
239 mutable SkOnce fLazyDstFieldsOnce;
#define SkFixedToFloat(x)
uint32_t toXYZD50Hash() const
uint32_t transferFnHash() const
SK_API sk_sp< SkDocument > Make(SkWStream *dst, const SkSerialProcs *=nullptr, std::function< void(const SkPicture *)> onEndPage=nullptr)
static constexpr skcms_Matrix3x3 kSRGB
static constexpr skcms_Matrix3x3 kAdobeRGB
static constexpr skcms_Matrix3x3 kXYZ
static constexpr skcms_Matrix3x3 kRec2020
static constexpr skcms_Matrix3x3 kDisplayP3
static constexpr skcms_TransferFunction kRec2020
static constexpr skcms_TransferFunction k2Dot2
static constexpr skcms_TransferFunction kSRGB
static constexpr skcms_TransferFunction kHLG
static constexpr skcms_TransferFunction kPQ
static constexpr skcms_TransferFunction kLinear
bool Equals(const T *a, const T *b)
std::shared_ptr< const fml::Mapping > data