Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
third_party
skia
src
shaders
gradients
SkSweepGradient.h
Go to the documentation of this file.
1
/*
2
* Copyright 2023 Google LLC
3
*
4
* Use of this source code is governed by a BSD-style license that can be
5
* found in the LICENSE file.
6
*/
7
#ifndef SkSweepGradientShader_DEFINED
8
#define SkSweepGradientShader_DEFINED
9
10
#include "
include/core/SkFlattenable.h
"
11
#include "
include/core/SkPoint.h
"
12
#include "
include/core/SkScalar.h
"
13
#include "
src/shaders/gradients/SkGradientBaseShader.h
"
14
15
class
SkArenaAlloc
;
16
class
SkMatrix
;
17
class
SkRasterPipeline
;
18
class
SkReadBuffer
;
19
class
SkWriteBuffer
;
20
21
class
SkSweepGradient
final :
public
SkGradientBaseShader
{
22
public
:
23
SkSweepGradient
(
const
SkPoint
&
center
,
SkScalar
t0,
SkScalar
t1,
const
Descriptor
&);
24
25
GradientType
asGradient
(
GradientInfo
*
info
,
SkMatrix
* localMatrix)
const override
;
26
27
const
SkPoint
&
center
()
const
{
return
fCenter; }
28
SkScalar
tBias
()
const
{
return
fTBias; }
29
SkScalar
tScale
()
const
{
return
fTScale; }
30
31
protected
:
32
void
flatten
(
SkWriteBuffer
&
buffer
)
const override
;
33
34
void
appendGradientStages
(
SkArenaAlloc
* alloc,
35
SkRasterPipeline
* tPipeline,
36
SkRasterPipeline
* postPipeline)
const override
;
37
38
private
:
39
friend
void ::SkRegisterSweepGradientShaderFlattenable();
40
SK_FLATTENABLE_HOOKS
(
SkSweepGradient
)
41
42
const
SkPoint
fCenter;
43
const
SkScalar
fTBias;
44
const
SkScalar
fTScale;
45
};
46
47
#endif
info
static void info(const char *fmt,...) SK_PRINTF_LIKE(1
Definition
DM.cpp:213
SkFlattenable.h
SK_FLATTENABLE_HOOKS
#define SK_FLATTENABLE_HOOKS(type)
Definition
SkFlattenable.h:108
SkGradientBaseShader.h
SkPoint.h
SkScalar.h
SkArenaAlloc
Definition
SkArenaAlloc.h:105
SkGradientBaseShader
Definition
SkGradientBaseShader.h:35
SkMatrix
Definition
SkMatrix.h:54
SkRasterPipeline
Definition
SkRasterPipeline.h:68
SkReadBuffer
Definition
SkReadBuffer.h:52
SkShaderBase::GradientType
GradientType
Definition
SkShaderBase.h:207
SkSweepGradient
Definition
SkSweepGradient.h:21
SkSweepGradient::flatten
void flatten(SkWriteBuffer &buffer) const override
Definition
SkSweepGradient.cpp:88
SkSweepGradient::asGradient
GradientType asGradient(GradientInfo *info, SkMatrix *localMatrix) const override
Definition
SkSweepGradient.cpp:45
SkSweepGradient::tBias
SkScalar tBias() const
Definition
SkSweepGradient.h:28
SkSweepGradient::tScale
SkScalar tScale() const
Definition
SkSweepGradient.h:29
SkSweepGradient::center
const SkPoint & center() const
Definition
SkSweepGradient.h:27
SkSweepGradient::appendGradientStages
void appendGradientStages(SkArenaAlloc *alloc, SkRasterPipeline *tPipeline, SkRasterPipeline *postPipeline) const override
Definition
SkSweepGradient.cpp:95
SkWriteBuffer
Definition
SkWriteBuffer.h:41
SkScalar
float SkScalar
Definition
extension.cpp:12
buffer
static const uint8_t buffer[]
Definition
fl_pixel_buffer_texture_test.cc:44
SkGradientBaseShader::Descriptor
Definition
SkGradientBaseShader.h:39
SkPoint
Definition
SkPoint_impl.h:163
SkShaderBase::GradientInfo
Definition
SkShaderBase.h:242
Generated on Fri Apr 26 2024 06:17:28 for Flutter Engine by
1.9.8