Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
SkColorSpaceXformColorFilter.h
Go to the documentation of this file.
1/*
2 * Copyright 2023 Google LLC
3 *
4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
6 */
7#ifndef SkColorSpaceXformColorFilter_DEFINED
8#define SkColorSpaceXformColorFilter_DEFINED
9
15
16class SkReadBuffer;
17class SkWriteBuffer;
18struct SkStageRec;
19
21public:
23
24 bool appendStages(const SkStageRec& rec, bool shaderIsOpaque) const override;
25
26 SkColorFilterBase::Type type() const override {
27 return SkColorFilterBase::Type::kColorSpaceXform;
28 }
29
30 sk_sp<SkColorSpace> src() const { return fSrc; }
31 sk_sp<SkColorSpace> dst() const { return fDst; }
32
33protected:
34 void flatten(SkWriteBuffer& buffer) const override;
35
36private:
37 friend void ::SkRegisterSkColorSpaceXformColorFilterFlattenable();
39 static sk_sp<SkFlattenable> LegacyGammaOnlyCreateProc(SkReadBuffer& buffer);
40
41 const sk_sp<SkColorSpace> fSrc;
42 const sk_sp<SkColorSpace> fDst;
44
45 friend class SkColorFilter;
47};
48
49#endif
#define SK_FLATTENABLE_HOOKS(type)
void flatten(SkWriteBuffer &buffer) const override
sk_sp< SkColorSpace > dst() const
bool appendStages(const SkStageRec &rec, bool shaderIsOpaque) const override
sk_sp< SkColorSpace > src() const
SkColorFilterBase::Type type() const override
static const uint8_t buffer[]