Flutter Engine
The Flutter Engine
|
#include <GrPorterDuffXferProcessor.h>
Static Public Member Functions | |
static const GrXPFactory * | Get (SkBlendMode blendMode) |
static sk_sp< const GrXferProcessor > | MakeSrcOverXferProcessor (const GrProcessorAnalysisColor &, GrProcessorAnalysisCoverage, const GrCaps &) |
static sk_sp< const GrXferProcessor > | MakeNoCoverageXP (SkBlendMode) |
static const GrXferProcessor & | SimpleSrcOverXP () |
static AnalysisProperties | SrcOverAnalysisProperties (const GrProcessorAnalysisColor &, const GrProcessorAnalysisCoverage &, const GrCaps &, GrClampType) |
Static Public Member Functions inherited from GrXPFactory | |
static sk_sp< const GrXferProcessor > | MakeXferProcessor (const GrXPFactory *, const GrProcessorAnalysisColor &, GrProcessorAnalysisCoverage, const GrCaps &caps, GrClampType) |
static AnalysisProperties | GetAnalysisProperties (const GrXPFactory *, const GrProcessorAnalysisColor &, const GrProcessorAnalysisCoverage &, const GrCaps &, GrClampType) |
static const GrXPFactory * | FromBlendMode (SkBlendMode) |
Private Member Functions | |
sk_sp< const GrXferProcessor > | makeXferProcessor (const GrProcessorAnalysisColor &, GrProcessorAnalysisCoverage, const GrCaps &, GrClampType) const override |
AnalysisProperties | analysisProperties (const GrProcessorAnalysisColor &, const GrProcessorAnalysisCoverage &, const GrCaps &, GrClampType) const override |
Friends | |
class | GrPorterDuffTest |
Additional Inherited Members | |
Public Types inherited from GrXPFactory | |
enum class | AnalysisProperties : unsigned { kNone = 0x0 , kReadsDstInShader = 0x1 , kCompatibleWithCoverageAsAlpha = 0x2 , kIgnoresInputColor = 0x4 , kRequiresDstTexture = 0x10 , kRequiresNonOverlappingDraws = 0x20 , kUsesNonCoherentHWBlending = 0x40 , kUnaffectedByDstValue = 0x80 } |
Public Member Functions inherited from GrXPFactory | |
GR_DECL_BITFIELD_CLASS_OPS_FRIENDS (AnalysisProperties) | |
Protected Member Functions inherited from GrXPFactory | |
constexpr | GrXPFactory () |
Definition at line 29 of file GrPorterDuffXferProcessor.h.
|
overrideprivatevirtual |
Subclass analysis implementation. This should not return kNeedsDstInTexture as that will be inferred by the base class based on kReadsDstInShader and the caps.
Implements GrXPFactory.
Definition at line 460 of file GrPorterDuffXferProcessor.cpp.
|
static |
Definition at line 309 of file GrPorterDuffXferProcessor.cpp.
|
static |
Returns a simple non-LCD porter duff blend XP with no optimizations or coverage.
Definition at line 547 of file GrPorterDuffXferProcessor.cpp.
|
static |
Because src-over is so common we special case it for performance reasons. If this returns null then the SimpleSrcOverXP() below should be used.
color.isOpaque() ||
Definition at line 500 of file GrPorterDuffXferProcessor.cpp.
|
overrideprivatevirtual |
Implements GrXPFactory.
Definition at line 364 of file GrPorterDuffXferProcessor.cpp.
|
static |
This XP implements non-LCD src-over using hw blend with no optimizations. It is returned by reference because it is global and its ref-cnting methods are not thread safe.
Definition at line 492 of file GrPorterDuffXferProcessor.cpp.
|
static |
Definition at line 552 of file GrPorterDuffXferProcessor.cpp.
|
friend |
Definition at line 69 of file GrPorterDuffXferProcessor.h.