Flutter Engine
The Flutter Engine
|
#include <GrColorSpaceXform.h>
Public Member Functions | |
const char * | name () const override |
std::unique_ptr< GrFragmentProcessor > | clone () const override |
const GrColorSpaceXform * | colorXform () const |
Public Member Functions inherited from GrFragmentProcessor | |
const GrFragmentProcessor * | parent () const |
std::unique_ptr< ProgramImpl > | makeProgramImpl () const |
void | addToKey (const GrShaderCaps &caps, skgpu::KeyBuilder *b) const |
int | numChildProcessors () const |
int | numNonNullChildProcessors () const |
GrFragmentProcessor * | childProcessor (int index) |
const GrFragmentProcessor * | childProcessor (int index) const |
SkDEBUGCODE (bool isInstantiated() const ;) bool willReadDstColor() const | |
bool | isBlendFunction () const |
bool | usesSampleCoordsDirectly () const |
bool | usesSampleCoords () const |
const SkSL::SampleUsage & | sampleUsage () const |
bool | compatibleWithCoverageAsAlpha () const |
bool | preservesOpaqueInput () const |
bool | hasConstantOutputForConstantInput (SkPMColor4f inputColor, SkPMColor4f *outputColor) const |
bool | hasConstantOutputForConstantInput () const |
void | clearConstantOutputForConstantInputFlag () |
bool | isEqual (const GrFragmentProcessor &that) const |
void | visitProxies (const GrVisitProxyFunc &) const |
void | visitTextureEffects (const std::function< void(const GrTextureEffect &)> &) const |
void | visitWithImpls (const std::function< void(const GrFragmentProcessor &, ProgramImpl &)> &, ProgramImpl &) const |
GrTextureEffect * | asTextureEffect () |
const GrTextureEffect * | asTextureEffect () const |
Public Member Functions inherited from GrProcessor | |
virtual | ~GrProcessor ()=default |
void * | operator new (size_t size) |
void * | operator new (size_t object_size, size_t footer_size) |
void | operator delete (void *target) |
void * | operator new (size_t size, void *placement) |
void | operator delete (void *target, void *placement) |
template<typename T > | |
const T & | cast () const |
ClassID | classID () const |
Static Public Member Functions | |
static std::unique_ptr< GrFragmentProcessor > | Make (std::unique_ptr< GrFragmentProcessor > child, SkColorSpace *src, SkAlphaType srcAT, SkColorSpace *dst, SkAlphaType dstAT) |
static std::unique_ptr< GrFragmentProcessor > | Make (std::unique_ptr< GrFragmentProcessor > child, const GrColorInfo &srcInfo, const GrColorInfo &dstInfo) |
static std::unique_ptr< GrFragmentProcessor > | Make (std::unique_ptr< GrFragmentProcessor > child, sk_sp< GrColorSpaceXform > colorXform) |
Static Public Member Functions inherited from GrFragmentProcessor | |
static std::unique_ptr< GrFragmentProcessor > | MakeColor (SkPMColor4f color) |
static std::unique_ptr< GrFragmentProcessor > | MulInputByChildAlpha (std::unique_ptr< GrFragmentProcessor > child) |
static std::unique_ptr< GrFragmentProcessor > | ApplyPaintAlpha (std::unique_ptr< GrFragmentProcessor > child) |
static std::unique_ptr< GrFragmentProcessor > | ModulateRGBA (std::unique_ptr< GrFragmentProcessor > child, const SkPMColor4f &color) |
static std::unique_ptr< GrFragmentProcessor > | OverrideInput (std::unique_ptr< GrFragmentProcessor >, const SkPMColor4f &) |
static std::unique_ptr< GrFragmentProcessor > | DisableCoverageAsAlpha (std::unique_ptr< GrFragmentProcessor >) |
static std::unique_ptr< GrFragmentProcessor > | DestColor () |
static std::unique_ptr< GrFragmentProcessor > | SwizzleOutput (std::unique_ptr< GrFragmentProcessor >, const skgpu::Swizzle &) |
static std::unique_ptr< GrFragmentProcessor > | ClampOutput (std::unique_ptr< GrFragmentProcessor >) |
static std::unique_ptr< GrFragmentProcessor > | Compose (std::unique_ptr< GrFragmentProcessor > f, std::unique_ptr< GrFragmentProcessor > g) |
static std::unique_ptr< GrFragmentProcessor > | ColorMatrix (std::unique_ptr< GrFragmentProcessor > child, const float matrix[20], bool unpremulInput, bool clampRGBOutput, bool premulOutput) |
static std::unique_ptr< GrFragmentProcessor > | SurfaceColor () |
static std::unique_ptr< GrFragmentProcessor > | DeviceSpace (std::unique_ptr< GrFragmentProcessor >) |
static std::unique_ptr< GrFragmentProcessor > | Rect (std::unique_ptr< GrFragmentProcessor >, GrClipEdgeType, SkRect) |
static GrFPResult | Circle (std::unique_ptr< GrFragmentProcessor >, GrClipEdgeType, SkPoint center, float radius) |
static GrFPResult | Ellipse (std::unique_ptr< GrFragmentProcessor >, GrClipEdgeType, SkPoint center, SkPoint radii, const GrShaderCaps &) |
static std::unique_ptr< GrFragmentProcessor > | HighPrecision (std::unique_ptr< GrFragmentProcessor >) |
Private Member Functions | |
SkPMColor4f | constantOutputForConstantInput (const SkPMColor4f &input) const override |
std::unique_ptr< ProgramImpl > | onMakeProgramImpl () const override |
void | onAddToKey (const GrShaderCaps &, skgpu::KeyBuilder *) const override |
bool | onIsEqual (const GrFragmentProcessor &) const override |
Definition at line 57 of file GrColorSpaceXform.h.
|
overridevirtual |
Makes a copy of this fragment processor that draws equivalently to the original. If the processor has child processors they are cloned as well.
Implements GrFragmentProcessor.
Definition at line 101 of file GrColorSpaceXform.cpp.
|
inline |
Definition at line 81 of file GrColorSpaceXform.h.
|
overrideprivatevirtual |
Reimplemented from GrFragmentProcessor.
Definition at line 153 of file GrColorSpaceXform.cpp.
|
static |
Definition at line 166 of file GrColorSpaceXform.cpp.
|
static |
Returns a fragment processor that calls the passed in FP and then converts it with the given color xform. If the child is null, fInputColor is used. Returns child as-is if the xform is null (i.e. a no-op).
Definition at line 173 of file GrColorSpaceXform.cpp.
|
static |
Returns a fragment processor that calls the passed in fragment processor, and then converts the color space of the output from src to dst. If the child is null, fInputColor is used.
Definition at line 159 of file GrColorSpaceXform.cpp.
|
inlineoverridevirtual |
Human-meaningful string to identify this processor; may be embedded in generated shader code and must be a legal SkSL identifier prefix.
Implements GrProcessor.
Definition at line 78 of file GrColorSpaceXform.h.
|
overrideprivatevirtual |
Implements GrFragmentProcessor.
Definition at line 110 of file GrColorSpaceXform.cpp.
|
overrideprivatevirtual |
Subclass implements this to support isEqual(). It will only be called if it is known that the two processors are of the same subclass (i.e. have the same ClassID).
Implements GrFragmentProcessor.
Definition at line 105 of file GrColorSpaceXform.cpp.
|
overrideprivatevirtual |
Returns a new instance of the appropriate ProgramImpl subclass for the given GrFragmentProcessor. It will emit the appropriate code and live with the cached program to setup uniform data for each draw that uses the program.
Implements GrFragmentProcessor.
Definition at line 115 of file GrColorSpaceXform.cpp.