#include <SkMatrixColorFilter.h>
Definition at line 20 of file SkMatrixColorFilter.h.
◆ Domain
◆ SkMatrixColorFilter()
SkMatrixColorFilter::SkMatrixColorFilter |
( |
const float |
array[20], |
|
|
Domain |
domain |
|
) |
| |
|
explicit |
Definition at line 34 of file SkMatrixColorFilter.cpp.
36 memcpy(fMatrix, array, 20 * sizeof(float));
37}
static bool is_alpha_unchanged(const float matrix[20])
◆ appendStages()
bool SkMatrixColorFilter::appendStages |
( |
const SkStageRec & |
rec, |
|
|
bool |
shaderIsOpaque |
|
) |
| const |
|
overridevirtual |
Implements SkColorFilterBase.
Definition at line 64 of file SkMatrixColorFilter.cpp.
64 {
65 const bool willStayOpaque = shaderIsOpaque && fAlphaIsUnchanged,
67
69 if (!shaderIsOpaque) {
70 p->append(SkRasterPipelineOp::unpremul);
71 }
72 if (hsla) {
74 }
75 if (true) {
76 p->append(SkRasterPipelineOp::matrix_4x5, fMatrix);
77 }
78 if (hsla) {
80 }
81 if (true) {
82 p->append(SkRasterPipelineOp::clamp_01);
83 }
84 if (!willStayOpaque) {
86 }
87 return true;
88}
static uint32_t premul(uint32_t color)
static std::unique_ptr< GrFragmentProcessor > hsl_to_rgb(std::unique_ptr< GrFragmentProcessor > child)
static std::unique_ptr< GrFragmentProcessor > rgb_to_hsl(std::unique_ptr< GrFragmentProcessor > child)
SkRasterPipeline * fPipeline
◆ domain()
Domain SkMatrixColorFilter::domain |
( |
| ) |
const |
|
inline |
◆ matrix()
const float * SkMatrixColorFilter::matrix |
( |
| ) |
const |
|
inline |
◆ onIsAlphaUnchanged()
bool SkMatrixColorFilter::onIsAlphaUnchanged |
( |
| ) |
const |
|
inlineoverridevirtual |
Returns the flags for this filter. Override in subclasses to return custom flags.
Reimplemented from SkColorFilterBase.
Definition at line 28 of file SkMatrixColorFilter.h.
28{ return fAlphaIsUnchanged; }
◆ type()
The documentation for this class was generated from the following files: