Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
third_party
skia
src
shaders
gradients
SkLinearGradient.h
Go to the documentation of this file.
1
/*
2
* Copyright 2012 Google Inc.
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
8
#ifndef SkLinearGradient_DEFINED
9
#define SkLinearGradient_DEFINED
10
11
#include "
include/core/SkFlattenable.h
"
12
#include "
include/core/SkPoint.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
SkLinearGradient
final :
public
SkGradientBaseShader
{
22
public
:
23
SkLinearGradient
(
const
SkPoint
pts[2],
const
Descriptor
&);
24
25
GradientType
asGradient
(
GradientInfo
*
info
,
SkMatrix
* localMatrix)
const override
;
26
27
const
SkPoint
&
start
()
const
{
return
fStart; }
28
const
SkPoint
&
end
()
const
{
return
fEnd; }
29
protected
:
30
SkLinearGradient
(
SkReadBuffer
&
buffer
);
31
void
flatten
(
SkWriteBuffer
&
buffer
)
const override
;
32
33
void
appendGradientStages
(
SkArenaAlloc
* alloc,
SkRasterPipeline
* tPipeline,
34
SkRasterPipeline
* postPipeline)
const
final
;
35
36
private
:
37
friend
void ::SkRegisterLinearGradientShaderFlattenable();
38
SK_FLATTENABLE_HOOKS
(
SkLinearGradient
)
39
40
class
LinearGradient4fContext;
41
42
friend
class
SkGradientShader
;
43
using
INHERITED
=
SkGradientBaseShader
;
44
const
SkPoint
fStart;
45
const
SkPoint
fEnd;
46
};
47
48
#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
SkArenaAlloc
Definition
SkArenaAlloc.h:105
SkGradientBaseShader
Definition
SkGradientBaseShader.h:35
SkGradientShader
Definition
SkGradientShader.h:59
SkLinearGradient
Definition
SkLinearGradient.h:21
SkLinearGradient::start
const SkPoint & start() const
Definition
SkLinearGradient.h:27
SkLinearGradient::SkLinearGradient
SkLinearGradient(SkReadBuffer &buffer)
SkLinearGradient::flatten
void flatten(SkWriteBuffer &buffer) const override
Definition
SkLinearGradient.cpp:71
SkLinearGradient::appendGradientStages
void appendGradientStages(SkArenaAlloc *alloc, SkRasterPipeline *tPipeline, SkRasterPipeline *postPipeline) const final
Definition
SkLinearGradient.cpp:77
SkLinearGradient::asGradient
GradientType asGradient(GradientInfo *info, SkMatrix *localMatrix) const override
Definition
SkLinearGradient.cpp:82
SkLinearGradient::end
const SkPoint & end() const
Definition
SkLinearGradient.h:28
SkMatrix
Definition
SkMatrix.h:54
SkRasterPipeline
Definition
SkRasterPipeline.h:68
SkReadBuffer
Definition
SkReadBuffer.h:52
SkShaderBase::GradientType
GradientType
Definition
SkShaderBase.h:207
SkWriteBuffer
Definition
SkWriteBuffer.h:41
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