Flutter Engine
The Flutter Engine
|
#include "include/core/SkColor.h"
#include "include/core/SkColorType.h"
#include "include/core/SkData.h"
#include "include/core/SkPath.h"
#include "include/core/SkPathTypes.h"
#include "include/core/SkRefCnt.h"
#include "include/gpu/GrTypes.h"
#include "include/private/base/SkAssert.h"
#include "include/private/base/SkDebug.h"
#include "include/private/base/SkMacros.h"
#include "include/private/base/SkTypeTraits.h"
#include <cstddef>
#include <cstdint>
#include <functional>
#include <type_traits>
Go to the source code of this file.
Classes | |
struct | GrMipLevel |
class | GrColorFormatDesc |
Namespaces | |
namespace | skgpu |
Macros | |
#define | GrCapsDebugf(caps, ...) do {} while (0) |
Typedefs | |
using | GrVisitProxyFunc = std::function< void(GrSurfaceProxy *, skgpu::Mipmapped)> |
Variables | |
static constexpr int | kNumGrPrimitiveTypes = (int)GrPrimitiveType::kLineStrip + 1 |
static const int | kGrAATypeCount = static_cast<int>(GrAAType::kLast) + 1 |
static const int | kGrShaderTypeCount = kLast_GrShaderType + 1 |
static const int | kGrVertexAttribTypeCount = kLast_GrVertexAttribType + 1 |
static const int | kGrClipEdgeTypeCnt = (int) GrClipEdgeType::kLast + 1 |
static const constexpr int | kGrGpuBufferTypeCount = static_cast<int>(GrGpuBufferType::kUniform) + 1 |
static constexpr int | kGrInternalTextureFlagsMask |
static constexpr int | kGrInternalRenderTargetFlagsMask |
static constexpr int | kGrInternalTextureRenderTargetFlagsMask |
static const int | kGrColorTypeCnt = static_cast<int>(GrColorType::kLast) + 1 |
#define GrCapsDebugf | ( | caps, | |
... | |||
) | do {} while (0) |
Definition at line 490 of file GrTypesPriv.h.
using GrVisitProxyFunc = std::function<void(GrSurfaceProxy*, skgpu::Mipmapped)> |
Definition at line 943 of file GrTypesPriv.h.
|
strong |
Used to include or exclude specific GPU path renderers for testing purposes.
Enumerator | |
---|---|
kNone | |
kDashLine | |
kAtlas | |
kTessellation | |
kCoverageCounting | |
kAAHairline | |
kAAConvex | |
kAALinearizing | |
kSmall | |
kTriangulating | |
kDefault |
Definition at line 506 of file GrTypesPriv.h.
|
strong |
Used to control antialiasing in draw calls.
Enumerator | |
---|---|
kNo | |
kYes |
Definition at line 173 of file GrTypesPriv.h.
|
strong |
This enum indicates the type of antialiasing to be performed.
Enumerator | |
---|---|
kNone | No antialiasing |
kCoverage | Use fragment shader code to blend with a fractional pixel coverage. |
kMSAA | Use normal MSAA. |
kLast |
Definition at line 200 of file GrTypesPriv.h.
enum GrAccessPattern |
Provides a performance hint regarding the frequency at which a data store will be accessed.
Definition at line 424 of file GrTypesPriv.h.
|
strong |
Specifies if the holder owns the backend, OpenGL or Vulkan, object.
Enumerator | |
---|---|
kBorrowed | Holder does not destroy the backend object. |
kOwned | Holder destroys the backend object. |
Definition at line 496 of file GrTypesPriv.h.
|
strong |
Definition at line 100 of file GrTypesPriv.h.
|
strong |
Some pixel configs are inherently clamped to [0,1], some are allowed to go outside that range, and some are FP but manually clamped in the XP.
Enumerator | |
---|---|
kAuto | |
kManual | |
kNone |
Definition at line 228 of file GrTypesPriv.h.
|
strong |
We have coverage effects that clip rendering to the edge of some geometric primitive. This enum specifies how that clipping is performed. Not all factories that take a GrClipEdgeType will succeed with all values and it is up to the caller to verify success.
Enumerator | |
---|---|
kFillBW | |
kFillAA | |
kInverseFillBW | |
kInverseFillAA | |
kLast |
Definition at line 361 of file GrTypesPriv.h.
|
strong |
Like SkColorType this describes a layout of pixel data in CPU memory. It specifies the channels, their type, and width. This exists so that the GPU backend can have private types that have no analog in the public facing SkColorType enum and omit types not implemented in the GPU backend. It does not refer to a texture format and the mapping to texture formats may be many-to-many. It does not specify the sRGB encoding of the stored values. The components are listed in order of where they appear in memory. In other words the first component listed is in the low bits and the last component in the high bits.
Definition at line 540 of file GrTypesPriv.h.
|
strong |
Describes the encoding of channel data in a GrColorType.
Enumerator | |
---|---|
kUnorm | |
kSRGBUnorm | |
kFloat |
Definition at line 704 of file GrTypesPriv.h.
|
strong |
Enumerator | |
---|---|
kNo | |
kYes |
Definition at line 71 of file GrTypesPriv.h.
|
strong |
Enumerator | |
---|---|
kNone | |
kRequiresTextureBarrier | |
kAsInputAttachment |
Definition at line 936 of file GrTypesPriv.h.
|
strong |
Enumerator | |
---|---|
kNonzero | |
kEvenOdd |
Definition at line 178 of file GrTypesPriv.h.
|
strong |
Indicates the type of data that a GPU buffer will be used for.
Enumerator | |
---|---|
kVertex | |
kIndex | |
kDrawIndirect | |
kXferCpuToGpu | |
kXferGpuToCpu | |
kUniform |
Definition at line 411 of file GrTypesPriv.h.
|
strong |
Enumerator | |
---|---|
kNone | |
kReadOnly | |
kGLRTFBOIDIs0 | |
kRequiresManualMSAAResolve | |
kFramebufferOnly | |
kVkRTSupportsInputAttachment |
Definition at line 436 of file GrTypesPriv.h.
enum GrIOType |
Indicates the type of pending IO operations that can be recorded for gpu resources.
Enumerator | |
---|---|
kRead_GrIOType | |
kWrite_GrIOType | |
kRW_GrIOType |
Definition at line 402 of file GrTypesPriv.h.
|
strong |
This enum is used to specify the load operation to be used when an OpsTask/GrOpsRenderPass begins execution.
Enumerator | |
---|---|
kLoad | |
kClear | |
kDiscard |
Definition at line 155 of file GrTypesPriv.h.
|
strong |
Enumerator | |
---|---|
kNo | The texture will be allocated normally and will affect memory budgets. |
kYes | The texture will be not use GPU memory and will not affect memory budgets. |
Definition at line 123 of file GrTypesPriv.h.
|
strong |
Used to describe the current state of Mips on a GrTexture
Enumerator | |
---|---|
kNotAllocated | |
kDirty | |
kValid |
Definition at line 523 of file GrTypesPriv.h.
|
strong |
Enumerator | |
---|---|
kNo | |
kYes |
Definition at line 56 of file GrTypesPriv.h.
|
strong |
Geometric primitives used for drawing.
Enumerator | |
---|---|
kTriangles | |
kTriangleStrip | |
kPoints | |
kLines | |
kLineStrip |
Definition at line 43 of file GrTypesPriv.h.
|
strong |
A number of rectangle/quadrilateral drawing APIs can control anti-aliasing on a per edge basis. These masks specify which edges are AA'ed. The intent for this is to support tiling with seamless boundaries, where the inner edges are non-AA and the outer edges are AA. Regular rectangle draws simply use kAll or kNone depending on if they want anti-aliasing or not.
In APIs that support per-edge AA, GrQuadAAFlags is the only AA-control parameter that is provided (compared to the typical GrAA parameter). kNone is equivalent to GrAA::kNo, and any other set of edge flags would require GrAA::kYes (with rendering output dependent on how that maps to GrAAType for a given SurfaceDrawContext).
These values are identical to SkCanvas::QuadAAFlags.
Enumerator | |
---|---|
kLeft | |
kTop | |
kRight | |
kBottom | |
kNone | |
kAll |
Definition at line 247 of file GrTypesPriv.h.
|
strong |
Enumerator | |
---|---|
kDisabled | |
kEnabled |
Definition at line 115 of file GrTypesPriv.h.
|
strong |
Enumerator | |
---|---|
kWillSignal | |
kWillWait |
Definition at line 146 of file GrTypesPriv.h.
enum GrShaderFlags |
Enumerator | |
---|---|
kNone_GrShaderFlags | |
kVertex_GrShaderFlag | |
kFragment_GrShaderFlag |
Definition at line 284 of file GrTypesPriv.h.
enum GrShaderType |
Enumerator | |
---|---|
kVertex_GrShaderType | |
kFragment_GrShaderType | |
kLast_GrShaderType |
Definition at line 276 of file GrTypesPriv.h.
|
strong |
This enum is used to specify the store operation to be used when an OpsTask/GrOpsRenderPass ends execution.
Enumerator | |
---|---|
kStore | |
kDiscard |
Definition at line 165 of file GrTypesPriv.h.
|
strong |
Should a created surface be texturable?
Enumerator | |
---|---|
kNo | |
kYes |
Definition at line 64 of file GrTypesPriv.h.
|
strong |
The type of texture. Backends other than GL currently only use the 2D value but the type must still be known at the API-neutral layer as it used to determine whether MIP maps, renderability, and sampling parameters are legal for proxies that will be instantiated with wrapped textures.
Enumerator | |
---|---|
kNone | |
k2D | |
kRectangle | |
kExternal |
Definition at line 268 of file GrTypesPriv.h.
enum GrVertexAttribType |
Types used to describe format of vertices in arrays.
Definition at line 312 of file GrTypesPriv.h.
|
strong |
Enumerator | |
---|---|
kNo | The wrapped resource will be removed from the cache as soon as it becomes purgeable. It may still be assigned and found by a unique key, but the presence of the key will not be used to keep the resource alive when it has no references. |
kYes | The wrapped resource is allowed to remain in the GrResourceCache when it has no references but has a unique key. Such resources should only be given unique keys when it is known that the key will eventually be removed from the resource or invalidated via the message bus. |
Definition at line 85 of file GrTypesPriv.h.
enum GrWrapOwnership |
Ownership rules for external GPU resources imported into Skia.
Enumerator | |
---|---|
kBorrow_GrWrapOwnership | Skia will assume the client will keep the resource alive and Skia will not free it. |
kAdopt_GrWrapOwnership | Skia will assume ownership of the resource and free it. |
Definition at line 77 of file GrTypesPriv.h.
|
staticconstexpr |
Definition at line 212 of file GrTypesPriv.h.
|
staticconstexpr |
Definition at line 380 of file GrTypesPriv.h.
|
staticconstexpr |
Definition at line 371 of file GrTypesPriv.h.
|
staticconstexpr |
Definition at line 375 of file GrTypesPriv.h.
|
staticconstexpr |
Definition at line 896 of file GrTypesPriv.h.
|
staticconstexpr |
Definition at line 661 of file GrTypesPriv.h.
|
staticconstexpr |
Definition at line 868 of file GrTypesPriv.h.
|
staticconstexpr |
Definition at line 892 of file GrTypesPriv.h.
|
staticconstexpr |
Definition at line 888 of file GrTypesPriv.h.
|
staticconstexpr |
Definition at line 878 of file GrTypesPriv.h.
|
staticconstexpr |
Definition at line 589 of file GrTypesPriv.h.
|
inline |
Definition at line 183 of file GrTypesPriv.h.
|
inline |
Definition at line 195 of file GrTypesPriv.h.
|
staticconstexpr |
Definition at line 794 of file GrTypesPriv.h.
|
inlinestatic |
Definition at line 385 of file GrTypesPriv.h.
|
staticconstexpr |
Definition at line 52 of file GrTypesPriv.h.
|
inlinestaticconstexpr |
|
inlinestatic |
Rectangle and external textures only support the clamp wrap mode and do not support MIP maps.
Definition at line 294 of file GrTypesPriv.h.
|
staticconstexpr |
Definition at line 629 of file GrTypesPriv.h.
|
inlinestatic |
Definition at line 259 of file GrTypesPriv.h.
|
static |
Definition at line 210 of file GrTypesPriv.h.
|
static |
Definition at line 369 of file GrTypesPriv.h.
|
static |
Definition at line 587 of file GrTypesPriv.h.
|
staticconstexpr |
Definition at line 419 of file GrTypesPriv.h.
|
staticconstexpr |
Definition at line 478 of file GrTypesPriv.h.
|
staticconstexpr |
Definition at line 469 of file GrTypesPriv.h.
|
staticconstexpr |
Definition at line 483 of file GrTypesPriv.h.
|
static |
Definition at line 282 of file GrTypesPriv.h.
|
static |
Definition at line 352 of file GrTypesPriv.h.
|
staticconstexpr |
Definition at line 50 of file GrTypesPriv.h.