Flutter Engine Uber Docs
Docs for the entire Flutter Engine repo.
 
Loading...
Searching...
No Matches
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)
 
CapabilitiesBuilderSetSupportsExtendedRangeFormats (bool value)
 
CapabilitiesBuilderSetSupportsTextureCompression (CompressedTextureFamily family, bool value)
 
CapabilitiesBuilderSetDefaultGlyphAtlasFormat (PixelFormat value)
 
CapabilitiesBuilderSetSupportsTriangleFan (bool value)
 
CapabilitiesBuilderSetMaximumRenderPassAttachmentSize (ISize size)
 
CapabilitiesBuilderSetMaxSamplerAnisotropy (uint32_t value)
 
CapabilitiesBuilderSetMinimumUniformAlignment (size_t value)
 
CapabilitiesBuilderSetNeedsPartitionedHostBuffer (bool value)
 
std::unique_ptr< CapabilitiesBuild ()
 

Detailed Description

Definition at line 175 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 359 of file capabilities.cc.

359 {
360 // NOLINTNEXTLINE(clang-analyzer-cplusplus.NewDeleteLeaks)
361 return std::unique_ptr<StandardCapabilities>(new StandardCapabilities( //
362 supports_offscreen_msaa_, //
363 supports_ssbo_, //
364 supports_texture_to_texture_blits_, //
365 supports_framebuffer_fetch_, //
366 supports_compute_, //
367 supports_compute_subgroups_, //
368 supports_read_from_resolve_, //
369 supports_decal_sampler_address_mode_, //
370 supports_device_transient_textures_, //
371 supports_triangle_fan_, //
372 supports_extended_range_formats_, //
373 default_color_format_.value_or(PixelFormat::kUnknown), //
374 default_stencil_format_.value_or(PixelFormat::kUnknown), //
375 default_depth_stencil_format_.value_or(PixelFormat::kUnknown), //
376 default_glyph_atlas_format_.value_or(PixelFormat::kUnknown), //
377 default_maximum_render_pass_attachment_size_.value_or(ISize{1, 1}), //
378 max_sampler_anisotropy_, //
379 minimum_uniform_alignment_, //
380 needs_partitioned_host_buffer_, //
381 supports_texture_compression_bc_, //
382 supports_texture_compression_etc2_, //
383 supports_texture_compression_astc_, //
384 supports_texture_compression_astc_hdr_ //
385 ));
386}
ISize64 ISize
Definition size.h:162

References impeller::kUnknown.

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

◆ SetDefaultColorFormat()

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

Definition at line 262 of file capabilities.cc.

263 {
264 default_color_format_ = value;
265 return *this;
266}
int32_t value

References value.

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

◆ SetDefaultDepthStencilFormat()

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

Definition at line 274 of file capabilities.cc.

275 {
276 default_depth_stencil_format_ = value;
277 return *this;
278}

References value.

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

◆ SetDefaultGlyphAtlasFormat()

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

Definition at line 298 of file capabilities.cc.

299 {
300 default_glyph_atlas_format_ = value;
301 return *this;
302}

References value.

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

◆ SetDefaultStencilFormat()

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

Definition at line 268 of file capabilities.cc.

269 {
270 default_stencil_format_ = value;
271 return *this;
272}

References value.

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

◆ SetMaximumRenderPassAttachmentSize()

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

Definition at line 309 of file capabilities.cc.

310 {
311 default_maximum_render_pass_attachment_size_ = size;
312 return *this;
313}
it will be possible to load the file into Perfetto s trace viewer use test Running tests that layout and measure text will not yield consistent results across various platforms Enabling this option will make font resolution default to the Ahem test font on all disable asset Prevents usage of any non test fonts unless they were explicitly Loaded via prefetched default font Indicates whether the embedding started a prefetch of the default font manager before creating the engine run In non interactive keep the shell running after the Dart script has completed enable serial On low power devices with low core running concurrent GC tasks on threads can cause them to contend with the UI thread which could potentially lead to jank This option turns off all concurrent GC activities domain network JSON encoded network policy per domain This overrides the DisallowInsecureConnections switch Embedder can specify whether to allow or disallow insecure connections at a domain level old gen heap size

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

◆ SetMaxSamplerAnisotropy()

CapabilitiesBuilder & impeller::CapabilitiesBuilder::SetMaxSamplerAnisotropy ( uint32_t  value)

Definition at line 341 of file capabilities.cc.

342 {
343 max_sampler_anisotropy_ = value;
344 return *this;
345}

References value.

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

◆ SetMinimumUniformAlignment()

CapabilitiesBuilder & impeller::CapabilitiesBuilder::SetMinimumUniformAlignment ( size_t  value)

Definition at line 347 of file capabilities.cc.

348 {
349 minimum_uniform_alignment_ = value;
350 return *this;
351}

References value.

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

◆ SetNeedsPartitionedHostBuffer()

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

Definition at line 353 of file capabilities.cc.

354 {
355 needs_partitioned_host_buffer_ = value;
356 return *this;
357}

References value.

◆ SetSupportsCompute()

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

Definition at line 251 of file capabilities.cc.

251 {
252 supports_compute_ = value;
253 return *this;
254}

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsComputeSubgroups()

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

Definition at line 256 of file capabilities.cc.

257 {
258 supports_compute_subgroups_ = value;
259 return *this;
260}

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsDecalSamplerAddressMode()

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

Definition at line 286 of file capabilities.cc.

287 {
288 supports_decal_sampler_address_mode_ = value;
289 return *this;
290}

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsDeviceTransientTextures()

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

Definition at line 292 of file capabilities.cc.

293 {
294 supports_device_transient_textures_ = value;
295 return *this;
296}

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsExtendedRangeFormats()

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

Definition at line 315 of file capabilities.cc.

316 {
317 supports_extended_range_formats_ = value;
318 return *this;
319}

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsFramebufferFetch()

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

Definition at line 245 of file capabilities.cc.

246 {
247 supports_framebuffer_fetch_ = value;
248 return *this;
249}

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsOffscreenMSAA()

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

Definition at line 229 of file capabilities.cc.

229 {
230 supports_offscreen_msaa_ = value;
231 return *this;
232}

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsReadFromResolve()

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

Definition at line 280 of file capabilities.cc.

281 {
282 supports_read_from_resolve_ = read_from_resolve;
283 return *this;
284}

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsSSBO()

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

Definition at line 234 of file capabilities.cc.

234 {
235 supports_ssbo_ = value;
236 return *this;
237}

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsTextureCompression()

CapabilitiesBuilder & impeller::CapabilitiesBuilder::SetSupportsTextureCompression ( CompressedTextureFamily  family,
bool  value 
)

Definition at line 321 of file capabilities.cc.

323 {
324 switch (family) {
326 supports_texture_compression_bc_ = value;
327 break;
329 supports_texture_compression_etc2_ = value;
330 break;
332 supports_texture_compression_astc_ = value;
333 break;
335 supports_texture_compression_astc_hdr_ = value;
336 break;
337 }
338 return *this;
339}
@ kASTCHDR
ASTC HDR. A separate device feature from ASTC LDR.
@ kBC
S3TC, RGTC, and BPTC (BC1 through BC7). Desktop GPUs.
@ kETC2
ETC2 and EAC. Mobile, OpenGL ES 3.0, and WebGL2.
@ kASTC
ASTC LDR. Modern mobile and some desktop.

References impeller::kASTC, impeller::kASTCHDR, impeller::kBC, impeller::kETC2, and value.

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

◆ SetSupportsTextureToTextureBlits()

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

◆ SetSupportsTriangleFan()

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

Definition at line 304 of file capabilities.cc.

304 {
305 supports_triangle_fan_ = value;
306 return *this;
307}

References value.

Referenced by impeller::InferMetalCapabilities().


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