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)
 
CapabilitiesBuilderSetMinimumUniformAlignment (size_t value)
 
CapabilitiesBuilderSetNeedsPartitionedHostBuffer (bool value)
 
std::unique_ptr< CapabilitiesBuild ()
 

Detailed Description

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

345 {
346 // NOLINTNEXTLINE(clang-analyzer-cplusplus.NewDeleteLeaks)
347 return std::unique_ptr<StandardCapabilities>(new StandardCapabilities( //
348 supports_offscreen_msaa_, //
349 supports_ssbo_, //
350 supports_texture_to_texture_blits_, //
351 supports_framebuffer_fetch_, //
352 supports_compute_, //
353 supports_compute_subgroups_, //
354 supports_read_from_resolve_, //
355 supports_decal_sampler_address_mode_, //
356 supports_device_transient_textures_, //
357 supports_triangle_fan_, //
358 supports_extended_range_formats_, //
359 default_color_format_.value_or(PixelFormat::kUnknown), //
360 default_stencil_format_.value_or(PixelFormat::kUnknown), //
361 default_depth_stencil_format_.value_or(PixelFormat::kUnknown), //
362 default_glyph_atlas_format_.value_or(PixelFormat::kUnknown), //
363 default_maximum_render_pass_attachment_size_.value_or(ISize{1, 1}), //
364 minimum_uniform_alignment_, //
365 needs_partitioned_host_buffer_, //
366 supports_texture_compression_bc_, //
367 supports_texture_compression_etc2_, //
368 supports_texture_compression_astc_, //
369 supports_texture_compression_astc_hdr_ //
370 ));
371}
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(), 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 254 of file capabilities.cc.

255 {
256 default_color_format_ = value;
257 return *this;
258}
int32_t value

References value.

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

◆ SetDefaultDepthStencilFormat()

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

Definition at line 266 of file capabilities.cc.

267 {
268 default_depth_stencil_format_ = value;
269 return *this;
270}

References value.

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

◆ SetDefaultGlyphAtlasFormat()

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

Definition at line 290 of file capabilities.cc.

291 {
292 default_glyph_atlas_format_ = value;
293 return *this;
294}

References value.

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

◆ SetDefaultStencilFormat()

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

Definition at line 260 of file capabilities.cc.

261 {
262 default_stencil_format_ = value;
263 return *this;
264}

References value.

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

◆ SetMaximumRenderPassAttachmentSize()

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

Definition at line 301 of file capabilities.cc.

302 {
303 default_maximum_render_pass_attachment_size_ = size;
304 return *this;
305}
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().

◆ SetMinimumUniformAlignment()

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

Definition at line 333 of file capabilities.cc.

334 {
335 minimum_uniform_alignment_ = value;
336 return *this;
337}

References value.

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

◆ SetNeedsPartitionedHostBuffer()

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

Definition at line 339 of file capabilities.cc.

340 {
341 needs_partitioned_host_buffer_ = value;
342 return *this;
343}

References value.

◆ SetSupportsCompute()

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

Definition at line 243 of file capabilities.cc.

243 {
244 supports_compute_ = value;
245 return *this;
246}

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsComputeSubgroups()

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

Definition at line 248 of file capabilities.cc.

249 {
250 supports_compute_subgroups_ = value;
251 return *this;
252}

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsDecalSamplerAddressMode()

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

Definition at line 278 of file capabilities.cc.

279 {
280 supports_decal_sampler_address_mode_ = value;
281 return *this;
282}

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsDeviceTransientTextures()

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

Definition at line 284 of file capabilities.cc.

285 {
286 supports_device_transient_textures_ = value;
287 return *this;
288}

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsExtendedRangeFormats()

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

Definition at line 307 of file capabilities.cc.

308 {
309 supports_extended_range_formats_ = value;
310 return *this;
311}

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsFramebufferFetch()

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

Definition at line 237 of file capabilities.cc.

238 {
239 supports_framebuffer_fetch_ = value;
240 return *this;
241}

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsOffscreenMSAA()

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

Definition at line 221 of file capabilities.cc.

221 {
222 supports_offscreen_msaa_ = value;
223 return *this;
224}

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsReadFromResolve()

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

Definition at line 272 of file capabilities.cc.

273 {
274 supports_read_from_resolve_ = read_from_resolve;
275 return *this;
276}

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsSSBO()

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

Definition at line 226 of file capabilities.cc.

226 {
227 supports_ssbo_ = value;
228 return *this;
229}

References value.

Referenced by impeller::InferMetalCapabilities().

◆ SetSupportsTextureCompression()

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

Definition at line 313 of file capabilities.cc.

315 {
316 switch (family) {
318 supports_texture_compression_bc_ = value;
319 break;
321 supports_texture_compression_etc2_ = value;
322 break;
324 supports_texture_compression_astc_ = value;
325 break;
327 supports_texture_compression_astc_hdr_ = value;
328 break;
329 }
330 return *this;
331}
@ 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 296 of file capabilities.cc.

296 {
297 supports_triangle_fan_ = value;
298 return *this;
299}

References value.

Referenced by impeller::InferMetalCapabilities().


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