Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | List of all members
SkBlendModeBlender Class Reference

#include <SkBlendModeBlender.h>

Inheritance diagram for SkBlendModeBlender:
SkBlenderBase SkBlender SkFlattenable SkRefCnt SkRefCntBase

Public Member Functions

 SkBlendModeBlender (SkBlendMode mode)
 
BlenderType type () const override
 
SkBlendMode mode () const
 
- Public Member Functions inherited from SkBlenderBase
bool affectsTransparentBlack () const
 
bool appendStages (const SkStageRec &rec) const
 
virtual SkRuntimeEffectasRuntimeEffect () const
 
SkFlattenable::Type getFlattenableType () const override
 
- Public Member Functions inherited from SkFlattenable
 SkFlattenable ()
 
virtual Factory getFactory () const =0
 
virtual const char * getTypeName () const =0
 
sk_sp< SkDataserialize (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
 

Private Member Functions

std::optional< SkBlendModeasBlendMode () const final
 
void flatten (SkWriteBuffer &buffer) const override
 
bool onAppendStages (const SkStageRec &rec) const override
 

Additional Inherited Members

- Public Types inherited from SkBlenderBase
enum class  BlenderType { M }
 
- 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 &)
 
- Static Public Member Functions inherited from SkBlenderBase
static SkFlattenable::Type GetFlattenableType ()
 
- Static Public Member Functions inherited from SkBlender
static sk_sp< SkBlenderMode (SkBlendMode mode)
 
- 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< SkFlattenableDeserialize (Type, const void *data, size_t length, const SkDeserialProcs *procs=nullptr)
 

Detailed Description

Definition at line 21 of file SkBlendModeBlender.h.

Constructor & Destructor Documentation

◆ SkBlendModeBlender()

SkBlendModeBlender::SkBlendModeBlender ( SkBlendMode  mode)
inline

Definition at line 23 of file SkBlendModeBlender.h.

23: fMode(mode) {}
SkBlendMode mode() const

Member Function Documentation

◆ asBlendMode()

std::optional< SkBlendMode > SkBlendModeBlender::asBlendMode ( ) const
inlinefinalprivatevirtual

Returns true if this SkBlender represents any SkBlendMode, and returns the blender's SkBlendMode in mode. Returns false for other types of blends.

Reimplemented from SkBlenderBase.

Definition at line 33 of file SkBlendModeBlender.h.

33{ return fMode; }

◆ flatten()

void SkBlendModeBlender::flatten ( SkWriteBuffer ) const
overrideprivatevirtual

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 70 of file SkBlendModeBlender.cpp.

70 {
71 buffer.writeInt((int)fMode);
72}
static const uint8_t buffer[]

◆ mode()

SkBlendMode SkBlendModeBlender::mode ( ) const
inline

Definition at line 26 of file SkBlendModeBlender.h.

26{ return fMode; }

◆ onAppendStages()

bool SkBlendModeBlender::onAppendStages ( const SkStageRec rec) const
overrideprivatevirtual

Implements SkBlenderBase.

Definition at line 74 of file SkBlendModeBlender.cpp.

74 {
76 return true;
77}
void SkBlendMode_AppendStages(SkBlendMode mode, SkRasterPipeline *p)
SkRasterPipeline * fPipeline

◆ type()

BlenderType SkBlendModeBlender::type ( ) const
inlineoverridevirtual

Implements SkBlenderBase.

Definition at line 25 of file SkBlendModeBlender.h.

25{ return BlenderType::kBlendMode; }

The documentation for this class was generated from the following files: