Flutter Impeller
impeller::CapabilitiesBuilder Class Reference

#include <capabilities.h>

Public Member Functions

 CapabilitiesBuilder ()
 
 ~CapabilitiesBuilder ()
 
CapabilitiesBuilderSetSupportsOffscreenMSAA (bool value)
 
CapabilitiesBuilderSetSupportsSSBO (bool value)
 
CapabilitiesBuilderSetSupportsTextureToTextureBlits (bool value)
 
CapabilitiesBuilderSetSupportsFramebufferFetch (bool value)
 
CapabilitiesBuilderSetSupportsCompute (bool value)
 
CapabilitiesBuilderSetSupportsComputeSubgroups (bool value)
 
CapabilitiesBuilderSetSupportsReadFromResolve (bool value)
 
CapabilitiesBuilderSetDefaultColorFormat (PixelFormat value)
 
CapabilitiesBuilderSetDefaultStencilFormat (PixelFormat value)
 
CapabilitiesBuilderSetDefaultDepthStencilFormat (PixelFormat value)
 
CapabilitiesBuilderSetSupportsDecalSamplerAddressMode (bool value)
 
CapabilitiesBuilderSetSupportsDeviceTransientTextures (bool value)
 
CapabilitiesBuilderSetDefaultGlyphAtlasFormat (PixelFormat value)
 
CapabilitiesBuilderSetSupportsTriangleFan (bool value)
 
CapabilitiesBuilderSetMaximumRenderPassAttachmentSize (ISize size)
 
std::unique_ptr< CapabilitiesBuild ()
 

Detailed Description

Definition at line 127 of file capabilities.h.

Constructor & Destructor Documentation

◆ CapabilitiesBuilder()

impeller::CapabilitiesBuilder::CapabilitiesBuilder ( )
default

◆ ~CapabilitiesBuilder()

impeller::CapabilitiesBuilder::~CapabilitiesBuilder ( )
default

Member Function Documentation

◆ Build()

std::unique_ptr< Capabilities > impeller::CapabilitiesBuilder::Build ( )

Definition at line 241 of file capabilities.cc.

241  {
242  return std::unique_ptr<StandardCapabilities>(new StandardCapabilities( //
243  supports_offscreen_msaa_, //
244  supports_ssbo_, //
245  supports_texture_to_texture_blits_, //
246  supports_framebuffer_fetch_, //
247  supports_compute_, //
248  supports_compute_subgroups_, //
249  supports_read_from_resolve_, //
250  supports_decal_sampler_address_mode_, //
251  supports_device_transient_textures_, //
252  supports_triangle_fan_, //
253  default_color_format_.value_or(PixelFormat::kUnknown), //
254  default_stencil_format_.value_or(PixelFormat::kUnknown), //
255  default_depth_stencil_format_.value_or(PixelFormat::kUnknown), //
256  default_glyph_atlas_format_.value_or(PixelFormat::kUnknown), //
257  default_maximum_render_pass_attachment_size_.value_or(ISize{1, 1}) //
258  ));
259 }
ISize64 ISize
Definition: size.h:174

References impeller::kUnknown.

Referenced by impeller::InferMetalCapabilities(), and impeller::testing::TEST().

◆ SetDefaultColorFormat()

CapabilitiesBuilder & impeller::CapabilitiesBuilder::SetDefaultColorFormat ( PixelFormat  value)

Definition at line 188 of file capabilities.cc.

189  {
190  default_color_format_ = value;
191  return *this;
192 }
int32_t value

References value.

Referenced by impeller::InferMetalCapabilities(), and impeller::testing::TEST().

◆ SetDefaultDepthStencilFormat()

CapabilitiesBuilder & impeller::CapabilitiesBuilder::SetDefaultDepthStencilFormat ( PixelFormat  value)

Definition at line 200 of file capabilities.cc.

201  {
202  default_depth_stencil_format_ = value;
203  return *this;
204 }

References value.

Referenced by impeller::InferMetalCapabilities(), and impeller::testing::TEST().

◆ SetDefaultGlyphAtlasFormat()

CapabilitiesBuilder & impeller::CapabilitiesBuilder::SetDefaultGlyphAtlasFormat ( PixelFormat  value)

Definition at line 224 of file capabilities.cc.

225  {
226  default_glyph_atlas_format_ = value;
227  return *this;
228 }

References value.

Referenced by impeller::InferMetalCapabilities(), and impeller::testing::TEST().

◆ SetDefaultStencilFormat()

CapabilitiesBuilder & impeller::CapabilitiesBuilder::SetDefaultStencilFormat ( PixelFormat  value)

Definition at line 194 of file capabilities.cc.

195  {
196  default_stencil_format_ = value;
197  return *this;
198 }

References value.

Referenced by impeller::InferMetalCapabilities(), and impeller::testing::TEST().

◆ SetMaximumRenderPassAttachmentSize()

CapabilitiesBuilder & impeller::CapabilitiesBuilder::SetMaximumRenderPassAttachmentSize ( ISize  size)

Definition at line 235 of file capabilities.cc.

236  {
237  default_maximum_render_pass_attachment_size_ = size;
238  return *this;
239 }

Referenced by impeller::InferMetalCapabilities(), and impeller::testing::TEST().

◆ SetSupportsCompute()

CapabilitiesBuilder & impeller::CapabilitiesBuilder::SetSupportsCompute ( bool  value)

Definition at line 177 of file capabilities.cc.

177  {
178  supports_compute_ = value;
179  return *this;
180 }

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsComputeSubgroups()

CapabilitiesBuilder & impeller::CapabilitiesBuilder::SetSupportsComputeSubgroups ( bool  value)

Definition at line 182 of file capabilities.cc.

183  {
184  supports_compute_subgroups_ = value;
185  return *this;
186 }

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsDecalSamplerAddressMode()

CapabilitiesBuilder & impeller::CapabilitiesBuilder::SetSupportsDecalSamplerAddressMode ( bool  value)

Definition at line 212 of file capabilities.cc.

213  {
214  supports_decal_sampler_address_mode_ = value;
215  return *this;
216 }

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsDeviceTransientTextures()

CapabilitiesBuilder & impeller::CapabilitiesBuilder::SetSupportsDeviceTransientTextures ( bool  value)

Definition at line 218 of file capabilities.cc.

219  {
220  supports_device_transient_textures_ = value;
221  return *this;
222 }

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsFramebufferFetch()

CapabilitiesBuilder & impeller::CapabilitiesBuilder::SetSupportsFramebufferFetch ( bool  value)

Definition at line 171 of file capabilities.cc.

172  {
173  supports_framebuffer_fetch_ = value;
174  return *this;
175 }

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsOffscreenMSAA()

CapabilitiesBuilder & impeller::CapabilitiesBuilder::SetSupportsOffscreenMSAA ( bool  value)

Definition at line 155 of file capabilities.cc.

155  {
156  supports_offscreen_msaa_ = value;
157  return *this;
158 }

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsReadFromResolve()

CapabilitiesBuilder & impeller::CapabilitiesBuilder::SetSupportsReadFromResolve ( bool  value)

Definition at line 206 of file capabilities.cc.

207  {
208  supports_read_from_resolve_ = read_from_resolve;
209  return *this;
210 }

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsSSBO()

CapabilitiesBuilder & impeller::CapabilitiesBuilder::SetSupportsSSBO ( bool  value)

Definition at line 160 of file capabilities.cc.

160  {
161  supports_ssbo_ = value;
162  return *this;
163 }

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsTextureToTextureBlits()

CapabilitiesBuilder & impeller::CapabilitiesBuilder::SetSupportsTextureToTextureBlits ( bool  value)

Definition at line 165 of file capabilities.cc.

166  {
167  supports_texture_to_texture_blits_ = value;
168  return *this;
169 }

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsTriangleFan()

CapabilitiesBuilder & impeller::CapabilitiesBuilder::SetSupportsTriangleFan ( bool  value)

Definition at line 230 of file capabilities.cc.

230  {
231  supports_triangle_fan_ = value;
232  return *this;
233 }

References value.

Referenced by impeller::InferMetalCapabilities().


The documentation for this class was generated from the following files: