| Flutter Impeller |

Public Member Functions | List of all members
impeller::CapabilitiesBuilder Class Reference

`#include <capabilities.h>`

## Public Member Functions
| CapabilitiesBuilder ()
| ~CapabilitiesBuilder ()
CapabilitiesBuilder & | SetSupportsOffscreenMSAA (bool value)
CapabilitiesBuilder & | SetSupportsSSBO (bool value)
CapabilitiesBuilder & | SetSupportsTextureToTextureBlits (bool value)
CapabilitiesBuilder & | SetSupportsFramebufferFetch (bool value)
CapabilitiesBuilder & | SetSupportsCompute (bool value)
CapabilitiesBuilder & | SetSupportsComputeSubgroups (bool value)
CapabilitiesBuilder & | SetSupportsReadFromResolve (bool value)
CapabilitiesBuilder & | SetDefaultColorFormat (PixelFormat value)
CapabilitiesBuilder & | SetDefaultStencilFormat (PixelFormat value)
CapabilitiesBuilder & | SetDefaultDepthStencilFormat (PixelFormat value)
CapabilitiesBuilder & | SetSupportsDecalSamplerAddressMode (bool value)
CapabilitiesBuilder & | SetSupportsDeviceTransientTextures (bool value)
CapabilitiesBuilder & | SetSupportsExtendedRangeFormats (bool value)
CapabilitiesBuilder & | SetDefaultGlyphAtlasFormat (PixelFormat value)
CapabilitiesBuilder & | SetSupportsTriangleFan (bool value)
CapabilitiesBuilder & | SetMaximumRenderPassAttachmentSize (ISize size)
CapabilitiesBuilder & | SetMinimumUniformAlignment (size_t value)
CapabilitiesBuilder & | SetNeedsPartitionedHostBuffer (bool value)
std::unique_ptr< Capabilities > | Build ()

## Detailed Description

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

283 {
284 // NOLINTNEXTLINE(clang-analyzer-cplusplus.NewDeleteLeaks)
285 return std::unique_ptr<StandardCapabilities>(new StandardCapabilities( //
286 supports_offscreen_msaa_, //
287 supports_ssbo_, //
288 supports_texture_to_texture_blits_, //
289 supports_framebuffer_fetch_, //
290 supports_compute_, //
291 supports_compute_subgroups_, //
292 supports_read_from_resolve_, //
293 supports_decal_sampler_address_mode_, //
294 supports_device_transient_textures_, //
295 supports_triangle_fan_, //
296 supports_extended_range_formats_, //
297 default_color_format_.value_or(PixelFormat::kUnknown), //
298 default_stencil_format_.value_or(PixelFormat::kUnknown), //
299 default_depth_stencil_format_.value_or(PixelFormat::kUnknown), //
300 default_glyph_atlas_format_.value_or(PixelFormat::kUnknown), //
301 default_maximum_render_pass_attachment_size_.value_or(ISize{1, 1}), //
302 minimum_uniform_alignment_, //
303 needs_partitioned_host_buffer_ //
304 ));
305 }
impeller::PixelFormat::kUnknown
@ kUnknown
impeller::ISize
ISize64 ISize
Definition: size.h:162

References impeller::kUnknown.

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

## ◆ SetDefaultColorFormat()

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

Definition at line 212 of file capabilities.cc.

213 {
214 default_color_format_ = value;
215 return *this;
216 }
value
int32_t value
Definition: dl_golden_unittests.cc:459

References value.

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

## ◆ SetDefaultDepthStencilFormat()

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

Definition at line 224 of file capabilities.cc.

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

References value.

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

## ◆ SetDefaultGlyphAtlasFormat()

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

Definition at line 248 of file capabilities.cc.

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

References value.

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

## ◆ SetDefaultStencilFormat()

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

Definition at line 218 of file capabilities.cc.

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

References value.

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

## ◆ SetMaximumRenderPassAttachmentSize()

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

Definition at line 259 of file capabilities.cc.

260 {
261 default_maximum_render_pass_attachment_size_ = size;
262 return *this;
263 }

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

## ◆ SetMinimumUniformAlignment()

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

Definition at line 271 of file capabilities.cc.

272 {
273 minimum_uniform_alignment_ = value;
274 return *this;
275 }

References value.

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

## ◆ SetNeedsPartitionedHostBuffer()

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

Definition at line 277 of file capabilities.cc.

278 {
279 needs_partitioned_host_buffer_ = value;
280 return *this;
281 }

References value.

## ◆ SetSupportsCompute()

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

Definition at line 201 of file capabilities.cc.

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

References value.

Referenced by impeller::InferMetalCapabilities().

## ◆ SetSupportsComputeSubgroups()

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

Definition at line 206 of file capabilities.cc.

207 {
208 supports_compute_subgroups_ = value;
209 return *this;
210 }

References value.

Referenced by impeller::InferMetalCapabilities().

## ◆ SetSupportsDecalSamplerAddressMode()

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

Definition at line 236 of file capabilities.cc.

237 {
238 supports_decal_sampler_address_mode_ = value;
239 return *this;
240 }

References value.

Referenced by impeller::InferMetalCapabilities().

## ◆ SetSupportsDeviceTransientTextures()

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

Definition at line 242 of file capabilities.cc.

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

References value.

Referenced by impeller::InferMetalCapabilities().

## ◆ SetSupportsExtendedRangeFormats()

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

Definition at line 265 of file capabilities.cc.

266 {
267 supports_extended_range_formats_ = value;
268 return *this;
269 }

References value.

Referenced by impeller::InferMetalCapabilities().

## ◆ SetSupportsFramebufferFetch()

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

Definition at line 195 of file capabilities.cc.

196 {
197 supports_framebuffer_fetch_ = value;
198 return *this;
199 }

References value.

Referenced by impeller::InferMetalCapabilities().

## ◆ SetSupportsOffscreenMSAA()

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

Definition at line 179 of file capabilities.cc.

179 {
180 supports_offscreen_msaa_ = value;
181 return *this;
182 }

References value.

Referenced by impeller::InferMetalCapabilities().

## ◆ SetSupportsReadFromResolve()

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

Definition at line 230 of file capabilities.cc.

231 {
232 supports_read_from_resolve_ = read_from_resolve;
233 return *this;
234 }

Referenced by impeller::InferMetalCapabilities().

## ◆ SetSupportsSSBO()

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

Definition at line 184 of file capabilities.cc.

184 {
185 supports_ssbo_ = value;
186 return *this;
187 }

References value.

Referenced by impeller::InferMetalCapabilities().

## ◆ SetSupportsTextureToTextureBlits()

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

Definition at line 189 of file capabilities.cc.

190 {
191 supports_texture_to_texture_blits_ = value;
192 return *this;
193 }

References value.

Referenced by impeller::InferMetalCapabilities().

## ◆ SetSupportsTriangleFan()

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

Definition at line 254 of file capabilities.cc.

254 {
255 supports_triangle_fan_ = value;
256 return *this;
257 }

References value.

Referenced by impeller::InferMetalCapabilities().

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

- impeller/renderer/capabilities.h
- impeller/renderer/capabilities.cc