Flutter Engine Uber Docs
Docs for the entire Flutter Engine repo.
 
Loading...
Searching...
No Matches
flutter::gpu Namespace Reference

Classes

class  CommandBuffer
 
class  Context
 
class  DeviceBuffer
 
class  RenderPass
 
class  RenderPipeline
 
class  Shader
 An immutable collection of shaders loaded from a shader bundle asset. More...
 
class  ShaderLibrary
 An immutable collection of shaders loaded from a shader bundle asset. More...
 
class  Texture
 

Enumerations

enum class  FlutterGPUStorageMode {
  kHostVisible ,
  kDevicePrivate ,
  kDeviceTransient
}
 
enum class  FlutterGPUPixelFormat {
  kUnknown ,
  kA8UNormInt ,
  kR8UNormInt ,
  kR8G8UNormInt ,
  kR8G8B8A8UNormInt ,
  kR8G8B8A8UNormIntSRGB ,
  kB8G8R8A8UNormInt ,
  kB8G8R8A8UNormIntSRGB ,
  kR32G32B32A32Float ,
  kR16G16B16A16Float ,
  kB10G10R10XR ,
  kB10G10R10XRSRGB ,
  kB10G10R10A10XR ,
  kS8UInt ,
  kD24UnormS8Uint ,
  kD32FloatS8UInt
}
 
enum class  FlutterGPUTextureCoordinateSystem {
  kUploadFromHost ,
  kRenderToTexture
}
 
enum class  FlutterGPUBlendFactor {
  kZero ,
  kOne ,
  kSourceColor ,
  kOneMinusSourceColor ,
  kSourceAlpha ,
  kOneMinusSourceAlpha ,
  kDestinationColor ,
  kOneMinusDestinationColor ,
  kDestinationAlpha ,
  kOneMinusDestinationAlpha ,
  kSourceAlphaSaturated ,
  kBlendColor ,
  kOneMinusBlendColor ,
  kBlendAlpha ,
  kOneMinusBlendAlpha
}
 
enum class  FlutterGPUBlendOperation {
  kAdd ,
  kSubtract ,
  kReverseSubtract
}
 
enum class  FlutterGPULoadAction {
  kDontCare ,
  kLoad ,
  kClear
}
 
enum class  FlutterGPUStoreAction {
  kDontCare ,
  kStore ,
  kMultisampleResolve ,
  kStoreAndMultisampleResolve
}
 
enum class  FlutterGPUShaderStage {
  kVertex ,
  kFragment
}
 
enum class  FlutterGPUMinMagFilter {
  kNearest ,
  kLinear
}
 
enum class  FlutterGPUMipFilter {
  kNearest ,
  kLinear
}
 
enum class  FlutterGPUSamplerAddressMode {
  kClampToEdge ,
  kRepeat ,
  kMirror
}
 
enum class  FlutterGPUIndexType {
  k16bit ,
  k32bit
}
 
enum class  FlutterGPUPrimitiveType {
  kTriangle ,
  kTriangleStrip ,
  kLine ,
  kLineStrip ,
  kPoint
}
 
enum class  FlutterGPUCompareFunction {
  kNever ,
  kAlways ,
  kLess ,
  kEqual ,
  kLessEqual ,
  kGreater ,
  kNotEqual ,
  kGreaterEqual
}
 
enum class  FlutterGPUStencilOperation {
  kKeep ,
  kZero ,
  kSetToReferenceValue ,
  kIncrementClamp ,
  kDecrementClamp ,
  kInvert ,
  kIncrementWrap ,
  kDecrementWrap
}
 
enum class  FlutterGPUCullMode {
  kNone ,
  kFrontFace ,
  kBackFace
}
 
enum class  FlutterGPUWindingOrder {
  kClockwise ,
  kCounterClockwise
}
 
enum class  FlutterGPUPolygonMode {
  kFill ,
  kLine
}
 

Functions

 IMPLEMENT_WRAPPERTYPEINFO (flutter_gpu, CommandBuffer)
 
bool SupportsNormalOffscreenMSAA (const impeller::Context &context)
 
 IMPLEMENT_WRAPPERTYPEINFO (flutter_gpu, Context)
 
 IMPLEMENT_WRAPPERTYPEINFO (flutter_gpu, DeviceBuffer)
 
constexpr impeller::StorageMode ToImpellerStorageMode (FlutterGPUStorageMode value)
 
constexpr impeller::StorageMode ToImpellerStorageMode (int value)
 
constexpr impeller::PixelFormat ToImpellerPixelFormat (FlutterGPUPixelFormat value)
 
constexpr impeller::PixelFormat ToImpellerPixelFormat (int value)
 
constexpr FlutterGPUPixelFormat FromImpellerPixelFormat (impeller::PixelFormat value)
 
constexpr impeller::TextureCoordinateSystem ToImpellerTextureCoordinateSystem (FlutterGPUTextureCoordinateSystem value)
 
constexpr impeller::TextureCoordinateSystem ToImpellerTextureCoordinateSystem (int value)
 
constexpr impeller::BlendFactor ToImpellerBlendFactor (FlutterGPUBlendFactor value)
 
constexpr impeller::BlendFactor ToImpellerBlendFactor (int value)
 
constexpr impeller::BlendOperation ToImpellerBlendOperation (FlutterGPUBlendOperation value)
 
constexpr impeller::BlendOperation ToImpellerBlendOperation (int value)
 
constexpr impeller::LoadAction ToImpellerLoadAction (FlutterGPULoadAction value)
 
constexpr impeller::LoadAction ToImpellerLoadAction (int value)
 
constexpr impeller::StoreAction ToImpellerStoreAction (FlutterGPUStoreAction value)
 
constexpr impeller::StoreAction ToImpellerStoreAction (int value)
 
constexpr impeller::ShaderStage ToImpellerShaderStage (FlutterGPUShaderStage value)
 
constexpr impeller::ShaderStage ToImpellerShaderStage (int value)
 
constexpr FlutterGPUShaderStage FromImpellerShaderStage (impeller::ShaderStage value)
 
constexpr impeller::MinMagFilter ToImpellerMinMagFilter (FlutterGPUMinMagFilter value)
 
constexpr impeller::MinMagFilter ToImpellerMinMagFilter (int value)
 
constexpr impeller::MipFilter ToImpellerMipFilter (FlutterGPUMipFilter value)
 
constexpr impeller::MipFilter ToImpellerMipFilter (int value)
 
constexpr impeller::SamplerAddressMode ToImpellerSamplerAddressMode (FlutterGPUSamplerAddressMode value)
 
constexpr impeller::SamplerAddressMode ToImpellerSamplerAddressMode (int value)
 
constexpr impeller::IndexType ToImpellerIndexType (FlutterGPUIndexType value)
 
constexpr impeller::IndexType ToImpellerIndexType (int value)
 
constexpr impeller::PrimitiveType ToImpellerPrimitiveType (FlutterGPUPrimitiveType value)
 
constexpr impeller::PrimitiveType ToImpellerPrimitiveType (int value)
 
constexpr impeller::CompareFunction ToImpellerCompareFunction (FlutterGPUCompareFunction value)
 
constexpr impeller::CompareFunction ToImpellerCompareFunction (int value)
 
constexpr impeller::StencilOperation ToImpellerStencilOperation (FlutterGPUStencilOperation value)
 
constexpr impeller::StencilOperation ToImpellerStencilOperation (int value)
 
constexpr impeller::CullMode ToImpellerCullMode (FlutterGPUCullMode value)
 
constexpr impeller::CullMode ToImpellerCullMode (int value)
 
constexpr impeller::WindingOrder ToImpellerWindingOrder (FlutterGPUWindingOrder value)
 
constexpr impeller::WindingOrder ToImpellerWindingOrder (int value)
 
constexpr impeller::PolygonMode ToImpellerPolygonMode (FlutterGPUPolygonMode value)
 
constexpr impeller::PolygonMode ToImpellerPolygonMode (int value)
 
 IMPLEMENT_WRAPPERTYPEINFO (flutter_gpu, RenderPass)
 
 IMPLEMENT_WRAPPERTYPEINFO (flutter_gpu, RenderPipeline)
 
 IMPLEMENT_WRAPPERTYPEINFO (flutter_gpu, Shader)
 
 IMPLEMENT_WRAPPERTYPEINFO (flutter_gpu, ShaderLibrary)
 
static impeller::ShaderStage ToShaderStage (impeller::fb::shaderbundle::ShaderStage stage)
 
static impeller::ShaderType FromInputType (impeller::fb::shaderbundle::InputDataType input_type)
 
static impeller::ShaderType FromUniformType (impeller::fb::shaderbundle::UniformDataType uniform_type)
 
static size_t SizeOfInputType (impeller::fb::shaderbundle::InputDataType input_type)
 
static const impeller::fb::shaderbundle::BackendShader * GetShaderBackend (impeller::Context::BackendType backend_type, const impeller::fb::shaderbundle::Shader *shader)
 
 IMPLEMENT_WRAPPERTYPEINFO (flutter_gpu, Texture)
 

Enumeration Type Documentation

◆ FlutterGPUBlendFactor

Enumerator
kZero 
kOne 
kSourceColor 
kOneMinusSourceColor 
kSourceAlpha 
kOneMinusSourceAlpha 
kDestinationColor 
kOneMinusDestinationColor 
kDestinationAlpha 
kOneMinusDestinationAlpha 
kSourceAlphaSaturated 
kBlendColor 
kOneMinusBlendColor 
kBlendAlpha 
kOneMinusBlendAlpha 

Definition at line 164 of file formats.h.

◆ FlutterGPUBlendOperation

Enumerator
kAdd 
kSubtract 
kReverseSubtract 

Definition at line 222 of file formats.h.

◆ FlutterGPUCompareFunction

Enumerator
kNever 
kAlways 
kLess 
kEqual 
kLessEqual 
kGreater 
kNotEqual 
kGreaterEqual 

Definition at line 431 of file formats.h.

431 {
432 kNever,
433 kAlways,
434 kLess,
435 kEqual,
437 kGreater,
438 kNotEqual,
440};
@ kLessEqual
Comparison test passes if new_value <= current_value.
@ kGreaterEqual
Comparison test passes if new_value >= current_value.
@ kAlways
Comparison test passes always passes.
@ kLess
Comparison test passes if new_value < current_value.
@ kGreater
Comparison test passes if new_value > current_value.
@ kNever
Comparison test never passes.

◆ FlutterGPUCullMode

Enumerator
kNone 
kFrontFace 
kBackFace 

Definition at line 507 of file formats.h.

507 {
508 kNone,
510 kBackFace,
511};
@ kNone
Definition layer.h:43

◆ FlutterGPUIndexType

Enumerator
k16bit 
k32bit 

Definition at line 385 of file formats.h.

◆ FlutterGPULoadAction

Enumerator
kDontCare 
kLoad 
kClear 

Definition at line 244 of file formats.h.

◆ FlutterGPUMinMagFilter

Enumerator
kNearest 
kLinear 

Definition at line 325 of file formats.h.

◆ FlutterGPUMipFilter

Enumerator
kNearest 
kLinear 

Definition at line 344 of file formats.h.

344 {
345 kNearest,
346 kLinear,
347};

◆ FlutterGPUPixelFormat

Enumerator
kUnknown 
kA8UNormInt 
kR8UNormInt 
kR8G8UNormInt 
kR8G8B8A8UNormInt 
kR8G8B8A8UNormIntSRGB 
kB8G8R8A8UNormInt 
kB8G8R8A8UNormIntSRGB 
kR32G32B32A32Float 
kR16G16B16A16Float 
kB10G10R10XR 
kB10G10R10XRSRGB 
kB10G10R10A10XR 
kS8UInt 
kD24UnormS8Uint 
kD32FloatS8UInt 

Definition at line 41 of file formats.h.

◆ FlutterGPUPolygonMode

Enumerator
kFill 
kLine 

Definition at line 547 of file formats.h.

547 {
548 kFill,
549 kLine,
550};
@ kFill
fills interior of shapes

◆ FlutterGPUPrimitiveType

Enumerator
kTriangle 
kTriangleStrip 
kLine 
kLineStrip 
kPoint 

Definition at line 403 of file formats.h.

403 {
404 kTriangle,
406 kLine,
408 kPoint,
409};
@ kPoint
Draws a point at each input vertex.

◆ FlutterGPUSamplerAddressMode

Enumerator
kClampToEdge 
kRepeat 
kMirror 

Definition at line 362 of file formats.h.

◆ FlutterGPUShaderStage

Enumerator
kVertex 
kFragment 

Definition at line 291 of file formats.h.

◆ FlutterGPUStencilOperation

Enumerator
kKeep 
kZero 
kSetToReferenceValue 
kIncrementClamp 
kDecrementClamp 
kInvert 
kIncrementWrap 
kDecrementWrap 

Definition at line 469 of file formats.h.

469 {
470 kKeep,
471 kZero,
475 kInvert,
478};
@ kDecrementWrap
Decrement the current stencil value by 1. If at zero, set to maximum.
@ kSetToReferenceValue
Reset the stencil value to the reference value.
@ kDecrementClamp
Decrement the current stencil value by 1. Clamp it to zero.
@ kIncrementClamp
Increment the current stencil value by 1. Clamp it to the maximum.
@ kIncrementWrap
Increment the current stencil value by 1. If at maximum, set to zero.
@ kInvert
Perform a logical bitwise invert on the current stencil value.
@ kKeep
Don't modify the current stencil value.

◆ FlutterGPUStorageMode

Enumerator
kHostVisible 
kDevicePrivate 
kDeviceTransient 

Definition at line 19 of file formats.h.

◆ FlutterGPUStoreAction

Enumerator
kDontCare 
kStore 
kMultisampleResolve 
kStoreAndMultisampleResolve 

Definition at line 266 of file formats.h.

◆ FlutterGPUTextureCoordinateSystem

Enumerator
kUploadFromHost 
kRenderToTexture 

Definition at line 143 of file formats.h.

◆ FlutterGPUWindingOrder

Enumerator
kClockwise 
kCounterClockwise 

Definition at line 528 of file formats.h.

Function Documentation

◆ FromImpellerPixelFormat()

constexpr FlutterGPUPixelFormat flutter::gpu::FromImpellerPixelFormat ( impeller::PixelFormat  value)
constexpr

Definition at line 102 of file formats.h.

103 {
104 switch (value) {
106 return FlutterGPUPixelFormat::kUnknown;
108 FML_DCHECK(false) << "k32Float not implemented.";
109 return FlutterGPUPixelFormat::kUnknown;
111 return FlutterGPUPixelFormat::kA8UNormInt;
113 return FlutterGPUPixelFormat::kR8UNormInt;
115 return FlutterGPUPixelFormat::kR8G8UNormInt;
117 return FlutterGPUPixelFormat::kR8G8B8A8UNormInt;
119 return FlutterGPUPixelFormat::kR8G8B8A8UNormIntSRGB;
121 return FlutterGPUPixelFormat::kB8G8R8A8UNormInt;
123 return FlutterGPUPixelFormat::kB8G8R8A8UNormIntSRGB;
125 return FlutterGPUPixelFormat::kR32G32B32A32Float;
127 return FlutterGPUPixelFormat::kR16G16B16A16Float;
129 return FlutterGPUPixelFormat::kB10G10R10XR;
131 return FlutterGPUPixelFormat::kB10G10R10XRSRGB;
133 return FlutterGPUPixelFormat::kB10G10R10A10XR;
135 return FlutterGPUPixelFormat::kS8UInt;
137 return FlutterGPUPixelFormat::kD24UnormS8Uint;
139 return FlutterGPUPixelFormat::kD32FloatS8UInt;
140 }
141}
#define FML_DCHECK(condition)
Definition logging.h:122

References FML_DCHECK, impeller::kA8UNormInt, kA8UNormInt, impeller::kB10G10R10A10XR, kB10G10R10A10XR, impeller::kB10G10R10XR, kB10G10R10XR, impeller::kB10G10R10XRSRGB, kB10G10R10XRSRGB, impeller::kB8G8R8A8UNormInt, kB8G8R8A8UNormInt, impeller::kB8G8R8A8UNormIntSRGB, kB8G8R8A8UNormIntSRGB, impeller::kD24UnormS8Uint, kD24UnormS8Uint, impeller::kD32FloatS8UInt, kD32FloatS8UInt, impeller::kR16G16B16A16Float, kR16G16B16A16Float, impeller::kR32Float, impeller::kR32G32B32A32Float, kR32G32B32A32Float, impeller::kR8G8B8A8UNormInt, kR8G8B8A8UNormInt, impeller::kR8G8B8A8UNormIntSRGB, kR8G8B8A8UNormIntSRGB, impeller::kR8G8UNormInt, kR8G8UNormInt, impeller::kR8UNormInt, kR8UNormInt, impeller::kS8UInt, kS8UInt, impeller::kUnknown, kUnknown, and value.

Referenced by InternalFlutterGpu_Context_GetDefaultColorFormat(), InternalFlutterGpu_Context_GetDefaultDepthStencilFormat(), and InternalFlutterGpu_Context_GetDefaultStencilFormat().

◆ FromImpellerShaderStage()

constexpr FlutterGPUShaderStage flutter::gpu::FromImpellerShaderStage ( impeller::ShaderStage  value)
constexpr

Definition at line 310 of file formats.h.

311 {
312 switch (value) {
314 return FlutterGPUShaderStage::kVertex;
316 return FlutterGPUShaderStage::kFragment;
319 FML_LOG(FATAL) << "Invalid Flutter GPU ShaderStage "
320 << static_cast<size_t>(value);
322 }
323}
int32_t value
#define FML_LOG(severity)
Definition logging.h:101
#define FML_UNREACHABLE()
Definition logging.h:128

References FML_LOG, FML_UNREACHABLE, impeller::kCompute, impeller::kFragment, kFragment, impeller::kUnknown, impeller::kVertex, kVertex, and value.

◆ FromInputType()

static impeller::ShaderType flutter::gpu::FromInputType ( impeller::fb::shaderbundle::InputDataType  input_type)
static

Definition at line 67 of file shader_library.cc.

68 {
69 switch (input_type) {
70 case impeller::fb::shaderbundle::InputDataType::kBoolean:
72 case impeller::fb::shaderbundle::InputDataType::kSignedByte:
74 case impeller::fb::shaderbundle::InputDataType::kUnsignedByte:
76 case impeller::fb::shaderbundle::InputDataType::kSignedShort:
78 case impeller::fb::shaderbundle::InputDataType::kUnsignedShort:
80 case impeller::fb::shaderbundle::InputDataType::kSignedInt:
82 case impeller::fb::shaderbundle::InputDataType::kUnsignedInt:
84 case impeller::fb::shaderbundle::InputDataType::kSignedInt64:
86 case impeller::fb::shaderbundle::InputDataType::kUnsignedInt64:
88 case impeller::fb::shaderbundle::InputDataType::kFloat:
90 case impeller::fb::shaderbundle::InputDataType::kDouble:
92 }
93}

References impeller::kBoolean, impeller::kDouble, impeller::kFloat, impeller::kSignedByte, impeller::kSignedInt, impeller::kSignedInt64, impeller::kSignedShort, impeller::kUnsignedByte, impeller::kUnsignedInt, impeller::kUnsignedInt64, and impeller::kUnsignedShort.

Referenced by flutter::gpu::ShaderLibrary::MakeFromFlatbuffer().

◆ FromUniformType()

static impeller::ShaderType flutter::gpu::FromUniformType ( impeller::fb::shaderbundle::UniformDataType  uniform_type)
static

Definition at line 95 of file shader_library.cc.

96 {
97 switch (uniform_type) {
98 case impeller::fb::shaderbundle::UniformDataType::kBoolean:
100 case impeller::fb::shaderbundle::UniformDataType::kSignedByte:
102 case impeller::fb::shaderbundle::UniformDataType::kUnsignedByte:
104 case impeller::fb::shaderbundle::UniformDataType::kSignedShort:
106 case impeller::fb::shaderbundle::UniformDataType::kUnsignedShort:
108 case impeller::fb::shaderbundle::UniformDataType::kSignedInt:
110 case impeller::fb::shaderbundle::UniformDataType::kUnsignedInt:
112 case impeller::fb::shaderbundle::UniformDataType::kSignedInt64:
114 case impeller::fb::shaderbundle::UniformDataType::kUnsignedInt64:
116 case impeller::fb::shaderbundle::UniformDataType::kFloat:
118 case impeller::fb::shaderbundle::UniformDataType::kDouble:
120 case impeller::fb::shaderbundle::UniformDataType::kHalfFloat:
122 case impeller::fb::shaderbundle::UniformDataType::kSampledImage:
124 }
125}

References impeller::kBoolean, impeller::kDouble, impeller::kFloat, impeller::kHalfFloat, impeller::kSampledImage, impeller::kSignedByte, impeller::kSignedInt, impeller::kSignedInt64, impeller::kSignedShort, impeller::kUnsignedByte, impeller::kUnsignedInt, impeller::kUnsignedInt64, and impeller::kUnsignedShort.

Referenced by flutter::gpu::ShaderLibrary::MakeFromFlatbuffer().

◆ GetShaderBackend()

static const impeller::fb::shaderbundle::BackendShader * flutter::gpu::GetShaderBackend ( impeller::Context::BackendType  backend_type,
const impeller::fb::shaderbundle::Shader *  shader 
)
static

Definition at line 155 of file shader_library.cc.

157 {
158 switch (backend_type) {
160#ifdef FML_OS_IOS
161 return shader->metal_ios();
162#else
163 return shader->metal_desktop();
164#endif
166 return shader->opengl_es();
168 return shader->vulkan();
169 }
170}

References impeller::Context::kMetal, impeller::Context::kOpenGLES, and impeller::Context::kVulkan.

Referenced by flutter::gpu::ShaderLibrary::MakeFromFlatbuffer().

◆ IMPLEMENT_WRAPPERTYPEINFO() [1/8]

flutter::gpu::IMPLEMENT_WRAPPERTYPEINFO ( flutter_gpu  ,
CommandBuffer   
)

◆ IMPLEMENT_WRAPPERTYPEINFO() [2/8]

flutter::gpu::IMPLEMENT_WRAPPERTYPEINFO ( flutter_gpu  ,
Context   
)

◆ IMPLEMENT_WRAPPERTYPEINFO() [3/8]

flutter::gpu::IMPLEMENT_WRAPPERTYPEINFO ( flutter_gpu  ,
DeviceBuffer   
)

◆ IMPLEMENT_WRAPPERTYPEINFO() [4/8]

flutter::gpu::IMPLEMENT_WRAPPERTYPEINFO ( flutter_gpu  ,
RenderPass   
)

◆ IMPLEMENT_WRAPPERTYPEINFO() [5/8]

flutter::gpu::IMPLEMENT_WRAPPERTYPEINFO ( flutter_gpu  ,
RenderPipeline   
)

◆ IMPLEMENT_WRAPPERTYPEINFO() [6/8]

flutter::gpu::IMPLEMENT_WRAPPERTYPEINFO ( flutter_gpu  ,
Shader   
)

◆ IMPLEMENT_WRAPPERTYPEINFO() [7/8]

flutter::gpu::IMPLEMENT_WRAPPERTYPEINFO ( flutter_gpu  ,
ShaderLibrary   
)

◆ IMPLEMENT_WRAPPERTYPEINFO() [8/8]

flutter::gpu::IMPLEMENT_WRAPPERTYPEINFO ( flutter_gpu  ,
Texture   
)

◆ SizeOfInputType()

static size_t flutter::gpu::SizeOfInputType ( impeller::fb::shaderbundle::InputDataType  input_type)
static

Definition at line 127 of file shader_library.cc.

128 {
129 switch (input_type) {
130 case impeller::fb::shaderbundle::InputDataType::kBoolean:
131 return 1;
132 case impeller::fb::shaderbundle::InputDataType::kSignedByte:
133 return 1;
134 case impeller::fb::shaderbundle::InputDataType::kUnsignedByte:
135 return 1;
136 case impeller::fb::shaderbundle::InputDataType::kSignedShort:
137 return 2;
138 case impeller::fb::shaderbundle::InputDataType::kUnsignedShort:
139 return 2;
140 case impeller::fb::shaderbundle::InputDataType::kSignedInt:
141 return 4;
142 case impeller::fb::shaderbundle::InputDataType::kUnsignedInt:
143 return 4;
144 case impeller::fb::shaderbundle::InputDataType::kSignedInt64:
145 return 8;
146 case impeller::fb::shaderbundle::InputDataType::kUnsignedInt64:
147 return 8;
148 case impeller::fb::shaderbundle::InputDataType::kFloat:
149 return 4;
150 case impeller::fb::shaderbundle::InputDataType::kDouble:
151 return 8;
152 }
153}

Referenced by flutter::gpu::ShaderLibrary::MakeFromFlatbuffer().

◆ SupportsNormalOffscreenMSAA()

bool flutter::gpu::SupportsNormalOffscreenMSAA ( const impeller::Context context)

Definition at line 18 of file context.cc.

18 {
19 auto& capabilities = context.GetCapabilities();
20 return capabilities->SupportsOffscreenMSAA() &&
21 !capabilities->SupportsImplicitResolvingMSAA();
22}
virtual const std::shared_ptr< const Capabilities > & GetCapabilities() const =0
Get the capabilities of Impeller context. All optionally supported feature of the platform,...

References impeller::Context::GetCapabilities().

Referenced by InternalFlutterGpu_Context_GetSupportsOffscreenMSAA(), and InternalFlutterGpu_RenderPass_SetColorAttachment().

◆ ToImpellerBlendFactor() [1/2]

constexpr impeller::BlendFactor flutter::gpu::ToImpellerBlendFactor ( FlutterGPUBlendFactor  value)
constexpr

Definition at line 182 of file formats.h.

183 {
184 switch (value) {
185 case FlutterGPUBlendFactor::kZero:
187 case FlutterGPUBlendFactor::kOne:
189 case FlutterGPUBlendFactor::kSourceColor:
191 case FlutterGPUBlendFactor::kOneMinusSourceColor:
193 case FlutterGPUBlendFactor::kSourceAlpha:
195 case FlutterGPUBlendFactor::kOneMinusSourceAlpha:
197 case FlutterGPUBlendFactor::kDestinationColor:
199 case FlutterGPUBlendFactor::kOneMinusDestinationColor:
201 case FlutterGPUBlendFactor::kDestinationAlpha:
203 case FlutterGPUBlendFactor::kOneMinusDestinationAlpha:
205 case FlutterGPUBlendFactor::kSourceAlphaSaturated:
207 case FlutterGPUBlendFactor::kBlendColor:
209 case FlutterGPUBlendFactor::kOneMinusBlendColor:
211 case FlutterGPUBlendFactor::kBlendAlpha:
213 case FlutterGPUBlendFactor::kOneMinusBlendAlpha:
215 }
216}

References impeller::kBlendAlpha, kBlendAlpha, impeller::kBlendColor, kBlendColor, impeller::kDestinationAlpha, kDestinationAlpha, impeller::kDestinationColor, kDestinationColor, impeller::kOne, kOne, impeller::kOneMinusBlendAlpha, kOneMinusBlendAlpha, impeller::kOneMinusBlendColor, kOneMinusBlendColor, impeller::kOneMinusDestinationAlpha, kOneMinusDestinationAlpha, impeller::kOneMinusDestinationColor, kOneMinusDestinationColor, impeller::kOneMinusSourceAlpha, kOneMinusSourceAlpha, impeller::kOneMinusSourceColor, kOneMinusSourceColor, impeller::kSourceAlpha, kSourceAlpha, impeller::kSourceAlphaSaturated, kSourceAlphaSaturated, impeller::kSourceColor, kSourceColor, impeller::kZero, kZero, and value.

Referenced by InternalFlutterGpu_RenderPass_SetColorBlendEquation(), and ToImpellerBlendFactor().

◆ ToImpellerBlendFactor() [2/2]

constexpr impeller::BlendFactor flutter::gpu::ToImpellerBlendFactor ( int  value)
constexpr

Definition at line 218 of file formats.h.

218 {
219 return ToImpellerBlendFactor(static_cast<FlutterGPUBlendFactor>(value));
220}
constexpr impeller::BlendFactor ToImpellerBlendFactor(FlutterGPUBlendFactor value)
Definition formats.h:182
FlutterGPUBlendFactor
Definition formats.h:164

References ToImpellerBlendFactor(), and value.

◆ ToImpellerBlendOperation() [1/2]

constexpr impeller::BlendOperation flutter::gpu::ToImpellerBlendOperation ( FlutterGPUBlendOperation  value)
constexpr

Definition at line 228 of file formats.h.

229 {
230 switch (value) {
231 case FlutterGPUBlendOperation::kAdd:
233 case FlutterGPUBlendOperation::kSubtract:
235 case FlutterGPUBlendOperation::kReverseSubtract:
237 }
238}

References impeller::kAdd, kAdd, impeller::kReverseSubtract, kReverseSubtract, impeller::kSubtract, kSubtract, and value.

Referenced by InternalFlutterGpu_RenderPass_SetColorBlendEquation(), and ToImpellerBlendOperation().

◆ ToImpellerBlendOperation() [2/2]

constexpr impeller::BlendOperation flutter::gpu::ToImpellerBlendOperation ( int  value)
constexpr

Definition at line 240 of file formats.h.

240 {
241 return ToImpellerBlendOperation(static_cast<FlutterGPUBlendOperation>(value));
242}
FlutterGPUBlendOperation
Definition formats.h:222
constexpr impeller::BlendOperation ToImpellerBlendOperation(FlutterGPUBlendOperation value)
Definition formats.h:228

References ToImpellerBlendOperation(), and value.

◆ ToImpellerCompareFunction() [1/2]

constexpr impeller::CompareFunction flutter::gpu::ToImpellerCompareFunction ( FlutterGPUCompareFunction  value)
constexpr

Definition at line 442 of file formats.h.

443 {
444 switch (value) {
445 case FlutterGPUCompareFunction::kNever:
447 case FlutterGPUCompareFunction::kAlways:
449 case FlutterGPUCompareFunction::kLess:
451 case FlutterGPUCompareFunction::kEqual:
453 case FlutterGPUCompareFunction::kLessEqual:
455 case FlutterGPUCompareFunction::kGreater:
457 case FlutterGPUCompareFunction::kNotEqual:
459 case FlutterGPUCompareFunction::kGreaterEqual:
461 }
462}
@ kEqual
Comparison test passes if new_value == current_value.
@ kNotEqual
Comparison test passes if new_value != current_value.

References impeller::kAlways, kAlways, impeller::kEqual, kEqual, impeller::kGreater, kGreater, impeller::kGreaterEqual, kGreaterEqual, impeller::kLess, kLess, impeller::kLessEqual, kLessEqual, impeller::kNever, kNever, impeller::kNotEqual, kNotEqual, and value.

Referenced by InternalFlutterGpu_RenderPass_SetDepthCompareOperation(), InternalFlutterGpu_RenderPass_SetStencilConfig(), and ToImpellerCompareFunction().

◆ ToImpellerCompareFunction() [2/2]

constexpr impeller::CompareFunction flutter::gpu::ToImpellerCompareFunction ( int  value)
constexpr

Definition at line 464 of file formats.h.

464 {
466 static_cast<FlutterGPUCompareFunction>(value));
467}
FlutterGPUCompareFunction
Definition formats.h:431
constexpr impeller::CompareFunction ToImpellerCompareFunction(FlutterGPUCompareFunction value)
Definition formats.h:442

References ToImpellerCompareFunction(), and value.

◆ ToImpellerCullMode() [1/2]

constexpr impeller::CullMode flutter::gpu::ToImpellerCullMode ( FlutterGPUCullMode  value)
constexpr

Definition at line 513 of file formats.h.

513 {
514 switch (value) {
515 case FlutterGPUCullMode::kNone:
517 case FlutterGPUCullMode::kFrontFace:
519 case FlutterGPUCullMode::kBackFace:
521 }
522}

References impeller::kBackFace, kBackFace, impeller::kFrontFace, kFrontFace, impeller::kNone, kNone, and value.

Referenced by InternalFlutterGpu_RenderPass_SetCullMode(), and ToImpellerCullMode().

◆ ToImpellerCullMode() [2/2]

constexpr impeller::CullMode flutter::gpu::ToImpellerCullMode ( int  value)
constexpr

Definition at line 524 of file formats.h.

524 {
525 return ToImpellerCullMode(static_cast<FlutterGPUCullMode>(value));
526}
constexpr impeller::CullMode ToImpellerCullMode(FlutterGPUCullMode value)
Definition formats.h:513

References ToImpellerCullMode(), and value.

◆ ToImpellerIndexType() [1/2]

constexpr impeller::IndexType flutter::gpu::ToImpellerIndexType ( FlutterGPUIndexType  value)
constexpr

Definition at line 390 of file formats.h.

390 {
391 switch (value) {
392 case FlutterGPUIndexType::k16bit:
394 case FlutterGPUIndexType::k32bit:
396 }
397}

References impeller::k16bit, k16bit, impeller::k32bit, k32bit, and value.

Referenced by BindIndexBuffer(), and ToImpellerIndexType().

◆ ToImpellerIndexType() [2/2]

constexpr impeller::IndexType flutter::gpu::ToImpellerIndexType ( int  value)
constexpr

Definition at line 399 of file formats.h.

399 {
400 return ToImpellerIndexType(static_cast<FlutterGPUIndexType>(value));
401}
constexpr impeller::IndexType ToImpellerIndexType(FlutterGPUIndexType value)
Definition formats.h:390

References ToImpellerIndexType(), and value.

◆ ToImpellerLoadAction() [1/2]

constexpr impeller::LoadAction flutter::gpu::ToImpellerLoadAction ( FlutterGPULoadAction  value)
constexpr

Definition at line 250 of file formats.h.

251 {
252 switch (value) {
253 case FlutterGPULoadAction::kDontCare:
255 case FlutterGPULoadAction::kLoad:
257 case FlutterGPULoadAction::kClear:
259 }
260}

References impeller::kClear, kClear, impeller::kDontCare, kDontCare, impeller::kLoad, kLoad, and value.

Referenced by InternalFlutterGpu_RenderPass_SetColorAttachment(), InternalFlutterGpu_RenderPass_SetDepthStencilAttachment(), and ToImpellerLoadAction().

◆ ToImpellerLoadAction() [2/2]

constexpr impeller::LoadAction flutter::gpu::ToImpellerLoadAction ( int  value)
constexpr

Definition at line 262 of file formats.h.

262 {
263 return ToImpellerLoadAction(static_cast<FlutterGPULoadAction>(value));
264}
constexpr impeller::LoadAction ToImpellerLoadAction(FlutterGPULoadAction value)
Definition formats.h:250

References ToImpellerLoadAction(), and value.

◆ ToImpellerMinMagFilter() [1/2]

constexpr impeller::MinMagFilter flutter::gpu::ToImpellerMinMagFilter ( FlutterGPUMinMagFilter  value)
constexpr

Definition at line 330 of file formats.h.

331 {
332 switch (value) {
333 case FlutterGPUMinMagFilter::kNearest:
335 case FlutterGPUMinMagFilter::kLinear:
337 }
338}
@ kNearest
Select nearest to the sample point. Most widely supported.

References impeller::kLinear, kLinear, impeller::kNearest, kNearest, and value.

Referenced by InternalFlutterGpu_RenderPass_BindTexture(), and ToImpellerMinMagFilter().

◆ ToImpellerMinMagFilter() [2/2]

constexpr impeller::MinMagFilter flutter::gpu::ToImpellerMinMagFilter ( int  value)
constexpr

Definition at line 340 of file formats.h.

340 {
341 return ToImpellerMinMagFilter(static_cast<FlutterGPUMinMagFilter>(value));
342}
FlutterGPUMinMagFilter
Definition formats.h:325
constexpr impeller::MinMagFilter ToImpellerMinMagFilter(FlutterGPUMinMagFilter value)
Definition formats.h:330

References ToImpellerMinMagFilter(), and value.

◆ ToImpellerMipFilter() [1/2]

constexpr impeller::MipFilter flutter::gpu::ToImpellerMipFilter ( FlutterGPUMipFilter  value)
constexpr

Definition at line 349 of file formats.h.

349 {
350 switch (value) {
351 case FlutterGPUMipFilter::kNearest:
353 case FlutterGPUMipFilter::kLinear:
355 }
356}
@ kLinear
Sample from the two nearest mip levels and linearly interpolate.
@ kNearest
The nearst mipmap level is selected.

References impeller::kLinear, kLinear, impeller::kNearest, kNearest, and value.

Referenced by InternalFlutterGpu_RenderPass_BindTexture(), and ToImpellerMipFilter().

◆ ToImpellerMipFilter() [2/2]

constexpr impeller::MipFilter flutter::gpu::ToImpellerMipFilter ( int  value)
constexpr

Definition at line 358 of file formats.h.

358 {
359 return ToImpellerMipFilter(static_cast<FlutterGPUMipFilter>(value));
360}
constexpr impeller::MipFilter ToImpellerMipFilter(FlutterGPUMipFilter value)
Definition formats.h:349

References ToImpellerMipFilter(), and value.

◆ ToImpellerPixelFormat() [1/2]

constexpr impeller::PixelFormat flutter::gpu::ToImpellerPixelFormat ( FlutterGPUPixelFormat  value)
constexpr

Definition at line 60 of file formats.h.

61 {
62 switch (value) {
63 case FlutterGPUPixelFormat::kUnknown:
65 case FlutterGPUPixelFormat::kA8UNormInt:
67 case FlutterGPUPixelFormat::kR8UNormInt:
69 case FlutterGPUPixelFormat::kR8G8UNormInt:
71 case FlutterGPUPixelFormat::kR8G8B8A8UNormInt:
73 case FlutterGPUPixelFormat::kR8G8B8A8UNormIntSRGB:
75 case FlutterGPUPixelFormat::kB8G8R8A8UNormInt:
77 case FlutterGPUPixelFormat::kB8G8R8A8UNormIntSRGB:
79 case FlutterGPUPixelFormat::kR32G32B32A32Float:
81 case FlutterGPUPixelFormat::kR16G16B16A16Float:
83 case FlutterGPUPixelFormat::kB10G10R10XR:
85 case FlutterGPUPixelFormat::kB10G10R10XRSRGB:
87 case FlutterGPUPixelFormat::kB10G10R10A10XR:
89 case FlutterGPUPixelFormat::kS8UInt:
91 case FlutterGPUPixelFormat::kD24UnormS8Uint:
93 case FlutterGPUPixelFormat::kD32FloatS8UInt:
95 }
96}

References impeller::kA8UNormInt, kA8UNormInt, impeller::kB10G10R10A10XR, kB10G10R10A10XR, impeller::kB10G10R10XR, kB10G10R10XR, impeller::kB10G10R10XRSRGB, kB10G10R10XRSRGB, impeller::kB8G8R8A8UNormInt, kB8G8R8A8UNormInt, impeller::kB8G8R8A8UNormIntSRGB, kB8G8R8A8UNormIntSRGB, impeller::kD24UnormS8Uint, kD24UnormS8Uint, impeller::kD32FloatS8UInt, kD32FloatS8UInt, impeller::kR16G16B16A16Float, kR16G16B16A16Float, impeller::kR32G32B32A32Float, kR32G32B32A32Float, impeller::kR8G8B8A8UNormInt, kR8G8B8A8UNormInt, impeller::kR8G8B8A8UNormIntSRGB, kR8G8B8A8UNormIntSRGB, impeller::kR8G8UNormInt, kR8G8UNormInt, impeller::kR8UNormInt, kR8UNormInt, impeller::kS8UInt, kS8UInt, impeller::kUnknown, kUnknown, and value.

Referenced by InternalFlutterGpu_Texture_Initialize(), and ToImpellerPixelFormat().

◆ ToImpellerPixelFormat() [2/2]

constexpr impeller::PixelFormat flutter::gpu::ToImpellerPixelFormat ( int  value)
constexpr

Definition at line 98 of file formats.h.

98 {
99 return ToImpellerPixelFormat(static_cast<FlutterGPUPixelFormat>(value));
100}
FlutterGPUPixelFormat
Definition formats.h:41
constexpr impeller::PixelFormat ToImpellerPixelFormat(FlutterGPUPixelFormat value)
Definition formats.h:60

References ToImpellerPixelFormat(), and value.

◆ ToImpellerPolygonMode() [1/2]

constexpr impeller::PolygonMode flutter::gpu::ToImpellerPolygonMode ( FlutterGPUPolygonMode  value)
constexpr

Definition at line 552 of file formats.h.

553 {
554 switch (value) {
555 case FlutterGPUPolygonMode::kFill:
557 case FlutterGPUPolygonMode::kLine:
559 }
560}

References impeller::kFill, kFill, impeller::kLine, kLine, and value.

Referenced by InternalFlutterGpu_RenderPass_SetPolygonMode(), and ToImpellerPolygonMode().

◆ ToImpellerPolygonMode() [2/2]

constexpr impeller::PolygonMode flutter::gpu::ToImpellerPolygonMode ( int  value)
constexpr

Definition at line 562 of file formats.h.

562 {
563 return ToImpellerPolygonMode(static_cast<FlutterGPUPolygonMode>(value));
564}
FlutterGPUPolygonMode
Definition formats.h:547
constexpr impeller::PolygonMode ToImpellerPolygonMode(FlutterGPUPolygonMode value)
Definition formats.h:552

References ToImpellerPolygonMode(), and value.

◆ ToImpellerPrimitiveType() [1/2]

constexpr impeller::PrimitiveType flutter::gpu::ToImpellerPrimitiveType ( FlutterGPUPrimitiveType  value)
constexpr

Definition at line 411 of file formats.h.

412 {
413 switch (value) {
414 case FlutterGPUPrimitiveType::kTriangle:
416 case FlutterGPUPrimitiveType::kTriangleStrip:
418 case FlutterGPUPrimitiveType::kLine:
420 case FlutterGPUPrimitiveType::kLineStrip:
422 case FlutterGPUPrimitiveType::kPoint:
424 }
425}

References impeller::kLine, kLine, impeller::kLineStrip, kLineStrip, impeller::kPoint, kPoint, impeller::kTriangle, kTriangle, impeller::kTriangleStrip, kTriangleStrip, and value.

Referenced by InternalFlutterGpu_RenderPass_SetPrimitiveType(), and ToImpellerPrimitiveType().

◆ ToImpellerPrimitiveType() [2/2]

constexpr impeller::PrimitiveType flutter::gpu::ToImpellerPrimitiveType ( int  value)
constexpr

Definition at line 427 of file formats.h.

427 {
428 return ToImpellerPrimitiveType(static_cast<FlutterGPUPrimitiveType>(value));
429}
FlutterGPUPrimitiveType
Definition formats.h:403
constexpr impeller::PrimitiveType ToImpellerPrimitiveType(FlutterGPUPrimitiveType value)
Definition formats.h:411

References ToImpellerPrimitiveType(), and value.

◆ ToImpellerSamplerAddressMode() [1/2]

constexpr impeller::SamplerAddressMode flutter::gpu::ToImpellerSamplerAddressMode ( FlutterGPUSamplerAddressMode  value)
constexpr

Definition at line 368 of file formats.h.

369 {
370 switch (value) {
371 case FlutterGPUSamplerAddressMode::kClampToEdge:
373 case FlutterGPUSamplerAddressMode::kRepeat:
375 case FlutterGPUSamplerAddressMode::kMirror:
377 }
378}

References impeller::kClampToEdge, kClampToEdge, impeller::kMirror, kMirror, impeller::kRepeat, kRepeat, and value.

Referenced by InternalFlutterGpu_RenderPass_BindTexture(), and ToImpellerSamplerAddressMode().

◆ ToImpellerSamplerAddressMode() [2/2]

constexpr impeller::SamplerAddressMode flutter::gpu::ToImpellerSamplerAddressMode ( int  value)
constexpr

Definition at line 380 of file formats.h.

380 {
382 static_cast<FlutterGPUSamplerAddressMode>(value));
383}
constexpr impeller::SamplerAddressMode ToImpellerSamplerAddressMode(FlutterGPUSamplerAddressMode value)
Definition formats.h:368
FlutterGPUSamplerAddressMode
Definition formats.h:362

References ToImpellerSamplerAddressMode(), and value.

◆ ToImpellerShaderStage() [1/2]

constexpr impeller::ShaderStage flutter::gpu::ToImpellerShaderStage ( FlutterGPUShaderStage  value)
constexpr

Definition at line 296 of file formats.h.

297 {
298 switch (value) {
299 case FlutterGPUShaderStage::kVertex:
301 case FlutterGPUShaderStage::kFragment:
303 }
304}

References impeller::kFragment, kFragment, impeller::kVertex, kVertex, and value.

Referenced by ToImpellerShaderStage().

◆ ToImpellerShaderStage() [2/2]

constexpr impeller::ShaderStage flutter::gpu::ToImpellerShaderStage ( int  value)
constexpr

Definition at line 306 of file formats.h.

306 {
307 return ToImpellerShaderStage(static_cast<FlutterGPUShaderStage>(value));
308}
FlutterGPUShaderStage
Definition formats.h:291
constexpr impeller::ShaderStage ToImpellerShaderStage(FlutterGPUShaderStage value)
Definition formats.h:296

References ToImpellerShaderStage(), and value.

◆ ToImpellerStencilOperation() [1/2]

constexpr impeller::StencilOperation flutter::gpu::ToImpellerStencilOperation ( FlutterGPUStencilOperation  value)
constexpr

Definition at line 480 of file formats.h.

481 {
482 switch (value) {
483 case FlutterGPUStencilOperation::kKeep:
485 case FlutterGPUStencilOperation::kZero:
487 case FlutterGPUStencilOperation::kSetToReferenceValue:
489 case FlutterGPUStencilOperation::kIncrementClamp:
491 case FlutterGPUStencilOperation::kDecrementClamp:
493 case FlutterGPUStencilOperation::kInvert:
495 case FlutterGPUStencilOperation::kIncrementWrap:
497 case FlutterGPUStencilOperation::kDecrementWrap:
499 }
500}
@ kZero
Reset the stencil value to zero.

References impeller::kDecrementClamp, kDecrementClamp, impeller::kDecrementWrap, kDecrementWrap, impeller::kIncrementClamp, kIncrementClamp, impeller::kIncrementWrap, kIncrementWrap, impeller::kInvert, kInvert, impeller::kKeep, kKeep, impeller::kSetToReferenceValue, kSetToReferenceValue, impeller::kZero, kZero, and value.

Referenced by InternalFlutterGpu_RenderPass_SetStencilConfig(), and ToImpellerStencilOperation().

◆ ToImpellerStencilOperation() [2/2]

constexpr impeller::StencilOperation flutter::gpu::ToImpellerStencilOperation ( int  value)
constexpr

Definition at line 502 of file formats.h.

502 {
504 static_cast<FlutterGPUStencilOperation>(value));
505}
FlutterGPUStencilOperation
Definition formats.h:469
constexpr impeller::StencilOperation ToImpellerStencilOperation(FlutterGPUStencilOperation value)
Definition formats.h:480

References ToImpellerStencilOperation(), and value.

◆ ToImpellerStorageMode() [1/2]

constexpr impeller::StorageMode flutter::gpu::ToImpellerStorageMode ( FlutterGPUStorageMode  value)
constexpr

Definition at line 25 of file formats.h.

26 {
27 switch (value) {
28 case FlutterGPUStorageMode::kHostVisible:
30 case FlutterGPUStorageMode::kDevicePrivate:
32 case FlutterGPUStorageMode::kDeviceTransient:
34 }
35}

References impeller::kDevicePrivate, kDevicePrivate, impeller::kDeviceTransient, kDeviceTransient, impeller::kHostVisible, kHostVisible, and value.

Referenced by InternalFlutterGpu_DeviceBuffer_Initialize(), InternalFlutterGpu_Texture_Initialize(), and ToImpellerStorageMode().

◆ ToImpellerStorageMode() [2/2]

constexpr impeller::StorageMode flutter::gpu::ToImpellerStorageMode ( int  value)
constexpr

Definition at line 37 of file formats.h.

37 {
38 return ToImpellerStorageMode(static_cast<FlutterGPUStorageMode>(value));
39}
FlutterGPUStorageMode
Definition formats.h:19
constexpr impeller::StorageMode ToImpellerStorageMode(FlutterGPUStorageMode value)
Definition formats.h:25

References ToImpellerStorageMode(), and value.

◆ ToImpellerStoreAction() [1/2]

constexpr impeller::StoreAction flutter::gpu::ToImpellerStoreAction ( FlutterGPUStoreAction  value)
constexpr

Definition at line 273 of file formats.h.

274 {
275 switch (value) {
276 case FlutterGPUStoreAction::kDontCare:
278 case FlutterGPUStoreAction::kStore:
280 case FlutterGPUStoreAction::kMultisampleResolve:
282 case FlutterGPUStoreAction::kStoreAndMultisampleResolve:
284 }
285}

References impeller::kDontCare, kDontCare, impeller::kMultisampleResolve, kMultisampleResolve, impeller::kStore, kStore, impeller::kStoreAndMultisampleResolve, kStoreAndMultisampleResolve, and value.

Referenced by InternalFlutterGpu_RenderPass_SetColorAttachment(), InternalFlutterGpu_RenderPass_SetDepthStencilAttachment(), and ToImpellerStoreAction().

◆ ToImpellerStoreAction() [2/2]

constexpr impeller::StoreAction flutter::gpu::ToImpellerStoreAction ( int  value)
constexpr

Definition at line 287 of file formats.h.

287 {
288 return ToImpellerStoreAction(static_cast<FlutterGPUStoreAction>(value));
289}
constexpr impeller::StoreAction ToImpellerStoreAction(FlutterGPUStoreAction value)
Definition formats.h:273
FlutterGPUStoreAction
Definition formats.h:266

References ToImpellerStoreAction(), and value.

◆ ToImpellerTextureCoordinateSystem() [1/2]

constexpr impeller::TextureCoordinateSystem flutter::gpu::ToImpellerTextureCoordinateSystem ( FlutterGPUTextureCoordinateSystem  value)
constexpr

Definition at line 148 of file formats.h.

149 {
150 switch (value) {
151 case FlutterGPUTextureCoordinateSystem::kUploadFromHost:
153 case FlutterGPUTextureCoordinateSystem::kRenderToTexture:
155 }
156}

References impeller::kRenderToTexture, kRenderToTexture, impeller::kUploadFromHost, kUploadFromHost, and value.

Referenced by InternalFlutterGpu_Texture_Initialize(), InternalFlutterGpu_Texture_SetCoordinateSystem(), and ToImpellerTextureCoordinateSystem().

◆ ToImpellerTextureCoordinateSystem() [2/2]

constexpr impeller::TextureCoordinateSystem flutter::gpu::ToImpellerTextureCoordinateSystem ( int  value)
constexpr

Definition at line 158 of file formats.h.

159 {
161 static_cast<FlutterGPUTextureCoordinateSystem>(value));
162}
FlutterGPUTextureCoordinateSystem
Definition formats.h:143
constexpr impeller::TextureCoordinateSystem ToImpellerTextureCoordinateSystem(FlutterGPUTextureCoordinateSystem value)
Definition formats.h:148

References ToImpellerTextureCoordinateSystem(), and value.

◆ ToImpellerWindingOrder() [1/2]

constexpr impeller::WindingOrder flutter::gpu::ToImpellerWindingOrder ( FlutterGPUWindingOrder  value)
constexpr

Definition at line 533 of file formats.h.

534 {
535 switch (value) {
536 case FlutterGPUWindingOrder::kClockwise:
538 case FlutterGPUWindingOrder::kCounterClockwise:
540 }
541}

References impeller::kClockwise, kClockwise, impeller::kCounterClockwise, kCounterClockwise, and value.

Referenced by InternalFlutterGpu_RenderPass_SetWindingOrder(), and ToImpellerWindingOrder().

◆ ToImpellerWindingOrder() [2/2]

constexpr impeller::WindingOrder flutter::gpu::ToImpellerWindingOrder ( int  value)
constexpr

Definition at line 543 of file formats.h.

543 {
544 return ToImpellerWindingOrder(static_cast<FlutterGPUWindingOrder>(value));
545}
FlutterGPUWindingOrder
Definition formats.h:528
constexpr impeller::WindingOrder ToImpellerWindingOrder(FlutterGPUWindingOrder value)
Definition formats.h:533

References ToImpellerWindingOrder(), and value.

◆ ToShaderStage()

static impeller::ShaderStage flutter::gpu::ToShaderStage ( impeller::fb::shaderbundle::ShaderStage  stage)
static

Definition at line 54 of file shader_library.cc.

55 {
56 switch (stage) {
57 case impeller::fb::shaderbundle::ShaderStage::kVertex:
59 case impeller::fb::shaderbundle::ShaderStage::kFragment:
61 case impeller::fb::shaderbundle::ShaderStage::kCompute:
63 }
65}

References FML_UNREACHABLE, impeller::kCompute, impeller::kFragment, and impeller::kVertex.

Referenced by flutter::gpu::ShaderLibrary::MakeFromFlatbuffer().