#include "include/core/SkColorSpace.h"
#include "include/core/SkData.h"
#include "include/private/base/SkTemplates.h"
#include "modules/skcms/skcms.h"
#include "src/core/SkChecksum.h"
#include "src/core/SkColorSpacePriv.h"
#include <cmath>
#include <cstring>
bool SkColorSpacePrimaries::toXYZD50(skcms_Matrix3x3* toXYZ_D50) const { … }
SkColorSpace::SkColorSpace(const skcms_TransferFunction& transferFn,
const skcms_Matrix3x3& toXYZD50)
: … { … }
static bool xyz_almost_equal(const skcms_Matrix3x3& mA, const skcms_Matrix3x3& mB) { … }
sk_sp<SkColorSpace> SkColorSpace::MakeRGB(const skcms_TransferFunction& transferFn,
const skcms_Matrix3x3& toXYZ) { … }
class SkColorSpaceSingletonFactory { … };
SkColorSpace* sk_srgb_singleton() { … }
SkColorSpace* sk_srgb_linear_singleton() { … }
sk_sp<SkColorSpace> SkColorSpace::MakeSRGB() { … }
sk_sp<SkColorSpace> SkColorSpace::MakeSRGBLinear() { … }
void SkColorSpace::computeLazyDstFields() const { … }
bool SkColorSpace::isNumericalTransferFn(skcms_TransferFunction* coeffs) const { … }
void SkColorSpace::transferFn(float gabcdef[7]) const { … }
void SkColorSpace::transferFn(skcms_TransferFunction* fn) const { … }
void SkColorSpace::invTransferFn(skcms_TransferFunction* fn) const { … }
bool SkColorSpace::toXYZD50(skcms_Matrix3x3* toXYZD50) const { … }
void SkColorSpace::gamutTransformTo(const SkColorSpace* dst, skcms_Matrix3x3* src_to_dst) const { … }
bool SkColorSpace::isSRGB() const { … }
bool SkColorSpace::gammaCloseToSRGB() const { … }
bool SkColorSpace::gammaIsLinear() const { … }
sk_sp<SkColorSpace> SkColorSpace::makeLinearGamma() const { … }
sk_sp<SkColorSpace> SkColorSpace::makeSRGBGamma() const { … }
sk_sp<SkColorSpace> SkColorSpace::makeColorSpin() const { … }
void SkColorSpace::toProfile(skcms_ICCProfile* profile) const { … }
sk_sp<SkColorSpace> SkColorSpace::Make(const skcms_ICCProfile& profile) { … }
enum Version { … };
struct ColorSpaceHeader { … };
size_t SkColorSpace::writeToMemory(void* memory) const { … }
sk_sp<SkData> SkColorSpace::serialize() const { … }
sk_sp<SkColorSpace> SkColorSpace::Deserialize(const void* data, size_t length) { … }
bool SkColorSpace::Equals(const SkColorSpace* x, const SkColorSpace* y) { … }