Flutter Engine
The Flutter Engine
|
#include <SkLocalMatrixShader.h>
Public Member Functions | |
SkLocalMatrixShader (sk_sp< SkShader > wrapped, const SkMatrix &localMatrix) | |
bool | isOpaque () const override |
bool | isConstant () const override |
GradientType | asGradient (GradientInfo *info, SkMatrix *localMatrix) const override |
ShaderType | type () const override |
sk_sp< SkShader > | makeAsALocalMatrixShader (SkMatrix *localMatrix) const override |
const SkMatrix & | localMatrix () const |
sk_sp< SkShader > | wrappedShader () const |
Public Member Functions inherited from SkShaderBase | |
~SkShaderBase () override | |
sk_sp< SkShader > | makeInvertAlpha () const |
sk_sp< SkShader > | makeWithCTM (const SkMatrix &) const |
virtual bool | isConstant () const |
virtual ShaderType | type () const =0 |
virtual GradientType | asGradient (GradientInfo *info=nullptr, SkMatrix *localMatrix=nullptr) const |
Context * | makeContext (const ContextRec &, SkArenaAlloc *) const |
bool | asLuminanceColor (SkColor4f *) const |
bool | appendRootStages (const SkStageRec &rec, const SkMatrix &ctm) const |
virtual bool | appendStages (const SkStageRec &, const SkShaders::MatrixRec &) const =0 |
virtual SkImage * | onIsAImage (SkMatrix *, SkTileMode[2]) const |
virtual SkRuntimeEffect * | asRuntimeEffect () const |
Type | getFlattenableType () const override |
virtual sk_sp< SkShader > | makeAsALocalMatrixShader (SkMatrix *localMatrix) const |
Public Member Functions inherited from SkShader | |
virtual bool | isOpaque () const |
SkImage * | isAImage (SkMatrix *localMatrix, SkTileMode xy[2]) const |
bool | isAImage () const |
sk_sp< SkShader > | makeWithLocalMatrix (const SkMatrix &) const |
sk_sp< SkShader > | makeWithColorFilter (sk_sp< SkColorFilter >) const |
sk_sp< SkShader > | makeWithWorkingColorSpace (sk_sp< SkColorSpace >) const |
Public Member Functions inherited from SkFlattenable | |
SkFlattenable () | |
virtual Factory | getFactory () const =0 |
virtual const char * | getTypeName () const =0 |
virtual void | flatten (SkWriteBuffer &) const |
virtual Type | getFlattenableType () const =0 |
sk_sp< SkData > | serialize (const SkSerialProcs *=nullptr) const |
size_t | serialize (void *memory, size_t memory_size, const SkSerialProcs *=nullptr) const |
Public Member Functions inherited from SkRefCntBase | |
SkRefCntBase () | |
virtual | ~SkRefCntBase () |
bool | unique () const |
void | ref () const |
void | unref () const |
Static Public Member Functions | |
template<typename T , typename... Args> | |
static std::enable_if_t< std::is_base_of_v< SkShader, T >, sk_sp< SkShader > > | MakeWrapped (const SkMatrix *localMatrix, Args &&... args) |
Static Public Member Functions inherited from SkShaderBase | |
static Type | GetFlattenableType () |
static sk_sp< SkShaderBase > | Deserialize (const void *data, size_t size, const SkDeserialProcs *procs=nullptr) |
static void | RegisterFlattenables () |
static SkMatrix | ConcatLocalMatrices (const SkMatrix &parentLM, const SkMatrix &childLM) |
Static Public Member Functions inherited from SkFlattenable | |
static Factory | NameToFactory (const char name[]) |
static const char * | FactoryToName (Factory) |
static void | Register (const char name[], Factory) |
static sk_sp< SkFlattenable > | Deserialize (Type, const void *data, size_t length, const SkDeserialProcs *procs=nullptr) |
Protected Member Functions | |
void | flatten (SkWriteBuffer &) const override |
SkImage * | onIsAImage (SkMatrix *matrix, SkTileMode *mode) const override |
bool | onAsLuminanceColor (SkColor4f *) const override |
bool | appendStages (const SkStageRec &, const SkShaders::MatrixRec &) const override |
Protected Member Functions inherited from SkShaderBase | |
SkShaderBase () | |
void | flatten (SkWriteBuffer &) const override |
virtual bool | onAsLuminanceColor (SkColor4f *) const |
Additional Inherited Members | |
Public Types inherited from SkShaderBase | |
enum class | ShaderType { M } |
enum class | GradientType { kNone , M } |
enum | Flags { kOpaqueAlpha_Flag = 1 << 0 } |
Public Types inherited from SkFlattenable | |
enum | Type { kSkColorFilter_Type , kSkBlender_Type , kSkDrawable_Type , kSkDrawLooper_Type , kSkImageFilter_Type , kSkMaskFilter_Type , kSkPathEffect_Type , kSkShader_Type } |
typedef sk_sp< SkFlattenable >(* | Factory) (SkReadBuffer &) |
Definition at line 29 of file SkLocalMatrixShader.h.
|
inline |
Definition at line 41 of file SkLocalMatrixShader.h.
|
overrideprotectedvirtual |
Adds stages to implement this shader. To ensure that the correct input coords are present in r,g MatrixRec::apply() must be called (unless the shader doesn't require it's input coords). The default impl creates shadercontext and calls that (not very efficient).
Implements SkShaderBase.
Definition at line 65 of file SkLocalMatrixShader.cpp.
|
overridevirtual |
Reimplemented from SkShaderBase.
Definition at line 20 of file SkLocalMatrixShader.cpp.
|
overrideprotectedvirtual |
Override this if your subclass needs to record data that it will need to recreate itself from its CreateProc (returned by getFactory()).
DEPRECATED public : will move to protected ... use serialize() instead
Reimplemented from SkFlattenable.
Definition at line 39 of file SkLocalMatrixShader.cpp.
|
overridevirtual |
Returns true if the shader is guaranteed to produce only a single color. Subclasses can override this to allow loop-hoisting optimization.
Reimplemented from SkShaderBase.
Definition at line 16 of file SkLocalMatrixShader.cpp.
|
inlineoverridevirtual |
Returns true if the shader is guaranteed to produce only opaque colors, subject to the SkPaint using the shader to apply an opaque alpha value. Subclasses should override this to allow some optimizations.
Reimplemented from SkShader.
Definition at line 44 of file SkLocalMatrixShader.h.
|
inline |
Definition at line 57 of file SkLocalMatrixShader.h.
|
inlineoverridevirtual |
DEPRECATED. skbug.com/8941 If this shader can be represented by another shader + a localMatrix, return that shader and the localMatrix. If not, return nullptr and ignore the localMatrix parameter.
Reimplemented from SkShaderBase.
Definition at line 50 of file SkLocalMatrixShader.h.
|
inlinestatic |
Definition at line 33 of file SkLocalMatrixShader.h.
|
overrideprotectedvirtual |
Reimplemented from SkShaderBase.
Definition at line 61 of file SkLocalMatrixShader.cpp.
|
overrideprotected |
Definition at line 51 of file SkLocalMatrixShader.cpp.
|
inlineoverridevirtual |
Implements SkShaderBase.
Definition at line 48 of file SkLocalMatrixShader.h.
Definition at line 58 of file SkLocalMatrixShader.h.