Namespaces | |
allocation_size_literals | |
android | |
compiler | |
egl | |
glvk | |
interop | |
saturated | |
skia_conversions | |
testing | |
Classes | |
class | Allocation |
Describes an allocation on the heap. More... | |
class | AllocationSize |
Represents the size of an allocation in different units. More... | |
class | BackendCast |
struct | UniqueID |
class | ComparableBase |
class | Comparable |
struct | ComparableHash |
struct | ComparableEqual |
struct | Flags |
struct | MaskTraits |
struct | Mask |
A mask of typed enums. More... | |
class | NoExceptionPromise |
class | Lock |
class | ReaderLock |
class | WriterLock |
class | ConditionVariable |
A condition variable exactly similar to the one in libcxx with two major differences: More... | |
class | ValidationLog |
struct | ScopedValidationDisable |
struct | ScopedValidationFatal |
struct | Version |
class | Allocator |
An object that allocates device memory. More... | |
struct | BufferView |
class | DeviceBuffer |
struct | DeviceBufferDescriptor |
struct | DepthRange |
struct | Viewport |
struct | ColorAttachmentDescriptor |
Describe the color attachment that will be used with this pipeline. More... | |
struct | DepthAttachmentDescriptor |
struct | StencilAttachmentDescriptor |
struct | Attachment |
struct | ColorAttachment |
struct | DepthAttachment |
struct | StencilAttachment |
class | HostBuffer |
class | IdleWaiter |
struct | Range |
class | raw_ptr |
A wrapper around a raw ptr that adds additional unopt mode only checks. More... | |
struct | ResourceBinder |
An interface for binding resources. This is implemented by |Command| and |ComputeCommand| to make GPU resources available to a given command's pipeline. More... | |
struct | RuntimeUniformDimensions |
struct | RuntimeUniformDescription |
class | Sampler |
struct | SamplerDescriptor |
struct | ShaderStructMemberMetadata |
struct | ShaderMetadata |
struct | ShaderUniformSlot |
Metadata required to bind a buffer. More... | |
struct | SampledImageSlot |
Metadata required to bind a combined texture and sampler. More... | |
struct | ShaderStageIOSlot |
struct | ShaderStageBufferLayout |
struct | DescriptorSetLayout |
struct | Padding |
struct | Padded |
Struct used for padding uniform buffer array elements. More... | |
class | Texture |
struct | TextureDescriptor |
A lightweight object that describes the attributes of a texture that can then used an allocator to create that texture. More... | |
struct | VertexBuffer |
class | AiksContext |
class | AiksPlayground |
struct | BackdropData |
struct | CanvasStackEntry |
struct | LazyRenderingConfig |
class | Canvas |
class | DlAtlasGeometry |
A wrapper around data provided by a drawAtlas call. More... | |
class | DlDispatcherBase |
class | CanvasDlDispatcher |
class | FirstPassDispatcher |
class | DlImageImpeller |
class | DlPlayground |
class | DlVerticesGeometry |
A geometry that is created from a DlVertices object. More... | |
class | NinePatchConverter |
struct | Paint |
class | AnonymousContents |
class | AtlasGeometry |
class | DrawImageRectAtlasGeometry |
An atlas geometry that adapts for drawImageRect. More... | |
class | AtlasContents |
class | ColorFilterAtlasContents |
struct | ClipCoverage |
class | ClipContents |
class | ColorSourceContents |
class | ConicalGradientContents |
struct | ContentContextOptions |
class | ContentContext |
class | Contents |
class | BlendFilterContents |
class | BorderMaskBlurFilterContents |
class | ColorFilterContents |
class | ColorMatrixFilterContents |
class | FilterContents |
struct | BlurParameters |
struct | KernelSample |
struct | KernelSamples |
class | GaussianBlurFilterContents |
class | ContentsFilterInput |
class | FilterContentsFilterInput |
class | FilterInput |
class | PlaceholderFilterInput |
class | TextureFilterInput |
class | LinearToSrgbFilterContents |
class | LocalMatrixFilterContents |
class | MatrixFilterContents |
class | DirectionalMorphologyFilterContents |
class | RuntimeEffectFilterContents |
A filter that applies a runtime effect shader. More... | |
class | SrgbToLinearFilterContents |
class | YUVToRGBFilterContents |
class | FramebufferBlendContents |
struct | StopData |
class | LineContents |
class | LinearGradientContents |
class | RadialGradientContents |
class | RuntimeEffectContents |
class | SolidColorContents |
class | SolidRRectBlurContents |
Draws a fast solid color blur of an rounded rectangle. Only supports RRects with fully symmetrical radii. Also produces correct results for rectangles (corner_radius=0) and circles (corner_radius=width/2=height/2). More... | |
class | SolidRRectLikeBlurContents |
A base class for SolidRRectBlurContents and SolidRSuperellipseBlurContents. More... | |
class | SolidRSuperellipseBlurContents |
Draws a fast solid color blur of an rounded superellipse. Only supports RSuperellipses with fully symmetrical radii. Also produces correct results for rectangles (corner_radius=0) and circles (corner_radius=width/2=height/2). More... | |
class | SweepGradientContents |
class | TextContents |
class | TextShadowCache |
A cache for blurred text that re-uses these across frames. More... | |
class | TextureContents |
class | TiledTextureContents |
class | VerticesSimpleBlendContents |
class | DrawOrderResolver |
class | Entity |
struct | ClipCoverageLayer |
class | EntityPassClipStack |
A class that tracks all clips that have been recorded in the current entity pass stencil. More... | |
class | EntityPassTarget |
class | EntityPlayground |
class | ArcGeometry |
class | CircleGeometry |
class | CoverGeometry |
A geometry that implements "drawPaint" like behavior by covering the entire render pass area. More... | |
class | EllipseGeometry |
A Geometry class that can directly generate vertices (with or without texture coordinates) for filled ellipses. More... | |
class | StrokeEllipseGeometry |
A Geometry class that produces fillable vertices representing the stroked outline of an ellipse with the given bounds. More... | |
class | FillPathSourceGeometry |
An abstract Geometry base class that produces fillable vertices for the interior of any |PathSource| provided by the type-specific subclass. More... | |
class | FillPathGeometry |
A Geometry that produces fillable vertices from a |DlPath| object using the |FillPathSourceGeometry| base class and the inherent ability for a |DlPath| object to perform path iteration. More... | |
class | FillDiffRoundRectGeometry |
A Geometry that produces fillable vertices for the gap between a pair of |RoundRect| objects using the |FillPathSourceGeometry| base class. More... | |
struct | GeometryResult |
class | Geometry |
class | ImpellerEntityUnitTestAccessor |
class | LineGeometry |
class | PointFieldGeometry |
A geometry class specialized for Canvas::DrawPoints. More... | |
class | FillRectGeometry |
class | StrokeRectGeometry |
class | RoundRectGeometry |
A Geometry class that generates fillable vertices (with or without texture coordinates) directly from a round rect object with uniform radii at every corner. More... | |
class | FillRoundRectGeometry |
A Geometry class that produces fillable vertices from any |RoundRect| object regardless of radii uniformity. More... | |
class | StrokeRoundRectGeometry |
A Geometry class that produces fillable vertices representing the stroked outline of any |Roundrect| object regardless of radii uniformity. More... | |
class | RoundSuperellipseGeometry |
A Geometry class that generates fillable vertices (with or without texture coordinates) directly from a round superellipse object regardless of radii uniformity. More... | |
class | StrokeRoundSuperellipseGeometry |
A Geometry class that produces fillable vertices representing the stroked outline of any |RoundSuperellipse| object regardless of radii uniformity. More... | |
class | StrokePathSegmentReceiver |
class | PathAndArcSegmentReceiver |
A |SegmentReceiver| that also accepts Arc segments for optimal handling. A path or |PathSource| will typically represent such curves using Conic segments which are harder to iterate. More... | |
class | StrokeSegmentsGeometry |
An abstract Geometry base class that produces fillable vertices representing the stroked outline of the segments provided by the subclass in the virtual |Dispatch| method. More... | |
class | StrokePathSourceGeometry |
An abstract Geometry base class that produces fillable vertices representing the stroked outline from any |PathSource| provided by the subclass. More... | |
class | StrokePathGeometry |
A Geometry that produces fillable vertices representing the stroked outline of a |DlPath| object using the |StrokePathSourceGeometry| base class and a |DlPath| object to perform path iteration. More... | |
class | ArcStrokeGeometry |
A Geometry that produces fillable vertices representing the stroked outline of an |Arc| object using the base class |StrokeSegmentsGeometry| and utilizing the special |RecordArc| extension method provided by the |PathAndArcSegmentReceiver|. More... | |
class | StrokeDiffRoundRectGeometry |
A Geometry that produces fillable vertices representing the stroked outline of a pair of nested |RoundRect| objects using the |StrokePathSourceGeometry| base class. More... | |
class | StrokeDashedLineGeometry |
A Geometry that produces fillable vertices representing the stroked outline of a |DlPath| object using the |StrokePathSourceGeometry| base class and a |DlPath| object to perform path iteration. More... | |
class | SuperellipseGeometry |
class | VerticesGeometry |
A geometry that is created from a vertices object. More... | |
class | InlinePassContext |
class | RenderTargetCache |
An implementation of the [RenderTargetAllocator] that caches all allocated texture data for one frame. More... | |
struct | Arc |
struct | ColorMatrix |
struct | Color |
class | DashedLinePathSource |
A PathSource that generates the various segments of a dashed line. More... | |
class | ImpellerBenchmarkAccessor |
struct | GradientData |
struct | Half |
A storage only class for half precision floating point. More... | |
struct | HalfVector4 |
A storage only class for half precision floating point vector 4. More... | |
struct | HalfVector3 |
A storage only class for half precision floating point vector 3. More... | |
struct | HalfVector2 |
A storage only class for half precision floating point vector 2. More... | |
struct | Matrix |
A 4x4 matrix using column-major storage. More... | |
struct | MatrixDecomposition |
class | PathReceiver |
Collection of functions to receive path segments from the underlying path representation via the DlPath::Dispatch method. More... | |
class | PathSource |
class | RectPathSource |
A PathSource object that provides path iteration for any TRect. More... | |
class | EllipsePathSource |
A PathSource object that provides path iteration for any ellipse inscribed within a Rect bounds. More... | |
struct | TPoint |
struct | Quaternion |
class | Rational |
struct | TRect |
struct | RoundRect |
class | RoundRectPathSource |
class | DiffRoundRectPathSource |
struct | RoundSuperellipse |
class | RoundSuperellipsePathSource |
struct | RoundSuperellipseParam |
struct | RoundingRadii |
struct | RSTransform |
struct | Radians |
struct | Degrees |
struct | SeparatedVector2 |
A Vector2, broken down as a separate magnitude and direction. Assumes that the direction given is normalized. More... | |
struct | Shear |
struct | Sigma |
In filters that use Gaussian distributions, "sigma" is a size of one standard deviation in terms of the local space pixel grid of the filter input. In other words, this determines how wide the distribution stretches. More... | |
struct | Radius |
For convolution filters, the "radius" is the size of the convolution kernel to use on the local space pixel grid of the filter input. For Gaussian blur kernels, this unit has a linear relationship with Sigma . See kKernelRadiusPerSigma for details on how this relationship works. More... | |
struct | TSize |
struct | StrokeParameters |
A structure to store all of the parameters related to stroking a path or basic geometry object. More... | |
struct | Trig |
A structure to store the sine and cosine of an angle. More... | |
struct | MixedOp_ |
struct | Vector3 |
struct | Vector4 |
class | GoldenPlaygroundTest |
class | PlaygroundImplGLES |
class | PlaygroundImplMTL |
class | PlaygroundImplVK |
class | ComputePlaygroundTest |
class | CompressedImageSkia |
class | CompressedImage |
class | DecompressedImage |
class | Playground |
class | PlaygroundImpl |
class | PlaygroundTest |
struct | PlaygroundSwitches |
struct | PlaygroundPoint |
class | AllocatorGLES |
struct | BlitEncodeGLES |
Mixin for dispatching GLES commands. More... | |
struct | BlitCopyBufferToTextureCommandGLES |
struct | BlitCopyTextureToTextureCommandGLES |
struct | BlitCopyTextureToBufferCommandGLES |
struct | BlitGenerateMipmapCommandGLES |
struct | BlitResizeTextureCommandGLES |
class | BlitPassGLES |
class | BufferBindingsGLES |
Sets up stage bindings for single draw call in the OpenGLES backend. More... | |
class | CapabilitiesGLES |
The Vulkan layers and extensions wrangler. More... | |
class | CommandBufferGLES |
class | ContextGLES |
class | DescriptionGLES |
class | DeviceBufferGLES |
class | GPUTracerGLES |
Trace GPU execution times using GL_EXT_disjoint_timer_query on GLES. More... | |
class | HandleGLES |
Represents a handle to an underlying OpenGL object. Unlike OpenGL object handles, these handles can be collected on any thread as long as their destruction is scheduled in a reactor. More... | |
class | PipelineGLES |
class | PipelineLibraryGLES |
struct | AutoErrorCheck |
struct | GLProc |
class | ProcTableGLES |
class | ReactorGLES |
The reactor attempts to make thread-safe usage of OpenGL ES easier to reason about. More... | |
struct | RenderPassData |
Encapsulates data that will be needed in the reactor for the encoding of commands for this render pass. More... | |
class | RenderPassGLES |
class | SamplerGLES |
class | SamplerLibraryGLES |
class | ShaderFunctionGLES |
class | ShaderLibraryGLES |
class | SurfaceGLES |
class | TextureGLES |
class | UniqueHandleGLES |
A unique handle to an OpenGL object. The collection of this handle scheduled the destruction of the associated OpenGL object in the reactor. More... | |
class | DebugAllocatorStats |
class | AllocatorMTL |
class | BlitPassMTL |
class | CommandBufferMTL |
struct | ComputePassBindingsCacheMTL |
Ensures that bindings on the pass are not redundantly set or updated. Avoids making the driver do additional checks and makes the frame insights during profiling and instrumentation not complain about the same. More... | |
class | ComputePassMTL |
class | ComputePipelineMTL |
class | ImpellerMetalCaptureManager |
Creates and manages a Metal capture scope that supports frame capture when using the FlutterMetalLayer backed drawable. More... | |
class | ContextMTL |
class | DeviceBufferMTL |
class | GPUTracerMTL |
Approximate the GPU frame time by computing a difference between the smallest GPUStartTime and largest GPUEndTime for all command buffers submitted in a frame workload. More... | |
struct | PassBindingsCacheMTL |
Ensures that bindings on the pass are not redundantly set or updated. Avoids making the driver do additional checks and makes the frame insights during profiling and instrumentation not complain about the same. More... | |
class | PipelineLibraryMTL |
class | PipelineMTL |
class | RenderPassMTL |
class | SamplerLibraryMTL |
class | SamplerMTL |
class | ShaderFunctionMTL |
class | ShaderLibraryMTL |
class | SurfaceMTL |
class | SwapchainTransientsMTL |
A cache for the onscreen texture attachments used in surface_mtl. More... | |
class | TextureMTL |
class | VertexDescriptorMTL |
class | AllocatedTextureSourceVK |
class | AllocatorVK |
class | AHBTextureSourceVK |
A texture source that wraps an instance of AHardwareBuffer. More... | |
struct | BarrierVK |
Defines an operations and memory access barrier on a resource. More... | |
class | BlitPassVK |
struct | FRCFormatDescriptor |
A pixel format and usage that is sufficient to check if images of that format and usage are suitable for use with fixed-rate compression. More... | |
class | CapabilitiesVK |
The Vulkan layers and extensions wrangler. More... | |
class | CommandBufferVK |
class | BackgroundCommandPoolVK |
class | CommandPoolVK |
Manages the lifecycle of a single |vk::CommandPool|. More... | |
class | CommandPoolRecyclerVK |
Creates and manages the lifecycle of |vk::CommandPool| objects. More... | |
class | CommandQueueVK |
class | ComputePassVK |
class | ComputePipelineVK |
class | IdleWaiterVK |
class | ContextVK |
class | DebugReportVK |
struct | DescriptorPoolSize |
struct | DescriptorCache |
Used and un-used descriptor sets. More... | |
class | DescriptorPoolVK |
A per-frame descriptor pool. Descriptors from this pool don't need to be freed individually. Instead, the pool must be collected after all the descriptors allocated from it are done being used. More... | |
class | DescriptorPoolRecyclerVK |
Creates and manages the lifecycle of |vk::DescriptorPoolVK| objects. More... | |
class | DeviceBufferVK |
class | DeviceHolderVK |
Holds a strong reference to the underlying logical Vulkan device. This comes in handy when the context is being torn down and the various components on different threads may need to orchestrate safe shutdown. More... | |
class | DriverInfoVK |
Get information about the Vulkan driver. More... | |
class | WaitSetEntry |
class | FenceWaiterVK |
class | GPUTracerVK |
A class that uses timestamp queries to record the approximate GPU execution time. More... | |
class | GPUProbe |
struct | PipelineCacheHeaderVK |
An Impeller specific header prepended to all pipeline cache information that is persisted on disk. This information is used to perform additional integrity checks that may have been missed by the Vulkan driver. More... | |
class | PipelineCacheVK |
class | PipelineLibraryVK |
class | PipelineVK |
struct | QueueIndexVK |
class | QueueVK |
A thread safe object that can be used to access device queues. If multiple objects are created with the same underlying queue, then the external synchronization guarantees of Vulkan queues cannot be met. So care must be taken the same device queue doesn't form the basis of multiple QueueVK s. More... | |
struct | QueuesVK |
The collection of queues used by the context. The queues may all be the same. More... | |
class | RenderPassBuilderVK |
class | RenderPassVK |
class | ResourceVK |
A resource that may be reclaimed by a |ResourceManagerVK|. More... | |
class | ResourceManagerVK |
A resource manager controls how resources are allocated and reclaimed. More... | |
class | ResourceVKT |
An internal type that is used to move a resource reference. More... | |
class | UniqueResourceVKT |
A unique handle to a resource which will be reclaimed by the specified resource manager. More... | |
class | SamplerLibraryVK |
class | SamplerVK |
class | ShaderFunctionVK |
class | ShaderLibraryVK |
class | SharedObjectVK |
class | SharedObjectVKT |
class | SurfaceContextVK |
struct | AHBFrameSynchronizerVK |
class | AHBSwapchainImplVK |
The implementation of a swapchain at a specific size. Resizes to the surface will cause the instance of the swapchain impl at that size to be discarded along with all its caches and transients. More... | |
class | AHBSwapchainVK |
The implementation of a swapchain that uses hardware buffers presented to a given surface control on Android. More... | |
class | AHBTexturePoolVK |
Maintains a bounded pool of hardware buffer backed texture sources that can be used as swapchain images. More... | |
class | ExternalSemaphoreVK |
A Vulkan semaphore that can be exported as a platform specific file descriptor. More... | |
class | KHRSwapchainImageVK |
struct | KHRFrameSynchronizerVK |
class | KHRSwapchainImplVK |
An instance of a swapchain that does NOT adapt to going out of date with the underlying surface. Errors will be indicated when the next drawable is acquired from this implementation of the swapchain. If the error is due the swapchain going out of date, the caller must recreate another instance by optionally stealing this implementations guts. More... | |
class | KHRSwapchainVK |
A swapchain implemented backed by VK_KHR_swapchain and VK_KHR_surface. More... | |
class | SurfaceVK |
class | SwapchainTransientsVK |
Resources, meant to be memoized by the texture descriptor of the wrapped swapchain images, that are intuitively cheap to create but have been observed to be time consuming to construct on some Vulkan drivers. This includes the device-transient MSAA and depth-stencil textures. More... | |
class | SwapchainVK |
A swapchain that adapts to the underlying surface going out of date. If the caller cannot acquire the next drawable, it is due to an unrecoverable error and the swapchain must be recreated with a new surface. More... | |
struct | FramebufferAndRenderPass |
class | TextureSourceVK |
Abstract base class that represents a vkImage and an vkImageView. More... | |
class | TextureVK |
class | TrackedObjectsVK |
A per-frame object used to track resource lifetimes and allocate command buffers and descriptor sets. More... | |
struct | AllocatorVMATraits |
struct | PoolVMA |
struct | PoolVMATraits |
struct | BufferVMA |
struct | BufferVMATraits |
struct | ImageVMA |
struct | ImageVMATraits |
struct | WorkaroundsVK |
A non-exhaustive set of driver specific workarounds. More... | |
class | YUVConversionLibraryVK |
Due the way the Vulkan spec. treats "identically defined" conversions, creating two conversion with identical descriptors, using one with the image and the other with the sampler, is invalid use. More... | |
class | YUVConversionVK |
It is sometimes necessary to deal with formats not native to Vulkan. In such cases, extra information is necessary to access images. A YUV conversion object is needed in such instances. More... | |
struct | YUVConversionDescriptorVKHash |
struct | YUVConversionDescriptorVKEqual |
struct | ImmutableSamplerKeyVK |
struct | BlitCommand |
struct | BlitCopyTextureToTextureCommand |
struct | BlitResizeTextureCommand |
struct | BlitCopyTextureToBufferCommand |
struct | BlitCopyBufferToTextureCommand |
struct | BlitGenerateMipmapCommand |
class | BlitPass |
Blit passes encode blit into the underlying command buffer. More... | |
class | StandardCapabilities |
class | Capabilities |
class | CapabilitiesBuilder |
class | Resource |
struct | TextureAndSampler |
combines the texture, sampler and sampler slot information. More... | |
struct | Command |
An object used to specify work to the GPU along with references to resources the GPU will used when doing said work. More... | |
class | CommandBuffer |
A collection of encoded commands to be submitted to the GPU for execution. A command buffer is obtained from a graphics Context . More... | |
class | CommandQueue |
An interface for submitting command buffers to the GPU for encoding and execution. More... | |
class | ComputePass |
Compute passes encode compute shader into the underlying command buffer. More... | |
struct | ComputePipelineBuilder |
An optional (but highly recommended) utility for creating pipelines from reflected shader information. More... | |
class | Pipeline |
Describes the fixed function and programmable aspects of rendering and compute operations performed by commands submitted to the GPU via a command buffer. More... | |
class | ComputePipelineDescriptor |
class | ImpellerContextFuture |
class | Context |
To do anything rendering related with Impeller, you need a context. More... | |
struct | PipelineFuture |
class | GenericRenderPipelineHandle |
class | RenderPipelineHandle |
class | ComputePipelineHandle |
struct | PipelineBuilder |
An optional (but highly recommended) utility for creating pipelines from reflected shader information. More... | |
class | PipelineDescriptor |
class | PipelineLibrary |
class | Pool |
A thread-safe pool with a limited byte size. More... | |
class | RenderPass |
Render passes encode render commands directed as one specific render target into an underlying command buffer. More... | |
struct | RenderTargetConfig |
class | RenderTarget |
class | RenderTargetAllocator |
a wrapper around the impeller [Allocator] instance that can be used to provide caching of allocated render target textures. More... | |
class | SamplerLibrary |
class | ShaderFunction |
struct | ShaderKey |
class | ShaderLibrary |
class | ShaderStageCompatibilityChecker |
Checks, at C++ compile-time, if the two pipeline stages are compatible. More... | |
struct | Snapshot |
Represents a texture and its intended draw transform/sampler configuration. More... | |
class | Surface |
class | VertexBufferBuilder |
class | VertexDescriptor |
Describes the format and layout of vertices expected by the pipeline. While it is possible to construct these descriptors manually, it would be tedious to do so. These are usually constructed using shader information reflected using impellerc . The usage of this class is indirectly via PipelineBuilder<VS, FS> . More... | |
class | RuntimeStage |
class | RuntimeStagePlayground |
class | ShaderArchive |
class | ShaderArchiveWriter |
struct | Vertices |
class | PathTessellator |
class | Tessellator |
A utility that generates triangles of the specified fill type given a polyline. This happens on the CPU. More... | |
class | TessellatorLibtess |
An extended tessellator that offers arbitrary/concave tessellation via the libtess2 library. More... | |
struct | EGLImageWithDisplay |
struct | EGLImageWithDisplayTraits |
struct | EGLImageKHRWithDisplay |
struct | EGLImageKHRWithDisplayTraits |
struct | GLTexture |
struct | GLTextureTraits |
class | TypefaceSkia |
class | TypographerContextSkia |
class | Font |
Describes a typeface along with any modifications to its intrinsic properties. More... | |
struct | GlyphProperties |
struct | ScaledFont |
A font and a scale. Used as a key that represents a typeface within a glyph atlas. More... | |
struct | SubpixelGlyph |
A glyph and its subpixel position. More... | |
struct | FontGlyphPair |
A font along with a glyph in that font rendered at a particular scale and subpixel position. More... | |
struct | Glyph |
The glyph index in the typeface. More... | |
struct | AbslHashAdapterCombiner |
Helper for AbslHashAdapter. Tallies a hash value with fml::HashCombine. More... | |
struct | AbslHashAdapter |
struct | FrameBounds |
class | GlyphAtlas |
A texture containing the bitmap representation of glyphs in different fonts along with the ability to query the location of specific font glyphs within the texture. More... | |
class | GlyphAtlasContext |
A container for caching a glyph atlas across frames. More... | |
class | FontGlyphAtlas |
An object that can look up glyph locations within the GlyphAtlas for a particular typeface. More... | |
class | LazyGlyphAtlas |
class | SkylineRectanglePacker |
struct | IPoint16 |
class | RectanglePacker |
Packs rectangles into a specified area without rotating them. More... | |
class | TextFrame |
Represents a collection of shaped text runs. More... | |
class | TextRun |
Represents a collection of positioned glyphs from a specific font. More... | |
class | Typeface |
A typeface, usually obtained from a font-file, on disk describes the intrinsic properties of the font. Typefaces are rarely used directly. Instead, font refer to typefaces along with any modifications applied to its intrinsic properties. More... | |
class | TypographerContext |
The graphics context necessary to render text. More... | |
Functions | |
std::shared_ptr< fml::Mapping > | CreateMappingWithCopy (const uint8_t *contents, Bytes length) |
Creates a mapping with copy of the bytes. More... | |
std::shared_ptr< fml::Mapping > | CreateMappingFromAllocation (const std::shared_ptr< Allocation > &allocation) |
Creates a mapping from allocation. More... | |
std::shared_ptr< fml::Mapping > | CreateMappingWithString (std::string string) |
Creates a mapping with string data. More... | |
std::shared_ptr< fml::Mapping > | CreateMappingWithString (std::shared_ptr< const std::string > string) |
Creates a mapping with string data. More... | |
constexpr Bytes | operator""_bytes (unsigned long long int size) |
constexpr KiloBytes | operator""_kb (unsigned long long int size) |
constexpr MegaBytes | operator""_mb (unsigned long long int size) |
constexpr GigaBytes | operator""_gb (unsigned long long int size) |
constexpr KibiBytes | operator""_kib (unsigned long long int size) |
constexpr MebiBytes | operator""_mib (unsigned long long int size) |
constexpr GibiBytes | operator""_gib (unsigned long long int size) |
IMPELLER_ENUM_IS_MASK (MyMaskBits) | |
template<class ComparableType , class = std::enable_if_t<std::is_base_of_v<ComparableBase, ComparableType>>> | |
bool | DeepComparePointer (const std::shared_ptr< ComparableType > &lhs, const std::shared_ptr< ComparableType > &rhs) |
template<class Key , class ComparableType , class = std::enable_if_t<std::is_base_of_v<ComparableBase, ComparableType>>> | |
bool | DeepCompareMap (const std::map< Key, std::shared_ptr< ComparableType >> &lhs, const std::map< Key, std::shared_ptr< ComparableType >> &rhs) |
void | ImpellerUnimplemented (const char *method, const char *file, int line) |
template<typename EnumType , typename std::enable_if< MaskTraits< EnumType >::kIsMask, bool >::type = true> | |
constexpr Mask< EnumType > | operator| (const EnumType &lhs, const EnumType &rhs) |
template<typename EnumType , typename std::enable_if< MaskTraits< EnumType >::kIsMask, bool >::type = true> | |
constexpr Mask< EnumType > | operator& (const EnumType &lhs, const EnumType &rhs) |
template<typename EnumType , typename std::enable_if< MaskTraits< EnumType >::kIsMask, bool >::type = true> | |
constexpr Mask< EnumType > | operator^ (const EnumType &lhs, const EnumType &rhs) |
template<typename EnumType , typename std::enable_if< MaskTraits< EnumType >::kIsMask, bool >::type = true> | |
constexpr Mask< EnumType > | operator~ (const EnumType &other) |
template<typename EnumType , typename std::enable_if< MaskTraits< EnumType >::kIsMask, bool >::type = true> | |
constexpr Mask< EnumType > | operator| (const EnumType &lhs, const Mask< EnumType > &rhs) |
template<typename EnumType , typename std::enable_if< MaskTraits< EnumType >::kIsMask, bool >::type = true> | |
constexpr Mask< EnumType > | operator& (const EnumType &lhs, const Mask< EnumType > &rhs) |
template<typename EnumType , typename std::enable_if< MaskTraits< EnumType >::kIsMask, bool >::type = true> | |
constexpr Mask< EnumType > | operator^ (const EnumType &lhs, const Mask< EnumType > &rhs) |
template<typename EnumType , typename std::enable_if_t< MaskTraits< EnumType >::kIsMask, bool > = true> | |
constexpr bool | operator< (const EnumType &lhs, const Mask< EnumType > &rhs) |
template<typename EnumType , typename std::enable_if_t< MaskTraits< EnumType >::kIsMask, bool > = true> | |
constexpr bool | operator> (const EnumType &lhs, const Mask< EnumType > &rhs) |
template<typename EnumType , typename std::enable_if_t< MaskTraits< EnumType >::kIsMask, bool > = true> | |
constexpr bool | operator<= (const EnumType &lhs, const Mask< EnumType > &rhs) |
template<typename EnumType , typename std::enable_if_t< MaskTraits< EnumType >::kIsMask, bool > = true> | |
constexpr bool | operator>= (const EnumType &lhs, const Mask< EnumType > &rhs) |
template<typename EnumType , typename std::enable_if_t< MaskTraits< EnumType >::kIsMask, bool > = true> | |
constexpr bool | operator== (const EnumType &lhs, const Mask< EnumType > &rhs) |
template<typename EnumType , typename std::enable_if_t< MaskTraits< EnumType >::kIsMask, bool > = true> | |
constexpr bool | operator!= (const EnumType &lhs, const Mask< EnumType > &rhs) |
template<class T > | |
std::future< T > | RealizedFuture (T t) |
std::string | SPrintF (const char *format,...) |
bool | HasPrefix (const std::string &string, const std::string &prefix) |
bool | HasSuffix (const std::string &string, const std::string &suffix) |
std::string | StripPrefix (const std::string &string, const std::string &to_strip) |
class | IPLR_CAPABILITY ("mutex") Mutex |
void | ImpellerValidationErrorsSetFatal (bool fatal) |
void | ImpellerValidationErrorsSetCallback (ValidationFailureCallback callback) |
Sets a callback that callers (usually tests) can set to intercept validation failures. More... | |
void | ImpellerValidationBreak (const char *message, const char *file, int line) |
bool | ImpellerValidationErrorsAreFatal () |
std::vector< spirv_cross::ID > | SortUniforms (const spirv_cross::ParsedIR *ir, const spirv_cross::Compiler *compiler, std::optional< spirv_cross::SPIRType::BaseType > type_filter=std::nullopt, bool include=true) |
Sorts uniform declarations in an IR according to decoration order. More... | |
constexpr bool | StoreActionNeedsResolveTexture (StoreAction action) |
std::string | TextureUsageMaskToString (TextureUsageMask mask) |
std::string | AttachmentToString (const Attachment &attachment) |
std::string | ColorAttachmentToString (const ColorAttachment &color) |
std::string | DepthAttachmentToString (const DepthAttachment &depth) |
std::string | StencilAttachmentToString (const StencilAttachment &stencil) |
constexpr const char * | StorageModeToString (StorageMode mode) |
constexpr bool | IsDepthWritable (PixelFormat format) |
constexpr bool | IsStencilWritable (PixelFormat format) |
constexpr const char * | PixelFormatToString (PixelFormat format) |
constexpr const char * | LoadActionToString (LoadAction action) |
constexpr const char * | StoreActionToString (StoreAction action) |
constexpr bool | CanClearAttachment (LoadAction action) |
constexpr bool | CanDiscardAttachmentWhenDone (StoreAction action) |
constexpr const char * | TextureTypeToString (TextureType type) |
constexpr bool | IsMultisampleCapable (TextureType type) |
IMPELLER_ENUM_IS_MASK (TextureUsage) | |
constexpr const char * | TextureUsageToString (TextureUsage usage) |
IMPELLER_ENUM_IS_MASK (ColorWriteMaskBits) | |
constexpr size_t | BytesPerPixelForPixelFormat (PixelFormat format) |
constexpr ShaderStage | ToShaderStage (RuntimeShaderStage stage) |
constexpr Vector4 | ToVector (Color color) |
std::string | TextureDescriptorToString (const TextureDescriptor &desc) |
constexpr const char * | CompressionTypeToString (CompressionType type) |
std::shared_ptr< ColorFilterContents > | WrapWithInvertColors (const std::shared_ptr< FilterInput > &input, ColorFilterContents::AbsorbOpacity absorb_opacity) |
std::shared_ptr< ColorFilterContents > | WrapWithGPUColorFilter (const flutter::DlColorFilter *filter, const std::shared_ptr< FilterInput > &input, ColorFilterContents::AbsorbOpacity absorb_opacity) |
ColorFilterProc | GetCPUColorFilterProc (const flutter::DlColorFilter *filter) |
static impeller::SamplerDescriptor | ToSamplerDescriptor (const flutter::DlFilterMode options) |
static std::optional< const Rect > | ToOptRect (const flutter::DlRect *rect) |
static Paint::Style | ToStyle (flutter::DlDrawStyle style) |
static FilterContents::BlurStyle | ToBlurStyle (flutter::DlBlurStyle blur_style) |
static Entity::ClipOperation | ToClipOperation (flutter::DlClipOp clip_op) |
static bool | RequiresReadbackForBlends (const ContentContext &renderer, flutter::DlBlendMode max_root_blend_mode) |
Subclasses. More... | |
std::shared_ptr< Texture > | DisplayListToTexture (const sk_sp< flutter::DisplayList > &display_list, ISize size, AiksContext &context, bool reset_host_buffer=true, bool generate_mips=false) |
Render the provided display list to a texture with the given size. More... | |
bool | RenderToTarget (ContentContext &context, RenderTarget render_target, const sk_sp< flutter::DisplayList > &display_list, Rect cull_rect, bool reset_host_buffer, bool is_onscreen=true) |
Render the provided display list to the render target. More... | |
std::shared_ptr< FilterContents > | WrapInput (const flutter::DlImageFilter *filter, const FilterInput::Ref &input) |
Generate a new FilterContents using this filter's configuration. More... | |
static Scalar | GetShaderClipDepth (uint32_t clip_depth) |
bool | RenderClipRestore (const ContentContext &renderer, RenderPass &pass, uint32_t clip_depth, std::optional< Rect > restore_coverage) |
Render a restore clip. More... | |
std::array< std::vector< Scalar >, 15 > | GetPorterDuffSpecConstants (bool supports_decal) |
template<typename PipelineT > | |
static std::unique_ptr< PipelineT > | CreateDefaultPipeline (const Context &context) |
ContentContextOptions | OptionsFromPass (const RenderPass &pass) |
ContentContextOptions | OptionsFromPassAndEntity (const RenderPass &pass, const Entity &entity) |
std::optional< BlendMode > | InvertPorterDuffBlend (BlendMode blend_mode) |
template<typename TPipeline > | |
static std::optional< Entity > | AdvancedBlend (const FilterInput::Vector &inputs, const ContentContext &renderer, const Entity &entity, const Rect &coverage, BlendMode blend_mode, std::optional< Color > foreground_color, ColorFilterContents::AbsorbOpacity absorb_opacity, PipelineProc pipeline_proc, std::optional< Scalar > alpha) |
static std::optional< Entity > | PipelineBlend (const FilterInput::Vector &inputs, const ContentContext &renderer, const Entity &entity, const Rect &coverage, BlendMode blend_mode, std::optional< Color > foreground_color, ColorFilterContents::AbsorbOpacity absorb_opacity, std::optional< Scalar > alpha) |
KernelSamples | GenerateBlurInfo (BlurParameters parameters) |
GaussianBlurPipeline::FragmentShader::KernelSamples | LerpHackKernelSamples (KernelSamples parameters) |
std::shared_ptr< Texture > | CreateGradientTexture (const GradientData &gradient_data, const std::shared_ptr< impeller::Context > &context) |
Create a host visible texture that contains the gradient defined by the provided gradient data. More... | |
std::vector< StopData > | CreateGradientColors (const std::vector< Color > &colors, const std::vector< Scalar > &stops) |
Populate a vector with the color and stop data for a gradient. More... | |
int | PopulateUniformGradientColors (const std::vector< Color > &colors, const std::vector< Scalar > &stops, Vector4 frag_info_colors[kMaxUniformGradientStops], Vector4 frag_info_stop_pairs[kMaxUniformGradientStops/2]) |
Populate 2 arrays with the colors and stop data for a gradient. More... | |
static ShaderType | GetShaderType (RuntimeUniformType type) |
static std::unique_ptr< ShaderMetadata > | MakeShaderMetadata (const RuntimeUniformDescription &uniform) |
static Point | eccentricity (Point v, double sInverse) |
static Scalar | computeErf7 (Scalar x) |
static Point | NegPos (Scalar v) |
Point | SizeToPoint (Size size) |
static std::optional< SamplerAddressMode > | TileModeToAddressMode (Entity::TileMode tile_mode, const Capabilities &capabilities) |
std::optional< Rect > | ComputeSaveLayerCoverage (const Rect &content_coverage, const Matrix &effect_transform, const Rect &coverage_limit, const std::shared_ptr< FilterContents > &image_filter, bool flood_output_coverage=false, bool flood_input_coverage=false) |
Compute the coverage of a subpass in the global coordinate space. More... | |
static constexpr bool | ValidateBlendModes () |
const char * | BlendModeToString (BlendMode blend_mode) |
static constexpr Color | Min (Color c, float threshold) |
static constexpr Scalar | Luminosity (Vector3 color) |
static constexpr Vector3 | ClipColor (Vector3 color) |
static constexpr Vector3 | SetLuminosity (Vector3 color, Scalar luminosity) |
static constexpr Scalar | Saturation (Vector3 color) |
static constexpr Vector3 | SetSaturation (Vector3 color, Scalar saturation) |
static constexpr Vector3 | ComponentChoose (Vector3 a, Vector3 b, Vector3 value, Scalar cutoff) |
static constexpr Vector3 | ToRGB (Color color) |
static constexpr Color | FromRGB (Vector3 color, Scalar alpha) |
static constexpr Color | ApplyBlendedColor (Color dst, Color src, Vector3 blend_result) |
static Color | DoColorBlend (Color dst, Color src, const std::function< Vector3(Vector3, Vector3)> &blend_rgb_func) |
static Color | DoColorBlendComponents (Color dst, Color src, const std::function< Scalar(Scalar, Scalar)> &blend_func) |
std::string | ColorToString (const Color &color) |
template<class T , class = std::enable_if_t<std::is_arithmetic_v<T>>> | |
constexpr Color | operator+ (T value, const Color &c) |
template<class T , class = std::enable_if_t<std::is_arithmetic_v<T>>> | |
constexpr Color | operator- (T value, const Color &c) |
template<class T , class = std::enable_if_t<std::is_arithmetic_v<T>>> | |
constexpr Color | operator* (T value, const Color &c) |
template<class T , class = std::enable_if_t<std::is_arithmetic_v<T>>> | |
constexpr Color | operator/ (T value, const Color &c) |
template<class... Args> | |
static void | BM_StrokePath (benchmark::State &state, Args &&... args) |
template<class... Args> | |
static void | BM_Convex (benchmark::State &state, Args &&... args) |
MAKE_STROKE_BENCHMARK_CAPTURE_ALL_CAPS_JOINS (Cubic, false) | |
MAKE_STROKE_BENCHMARK_CAPTURE_ALL_CAPS_JOINS (Quadratic, false) | |
BENCHMARK_CAPTURE (BM_Convex, rrect_convex, CreateRRect(), true) | |
MAKE_STROKE_PATH_BENCHMARK_CAPTURE (RRect, Butt, Bevel,) | |
MAKE_STROKE_PATH_BENCHMARK_CAPTURE (RRect, Butt, Miter,) | |
MAKE_STROKE_PATH_BENCHMARK_CAPTURE (RRect, Butt, Round,) | |
BENCHMARK_CAPTURE (BM_Convex, rse_convex, CreateRSuperellipse(), true) | |
MAKE_STROKE_PATH_BENCHMARK_CAPTURE (RSuperellipse, Butt, Bevel,) | |
MAKE_STROKE_PATH_BENCHMARK_CAPTURE (RSuperellipse, Butt, Miter,) | |
MAKE_STROKE_PATH_BENCHMARK_CAPTURE (RSuperellipse, Butt, Round,) | |
static void | AppendColor (const Color &color, GradientData *data) |
GradientData | CreateGradientBuffer (const std::vector< Color > &colors, const std::vector< Scalar > &stops) |
Populate a vector with the interpolated color bytes for the linear gradient described by colors and stops. More... | |
constexpr InternalHalf | ScalarToHalf (Scalar f) |
Convert a scalar to a half precision float. More... | |
template<class F , class I , class = MixedOp<F, I>> | |
constexpr TPoint< F > | operator+ (const TPoint< F > &p1, const TPoint< I > &p2) |
template<class F , class I , class = MixedOp<F, I>> | |
constexpr TPoint< F > | operator+ (const TPoint< I > &p1, const TPoint< F > &p2) |
template<class F , class I , class = MixedOp<F, I>> | |
constexpr TPoint< F > | operator- (const TPoint< F > &p1, const TPoint< I > &p2) |
template<class F , class I , class = MixedOp<F, I>> | |
constexpr TPoint< F > | operator- (const TPoint< I > &p1, const TPoint< F > &p2) |
template<class F , class I , class = MixedOp<F, I>> | |
constexpr TPoint< F > | operator* (const TPoint< F > &p1, const TPoint< I > &p2) |
template<class F , class I , class = MixedOp<F, I>> | |
constexpr TPoint< F > | operator* (const TPoint< I > &p1, const TPoint< F > &p2) |
template<class F , class I , class = MixedOp<F, I>> | |
constexpr TPoint< F > | operator/ (const TPoint< F > &p1, const TPoint< I > &p2) |
template<class F , class I , class = MixedOp<F, I>> | |
constexpr TPoint< F > | operator/ (const TPoint< I > &p1, const TPoint< F > &p2) |
template<class T , class U , class = std::enable_if_t<std::is_arithmetic_v<U>>> | |
constexpr TPoint< T > | operator* (U s, const TPoint< T > &p) |
template<class T , class U , class = std::enable_if_t<std::is_arithmetic_v<U>>> | |
constexpr TPoint< T > | operator/ (U s, const TPoint< T > &p) |
template<class T , class U > | |
constexpr TPoint< T > | operator+ (const TSize< U > &s, const TPoint< T > &p) |
template<class T , class U > | |
constexpr TPoint< T > | operator- (const TSize< U > &s, const TPoint< T > &p) |
template<class T , class U > | |
constexpr TPoint< T > | operator* (const TSize< U > &s, const TPoint< T > &p) |
template<class T , class U > | |
constexpr TPoint< T > | operator/ (const TSize< U > &s, const TPoint< T > &p) |
template<class T > | |
constexpr TPoint< T > | operator- (const TPoint< T > &p, T v) |
TEST (RationalTest, Make) | |
TEST (RationalTest, EqualsSameDen) | |
TEST (RationalTest, NotEqualsSameDen) | |
TEST (RationalTest, EqualsDifferentDen) | |
TEST (RationalTest, NegationNotEquals) | |
TEST (RationalTest, LessThanSameDen) | |
TEST (RationalTest, LessThanNegation) | |
TEST (RationalTest, LessThanDifferentDen) | |
TEST (RationalTest, NotLessThanDifferentDen) | |
TEST (RationalTest, SameHashes) | |
TEST (RationalTest, DifferentHashes) | |
static bool | CornerContains (const Point &p, const Point &corner, const Point &direction, const Size &radii) |
static constexpr Point | kUpperLeftDirection (-1.0f, -1.0f) |
static constexpr Point | kUpperRightDirection (1.0f, -1.0f) |
static constexpr Point | kLowerLeftDirection (-1.0f, 1.0f) |
static constexpr Point | kLowerRightDirection (1.0f, 1.0f) |
static void | NormalizeEmptyToZero (Size &radii) |
static void | AdjustScale (Scalar &radius1, Scalar &radius2, Scalar dimension, Scalar &scale) |
template<class T , class = std::enable_if_t<std::is_arithmetic_v<T>>> | |
constexpr T | Absolute (const T &val) |
template<> | |
constexpr Scalar | Absolute< Scalar > (const float &val) |
constexpr bool | ScalarNearlyZero (Scalar x, Scalar tolerance=kEhCloseEnough) |
constexpr bool | ScalarNearlyEqual (Scalar x, Scalar y, Scalar tolerance=kEhCloseEnough) |
template<class T , class U , class = std::enable_if_t<std::is_arithmetic_v<U>>> | |
constexpr TSize< T > | operator* (U s, const TSize< T > &p) |
template<class T , class U , class = std::enable_if_t<std::is_arithmetic_v<U>>> | |
constexpr TSize< T > | operator/ (U s, const TSize< T > &p) |
template<class U , class = std::enable_if_t<std::is_arithmetic_v<U>>> | |
constexpr Vector3 | operator* (U s, const Vector3 &p) |
template<class U , class = std::enable_if_t<std::is_arithmetic_v<U>>> | |
constexpr Vector3 | operator+ (U s, const Vector3 &p) |
template<class U , class = std::enable_if_t<std::is_arithmetic_v<U>>> | |
constexpr Vector3 | operator- (U s, const Vector3 &p) |
template<class U , class = std::enable_if_t<std::is_arithmetic_v<U>>> | |
constexpr Vector3 | operator/ (U s, const Vector3 &p) |
Scalar | ComputeCubicSubdivisions (Scalar scale_factor, Point p0, Point p1, Point p2, Point p3) |
Scalar | ComputeQuadradicSubdivisions (Scalar scale_factor, Point p0, Point p1, Point p2) |
Scalar | ComputeConicSubdivisions (Scalar scale_factor, Point p0, Point p1, Point p2, Scalar w) |
TEST (ValidationTest, IsFatal) | |
static std::vector< std::shared_ptr< fml::Mapping > > | ShaderLibraryMappingsForPlayground () |
static std::vector< std::shared_ptr< fml::Mapping > > | ShaderLibraryMappingsForPlayground () |
static std::vector< std::shared_ptr< fml::Mapping > > | ShaderLibraryMappingsForPlayground () |
static void | FindSwiftShaderICDAtKnownPaths () |
void | SetupSwiftshaderOnce (bool use_swiftshader) |
Find and setup the installable client driver for a locally built SwiftShader at known paths. The option to use SwiftShader can only be used once in the process. While calling this method multiple times is fine, specifying a different use_swiftshader value will trip an assertion. More... | |
static std::string | FormatWindowTitle (const std::string &test_name) |
static size_t | GetBytesPerPixel (DecompressedImage::Format format) |
std::string | PlaygroundBackendToString (PlaygroundBackend backend) |
static void | InitializeGLFWOnce () |
static void | PlaygroundKeyCallback (GLFWwindow *window, int key, int scancode, int action, int mods) |
static std::shared_ptr< Texture > | CreateTextureForDecompressedImage (const std::shared_ptr< Context > &context, DecompressedImage &decompressed_image, bool enable_mipmapping) |
constexpr RuntimeStageBackend | PlaygroundBackendToRuntimeStageBackend (PlaygroundBackend backend) |
Point | DrawPlaygroundPoint (PlaygroundPoint &point) |
std::tuple< Point, Point > | DrawPlaygroundLine (PlaygroundPoint &point_a, PlaygroundPoint &point_b) |
static void | DeleteFBO (const ProcTableGLES &gl, GLuint fbo, GLenum type) |
static std::optional< GLuint > | ConfigureFBO (const ProcTableGLES &gl, const std::shared_ptr< Texture > &texture, GLenum fbo_type) |
bool | EncodeCommandsInReactor (const ReactorGLES &reactor, const std::vector< std::unique_ptr< BlitEncodeGLES >> &commands, const std::string &label) |
static std::string | NormalizeUniformKey (const std::string &key) |
static std::string | CreateUniformMemberKey (const std::string &struct_name, const std::string &member, bool is_array) |
static std::string | CreateUniformMemberKey (const std::string &non_struct_member) |
static std::string | GetGLString (const ProcTableGLES &gl, GLenum name) |
static std::string | GetGLStringi (const ProcTableGLES &gl, GLenum name, int index) |
static bool | DetermineIfES (const std::string &version) |
static bool | DetermineIfANGLE (const std::string &version) |
static std::optional< Version > | DetermineVersion (std::string version) |
static GLenum | ToTarget (DeviceBufferGLES::BindingType type) |
std::string | DebugToFramebufferError (int status) |
constexpr GLenum | ToMode (PrimitiveType primitive_type) |
constexpr GLenum | ToIndexType (IndexType type) |
constexpr GLenum | ToStencilOp (StencilOperation op) |
constexpr GLenum | ToCompareFunction (CompareFunction func) |
constexpr GLenum | ToBlendFactor (BlendFactor factor) |
constexpr GLenum | ToBlendOperation (BlendOperation op) |
constexpr std::optional< GLenum > | ToVertexAttribType (ShaderType type) |
constexpr GLenum | ToTextureType (TextureType type) |
constexpr std::optional< GLenum > | ToTextureTarget (TextureType type) |
std::string | HandleTypeToString (HandleType type) |
static std::string | GetShaderInfoLog (const ProcTableGLES &gl, GLuint shader) |
static std::string | GetShaderSource (const ProcTableGLES &gl, GLuint shader) |
static void | LogShaderCompilationFailure (const ProcTableGLES &gl, GLuint shader, std::string_view name, const fml::Mapping &source_mapping, ShaderStage stage) |
static bool | LinkProgram (const ReactorGLES &reactor, const std::shared_ptr< PipelineGLES > &pipeline, const std::shared_ptr< const ShaderFunction > &vert_function, const std::shared_ptr< const ShaderFunction > &frag_function) |
const char * | GLErrorToString (GLenum value) |
bool | GLErrorIsFatal (GLenum value) |
ProcTableGLES::Resolver | WrappedResolver (const ProcTableGLES::Resolver &resolver) |
static const char * | FramebufferStatusToString (GLenum status) |
static const char * | AttachmentTypeString (GLint type) |
static std::string | DescribeFramebufferAttachment (const ProcTableGLES &gl, GLenum attachment) |
static std::optional< GLenum > | ToDebugIdentifier (DebugResourceType type) |
static bool | ResourceIsLive (const ProcTableGLES &gl, DebugResourceType type, GLint name) |
template<class Type > | |
void | BuildGLArgumentsStream (std::stringstream &stream, Type arg) |
constexpr void | BuildGLArgumentsStream (std::stringstream &stream) |
template<class Type , class... Rest> | |
void | BuildGLArgumentsStream (std::stringstream &stream, Type arg, Rest... other_args) |
template<class... Type> | |
std::string | BuildGLArguments (Type... args) |
void() | glClearDepthf (GLfloat depth) |
void() | glDepthRangef (GLfloat n, GLfloat f) |
void() | glClearDepth (GLdouble depth) |
void() | glDepthRange (GLdouble n, GLdouble f) |
static DebugResourceType | ToDebugResourceType (HandleType type) |
void | ConfigureBlending (const ProcTableGLES &gl, const ColorAttachmentDescriptor *color) |
void | ConfigureStencil (GLenum face, const ProcTableGLES &gl, const StencilAttachmentDescriptor &stencil, uint32_t stencil_reference) |
void | ConfigureStencil (const ProcTableGLES &gl, const PipelineDescriptor &pipeline, uint32_t stencil_reference) |
static bool | BindVertexBuffer (const ProcTableGLES &gl, BufferBindingsGLES *vertex_desc_gles, const BufferView &vertex_buffer_view, size_t buffer_index) |
bool | EncodeCommandsInReactor (const RenderPassData &pass_data, const ReactorGLES &reactor, const std::vector< Command > &commands, const std::vector< BufferView > &vertex_buffers, const std::vector< TextureAndSampler > &bound_textures, const std::vector< BufferResource > &bound_buffers, const std::shared_ptr< GPUTracerGLES > &tracer) |
static GLint | ToParam (MinMagFilter minmag_filter) |
static GLint | ToParam (MinMagFilter minmag_filter, MipFilter mip_filter) |
static GLint | ToAddressMode (SamplerAddressMode mode, bool supports_decal_sampler_address_mode) |
static ShaderStage | ToShaderStage (ArchiveShaderType type) |
static std::string | GLESShaderNameToShaderKeyName (const std::string &name, ShaderStage stage) |
HandleType | ToHandleType (TextureGLES::Type type) |
static std::optional< GLenum > | ToRenderBufferFormat (PixelFormat format) |
static GLenum | ToAttachmentType (TextureGLES::AttachmentType point) |
ISize | DeviceMaxTextureSizeSupported (id< MTLDevice > device) |
static bool | DeviceSupportsDeviceTransientTargets (id< MTLDevice > device) |
static bool | SupportsLossyTextureCompression (id< MTLDevice > device) |
static MTLResourceOptions | ToMTLResourceOptions (StorageMode type, bool supports_memoryless_targets, bool supports_uma) |
static MTLStorageMode | ToMTLStorageMode (StorageMode mode, bool supports_memoryless_targets, bool supports_uma) |
API_AVAILABLE (ios(14.0), macos(11.0)) static NSString *MTLCommandEncoderErrorStateToString(MTLCommandEncoderErrorState state) | |
static NSString * | MTLCommandBufferErrorToString (MTLCommandBufferError code) |
static bool | LogMTLCommandBufferErrorIfPresent (id< MTLCommandBuffer > buffer) |
static id< MTLCommandBuffer > | CreateCommandBuffer (id< MTLCommandQueue > queue) |
static CommandBuffer::Status | ToCommitResult (MTLCommandBufferStatus status) |
static bool | DeviceSupportsFramebufferFetch (id< MTLDevice > device) |
static bool | DeviceSupportsComputeSubgroups (id< MTLDevice > device) |
static bool | DeviceSupportsExtendedRangeFormats (id< MTLDevice > device) |
static std::unique_ptr< Capabilities > | InferMetalCapabilities (id< MTLDevice > device, PixelFormat color_format) |
static NSArray< id< MTLLibrary > > * | MTLShaderLibraryFromFilePaths (id< MTLDevice > device, const std::vector< std::string > &libraries_paths) |
static NSArray< id< MTLLibrary > > * | MTLShaderLibraryFromFileData (id< MTLDevice > device, const std::vector< std::shared_ptr< fml::Mapping >> &libraries_data, const std::string &label) |
static id< MTLDevice > | CreateMetalDevice () |
static id< MTLCommandQueue > | CreateMetalCommandQueue (id< MTLDevice > device) |
constexpr PixelFormat | FromMTLPixelFormat (MTLPixelFormat format) |
MTLPixelFormat | SafeMTLPixelFormatDepth24Unorm_Stencil8 () |
MTLPixelFormat | SafeMTLPixelFormatBGR10_XR_sRGB () |
MTLPixelFormat | SafeMTLPixelFormatBGR10_XR () |
MTLPixelFormat | SafeMTLPixelFormatBGRA10_XR () |
constexpr MTLPixelFormat | ToMTLPixelFormat (PixelFormat format) |
constexpr MTLBlendFactor | ToMTLBlendFactor (BlendFactor type) |
constexpr MTLPrimitiveType | ToMTLPrimitiveType (PrimitiveType type) |
constexpr MTLTriangleFillMode | ToMTLTriangleFillMode (PolygonMode mode) |
constexpr MTLIndexType | ToMTLIndexType (IndexType type) |
constexpr MTLCullMode | ToMTLCullMode (CullMode mode) |
constexpr MTLBlendOperation | ToMTLBlendOperation (BlendOperation type) |
constexpr MTLColorWriteMask | ToMTLColorWriteMask (ColorWriteMask type) |
constexpr MTLCompareFunction | ToMTLCompareFunction (CompareFunction func) |
constexpr MTLStencilOperation | ToMTLStencilOperation (StencilOperation op) |
constexpr MTLLoadAction | ToMTLLoadAction (LoadAction action) |
constexpr LoadAction | FromMTLLoadAction (MTLLoadAction action) |
constexpr MTLStoreAction | ToMTLStoreAction (StoreAction action) |
constexpr StoreAction | FromMTLStoreAction (MTLStoreAction action) |
constexpr MTLSamplerMinMagFilter | ToMTLSamplerMinMagFilter (MinMagFilter filter) |
constexpr MTLSamplerMipFilter | ToMTLSamplerMipFilter (MipFilter filter) |
constexpr MTLSamplerAddressMode | ToMTLSamplerAddressMode (SamplerAddressMode mode) |
MTLClearColor | ToMTLClearColor (const Color &color) |
constexpr MTLTextureType | ToMTLTextureType (TextureType type) |
MTLRenderPipelineColorAttachmentDescriptor * | ToMTLRenderPipelineColorAttachmentDescriptor (ColorAttachmentDescriptor descriptor) |
MTLDepthStencilDescriptor * | ToMTLDepthStencilDescriptor (std::optional< DepthAttachmentDescriptor > depth, std::optional< StencilAttachmentDescriptor > front, std::optional< StencilAttachmentDescriptor > back) |
MTLTextureDescriptor * | ToMTLTextureDescriptor (const TextureDescriptor &desc) |
MTLStencilDescriptor * | ToMTLStencilDescriptor (const StencilAttachmentDescriptor &descriptor) |
static void | GetMTLRenderPipelineDescriptor (const PipelineDescriptor &desc, const Callback &callback) |
static MTLComputePipelineDescriptor * | GetMTLComputePipelineDescriptor (const ComputePipelineDescriptor &desc) |
static id< MTLDepthStencilState > | CreateDepthStencilDescriptor (const PipelineDescriptor &desc, id< MTLDevice > device) |
static bool | ConfigureResolveTextureAttachment (const Attachment &desc, MTLRenderPassAttachmentDescriptor *attachment) |
static bool | ConfigureAttachment (const Attachment &desc, MTLRenderPassAttachmentDescriptor *attachment) |
static bool | ConfigureColorAttachment (const ColorAttachment &desc, MTLRenderPassColorAttachmentDescriptor *attachment) |
static bool | ConfigureDepthAttachment (const DepthAttachment &desc, MTLRenderPassDepthAttachmentDescriptor *attachment) |
static bool | ConfigureStencilAttachment (const StencilAttachment &desc, MTLRenderPassStencilAttachmentDescriptor *attachment) |
static MTLRenderPassDescriptor * | ToMTLRenderPassDescriptor (const RenderTarget &desc) |
static bool | Bind (PassBindingsCacheMTL &pass, ShaderStage stage, size_t bind_index, const BufferView &view) |
static bool | Bind (PassBindingsCacheMTL &pass, ShaderStage stage, size_t bind_index, raw_ptr< const Sampler > sampler, const Texture &texture) |
static MTLFunctionType | ToMTLFunctionType (ShaderStage stage) |
static std::optional< RenderTarget > | WrapTextureWithRenderTarget (const std::shared_ptr< SwapchainTransientsMTL > &transients, id< MTLTexture > texture, bool requires_blit, std::optional< IRect > clip_rect) |
std::shared_ptr< Texture > | WrapperMTL (TextureDescriptor desc, const void *mtl_texture, std::function< void()> deletion_proc) |
std::shared_ptr< Texture > | WrapTextureMTL (TextureDescriptor desc, const void *mtl_texture, std::function< void()> deletion_proc=nullptr) |
static MTLVertexFormat | ReadStageInputFormat (const ShaderStageIOSlot &input) |
static constexpr vk::Flags< vk::MemoryPropertyFlagBits > | ToVKBufferMemoryPropertyFlags (StorageMode mode) |
static VmaAllocationCreateFlags | ToVmaAllocationBufferCreateFlags (StorageMode mode, bool readback) |
static PoolVMA | CreateBufferPool (VmaAllocator allocator) |
static constexpr VmaMemoryUsage | ToVMAMemoryUsage () |
static constexpr vk::Flags< vk::MemoryPropertyFlagBits > | ToVKTextureMemoryPropertyFlags (StorageMode mode, bool supports_memoryless_textures) |
static VmaAllocationCreateFlags | ToVmaAllocationCreateFlags (StorageMode mode) |
static void | InsertImageMemoryBarrier (const vk::CommandBuffer &cmd, const vk::Image &image, vk::AccessFlags src_access_mask, vk::AccessFlags dst_access_mask, vk::ImageLayout old_layout, vk::ImageLayout new_layout, vk::PipelineStageFlags src_stage, vk::PipelineStageFlags dst_stage, uint32_t base_mip_level, uint32_t mip_level_count=1u) |
static const char * | GetExtensionName (RequiredCommonDeviceExtensionVK ext) |
static const char * | GetExtensionName (RequiredAndroidDeviceExtensionVK ext) |
static const char * | GetExtensionName (OptionalAndroidDeviceExtensionVK ext) |
static const char * | GetExtensionName (OptionalDeviceExtensionVK ext) |
template<class T > | |
static bool | IterateExtensions (const std::function< bool(T)> &it) |
static std::optional< std::set< std::string > > | GetSupportedDeviceExtensions (const vk::PhysicalDevice &physical_device) |
static bool | HasSuitableColorFormat (const vk::PhysicalDevice &device, vk::Format format) |
static bool | HasSuitableDepthStencilFormat (const vk::PhysicalDevice &device, vk::Format format) |
static bool | PhysicalDeviceSupportsRequiredFormats (const vk::PhysicalDevice &device) |
static bool | HasRequiredProperties (const vk::PhysicalDevice &physical_device) |
static bool | HasRequiredQueues (const vk::PhysicalDevice &physical_device) |
template<class ExtensionEnum > | |
static bool | IsExtensionInList (const std::vector< std::string > &list, ExtensionEnum ext) |
static std::unordered_map< uint64_t, std::unordered_map< std::thread::id, std::weak_ptr< CommandPoolVK > > > g_all_pools_map | IPLR_GUARDED_BY (g_all_pools_map_mutex) |
bool | HasValidationLayers () |
static std::optional< vk::PhysicalDevice > | PickPhysicalDevice (const CapabilitiesVK &caps, const vk::Instance &instance) |
static std::vector< vk::DeviceQueueCreateInfo > | GetQueueCreateInfos (std::initializer_list< QueueIndexVK > queues) |
static std::optional< QueueIndexVK > | PickQueue (const vk::PhysicalDevice &device, vk::QueueFlagBits flags) |
static std::string | JoinLabels (const vk::DebugUtilsLabelEXT *labels, size_t count) |
static std::string | JoinVKDebugUtilsObjectNameInfoEXT (const vk::DebugUtilsObjectNameInfoEXT *names, size_t count) |
AdrenoGPU | GetAdrenoVersion (std::string_view version) |
PowerVRGPU | GetPowerVRVersion (std::string_view version) |
MaliGPU | GetMaliVersion (std::string_view version) |
constexpr VendorVK | IdentifyVendor (uint32_t vendor) |
constexpr const char * | VendorToString (VendorVK vendor) |
constexpr const char * | DeviceTypeToString (DeviceTypeVK type) |
constexpr DeviceTypeVK | ToDeviceType (const vk::PhysicalDeviceType &type) |
static std::vector< vk::Fence > | GetFencesForWaitSet (const WaitSet &set) |
vk::PipelineDepthStencilStateCreateInfo | ToVKPipelineDepthStencilStateCreateInfo (std::optional< DepthAttachmentDescriptor > depth, std::optional< StencilAttachmentDescriptor > front, std::optional< StencilAttachmentDescriptor > back) |
constexpr std::optional< PixelFormat > | VkFormatToImpellerFormat (vk::Format format) |
constexpr vk::SampleCountFlagBits | ToVKSampleCountFlagBits (SampleCount count) |
constexpr vk::BlendFactor | ToVKBlendFactor (BlendFactor factor) |
constexpr vk::BlendOp | ToVKBlendOp (BlendOperation op) |
constexpr vk::ColorComponentFlags | ToVKColorComponentFlags (ColorWriteMask type) |
constexpr vk::PipelineColorBlendAttachmentState | ToVKPipelineColorBlendAttachmentState (const ColorAttachmentDescriptor &desc) |
constexpr std::optional< vk::ShaderStageFlagBits > | ToVKShaderStageFlagBits (ShaderStage stage) |
constexpr vk::Format | ToVKImageFormat (PixelFormat format) |
constexpr PixelFormat | ToPixelFormat (vk::Format format) |
constexpr vk::SampleCountFlagBits | ToVKSampleCount (SampleCount sample_count) |
constexpr vk::Filter | ToVKSamplerMinMagFilter (MinMagFilter filter) |
constexpr vk::SamplerMipmapMode | ToVKSamplerMipmapMode (MipFilter filter) |
constexpr vk::SamplerAddressMode | ToVKSamplerAddressMode (SamplerAddressMode mode) |
constexpr vk::ShaderStageFlags | ToVkShaderStage (ShaderStage stage) |
constexpr vk::DescriptorType | ToVKDescriptorType (DescriptorType type) |
constexpr vk::DescriptorSetLayoutBinding | ToVKDescriptorSetLayoutBinding (const DescriptorSetLayout &layout) |
constexpr vk::AttachmentLoadOp | ToVKAttachmentLoadOp (LoadAction load_action) |
constexpr vk::AttachmentStoreOp | ToVKAttachmentStoreOp (StoreAction store_action, bool is_resolve_texture) |
constexpr bool | StoreActionPerformsResolve (StoreAction store_action) |
constexpr vk::IndexType | ToVKIndexType (IndexType index_type) |
constexpr vk::PolygonMode | ToVKPolygonMode (PolygonMode mode) |
constexpr bool | PrimitiveTopologySupportsPrimitiveRestart (PrimitiveType primitive) |
constexpr vk::PrimitiveTopology | ToVKPrimitiveTopology (PrimitiveType primitive) |
constexpr bool | PixelFormatIsDepthStencil (PixelFormat format) |
constexpr vk::CullModeFlags | ToVKCullModeFlags (CullMode mode) |
constexpr vk::CompareOp | ToVKCompareOp (CompareFunction op) |
constexpr vk::StencilOp | ToVKStencilOp (StencilOperation op) |
constexpr vk::StencilOpState | ToVKStencilOpState (const StencilAttachmentDescriptor &desc) |
constexpr vk::ImageAspectFlags | ToVKImageAspectFlags (PixelFormat format) |
constexpr uint32_t | ToArrayLayerCount (TextureType type) |
constexpr vk::ImageViewType | ToVKImageViewType (TextureType type) |
constexpr vk::ImageCreateFlags | ToVKImageCreateFlags (TextureType type) |
constexpr vk::ImageAspectFlags | ToImageAspectFlags (PixelFormat format) |
bool | PipelineCacheDataPersist (const fml::UniqueFD &cache_directory, const VkPhysicalDeviceProperties &props, const vk::UniquePipelineCache &cache) |
Persist the pipeline cache to a file in the given cache directory. This function performs integrity checks the Vulkan driver may have missed. More... | |
std::unique_ptr< fml::Mapping > | PipelineCacheDataRetrieve (const fml::UniqueFD &cache_directory, const VkPhysicalDeviceProperties &props) |
Retrieve the previously persisted pipeline cache data. This function provides integrity checks the Vulkan driver may have missed. More... | |
static vk::PipelineCreationFeedbackEXT | EmptyFeedback () |
constexpr vk::FrontFace | ToVKFrontFace (WindingOrder order) |
static void | ReportPipelineCreationFeedbackToLog (std::stringstream &stream, const vk::PipelineCreationFeedbackEXT &feedback) |
static void | ReportPipelineCreationFeedbackToLog (const PipelineDescriptor &desc, const vk::PipelineCreationFeedbackCreateInfoEXT &feedback) |
static void | ReportPipelineCreationFeedbackToTrace (const PipelineDescriptor &desc, const vk::PipelineCreationFeedbackCreateInfoEXT &feedback) |
static void | ReportPipelineCreationFeedback (const PipelineDescriptor &desc, const vk::PipelineCreationFeedbackCreateInfoEXT &feedback) |
static vk::UniqueRenderPass | CreateCompatRenderPassForPipeline (const vk::Device &device, const PipelineDescriptor &desc) |
void | InsertBarrierForInputAttachmentRead (const vk::CommandBuffer &buffer, const vk::Image &image) |
Inserts the appropriate barriers to ensure that subsequent commands can read from the specified image (itself a framebuffer attachment) as an input attachment. More... | |
static vk::ClearColorValue | VKClearValueFromColor (Color color) |
static vk::ClearDepthStencilValue | VKClearValueFromDepthStencil (uint32_t stencil, Scalar depth) |
static size_t | GetVKClearValues (const RenderTarget &target, std::array< vk::ClearValue, kMaxAttachments > &values) |
static vk::UniqueSampler | CreateSampler (const vk::Device &device, const SamplerDescriptor &desc, const std::shared_ptr< YUVConversionVK > &yuv_conversion) |
static ShaderStage | ToShaderStage (ArchiveShaderType type) |
static std::string | VKShaderNameToShaderKeyName (const std::string &name, ShaderStage stage) |
static bool | IsMappingSPIRV (const fml::Mapping &mapping) |
template<class T > | |
auto | MakeSharedVK (vk::UniqueHandle< T, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE > handle) |
constexpr PixelFormat | ToPixelFormat (android::HardwareBufferFormat format) |
static TextureDescriptor | ToSwapchainTextureDescriptor (const android::HardwareBufferDescriptor &ahb_desc) |
static bool | ContainsFormat (const std::vector< vk::SurfaceFormatKHR > &formats, vk::SurfaceFormatKHR format) |
static std::optional< vk::SurfaceFormatKHR > | ChooseSurfaceFormat (const std::vector< vk::SurfaceFormatKHR > &formats, PixelFormat preference) |
static std::optional< vk::CompositeAlphaFlagBitsKHR > | ChooseAlphaCompositionMode (vk::CompositeAlphaFlagsKHR flags) |
vk::Format | ToVertexDescriptorFormat (const ShaderStageIOSlot &input) |
WorkaroundsVK | GetWorkaroundsFromDriverInfo (DriverInfoVK &driver_info) |
PipelineFuture< PipelineDescriptor > | CreatePipelineFuture (const Context &context, std::optional< PipelineDescriptor > desc, bool async=true) |
Create a pipeline for the given descriptor. More... | |
PipelineFuture< ComputePipelineDescriptor > | CreatePipelineFuture (const Context &context, std::optional< ComputePipelineDescriptor > desc) |
std::shared_ptr< Texture > | CreateTexture (const TextureDescriptor &texture_descriptor, const std::vector< uint8_t > &data, const std::shared_ptr< impeller::Context > &context, std::string_view debug_label) |
fml::Status | AddMipmapGeneration (const std::shared_ptr< CommandBuffer > &command_buffer, const std::shared_ptr< Context > &context, const std::shared_ptr< Texture > &texture) |
Adds a blit command to the render pass. More... | |
template<class VertexType , size_t size> | |
VertexBuffer | CreateVertexBuffer (std::array< VertexType, size > input, HostBuffer &host_buffer) |
Create an index-less vertex buffer from a fixed size array. More... | |
static RuntimeUniformType | ToType (fb::UniformDataType type) |
static RuntimeShaderStage | ToShaderStage (fb::Stage stage) |
constexpr ArchiveShaderType | ToShaderType (fb::Stage stage) |
bool | Main (const fml::CommandLine &command_line) |
std::optional< ArchiveShaderType > | InferShaderTypefromFileExtension (const std::filesystem::path &path) |
constexpr fb::Stage | ToStage (ArchiveShaderType type) |
PathBuilder * | CreatePathBuilder () |
void | DestroyPathBuilder (PathBuilder *builder) |
void | MoveTo (PathBuilder *builder, Scalar x, Scalar y) |
void | LineTo (PathBuilder *builder, Scalar x, Scalar y) |
void | CubicTo (PathBuilder *builder, Scalar x1, Scalar y1, Scalar x2, Scalar y2, Scalar x3, Scalar y3) |
void | Close (PathBuilder *builder) |
struct Vertices * | Tessellate (PathBuilder *builder, int fill_type, Scalar tolerance) |
void | DestroyVertices (Vertices *vertices) |
static void * | HeapAlloc (void *userData, unsigned int size) |
static void * | HeapRealloc (void *userData, void *ptr, unsigned int size) |
static void | HeapFree (void *userData, void *ptr) |
static int | ToTessWindingRule (FillType fill_type) |
void | DestroyTessellator (TESStesselator *tessellator) |
IMPELLER_ENUM_IS_MASK (android::HardwareBufferUsageFlags) | |
static Font | ToFont (const SkTextBlobRunIterator &run, AxisAlignment alignment) |
static Rect | ToRect (const SkRect &rect) |
std::shared_ptr< TextFrame > | MakeTextFrameFromTextBlobSkia (const sk_sp< SkTextBlob > &blob) |
static SkImageInfo | GetImageInfo (const GlyphAtlas &atlas, Size size) |
static size_t | AppendToExistingAtlas (const std::shared_ptr< GlyphAtlas > &atlas, const std::vector< FontGlyphPair > &extra_pairs, std::vector< Rect > &glyph_positions, const std::vector< Rect > &glyph_sizes, ISize atlas_size, int64_t height_adjustment, const std::shared_ptr< RectanglePacker > &rect_packer) |
static size_t | PairsFitInAtlasOfSize (const std::vector< FontGlyphPair > &pairs, const ISize &atlas_size, std::vector< Rect > &glyph_positions, const std::vector< Rect > &glyph_sizes, int64_t height_adjustment, const std::shared_ptr< RectanglePacker > &rect_packer, size_t start_index) |
static ISize | ComputeNextAtlasSize (const std::shared_ptr< GlyphAtlasContext > &atlas_context, const std::vector< FontGlyphPair > &extra_pairs, std::vector< Rect > &glyph_positions, const std::vector< Rect > &glyph_sizes, size_t glyph_index_start, int64_t max_texture_height) |
static Point | SubpixelPositionToPoint (SubpixelPosition pos) |
static void | DrawGlyph (SkCanvas *canvas, const SkPoint position, const ScaledFont &scaled_font, const SubpixelGlyph &glyph, const Rect &scaled_bounds, const std::optional< GlyphProperties > &prop, bool has_color) |
static bool | BulkUpdateAtlasBitmap (const GlyphAtlas &atlas, std::shared_ptr< BlitPass > &blit_pass, HostBuffer &host_buffer, const std::shared_ptr< Texture > &texture, const std::vector< FontGlyphPair > &new_pairs, size_t start_index, size_t end_index) |
Batch render to a single surface. More... | |
static bool | UpdateAtlasBitmap (const GlyphAtlas &atlas, std::shared_ptr< BlitPass > &blit_pass, HostBuffer &host_buffer, const std::shared_ptr< Texture > &texture, const std::vector< FontGlyphPair > &new_pairs, size_t start_index, size_t end_index) |
static Rect | ComputeGlyphSize (const SkFont &font, const SubpixelGlyph &glyph, Scalar scale) |
static constexpr SubpixelPosition | ComputeFractionalPosition (Scalar value) |
Variables | |
static std::atomic_size_t | sLastID |
static std::atomic_int32_t | sValidationLogsDisabledCount = 0 |
static std::atomic_int32_t | sValidationLogsAreFatal = 0 |
static ValidationFailureCallback | sValidationFailureCallback |
constexpr size_t | kAllocatorBlockSize = 1024000 |
static constexpr const size_t | kHostBufferArenaSize = 4u |
Approximately the same size as the max frames in flight. More... | |
constexpr size_t | kMaxVertexBuffers = 16 |
static constexpr Scalar | kMaxTextScale = 250 |
static constexpr const ColorMatrix | kColorInversion |
A color matrix which inverts colors. More... | |
constexpr std::array< std::array< Scalar, 5 >, 15 > | kPorterDuffCoefficients |
static constexpr int32_t | kGaussianBlurMaxKernelSize = 50 |
constexpr Matrix | kMatrixBT601LimitedRange |
constexpr Matrix | kMatrixBT601FullRange |
static constexpr uint32_t | kMaxUniformGradientStops = 256u |
static Scalar | kTwoOverSqrtPi = 2.0 / std::sqrt(kPi) |
static constexpr int32_t | kMaxSigmaDenominator = 10 |
static constexpr Scalar | kMinStrokeSize = 1.0f |
static const GeometryResult | kEmptyResult |
static constexpr const char * | kBlendModeNames [] |
constexpr float | kE = 2.7182818284590452354f |
constexpr float | kLog2E = 1.4426950408889634074f |
constexpr float | kLog10E = 0.43429448190325182765f |
constexpr float | kLogE2 = 0.69314718055994530942f |
constexpr float | kLogE10 = 2.30258509299404568402f |
constexpr float | kPi = 3.14159265358979323846f |
constexpr float | k2Pi = 6.28318530717958647693f |
constexpr float | kPiOver2 = 1.57079632679489661923f |
constexpr float | kPiOver4 = 0.78539816339744830962f |
constexpr float | k1OverPi = 0.31830988618379067154f |
constexpr float | k2OverPi = 0.63661977236758134308f |
constexpr float | k2OverSqrtPi = 1.12837916709551257390f |
constexpr float | kSqrt2 = 1.41421356237309504880f |
constexpr float | k1OverSqrt2 = 0.70710678118654752440f |
constexpr float | kSqrt2Over2 = 0.70710678118654752440f |
constexpr float | kPhi = 1.61803398874989484820f |
constexpr float | kEhCloseEnough = 1e-3f |
static TessellatorLibtess | tess |
static constexpr impeller::Vector2 | kQuadrantAxes [4] |
constexpr static float | kKernelRadiusPerSigma = 1.73205080757f |
static const std::vector< std::string > | kSkipTests |
static std::atomic_bool | gShouldOpenNewPlaygrounds = true |
static constexpr std::string_view | kAngleInputAttachmentPrefix |
static constexpr const char * | kFramebufferFetchExt |
static constexpr const char * | kTextureBorderClampExt |
static constexpr const char * | kNvidiaTextureBorderClampExt |
static constexpr const char * | kMultisampledRenderToTextureExt |
static constexpr const char * | kMultisampledRenderToTexture2Ext |
static constexpr const char * | kInstanceLayer = "ImpellerInstance" |
static thread_local std::unique_ptr< CommandPoolMap > | tls_command_pool_map |
static Mutex | g_all_pools_map_mutex |
static bool | gHasValidationLayers = false |
static constexpr const DescriptorPoolSize | kDefaultBindingSize |
Descriptor pools are always allocated with the following sizes. More... | |
const std::unordered_map< std::string_view, AdrenoGPU > | kAdrenoVersions |
const std::unordered_map< std::string_view, MaliGPU > | kMaliVersions |
static constexpr vk::AttachmentReference | kUnusedAttachmentReference |
static constexpr uint32_t | kPoolSize = 128u |
constexpr size_t | kImageSizeThresholdForDedicatedMemoryAllocation |
static constexpr const char * | kPipelineCacheFileName |
static constexpr size_t | kMaxBindings = 32 |
constexpr auto | kSelfDependencySrcStageMask |
constexpr auto | kSelfDependencySrcAccessMask |
constexpr auto | kSelfDependencyDstStageMask |
constexpr auto | kSelfDependencyDstAccessMask |
constexpr auto | kSelfDependencyFlags = vk::DependencyFlagBits::eByRegion |
static constexpr size_t | kMaxColorAttachments = 16 |
static constexpr size_t | kMaxAttachments |
static constexpr size_t | kMagicSubpassInputBinding = 64u |
static constexpr const size_t | kMaxPendingPresents = 2u |
static constexpr size_t | kMaxFramesInFlight = 2u |
static constexpr size_t | kPointArenaSize = 4096u |
The size of the point arena buffer stored on the tessellator. More... | |
static const TESSalloc | kAlloc |
constexpr auto | kPadding = 2 |
static const std::shared_ptr< GlyphAtlas > | kNullGlyphAtlas = nullptr |
using impeller::AdvancedBlendPipelineHandle = typedef RenderPipelineHandle<AdvancedBlendVertexShader, AdvancedBlendFragmentShader> |
Definition at line 77 of file pipelines.h.
using impeller::ArcVertexGenerator = typedef Tessellator::ArcVertexGenerator |
Definition at line 439 of file tessellator.cc.
using impeller::BlendColorBurnPipeline = typedef AdvancedBlendPipelineHandle |
Definition at line 86 of file pipelines.h.
using impeller::BlendColorDodgePipeline = typedef AdvancedBlendPipelineHandle |
Definition at line 87 of file pipelines.h.
using impeller::BlendColorPipeline = typedef AdvancedBlendPipelineHandle |
Definition at line 88 of file pipelines.h.
using impeller::BlendDarkenPipeline = typedef AdvancedBlendPipelineHandle |
Definition at line 89 of file pipelines.h.
using impeller::BlendDifferencePipeline = typedef AdvancedBlendPipelineHandle |
Definition at line 90 of file pipelines.h.
using impeller::BlendExclusionPipeline = typedef AdvancedBlendPipelineHandle |
Definition at line 91 of file pipelines.h.
using impeller::BlendHardLightPipeline = typedef AdvancedBlendPipelineHandle |
Definition at line 92 of file pipelines.h.
using impeller::BlendHuePipeline = typedef AdvancedBlendPipelineHandle |
Definition at line 93 of file pipelines.h.
using impeller::BlendLightenPipeline = typedef AdvancedBlendPipelineHandle |
Definition at line 94 of file pipelines.h.
using impeller::BlendLuminosityPipeline = typedef AdvancedBlendPipelineHandle |
Definition at line 95 of file pipelines.h.
using impeller::BlendMultiplyPipeline = typedef AdvancedBlendPipelineHandle |
Definition at line 96 of file pipelines.h.
using impeller::BlendOverlayPipeline = typedef AdvancedBlendPipelineHandle |
Definition at line 97 of file pipelines.h.
using impeller::BlendSaturationPipeline = typedef AdvancedBlendPipelineHandle |
Definition at line 98 of file pipelines.h.
using impeller::BlendScreenPipeline = typedef AdvancedBlendPipelineHandle |
Definition at line 99 of file pipelines.h.
using impeller::BlendSoftLightPipeline = typedef AdvancedBlendPipelineHandle |
Definition at line 100 of file pipelines.h.
using impeller::BorderMaskBlurPipeline = typedef RenderPipelineHandle<FilterPositionUvVertexShader, BorderMaskBlurFragmentShader> |
Definition at line 101 of file pipelines.h.
using impeller::BufferResource = typedef Resource<BufferView> |
using impeller::Bytes = typedef AllocationSize<1u> |
Definition at line 151 of file allocation_size.h.
using impeller::Callback = typedef std::function<void(MTLRenderPipelineDescriptor*)> |
Definition at line 30 of file pipeline_library_mtl.mm.
using impeller::ClipPipeline = typedef RenderPipelineHandle<ClipVertexShader, ClipFragmentShader> |
Definition at line 102 of file pipelines.h.
using impeller::Clock = typedef std::chrono::high_resolution_clock |
using impeller::ColorFilterProc = typedef std::function<Color(Color)> |
A procedure that filters a given unpremultiplied color to produce a new unpremultiplied color.
Definition at line 36 of file color_filter.h.
using impeller::ColorMatrixColorFilterPipeline = typedef RenderPipelineHandle<FilterPositionUvVertexShader, ColorMatrixColorFilterFragmentShader> |
Definition at line 103 of file pipelines.h.
using impeller::ColorWriteMask = typedef Mask<ColorWriteMaskBits> |
using impeller::CommandPoolMap = typedef std::unordered_map<uint64_t, std::shared_ptr<CommandPoolVK> > |
Definition at line 157 of file command_pool_vk.cc.
using impeller::ComputePipelineMap = typedef std::unordered_map<ComputePipelineDescriptor, PipelineFuture<ComputePipelineDescriptor>, ComparableHash<ComputePipelineDescriptor>, ComparableEqual<ComputePipelineDescriptor> > |
Definition at line 24 of file pipeline_library.h.
using impeller::ConicalGradientFillConicalPipeline = typedef GradientPipelineHandle<ConicalGradientFillConicalFragmentShader> |
Definition at line 104 of file pipelines.h.
using impeller::ConicalGradientFillRadialPipeline = typedef GradientPipelineHandle<ConicalGradientFillRadialFragmentShader> |
Definition at line 105 of file pipelines.h.
using impeller::ConicalGradientFillStripPipeline = typedef GradientPipelineHandle<ConicalGradientFillStripFragmentShader> |
Definition at line 106 of file pipelines.h.
using impeller::ConicalGradientFillStripRadialPipeline = typedef GradientPipelineHandle<ConicalGradientFillStripRadialFragmentShader> |
Definition at line 107 of file pipelines.h.
using impeller::ConicalGradientSSBOFillPipeline = typedef GradientPipelineHandle<ConicalGradientSsboFillFragmentShader> |
Definition at line 108 of file pipelines.h.
using impeller::ConicalGradientUniformFillConicalPipeline = typedef GradientPipelineHandle<ConicalGradientUniformFillConicalFragmentShader> |
Definition at line 109 of file pipelines.h.
using impeller::ConicalGradientUniformFillRadialPipeline = typedef GradientPipelineHandle<ConicalGradientUniformFillRadialFragmentShader> |
Definition at line 110 of file pipelines.h.
using impeller::ConicalGradientUniformFillStripPipeline = typedef GradientPipelineHandle<ConicalGradientUniformFillStripFragmentShader> |
Definition at line 111 of file pipelines.h.
using impeller::ConicalGradientUniformFillStripRadialPipeline = typedef GradientPipelineHandle<ConicalGradientUniformFillStripRadialFragmentShader> |
Definition at line 112 of file pipelines.h.
typedef std::function< android::SurfaceTransaction()> impeller::CreateTransactionCB |
Definition at line 24 of file ahb_swapchain_impl_vk.h.
using impeller::CTessellator = typedef std::unique_ptr<TESStesselator, decltype(&DestroyTessellator)> |
Definition at line 19 of file tessellator_libtess.h.
using impeller::DescriptorCacheMap = typedef std::unordered_map<PipelineKey, DescriptorCache> |
Definition at line 23 of file descriptor_pool_vk.h.
typedef flutter::DlIRect impeller::DlIRect |
Definition at line 26 of file dl_dispatcher.h.
typedef flutter::DlPath impeller::DlPath |
Definition at line 29 of file dl_dispatcher.h.
typedef flutter::DlPoint impeller::DlPoint |
Definition at line 24 of file dl_dispatcher.h.
typedef flutter::DlRect impeller::DlRect |
Definition at line 25 of file dl_dispatcher.h.
using impeller::DlRoundRect = typedef flutter::DlRoundRect |
Definition at line 27 of file dl_dispatcher.h.
using impeller::DlRoundSuperellipse = typedef flutter::DlRoundSuperellipse |
Definition at line 28 of file dl_dispatcher.h.
typedef flutter::DlScalar impeller::DlScalar |
Definition at line 23 of file dl_dispatcher.h.
Definition at line 438 of file tessellator.cc.
using impeller::FastGradientPipeline = typedef RenderPipelineHandle<FastGradientVertexShader, FastGradientFragmentShader> |
Definition at line 113 of file pipelines.h.
Definition at line 114 of file pipelines.h.
Definition at line 115 of file pipelines.h.
Definition at line 116 of file pipelines.h.
Definition at line 117 of file pipelines.h.
Definition at line 118 of file pipelines.h.
Definition at line 119 of file pipelines.h.
Definition at line 120 of file pipelines.h.
using impeller::FramebufferBlendHuePipeline = typedef FramebufferBlendPipelineHandle |
Definition at line 121 of file pipelines.h.
Definition at line 122 of file pipelines.h.
Definition at line 123 of file pipelines.h.
Definition at line 124 of file pipelines.h.
Definition at line 125 of file pipelines.h.
using impeller::FramebufferBlendPipelineHandle = typedef RenderPipelineHandle<FramebufferBlendVertexShader, FramebufferBlendFragmentShader> |
Definition at line 81 of file pipelines.h.
Definition at line 126 of file pipelines.h.
Definition at line 127 of file pipelines.h.
Definition at line 128 of file pipelines.h.
Definition at line 14 of file line_contents.cc.
Definition at line 23 of file gaussian_blur_filter_contents.cc.
using impeller::GaussianBlurPipeline = typedef RenderPipelineHandle<FilterPositionUvVertexShader, GaussianFragmentShader> |
Definition at line 129 of file pipelines.h.
using impeller::GaussianBlurVertexShader = typedef GaussianBlurPipeline::VertexShader |
Definition at line 22 of file gaussian_blur_filter_contents.cc.
using impeller::GibiBytes = typedef AllocationSize<1'024u * 1'024u * 1'024u> |
Definition at line 159 of file allocation_size.h.
using impeller::GigaBytes = typedef AllocationSize<1'000u * 1'000u * 1'000u> |
Definition at line 155 of file allocation_size.h.
using impeller::GlyphAtlasPipeline = typedef RenderPipelineHandle<GlyphAtlasVertexShader, GlyphAtlasFragmentShader> |
Definition at line 130 of file pipelines.h.
using impeller::GradientPipelineHandle = typedef RenderPipelineHandle<GradientFillVertexShader, T> |
Definition at line 74 of file pipelines.h.
using impeller::IPoint = typedef TPoint<int64_t> |
using impeller::IPoint32 = typedef TPoint<int32_t> |
using impeller::IRect = typedef IRect64 |
using impeller::IRect32 = typedef TRect<int32_t> |
using impeller::IRect64 = typedef TRect<int64_t> |
using impeller::ISize = typedef ISize64 |
using impeller::ISize32 = typedef TSize<int32_t> |
using impeller::ISize64 = typedef TSize<int64_t> |
using impeller::KibiBytes = typedef AllocationSize<1'024u> |
Definition at line 157 of file allocation_size.h.
using impeller::KiloBytes = typedef AllocationSize<1'000u> |
Definition at line 153 of file allocation_size.h.
using impeller::LinearGradientFillPipeline = typedef GradientPipelineHandle<LinearGradientFillFragmentShader> |
Definition at line 132 of file pipelines.h.
using impeller::LinearGradientSSBOFillPipeline = typedef GradientPipelineHandle<LinearGradientSsboFillFragmentShader> |
Definition at line 133 of file pipelines.h.
using impeller::LinearGradientUniformFillPipeline = typedef GradientPipelineHandle<LinearGradientUniformFillFragmentShader> |
Definition at line 134 of file pipelines.h.
using impeller::LinearToSrgbFilterPipeline = typedef RenderPipelineHandle<FilterPositionVertexShader, LinearToSrgbFilterFragmentShader> |
Definition at line 135 of file pipelines.h.
using impeller::LinePipeline = typedef RenderPipelineHandle<LineVertexShader, LineFragmentShader> |
Definition at line 131 of file pipelines.h.
using impeller::MebiBytes = typedef AllocationSize<1'024u * 1'024u> |
Definition at line 158 of file allocation_size.h.
using impeller::MegaBytes = typedef AllocationSize<1'000u * 1'000u> |
Definition at line 154 of file allocation_size.h.
using impeller::MillisecondsF = typedef std::chrono::duration<float, std::milli> |
using impeller::MixedOp = typedef typename MixedOp_<F, I>::type |
Definition at line 19 of file type_traits.h.
using impeller::MorphologyFilterPipeline = typedef RenderPipelineHandle<FilterPositionUvVertexShader, MorphologyFilterFragmentShader> |
Definition at line 136 of file pipelines.h.
using impeller::MyMask = typedef Mask<MyMaskBits> |
Definition at line 20 of file base_unittests.cc.
using impeller::PathBuilder = typedef flutter::DlPathBuilder |
Definition at line 22 of file tessellator.h.
using impeller::PathCreator = typedef std::function<fml::StatusOr<flutter::DlPath>()> |
Definition at line 19 of file text_frame.h.
using impeller::PipelineKey = typedef int64_t |
Definition at line 21 of file pipeline.h.
using impeller::PipelineMap = typedef std::unordered_map<PipelineDescriptor, PipelineFuture<PipelineDescriptor>, ComparableHash<PipelineDescriptor>, ComparableEqual<PipelineDescriptor> > |
Definition at line 19 of file pipeline_library.h.
using impeller::PipelineProc = typedef PipelineRef (ContentContext::*)(ContentContextOptions) const |
Definition at line 92 of file blend_filter_contents.cc.
using impeller::PipelineRef = typedef raw_ptr<Pipeline<PipelineDescriptor> > |
A raw ptr to a pipeline object.
These pipeline refs are safe to use as the context will keep the pipelines alive throughout rendering.
Definition at line 88 of file pipeline.h.
using impeller::Point = typedef TPoint<Scalar> |
using impeller::PorterDuffBlendPipeline = typedef RenderPipelineHandle<PorterDuffBlendVertexShader, PorterDuffBlendFragmentShader> |
Definition at line 137 of file pipelines.h.
using impeller::Quad = typedef std::array<Point, 4> |
using impeller::RadialGradientFillPipeline = typedef GradientPipelineHandle<RadialGradientFillFragmentShader> |
Definition at line 138 of file pipelines.h.
using impeller::RadialGradientSSBOFillPipeline = typedef GradientPipelineHandle<RadialGradientSsboFillFragmentShader> |
Definition at line 139 of file pipelines.h.
using impeller::RadialGradientUniformFillPipeline = typedef GradientPipelineHandle<RadialGradientUniformFillFragmentShader> |
Definition at line 140 of file pipelines.h.
using impeller::Rect = typedef TRect<Scalar> |
using impeller::RRectBlurPipeline = typedef RenderPipelineHandle<RrectLikeBlurVertexShader, RrectBlurFragmentShader> |
Definition at line 141 of file pipelines.h.
using impeller::RSuperellipseBlurPipeline = typedef RenderPipelineHandle<RrectLikeBlurVertexShader, RsuperellipseBlurFragmentShader> |
Definition at line 142 of file pipelines.h.
using impeller::Scalar = typedef float |
using impeller::SecondsF = typedef std::chrono::duration<float> |
using impeller::ShaderFunctionMap = typedef std::unordered_map<ShaderKey, std::shared_ptr<const ShaderFunction>, ShaderKey::Hash, ShaderKey::Equal> |
Definition at line 39 of file shader_key.h.
using impeller::SharedHandleVK = typedef std::shared_ptr<SharedObjectVKT<T> > |
Definition at line 53 of file shared_object_vk.h.
using impeller::Size = typedef TSize<Scalar> |
using impeller::SolidFillPipeline = typedef RenderPipelineHandle<SolidFillVertexShader, SolidFillFragmentShader> |
Definition at line 143 of file pipelines.h.
using impeller::SrgbToLinearFilterPipeline = typedef RenderPipelineHandle<FilterPositionVertexShader, SrgbToLinearFilterFragmentShader> |
Definition at line 144 of file pipelines.h.
using impeller::SweepGradientFillPipeline = typedef GradientPipelineHandle<SweepGradientFillFragmentShader> |
Definition at line 145 of file pipelines.h.
using impeller::SweepGradientSSBOFillPipeline = typedef GradientPipelineHandle<SweepGradientSsboFillFragmentShader> |
Definition at line 146 of file pipelines.h.
using impeller::SweepGradientUniformFillPipeline = typedef GradientPipelineHandle<SweepGradientUniformFillFragmentShader> |
Definition at line 147 of file pipelines.h.
using impeller::TessellatedVertexProc = typedef Tessellator::TessellatedVertexProc |
Definition at line 437 of file tessellator.cc.
using impeller::TextureDownsamplePipeline = typedef RenderPipelineHandle<TextureFillVertexShader, TextureDownsampleFragmentShader> |
Definition at line 148 of file pipelines.h.
using impeller::TexturePipeline = typedef RenderPipelineHandle<TextureFillVertexShader, TextureFillFragmentShader> |
Definition at line 149 of file pipelines.h.
using impeller::TextureResource = typedef Resource<std::shared_ptr<const Texture> > |
using impeller::TextureStrictSrcPipeline = typedef RenderPipelineHandle<TextureFillVertexShader, TextureFillStrictSrcFragmentShader> |
Definition at line 150 of file pipelines.h.
using impeller::TextureUsageMask = typedef Mask<TextureUsage> |
using impeller::TiledTexturePipeline = typedef RenderPipelineHandle<TextureUvFillVertexShader, TiledTextureFillFragmentShader> |
Definition at line 151 of file pipelines.h.
using impeller::TimePoint = typedef std::chrono::time_point<std::chrono::high_resolution_clock> |
using impeller::UintPoint32 = typedef TPoint<uint32_t> |
using impeller::UniqueAllocatorVMA = typedef fml::UniqueObject<VmaAllocator, AllocatorVMATraits> |
using impeller::UniqueBufferVMA = typedef fml::UniqueObject<BufferVMA, BufferVMATraits> |
using impeller::UniqueEGLImage = typedef fml::UniqueObject<EGLImageWithDisplay, EGLImageWithDisplayTraits> |
using impeller::UniqueEGLImageKHR = typedef fml::UniqueObject<EGLImageKHRWithDisplay, EGLImageKHRWithDisplayTraits> |
using impeller::UniqueGLTexture = typedef fml::UniqueObject<GLTexture, GLTextureTraits> |
using impeller::UniqueImageVMA = typedef fml::UniqueObject<ImageVMA, ImageVMATraits> |
using impeller::UniquePoolVMA = typedef fml::UniqueObject<PoolVMA, PoolVMATraits> |
using impeller::ValidationFailureCallback = typedef std::function<bool(const char* message, const char* file, int line)> |
Definition at line 41 of file validation.h.
using impeller::Vector2 = typedef Point |
using impeller::VerticesUber1Shader = typedef RenderPipelineHandle<PorterDuffBlendVertexShader, VerticesUber1FragmentShader> |
Definition at line 152 of file pipelines.h.
using impeller::VerticesUber2Shader = typedef RenderPipelineHandle<PorterDuffBlendVertexShader, VerticesUber2FragmentShader> |
Definition at line 153 of file pipelines.h.
Definition at line 13 of file line_contents.cc.
using impeller::WaitSet = typedef std::vector<std::shared_ptr<WaitSetEntry> > |
Definition at line 21 of file fence_waiter_vk.h.
using impeller::YUVConversionDescriptorVK = typedef vk::StructureChain<vk::SamplerYcbcrConversionCreateInfo > |
A descriptor used to create a new YUV conversion in a conversion library.
Definition at line 23 of file yuv_conversion_vk.h.
using impeller::YUVToRGBFilterPipeline = typedef RenderPipelineHandle<FilterPositionVertexShader, YuvToRgbFilterFragmentShader> |
Definition at line 154 of file pipelines.h.
|
strong |
Definition at line 14 of file driver_info_vk.h.
|
strong |
Enumerator | |
---|---|
kVertex | |
kFragment | |
kCompute |
Definition at line 10 of file shader_archive_types.h.
|
strong |
|
strong |
Definition at line 178 of file formats.h.
|
strong |
All blend modes assume that both the source (fragment output) and destination (first color attachment) have colors with premultiplied alpha.
Definition at line 58 of file color.h.
|
strong |
|
strong |
Enumerator | |
---|---|
kScreen | |
kOverlay | |
kDarken | |
kLighten | |
kColorDodge | |
kColorBurn | |
kHardLight | |
kSoftLight | |
kDifference | |
kExclusion | |
kMultiply | |
kHue | |
kSaturation | |
kColor | |
kLuminosity |
Definition at line 15 of file framebuffer_blend_contents.h.
|
strong |
An enum that describes ways to decorate the end of a path contour.
Enumerator | |
---|---|
kButt | |
kRound | |
kSquare |
Definition at line 13 of file stroke_parameters.h.
|
strong |
|
strong |
Definition at line 552 of file formats.h.
|
strong |
Additional compression to apply to a texture. This value is ignored on platforms which do not support it.
Lossy compression is only supported on iOS 15+ on A15 chips.
Enumerator | |
---|---|
kLossless | |
kLossy |
Definition at line 19 of file texture_descriptor.h.
|
strong |
Specifies how much to trust the bounds rectangle provided for a list of contents. Used by both |EntityPass| and |Canvas::SaveLayer|.
Definition at line 84 of file canvas.h.
|
strong |
Enumerator | |
---|---|
kUnknown | |
kConvex |
Definition at line 18 of file path_source.h.
|
strong |
|
strong |
Enumerator | |
---|---|
kTexture | |
kBuffer | |
kProgram | |
kShader | |
kRenderBuffer | |
kFrameBuffer | |
kFence |
Definition at line 272 of file proc_table_gles.h.
|
strong |
Enumerator | |
---|---|
kSampler | |
kSampledImage | |
kImage | |
kUniformBuffer | |
kStorageBuffer | |
kInputAttachment |
Definition at line 158 of file shader_types.h.
|
strong |
Definition at line 156 of file driver_info_vk.h.
|
strong |
|
strong |
|
strong |
Enumerator | |
---|---|
kUnknown | |
kTexture | |
kBuffer | |
kProgram | |
kRenderBuffer | |
kFrameBuffer | |
kFence |
Definition at line 18 of file handle_gles.h.
|
strong |
|
strong |
An enum that describes ways to join two segments of a path.
Enumerator | |
---|---|
kMiter | |
kRound | |
kBevel |
Definition at line 20 of file stroke_parameters.h.
|
strong |
|
strong |
Enumerator | |
---|---|
kT760 | |
kT820 | |
kT830 | |
kT860 | |
kT880 | |
kG31 | |
kG51 | |
kG71 | |
kG52 | |
kG72 | |
kG76 | |
kG57 | |
kG77 | |
kG68 | |
kG78 | |
kG310 | |
kG510 | |
kG610 | |
kG710 | |
kG615 | |
kG715 | |
kG620 | |
kG720 | |
kG625 | |
kG725 | |
kG925 | |
kUnknown |
Definition at line 73 of file driver_info_vk.h.
|
strong |
Describes how the texture should be sampled when the texture is being shrunk (minified) or expanded (magnified) to fit to the sample point.
Enumerator | |
---|---|
kNearest | Select nearest to the sample point. Most widely supported. |
kLinear | Select two points and linearly interpolate between them. Some formats may not support this. |
Definition at line 415 of file formats.h.
|
strong |
Options for selecting and filtering between mipmap levels.
Definition at line 425 of file formats.h.
|
strong |
|
strong |
A device extension available on some Android platforms.
Platform agnostic code can still check if these Android extensions are present.
Enumerator | |
---|---|
kKHRExternalFenceFd | For exporting file descriptors from fences to interact with platform APIs. https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VK_KHR_external_fence_fd.html |
kKHRExternalFence | Dependency of kKHRExternalFenceFd. https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VK_KHR_external_fence.html |
kKHRExternalSemaphoreFd | For importing sync file descriptors as semaphores so the GPU can wait for semaphore to be signaled. https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VK_KHR_external_semaphore_fd.html |
kKHRExternalSemaphore | Dependency of kKHRExternalSemaphoreFd https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VK_KHR_external_semaphore.html |
kLast |
Definition at line 93 of file capabilities_vk.h.
|
strong |
A device extension enabled if available. Subsystems cannot assume availability and must check if these extensions are available.
CapabilitiesVK::HasExtension
. Enumerator | |
---|---|
kEXTPipelineCreationFeedback | To instrument and profile PSO creation. |
kVKKHRPortabilitySubset | To enable context creation on MoltenVK. A non-conformant Vulkan implementation. https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VK_KHR_portability_subset.html |
kEXTImageCompressionControl | For fixed-rate compression of images. |
kLast |
Definition at line 131 of file capabilities_vk.h.
|
strong |
The Pixel formats supported by Impeller. The naming convention denotes the usage of the component, the bit width of that component, and then one or more qualifiers to its interpretation.
For instance, kR8G8B8A8UNormIntSRGB
is a 32 bits-per-pixel format ordered in RGBA with 8 bits per component with each component expressed as an unsigned normalized integer and a conversion from sRGB to linear color space.
Key: R -> Red Component G -> Green Component B -> Blue Component D -> Depth Component S -> Stencil Component U -> Unsigned (Lack of this denotes a signed component) Norm -> Normalized SRGB -> sRGB to linear interpretation
While the effective bit width of the pixel can be determined by adding up the widths of each component, only the non-esoteric formats are tightly packed. Do not assume tight packing for the esoteric formats and use blit passes to convert to a non-esoteric pass.
Definition at line 99 of file formats.h.
|
strong |
|
strong |
|
strong |
|
strong |
Enumerator | |
---|---|
kUnknown | |
kRogue | |
kAXE | |
kAXM | |
kAXT | |
kBXE | |
kBXM | |
kBXS | |
kBXT | |
kCXT | |
kDXT |
Definition at line 114 of file driver_info_vk.h.
|
strong |
Decides how backend draws pixels based on input vertices.
Enumerator | |
---|---|
kTriangle | Draws a triangle for each separate set of three vertices. Vertices [A, B, C, D, E, F] will produce triangles [ABC, DEF]. |
kTriangleStrip | Draws a triangle for every adjacent three vertices. Vertices [A, B, C, D, E, F] will produce triangles [ABC, BCD, CDE, DEF]. |
kLine | Draws a line for each separate set of two vertices. Vertices [A, B, C] will produce discontinued line [AB, BC]. |
kLineStrip | Draws a continuous line that connect every input vertices Vertices [A, B, C] will produce one continuous line [ABC]. |
kPoint | Draws a point at each input vertex. |
kTriangleFan | Draws a triangle for every two vertices, after the first. The first vertex acts as the hub, all following vertices connect with this hub to "fan" out from the first vertex. Triangle fans are not supported in Metal and need a capability check. |
Definition at line 352 of file formats.h.
|
strong |
A device extension available on all Android platforms. Without the presence of these extensions on Android, context creation will fail.
Platform agnostic code can still check if these Android extensions are present.
Enumerator | |
---|---|
kANDROIDExternalMemoryAndroidHardwareBuffer | For importing hardware buffers used in external texture composition. |
kKHRSamplerYcbcrConversion | Dependency of kANDROIDExternalMemoryAndroidHardwareBuffer. |
kKHRExternalMemory | Dependency of kANDROIDExternalMemoryAndroidHardwareBuffer. https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VK_KHR_external_memory.html |
kEXTQueueFamilyForeign | Dependency of kANDROIDExternalMemoryAndroidHardwareBuffer. https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VK_EXT_queue_family_foreign.html |
kKHRDedicatedAllocation | Dependency of kANDROIDExternalMemoryAndroidHardwareBuffer. https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VK_KHR_dedicated_allocation.html |
kLast |
Definition at line 48 of file capabilities_vk.h.
|
strong |
A device extension available on all platforms. Without the presence of these extensions, context creation will fail.
Enumerator | |
---|---|
kKHRSwapchain | For displaying content in the window system. https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VK_KHR_swapchain.html |
kLast |
Definition at line 29 of file capabilities_vk.h.
|
strong |
Enumerator | |
---|---|
kVertex | |
kFragment | |
kCompute |
Definition at line 30 of file runtime_types.h.
|
strong |
Enumerator | |
---|---|
kSkSL | |
kMetal | |
kOpenGLES | |
kOpenGLES3 | |
kVulkan |
Definition at line 16 of file runtime_types.h.
|
strong |
|
strong |
Enumerator | |
---|---|
kClampToEdge | |
kRepeat | |
kMirror | |
kDecal | decal sampling mode is only supported on devices that pass the |
Definition at line 441 of file formats.h.
|
strong |
|
strong |
Definition at line 41 of file shader_types.h.
|
strong |
Controls the behavior of the source rectangle given to DrawImageRect.
Enumerator | |
---|---|
kFast | Faster, but may sample outside the bounds of the source rectangle. |
kStrict | Sample only within the source rectangle. May be slower. |
Definition at line 74 of file canvas.h.
|
strong |
Definition at line 571 of file formats.h.
|
strong |
Specified where the allocation resides and how it is used.
Definition at line 32 of file formats.h.
|
strong |
enum impeller::SubpixelPosition : uint8_t |
All possible positions for a subpixel alignment. The name is in the format kSubpixelXY where X and Y are numerators to 1/4 fractions in their respective directions.
Definition at line 56 of file font_glyph_pair.h.
|
strong |
|
strong |
|
strong |
|
strong |
Definition at line 131 of file driver_info_vk.h.
|
strong |
|
strong |
|
constexpr |
Definition at line 22 of file scalar.h.
Referenced by ScalarNearlyZero().
|
constexpr |
fml::Status impeller::AddMipmapGeneration | ( | const std::shared_ptr< CommandBuffer > & | command_buffer, |
const std::shared_ptr< Context > & | context, | ||
const std::shared_ptr< Texture > & | texture | ||
) |
Adds a blit command to the render pass.
Definition at line 37 of file texture_util.cc.
Referenced by impeller::InlinePassContext::EndPass(), and impeller::ContentContext::MakeSubpass().
|
inlinestatic |
|
static |
Handle inputs.
Render to texture.
Definition at line 96 of file blend_filter_contents.cc.
References CreateVertexBuffer(), impeller::Entity::FromSnapshot(), impeller::Entity::GetBlendMode(), impeller::Entity::GetContents(), impeller::ContentContext::GetContext(), impeller::TRect< T >::GetOrigin(), impeller::TRect< T >::GetSize(), impeller::ContentContext::GetTransientsBuffer(), impeller::TRect< T >::Intersection(), kSrc, kTriangleStrip, impeller::ColorFilterContents::kYes, impeller::ContentContext::MakeSubpass(), impeller::Matrix::MakeTranslation(), OptionsFromPass(), impeller::Snapshot::texture, and transform.
impeller::API_AVAILABLE | ( | ios(14.0) | , |
macos(11.0) | |||
) |
Definition at line 17 of file command_buffer_mtl.mm.
|
static |
Definition at line 12 of file gradient.cc.
References data, and impeller::Color::ToR8G8B8A8().
Referenced by CreateGradientBuffer().
|
static |
Append as many glyphs to the texture as will fit, and return the first index of [extra_pairs] that did not fit.
Definition at line 102 of file typographer_context_skia.cc.
References impeller::TSize< T >::Ceil(), impeller::TSize< T >::height, impeller::TSize< T >::IsEmpty(), kPadding, impeller::TRect< Scalar >::MakeXYWH(), impeller::TSize< T >::width, impeller::IPoint16::x(), and impeller::IPoint16::y().
Referenced by impeller::TypographerContextSkia::CreateGlyphAtlas().
|
inlinestaticconstexpr |
Composite a blended color onto the destination. All three parameters are unpremultiplied. Returns a premultiplied result.
This routine is the same as IPApplyBlendedColor
in the Impeller shader library.
Definition at line 124 of file color.cc.
References impeller::Color::alpha, FromRGB(), and impeller::Color::Premultiply().
Referenced by DoColorBlend(), and DoColorBlendComponents().
std::string impeller::AttachmentToString | ( | const Attachment & | attachment | ) |
Definition at line 104 of file formats.cc.
References impeller::Attachment::load_action, LoadActionToString(), impeller::Attachment::resolve_texture, impeller::Attachment::store_action, StoreActionToString(), impeller::Attachment::texture, and TextureDescriptorToString().
Referenced by ColorAttachmentToString(), DepthAttachmentToString(), and StencilAttachmentToString().
|
static |
Definition at line 237 of file proc_table_gles.cc.
References type.
Referenced by DescribeFramebufferAttachment().
impeller::BENCHMARK_CAPTURE | ( | BM_Convex | , |
rrect_convex | , | ||
CreateRRect() | , | ||
true | |||
) |
impeller::BENCHMARK_CAPTURE | ( | BM_Convex | , |
rse_convex | , | ||
CreateRSuperellipse() | , | ||
true | |||
) |
|
static |
Definition at line 188 of file render_pass_mtl.mm.
References impeller::BufferView::GetBuffer(), impeller::BufferView::GetRange(), impeller::Range::offset, and impeller::PassBindingsCacheMTL::SetBuffer().
|
static |
Definition at line 210 of file render_pass_mtl.mm.
References impeller::Texture::IsValid(), impeller::Texture::NeedsMipmapGeneration(), impeller::PassBindingsCacheMTL::SetSampler(), impeller::PassBindingsCacheMTL::SetTexture(), and VALIDATION_LOG.
|
static |
Bind the vertex attributes associated with vertex buffer.
Definition at line 148 of file render_pass_gles.cc.
References impeller::BufferBindingsGLES::BindVertexAttributes(), impeller::BufferView::GetBuffer(), impeller::BufferView::GetRange(), and impeller::Range::offset.
Referenced by EncodeCommandsInReactor().
const char * impeller::BlendModeToString | ( | BlendMode | blend_mode | ) |
Definition at line 47 of file color.cc.
References kBlendModeNames.
Referenced by impeller::ContentContext::GetPorterDuffPipeline(), std::operator<<(), impeller::VerticesSimpleBlendContents::Render(), and impeller::testing::TEST().
|
static |
Definition at line 68 of file geometry_benchmarks.cc.
References points, and impeller::Tessellator::TessellateConvexInternal().
|
static |
Definition at line 41 of file geometry_benchmarks.cc.
References impeller::ImpellerBenchmarkAccessor::GenerateSolidStrokeVertices(), and impeller::StrokeParameters::width.
std::string impeller::BuildGLArguments | ( | Type... | args | ) |
Definition at line 68 of file proc_table_gles.h.
References BuildGLArgumentsStream().
Referenced by impeller::GLProc< T >::operator()().
|
constexpr |
Definition at line 56 of file proc_table_gles.h.
void impeller::BuildGLArgumentsStream | ( | std::stringstream & | stream, |
Type | arg | ||
) |
Definition at line 52 of file proc_table_gles.h.
Referenced by BuildGLArguments(), and BuildGLArgumentsStream().
void impeller::BuildGLArgumentsStream | ( | std::stringstream & | stream, |
Type | arg, | ||
Rest... | other_args | ||
) |
|
static |
Batch render to a single surface.
This is only safe for use when updating a fresh texture.
Definition at line 265 of file typographer_context_skia.cc.
References buffer_view, BytesPerPixelForPixelFormat(), data, DrawGlyph(), impeller::HostBuffer::Emplace(), impeller::GlyphAtlas::FindFontGlyphBounds(), GetImageInfo(), impeller::HostBuffer::GetMinimumUniformAlignment(), impeller::GlyphAtlas::GetTexture(), impeller::GlyphAtlas::GetType(), impeller::FontGlyphPair::glyph, impeller::TSize< T >::IsEmpty(), impeller::GlyphAtlas::kColorBitmap, impeller::TRect< T >::MakeXYWH(), impeller::SubpixelGlyph::properties, and impeller::FontGlyphPair::scaled_font.
Referenced by impeller::TypographerContextSkia::CreateGlyphAtlas().
|
constexpr |
Definition at line 466 of file formats.h.
References kA8UNormInt, kB10G10R10A10XR, kB10G10R10XR, kB10G10R10XRSRGB, kB8G8R8A8UNormInt, kB8G8R8A8UNormIntSRGB, kD24UnormS8Uint, kD32FloatS8UInt, kR16G16B16A16Float, kR32G32B32A32Float, kR8G8B8A8UNormInt, kR8G8B8A8UNormIntSRGB, kR8G8UNormInt, kR8UNormInt, kS8UInt, and kUnknown.
Referenced by impeller::BlitPass::AddCopy(), BulkUpdateAtlasBitmap(), impeller::BlitCopyBufferToTextureCommandGLES::Encode(), impeller::TextureDescriptor::GetByteSizeOfAllMipLevels(), impeller::TextureDescriptor::GetByteSizeOfBaseMipLevel(), impeller::TextureDescriptor::GetBytesPerRow(), impeller::Allocator::MinimumBytesPerRow(), and UpdateAtlasBitmap().
|
constexpr |
|
constexpr |
Definition at line 250 of file formats.h.
References kDontCare, kMultisampleResolve, kStore, and kStoreAndMultisampleResolve.
|
static |
Definition at line 97 of file khr_swapchain_impl_vk.cc.
|
static |
Definition at line 75 of file khr_swapchain_impl_vk.cc.
References ContainsFormat(), and ToVKImageFormat().
Definition at line 67 of file color.cc.
References kEhCloseEnough, Luminosity(), impeller::Vector3::x, impeller::Vector3::y, and impeller::Vector3::z.
Referenced by SetLuminosity().
IMPELLER_API void impeller::Close | ( | PathBuilder * | builder | ) |
Definition at line 38 of file tessellator.cc.
Referenced by impeller::testing::TEST(), and impeller::testing::TEST_P().
std::string impeller::ColorAttachmentToString | ( | const ColorAttachment & | color | ) |
Definition at line 123 of file formats.cc.
References AttachmentToString(), impeller::ColorAttachment::clear_color, and ColorToString().
Referenced by impeller::RenderTarget::ToString().
std::string impeller::ColorToString | ( | const Color & | color | ) |
Definition at line 333 of file color.cc.
References impeller::Color::alpha, impeller::Color::blue, impeller::Color::green, impeller::Color::red, and SPrintF().
Referenced by ColorAttachmentToString().
|
inlinestaticconstexpr |
Definition at line 101 of file color.cc.
References impeller::saturated::b, value, impeller::Vector3::x, impeller::Vector3::y, and impeller::Vector3::z.
Referenced by impeller::Color::Blend().
|
constexpr |
Definition at line 24 of file texture_descriptor.h.
References kLossless, kLossy, and type.
Referenced by TextureDescriptorToString().
Scalar impeller::ComputeConicSubdivisions | ( | Scalar | scale_factor, |
Point | p0, | ||
Point | p1, | ||
Point | p2, | ||
Scalar | w | ||
) |
Returns the minimum number of evenly spaced (in the parametric sense) line segments that the conic must be chopped into in order to guarantee all lines stay within a distance of "1/intolerance" pixels from the true curve.
The scale_factor should be the max basis XY of the current transform.
Definition at line 48 of file wangs_formula.cc.
References impeller::TPoint< T >::Dot(), impeller::TPoint< T >::Max(), and impeller::TPoint< T >::Min().
Referenced by impeller::PathTessellator::Conic::SubdivisionCount().
Scalar impeller::ComputeCubicSubdivisions | ( | Scalar | scale_factor, |
Point | p0, | ||
Point | p1, | ||
Point | p2, | ||
Point | p3 | ||
) |
Returns the minimum number of evenly spaced (in the parametric sense) line segments that the cubic must be chopped into in order to guarantee all lines stay within a distance of "1/intolerance" pixels from the true curve.
The scale_factor should be the max basis XY of the current transform.
Definition at line 23 of file wangs_formula.cc.
References impeller::saturated::b, and impeller::TPoint< T >::Max().
Referenced by impeller::PathTessellator::Cubic::SubdivisionCount().
Definition at line 59 of file solid_rrect_like_blur_contents.cc.
References kTwoOverSqrtPi, and x.
|
staticconstexpr |
Definition at line 75 of file text_frame.cc.
References kSubpixel00, kSubpixel10, kSubpixel20, kSubpixel30, and value.
Referenced by impeller::TextFrame::ComputeSubpixelPosition().
|
static |
Definition at line 397 of file typographer_context_skia.cc.
References impeller::SubpixelGlyph::glyph, impeller::Glyph::index, kSubpixel00, impeller::TRect< Scalar >::MakeLTRB(), impeller::SubpixelGlyph::properties, and impeller::SubpixelGlyph::subpixel_offset.
|
static |
Definition at line 166 of file typographer_context_skia.cc.
References impeller::RectanglePacker::Factory(), impeller::TSize< T >::height, PairsFitInAtlasOfSize(), and impeller::TSize< T >::width.
Referenced by impeller::TypographerContextSkia::CreateGlyphAtlas().
Returns the minimum number of evenly spaced (in the parametric sense) line segments that the quadratic must be chopped into in order to guarantee all lines stay within a distance of "1/intolerance" pixels from the true curve.
The scale_factor should be the max basis XY of the current transform.
Definition at line 34 of file wangs_formula.cc.
Referenced by impeller::PathTessellator::Quad::SubdivisionCount().
std::optional< Rect > impeller::ComputeSaveLayerCoverage | ( | const Rect & | content_coverage, |
const Matrix & | effect_transform, | ||
const Rect & | coverage_limit, | ||
const std::shared_ptr< FilterContents > & | image_filter, | ||
bool | flood_output_coverage = false , |
||
bool | flood_input_coverage = false |
||
) |
Compute the coverage of a subpass in the global coordinate space.
content_coverage | the computed coverage of the contents of the save layer. This value may be empty if the save layer has no contents, or Rect::Maximum if the contents are unbounded (like a destructive blend). |
effect_transform | The CTM of the subpass. |
coverage_limit | The current clip coverage. This is used to bound the subpass size. |
image_filter | A subpass image filter, or nullptr. |
flood_output_coverage | Whether the coverage should be flooded to clip coverage regardless of input coverage. This should be set to true when the restore Paint has a destructive blend mode. |
flood_input_coverage | Whther the content coverage should be flooded. This should be set to true if the paint has a backdrop filter or if there is a transparent black effecting color filter. |
The coverage computation expects content_coverage
to be in the child coordinate space. effect_transform
is used to transform this back into the global coordinate space. A return value of std::nullopt indicates that the coverage is empty or otherwise does not intersect with the parent coverage limit and should be discarded.
Definition at line 19 of file save_layer_utils.cc.
References impeller::TRect< T >::GetSize(), impeller::TRect< T >::Intersection(), impeller::TRect< T >::IsMaximum(), impeller::TRect< Scalar >::MakeMaximum(), and impeller::TRect< T >::TransformBounds().
Referenced by impeller::Canvas::SaveLayer(), and impeller::testing::TEST().
|
static |
Definition at line 56 of file render_pass_mtl.mm.
References impeller::BackendCast< TextureMTL, Texture >::Cast(), ConfigureResolveTextureAttachment(), impeller::TextureMTL::GetMTLTexture(), impeller::Attachment::load_action, impeller::Attachment::store_action, impeller::Attachment::texture, ToMTLLoadAction(), and ToMTLStoreAction().
Referenced by ConfigureColorAttachment(), ConfigureDepthAttachment(), and ConfigureStencilAttachment().
void impeller::ConfigureBlending | ( | const ProcTableGLES & | gl, |
const ColorAttachmentDescriptor * | color | ||
) |
Definition at line 46 of file render_pass_gles.cc.
References impeller::ColorAttachmentDescriptor::alpha_blend_op, impeller::ColorAttachmentDescriptor::blending_enabled, impeller::ColorAttachmentDescriptor::color_blend_op, impeller::ColorAttachmentDescriptor::dst_alpha_blend_factor, impeller::ColorAttachmentDescriptor::dst_color_blend_factor, impeller::ColorAttachmentDescriptor::src_alpha_blend_factor, impeller::ColorAttachmentDescriptor::src_color_blend_factor, ToBlendFactor(), ToBlendOperation(), and impeller::ColorAttachmentDescriptor::write_mask.
Referenced by EncodeCommandsInReactor().
|
static |
Definition at line 73 of file render_pass_mtl.mm.
References impeller::ColorAttachment::clear_color, ConfigureAttachment(), and ToMTLClearColor().
Referenced by ToMTLRenderPassDescriptor().
|
static |
Definition at line 83 of file render_pass_mtl.mm.
References impeller::DepthAttachment::clear_depth, and ConfigureAttachment().
Referenced by ToMTLRenderPassDescriptor().
|
static |
Definition at line 50 of file blit_command_gles.cc.
References impeller::BackendCast< TextureGLES, Texture >::Cast(), DeleteFBO(), impeller::TextureGLES::GetGLHandle(), impeller::TextureGLES::IsWrapped(), impeller::TextureGLES::kColor0, impeller::TextureGLES::SetAsFramebufferAttachment(), and VALIDATION_LOG.
Referenced by impeller::BlitCopyTextureToTextureCommandGLES::Encode(), impeller::BlitCopyTextureToBufferCommandGLES::Encode(), and impeller::BlitResizeTextureCommandGLES::Encode().
|
static |
Definition at line 27 of file render_pass_mtl.mm.
References impeller::BackendCast< TextureMTL, Texture >::Cast(), impeller::TextureMTL::GetMTLTexture(), kMultisampleResolve, kStoreAndMultisampleResolve, impeller::Attachment::resolve_texture, impeller::Attachment::store_action, and VALIDATION_LOG.
Referenced by ConfigureAttachment().
void impeller::ConfigureStencil | ( | const ProcTableGLES & | gl, |
const PipelineDescriptor & | pipeline, | ||
uint32_t | stencil_reference | ||
) |
Definition at line 97 of file render_pass_gles.cc.
References impeller::PipelineDescriptor::GetBackStencilAttachmentDescriptor(), impeller::PipelineDescriptor::GetFrontStencilAttachmentDescriptor(), and impeller::PipelineDescriptor::HasStencilAttachmentDescriptors().
Referenced by EncodeCommandsInReactor().
void impeller::ConfigureStencil | ( | GLenum | face, |
const ProcTableGLES & | gl, | ||
const StencilAttachmentDescriptor & | stencil, | ||
uint32_t | stencil_reference | ||
) |
Definition at line 79 of file render_pass_gles.cc.
References impeller::StencilAttachmentDescriptor::depth_failure, impeller::StencilAttachmentDescriptor::depth_stencil_pass, impeller::StencilAttachmentDescriptor::read_mask, impeller::StencilAttachmentDescriptor::stencil_compare, impeller::StencilAttachmentDescriptor::stencil_failure, ToCompareFunction(), ToStencilOp(), and impeller::StencilAttachmentDescriptor::write_mask.
|
static |
Definition at line 93 of file render_pass_mtl.mm.
References impeller::StencilAttachment::clear_stencil, and ConfigureAttachment().
Referenced by ToMTLRenderPassDescriptor().
|
static |
Definition at line 70 of file khr_swapchain_impl_vk.cc.
Referenced by ChooseSurfaceFormat().
|
static |
Definition at line 30 of file round_rect.cc.
References impeller::TPoint< T >::GetLengthSquared(), impeller::TSize< T >::height, impeller::TSize< T >::IsEmpty(), impeller::TSize< T >::width, impeller::TPoint< T >::x, and impeller::TPoint< T >::y.
Referenced by impeller::RoundRect::Contains(), and impeller::RoundSuperellipseParam::Contains().
|
static |
Definition at line 59 of file allocator_vk.cc.
References kHostVisible, ToVKBufferMemoryPropertyFlags(), and ToVmaAllocationBufferCreateFlags().
|
static |
Definition at line 117 of file command_buffer_mtl.mm.
|
static |
Render Pass We are NOT going to use the same render pass with the framebuffer (later) and the graphics pipeline (here). Instead, we are going to ensure that the sub-passes are compatible. To see the compatibility rules, see the Vulkan spec: https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/chap8.html#renderpass-compatibility
Definition at line 127 of file pipeline_vk.cc.
References impeller::RenderPassBuilderVK::Build(), impeller::PipelineDescriptor::GetColorAttachmentDescriptors(), impeller::PipelineDescriptor::GetDepthPixelFormat(), impeller::PipelineDescriptor::GetDepthStencilAttachmentDescriptor(), impeller::PipelineDescriptor::GetLabel(), impeller::PipelineDescriptor::GetSampleCount(), impeller::PipelineDescriptor::GetStencilPixelFormat(), impeller::PipelineDescriptor::HasStencilAttachmentDescriptors(), kDontCare, impeller::RenderPassBuilderVK::SetColorAttachment(), impeller::ContextVK::SetDebugName(), impeller::RenderPassBuilderVK::SetDepthStencilAttachment(), impeller::RenderPassBuilderVK::SetStencilAttachment(), SPrintF(), and VALIDATION_LOG.
Referenced by impeller::PipelineVK::Create().
|
static |
Definition at line 528 of file content_context.cc.
References impeller::Context::GetCapabilities(), kCount4, kTriangleStrip, and impeller::ContentContextOptions::sample_count.
|
static |
Definition at line 97 of file pipeline_library_mtl.mm.
References impeller::PipelineDescriptor::GetBackStencilAttachmentDescriptor(), impeller::PipelineDescriptor::GetDepthStencilAttachmentDescriptor(), impeller::PipelineDescriptor::GetFrontStencilAttachmentDescriptor(), and ToMTLDepthStencilDescriptor().
GradientData impeller::CreateGradientBuffer | ( | const std::vector< Color > & | colors, |
const std::vector< Scalar > & | stops | ||
) |
Populate a vector with the interpolated color bytes for the linear gradient described by colors and stops.
colors | |
stops |
Definition at line 20 of file gradient.cc.
References AppendColor(), data, impeller::Color::Lerp(), ScalarNearlyEqual(), and value.
Referenced by impeller::testing::TEST().
std::vector< StopData > impeller::CreateGradientColors | ( | const std::vector< Color > & | colors, |
const std::vector< Scalar > & | stops | ||
) |
Populate a vector with the color and stop data for a gradient.
colors | |
stops |
Definition at line 34 of file gradient_generator.cc.
References impeller::StopData::color.
std::shared_ptr< Texture > impeller::CreateGradientTexture | ( | const GradientData & | gradient_data, |
const std::shared_ptr< impeller::Context > & | context | ||
) |
Create a host visible texture that contains the gradient defined by the provided gradient data.
Definition at line 17 of file gradient_generator.cc.
References impeller::GradientData::color_bytes, CreateTexture(), impeller::TextureDescriptor::format, kHostVisible, kR8G8B8A8UNormInt, impeller::TextureDescriptor::size, impeller::TextureDescriptor::storage_mode, and impeller::GradientData::texture_size.
std::shared_ptr< fml::Mapping > impeller::CreateMappingFromAllocation | ( | const std::shared_ptr< Allocation > & | allocation | ) |
Creates a mapping from allocation.
No data copy occurs. Only a reference to the underlying allocation is bumped up. Changes to the underlying allocation will not be reflected in the mapping and must not change.
[in] | allocation | The allocation. |
Definition at line 99 of file allocation.cc.
Referenced by CreateMappingWithCopy(), PipelineCacheDataPersist(), and impeller::testing::TEST_P().
std::shared_ptr< fml::Mapping > impeller::CreateMappingWithCopy | ( | const uint8_t * | contents, |
Bytes | length | ||
) |
Creates a mapping with copy of the bytes.
[in] | contents | The contents |
[in] | length | The length |
Definition at line 83 of file allocation.cc.
References CreateMappingFromAllocation(), and impeller::AllocationSize< Period >::GetByteSize().
std::shared_ptr<fml::Mapping> impeller::CreateMappingWithString | ( | std::shared_ptr< const std::string > | string | ) |
Creates a mapping with string data.
Only a reference to the underlying string is bumped up and the string is not copied.
[in] | string | The string |
std::shared_ptr< fml::Mapping > impeller::CreateMappingWithString | ( | std::string | string | ) |
Creates a mapping with string data.
The string is copied.
[in] | string | The string |
Definition at line 111 of file allocation.cc.
Referenced by impeller::compiler::Compiler::Compiler().
|
static |
Definition at line 219 of file context_mtl.mm.
References VALIDATION_LOG.
Referenced by impeller::ContextMTL::Create().
|
static |
Definition at line 215 of file context_mtl.mm.
Referenced by impeller::ContextMTL::Create().
IMPELLER_API PathBuilder * impeller::CreatePathBuilder | ( | ) |
Definition at line 12 of file tessellator.cc.
PipelineFuture< ComputePipelineDescriptor > impeller::CreatePipelineFuture | ( | const Context & | context, |
std::optional< ComputePipelineDescriptor > | desc | ||
) |
Definition at line 37 of file pipeline.cc.
References impeller::Context::GetPipelineLibrary(), and impeller::Context::IsValid().
PipelineFuture< PipelineDescriptor > impeller::CreatePipelineFuture | ( | const Context & | context, |
std::optional< PipelineDescriptor > | desc, | ||
bool | async = true |
||
) |
Create a pipeline for the given descriptor.
If async
is true, the compilation is performed on a worker thread. The returned future will complete once that work is done. If async
is false, the work is done on the current thread.
It is more performant to set async to false than to spawn a worker and immediately block on the future completion.
Definition at line 24 of file pipeline.cc.
References impeller::Context::GetPipelineLibrary(), and impeller::Context::IsValid().
|
static |
Definition at line 14 of file sampler_vk.cc.
References impeller::SamplerDescriptor::depth_address_mode, impeller::SamplerDescriptor::height_address_mode, kBase, kLinear, kNearest, impeller::SamplerDescriptor::label, impeller::SamplerDescriptor::mag_filter, impeller::SamplerDescriptor::min_filter, impeller::SamplerDescriptor::mip_filter, impeller::ContextVK::SetDebugName(), ToVKSamplerAddressMode(), ToVKSamplerMinMagFilter(), VALIDATION_LOG, and impeller::SamplerDescriptor::width_address_mode.
std::shared_ptr< Texture > impeller::CreateTexture | ( | const TextureDescriptor & | texture_descriptor, |
const std::vector< uint8_t > & | data, | ||
const std::shared_ptr< impeller::Context > & | context, | ||
std::string_view | debug_label | ||
) |
Definition at line 11 of file texture_util.cc.
References impeller::DeviceBuffer::AsBufferView(), and data.
Referenced by CreateGradientTexture().
|
static |
Definition at line 391 of file playground.cc.
References impeller::DeviceBuffer::AsBufferView(), buffer_view, impeller::TextureDescriptor::format, impeller::DecompressedImage::GetAllocation(), impeller::DecompressedImage::GetSize(), kDevicePrivate, kR8G8B8A8UNormInt, impeller::TextureDescriptor::mip_count, impeller::TSize< T >::MipCount(), impeller::TextureDescriptor::size, impeller::TextureDescriptor::storage_mode, and VALIDATION_LOG.
Referenced by impeller::Playground::CreateTextureForMapping().
|
static |
Definition at line 96 of file buffer_bindings_gles.cc.
References NormalizeUniformKey().
|
static |
VertexBuffer impeller::CreateVertexBuffer | ( | std::array< VertexType, size > | input, |
HostBuffer & | host_buffer | ||
) |
Create an index-less vertex buffer from a fixed size array.
Definition at line 24 of file vertex_buffer_builder.h.
References impeller::HostBuffer::Emplace(), kNone, and impeller::VertexBuffer::vertex_buffer.
Referenced by AdvancedBlend(), PipelineBlend(), impeller::SolidRRectLikeBlurContents::Render(), impeller::TextureContents::Render(), impeller::ClipContents::Render(), and RenderClipRestore().
IMPELLER_API void impeller::CubicTo | ( | PathBuilder * | builder, |
Scalar | x1, | ||
Scalar | y1, | ||
Scalar | x2, | ||
Scalar | y2, | ||
Scalar | x3, | ||
Scalar | y3 | ||
) |
Definition at line 28 of file tessellator.cc.
std::string impeller::DebugToFramebufferError | ( | int | status | ) |
bool impeller::DeepCompareMap | ( | const std::map< Key, std::shared_ptr< ComparableType >> & | lhs, |
const std::map< Key, std::shared_ptr< ComparableType >> & | rhs | ||
) |
Definition at line 74 of file comparable.h.
References DeepComparePointer().
Referenced by impeller::PipelineDescriptor::IsEqual().
bool impeller::DeepComparePointer | ( | const std::shared_ptr< ComparableType > & | lhs, |
const std::shared_ptr< ComparableType > & | rhs | ||
) |
Definition at line 57 of file comparable.h.
Referenced by DeepCompareMap(), impeller::ComputePipelineDescriptor::IsEqual(), impeller::Font::IsEqual(), impeller::PipelineDescriptor::IsEqual(), and impeller::PipelineLibraryGLES::ProgramKey::Equal::operator()().
|
static |
Definition at line 43 of file blit_command_gles.cc.
References type.
Referenced by ConfigureFBO(), impeller::BlitCopyTextureToTextureCommandGLES::Encode(), impeller::BlitCopyTextureToBufferCommandGLES::Encode(), and impeller::BlitResizeTextureCommandGLES::Encode().
std::string impeller::DepthAttachmentToString | ( | const DepthAttachment & | depth | ) |
Definition at line 130 of file formats.cc.
References AttachmentToString(), impeller::DepthAttachment::clear_depth, and SPrintF().
Referenced by impeller::RenderTarget::ToString().
|
static |
Definition at line 250 of file proc_table_gles.cc.
References AttachmentTypeString(), and type.
Referenced by impeller::ProcTableGLES::DescribeCurrentFramebuffer().
IMPELLER_API void impeller::DestroyPathBuilder | ( | PathBuilder * | builder | ) |
Definition at line 16 of file tessellator.cc.
void impeller::DestroyTessellator | ( | TESStesselator * | tessellator | ) |
Definition at line 186 of file tessellator_libtess.cc.
Referenced by impeller::TessellatorLibtess::TessellatorLibtess().
IMPELLER_API void impeller::DestroyVertices | ( | Vertices * | vertices | ) |
Definition at line 77 of file tessellator.cc.
References impeller::Vertices::points.
|
static |
Definition at line 43 of file description_gles.cc.
Referenced by impeller::DescriptionGLES::DescriptionGLES().
|
static |
Definition at line 39 of file description_gles.cc.
References HasPrefix().
Referenced by impeller::DescriptionGLES::DescriptionGLES().
|
static |
Definition at line 47 of file description_gles.cc.
References impeller::Version::FromVector(), and StripPrefix().
Referenced by impeller::DescriptionGLES::DescriptionGLES().
ISize impeller::DeviceMaxTextureSizeSupported | ( | id< MTLDevice > | device | ) |
Definition at line 25 of file allocator_mtl.mm.
Referenced by impeller::AllocatorMTL::AllocatorMTL(), and InferMetalCapabilities().
|
static |
|
static |
Definition at line 19 of file allocator_mtl.mm.
Referenced by impeller::AllocatorMTL::AllocatorMTL().
|
static |
Definition at line 45 of file context_mtl.mm.
Referenced by InferMetalCapabilities().
|
static |
|
constexpr |
Definition at line 223 of file driver_info_vk.cc.
References kCPU, kDiscreteGPU, kIntegratedGPU, kUnknown, kVirtualGPU, and type.
Referenced by impeller::DriverInfoVK::DumpToLog().
std::shared_ptr< Texture > impeller::DisplayListToTexture | ( | const sk_sp< flutter::DisplayList > & | display_list, |
ISize | size, | ||
AiksContext & | context, | ||
bool | reset_host_buffer, | ||
bool | generate_mips | ||
) |
Render the provided display list to a texture with the given size.
Definition at line 1224 of file dl_dispatcher.cc.
References impeller::RenderTargetAllocator::CreateOffscreen(), impeller::RenderTargetAllocator::CreateOffscreenMSAA(), data, impeller::CanvasDlDispatcher::FinishRecording(), impeller::AiksContext::GetContentContext(), impeller::AiksContext::GetContext(), impeller::RenderTarget::GetRenderTargetTexture(), impeller::ContentContext::GetTextShadowCache(), impeller::TSize< T >::height, impeller::RenderTarget::IsValid(), impeller::TRect< Scalar >::MakeSize(), impeller::TRect< T >::MakeSize(), impeller::TextShadowCache::MarkFrameStart(), impeller::TSize< T >::MipCount(), impeller::CanvasDlDispatcher::SetBackdropData(), impeller::FirstPassDispatcher::TakeBackdropData(), and impeller::TSize< T >::width.
Referenced by impeller::GoldenPlaygroundTest::MakeScreenshot(), impeller::GoldenPlaygroundTest::OpenPlaygroundHere(), impeller::testing::TEST_F(), and impeller::testing::TEST_P().
|
inlinestatic |
Definition at line 139 of file color.cc.
References ApplyBlendedColor(), ToRGB(), and impeller::Color::Unpremultiply().
Referenced by impeller::Color::Blend().
|
inlinestatic |
Definition at line 147 of file color.cc.
References ApplyBlendedColor(), impeller::Color::blue, impeller::Color::green, impeller::Color::red, and impeller::Color::Unpremultiply().
Referenced by impeller::Color::Blend().
|
static |
Definition at line 211 of file typographer_context_skia.cc.
References impeller::BackendCast< TypefaceSkia, Typeface >::Cast(), impeller::ScaledFont::font, impeller::TRect< T >::GetLeft(), impeller::Font::GetMetrics(), impeller::TypefaceSkia::GetSkiaTypeface(), impeller::TRect< T >::GetTop(), impeller::Font::GetTypeface(), impeller::SubpixelGlyph::glyph, impeller::Glyph::index, impeller::ScaledFont::scale, impeller::SubpixelGlyph::subpixel_offset, SubpixelPositionToPoint(), impeller::TPoint< T >::x, and impeller::TPoint< T >::y.
Referenced by BulkUpdateAtlasBitmap(), and UpdateAtlasBitmap().
std::tuple< Point, Point > impeller::DrawPlaygroundLine | ( | PlaygroundPoint & | point_a, |
PlaygroundPoint & | point_b | ||
) |
Definition at line 50 of file widgets.cc.
References impeller::Color::blue, impeller::PlaygroundPoint::color, DrawPlaygroundPoint(), impeller::Color::green, impeller::PlaygroundPoint::radius, and impeller::Color::red.
Referenced by impeller::testing::TEST_P().
Point impeller::DrawPlaygroundPoint | ( | PlaygroundPoint & | point | ) |
Definition at line 9 of file widgets.cc.
References impeller::Color::blue, impeller::PlaygroundPoint::color, impeller::PlaygroundPoint::dragging, impeller::TPoint< T >::GetDistance(), impeller::Color::green, impeller::PlaygroundPoint::position, impeller::PlaygroundPoint::prev_mouse_pos, impeller::PlaygroundPoint::radius, impeller::Color::red, impeller::PlaygroundPoint::reset_position, SPrintF(), x, impeller::TPoint< T >::x, and impeller::TPoint< T >::y.
Referenced by DrawPlaygroundLine(), and impeller::testing::TEST_P().
Definition at line 50 of file solid_rrect_like_blur_contents.cc.
References impeller::TPoint< T >::x, and impeller::TPoint< T >::y.
|
static |
Definition at line 22 of file pipeline_vk.cc.
bool impeller::EncodeCommandsInReactor | ( | const ReactorGLES & | reactor, |
const std::vector< std::unique_ptr< BlitEncodeGLES >> & | commands, | ||
const std::string & | label | ||
) |
Definition at line 34 of file blit_pass_gles.cc.
References impeller::ReactorGLES::GetProcTable(), and impeller::ProcTableGLES::PushDebugGroup().
bool impeller::EncodeCommandsInReactor | ( | const RenderPassData & | pass_data, |
const ReactorGLES & | reactor, | ||
const std::vector< Command > & | commands, | ||
const std::vector< BufferView > & | vertex_buffers, | ||
const std::vector< TextureAndSampler > & | bound_textures, | ||
const std::vector< BufferResource > & | bound_buffers, | ||
const std::shared_ptr< GPUTracerGLES > & | tracer | ||
) |
Setup the viewport.
Configure blending.
Setup stencil.
Configure depth.
Setup the viewport.
Setup the scissor rect.
Setup culling.
Setup winding order.
Bind vertex buffers.
Note: There is no need to run RenderPass::ValidateVertexBuffers
or RenderPass::ValidateIndexBuffer
here, as validation already runs when the vertex/index buffers are set on the command.
Bind the pipeline program.
Bind uniform data.
Determine the primitive type.
Finally! Invoke the draw call.
Unbind vertex attribs.
Definition at line 192 of file render_pass_gles.cc.
References impeller::Color::alpha, impeller::BufferBindingsGLES::BindUniformData(), BindVertexBuffer(), impeller::Color::blue, impeller::RenderPassData::clear_color, impeller::RenderPassData::clear_color_attachment, impeller::RenderPassData::clear_depth, impeller::RenderPassData::clear_depth_attachment, impeller::RenderPassData::clear_stencil, impeller::RenderPassData::clear_stencil_attachment, impeller::RenderPassData::color_attachment, ConfigureBlending(), ConfigureStencil(), impeller::ReactorGLES::CreateUntrackedHandle(), DebugToFramebufferError(), impeller::RenderPassData::depth_attachment, impeller::RenderPassData::discard_color_attachment, impeller::RenderPassData::discard_depth_attachment, impeller::RenderPassData::discard_stencil_attachment, impeller::TextureGLES::GetCachedFBO(), impeller::TextureGLES::GetFBO(), impeller::ReactorGLES::GetGLHandle(), impeller::ReactorGLES::GetProcTable(), impeller::Color::green, impeller::TSize< T >::height, impeller::HandleGLES::IsDead(), impeller::TextureGLES::IsWrapped(), impeller::RenderPassData::label, impeller::ProcTableGLES::PushDebugGroup(), impeller::Color::red, impeller::RenderPassData::resolve_attachment, impeller::TextureGLES::SetAsFramebufferAttachment(), impeller::TextureGLES::SetCachedFBO(), impeller::RenderPassData::stencil_attachment, ToCompareFunction(), ToIndexType(), ToMode(), impeller::BufferBindingsGLES::UnbindVertexAttributes(), VALIDATION_LOG, and impeller::RenderPassData::viewport.
|
static |
|
static |
Definition at line 44 of file compute_playground_test.cc.
Referenced by impeller::ComputePlaygroundTest::GetWindowTitle().
|
static |
Definition at line 216 of file proc_table_gles.cc.
Referenced by impeller::ProcTableGLES::DescribeCurrentFramebuffer().
|
constexpr |
Definition at line 292 of file formats_mtl.h.
|
constexpr |
Definition at line 22 of file formats_mtl.h.
References kB10G10R10A10XR, kB10G10R10XR, kB10G10R10XRSRGB, kB8G8R8A8UNormInt, kB8G8R8A8UNormIntSRGB, kD24UnormS8Uint, kD32FloatS8UInt, kR16G16B16A16Float, kR32G32B32A32Float, kR8G8B8A8UNormInt, kR8G8B8A8UNormIntSRGB, kS8UInt, and kUnknown.
Referenced by WrapTextureMTL(), and WrapTextureWithRenderTarget().
|
constexpr |
Definition at line 321 of file formats_mtl.h.
References kDontCare, kMultisampleResolve, kStore, and kStoreAndMultisampleResolve.
Definition at line 115 of file color.cc.
References impeller::Vector3::x, impeller::Vector3::y, and impeller::Vector3::z.
Referenced by ApplyBlendedColor().
KernelSamples impeller::GenerateBlurInfo | ( | BlurParameters | parameters | ) |
Definition at line 912 of file gaussian_blur_filter_contents.cc.
References impeller::BlurParameters::blur_radius, impeller::BlurParameters::blur_sigma, impeller::BlurParameters::blur_uv_offset, impeller::KernelSample::coefficient, impeller::KernelSamples::kMaxKernelSize, impeller::KernelSamples::sample_count, impeller::KernelSamples::samples, impeller::BlurParameters::step_size, impeller::KernelSample::uv_offset, and x.
Referenced by impeller::testing::TEST().
AdrenoGPU impeller::GetAdrenoVersion | ( | std::string_view | version | ) |
The format that Adreno names follow is "Adreno (TM) VERSION".
Definition at line 108 of file driver_info_vk.cc.
References kAdrenoVersions, and kUnknown.
Referenced by impeller::DriverInfoVK::DriverInfoVK(), and impeller::testing::TEST().
|
static |
Definition at line 46 of file decompressed_image.cc.
References impeller::DecompressedImage::kGrey, impeller::DecompressedImage::kGreyAlpha, impeller::DecompressedImage::kInvalid, impeller::DecompressedImage::kRGB, and impeller::DecompressedImage::kRGBA.
Referenced by impeller::DecompressedImage::ConvertToRGBA().
ColorFilterProc impeller::GetCPUColorFilterProc | ( | const flutter::DlColorFilter * | filter | ) |
Definition at line 66 of file color_filter.cc.
References impeller::ColorMatrix::array, impeller::Color::Blend(), and impeller::skia_conversions::ToColor().
|
static |
Definition at line 202 of file capabilities_vk.cc.
References kKHRExternalFence, kKHRExternalFenceFd, kKHRExternalSemaphore, kKHRExternalSemaphoreFd, and kLast.
|
static |
Definition at line 217 of file capabilities_vk.cc.
References kEXTImageCompressionControl, kEXTPipelineCreationFeedback, kLast, and kVKKHRPortabilitySubset.
|
static |
Definition at line 183 of file capabilities_vk.cc.
References kANDROIDExternalMemoryAndroidHardwareBuffer, kEXTQueueFamilyForeign, kKHRDedicatedAllocation, kKHRExternalMemory, kKHRSamplerYcbcrConversion, and kLast.
|
static |
Definition at line 173 of file capabilities_vk.cc.
References kKHRSwapchain, and kLast.
Referenced by impeller::CapabilitiesVK::GetEnabledDeviceExtensions(), IsExtensionInList(), and impeller::CapabilitiesVK::SetPhysicalDevice().
|
static |
Definition at line 81 of file fence_waiter_vk.cc.
|
static |
Definition at line 21 of file description_gles.cc.
Referenced by impeller::DescriptionGLES::DescriptionGLES().
|
static |
Definition at line 29 of file description_gles.cc.
Referenced by impeller::DescriptionGLES::DescriptionGLES().
|
static |
Definition at line 89 of file typographer_context_skia.cc.
References impeller::GlyphAtlas::GetType(), impeller::TSize< T >::height, impeller::GlyphAtlas::kAlphaBitmap, impeller::GlyphAtlas::kColorBitmap, and impeller::TSize< T >::width.
Referenced by BulkUpdateAtlasBitmap(), and UpdateAtlasBitmap().
MaliGPU impeller::GetMaliVersion | ( | std::string_view | version | ) |
Definition at line 133 of file driver_info_vk.cc.
References kMaliVersions, and kUnknown.
Referenced by impeller::DriverInfoVK::DriverInfoVK(), and impeller::testing::TEST().
|
static |
Definition at line 88 of file pipeline_library_mtl.mm.
References impeller::ComputePipelineDescriptor::GetLabel(), and impeller::ComputePipelineDescriptor::GetStageEntrypoint().
|
static |
Definition at line 32 of file pipeline_library_mtl.mm.
References impeller::PipelineDescriptor::GetColorAttachmentDescriptors(), impeller::PipelineDescriptor::GetDepthPixelFormat(), impeller::PipelineDescriptor::GetLabel(), impeller::VertexDescriptorMTL::GetMTLVertexDescriptor(), impeller::PipelineDescriptor::GetSampleCount(), impeller::PipelineDescriptor::GetSpecializationConstants(), impeller::PipelineDescriptor::GetStageEntrypoints(), impeller::PipelineDescriptor::GetStencilPixelFormat(), impeller::PipelineDescriptor::GetVertexDescriptor(), impeller::VertexDescriptorMTL::SetStageInputsAndLayout(), ToMTLPixelFormat(), and ToMTLRenderPipelineColorAttachmentDescriptor().
std::array<std::vector<Scalar>, 15> impeller::GetPorterDuffSpecConstants | ( | bool | supports_decal | ) |
Definition at line 505 of file content_context.cc.
References x.
Referenced by impeller::ContentContext::ContentContext().
PowerVRGPU impeller::GetPowerVRVersion | ( | std::string_view | version | ) |
Definition at line 122 of file driver_info_vk.cc.
References kCXT, kDXT, and kUnknown.
Referenced by impeller::DriverInfoVK::DriverInfoVK().
|
static |
|
static |
Definition at line 20 of file clip_contents.cc.
References impeller::Entity::GetShaderClipDepth().
Referenced by impeller::ClipContents::Render(), and RenderClipRestore().
|
static |
Definition at line 22 of file pipeline_library_gles.cc.
Referenced by LogShaderCompilationFailure().
|
static |
Definition at line 36 of file pipeline_library_gles.cc.
References data.
Referenced by LinkProgram(), and LogShaderCompilationFailure().
|
static |
Definition at line 75 of file runtime_effect_contents.cc.
References kFloat, kSampledImage, kStruct, and type.
Referenced by MakeShaderMetadata().
|
static |
Definition at line 244 of file capabilities_vk.cc.
Referenced by impeller::CapabilitiesVK::GetEnabledDeviceExtensions(), and impeller::CapabilitiesVK::SetPhysicalDevice().
|
static |
Definition at line 52 of file render_pass_vk.cc.
References impeller::ColorAttachment::clear_color, impeller::RenderTarget::GetDepthAttachment(), impeller::RenderTarget::GetStencilAttachment(), impeller::RenderTarget::IterateAllColorAttachments(), impeller::Attachment::resolve_texture, VKClearValueFromColor(), and VKClearValueFromDepthStencil().
WorkaroundsVK impeller::GetWorkaroundsFromDriverInfo | ( | DriverInfoVK & | driver_info | ) |
Definition at line 10 of file workarounds_vk.cc.
References impeller::WorkaroundsVK::batch_submit_command_buffer_timeout, impeller::WorkaroundsVK::broken_mipmap_generation, impeller::DriverInfoVK::GetAdrenoGPUInfo(), impeller::DriverInfoVK::GetPowerVRGPUInfo(), impeller::WorkaroundsVK::input_attachment_self_dependency_broken, kAdreno630, and impeller::WorkaroundsVK::slow_primitive_restart_performance.
Referenced by impeller::testing::CanBatchSubmitTest(), impeller::testing::CanUseFramebufferFetch(), impeller::testing::CanUseMipgeneration(), impeller::testing::CanUsePrimitiveRestartSubmitTest(), and impeller::testing::TEST().
void() impeller::glClearDepth | ( | GLdouble | depth | ) |
void() impeller::glClearDepthf | ( | GLfloat | depth | ) |
void() impeller::glDepthRange | ( | GLdouble | n, |
GLdouble | f | ||
) |
void() impeller::glDepthRangef | ( | GLfloat | n, |
GLfloat | f | ||
) |
bool impeller::GLErrorIsFatal | ( | GLenum | value | ) |
Definition at line 38 of file proc_table_gles.cc.
References value.
Referenced by impeller::AutoErrorCheck::~AutoErrorCheck().
const char * impeller::GLErrorToString | ( | GLenum | value | ) |
Definition at line 18 of file proc_table_gles.cc.
References value.
Referenced by impeller::AutoErrorCheck::~AutoErrorCheck().
|
static |
Definition at line 29 of file shader_library_gles.cc.
std::string impeller::HandleTypeToString | ( | HandleType | type | ) |
Definition at line 11 of file handle_gles.cc.
References kBuffer, kFence, kFrameBuffer, kProgram, kRenderBuffer, kTexture, kUnknown, and type.
Referenced by std::operator<<().
bool impeller::HasPrefix | ( | const std::string & | string, |
const std::string & | prefix | ||
) |
Definition at line 30 of file strings.cc.
Referenced by DetermineIfES(), and StripPrefix().
|
static |
Definition at line 365 of file capabilities_vk.cc.
References e1.
Referenced by impeller::CapabilitiesVK::GetEnabledDeviceFeatures().
|
static |
Definition at line 374 of file capabilities_vk.cc.
Referenced by impeller::CapabilitiesVK::GetEnabledDeviceFeatures().
bool impeller::HasSuffix | ( | const std::string & | string, |
const std::string & | suffix | ||
) |
Definition at line 34 of file strings.cc.
|
static |
Definition at line 340 of file capabilities_vk.cc.
Referenced by PhysicalDeviceSupportsRequiredFormats(), and impeller::CapabilitiesVK::SetPhysicalDevice().
|
static |
Definition at line 348 of file capabilities_vk.cc.
Referenced by PhysicalDeviceSupportsRequiredFormats(), and impeller::CapabilitiesVK::SetPhysicalDevice().
bool impeller::HasValidationLayers | ( | ) |
Definition at line 53 of file context_vk.cc.
References gHasValidationLayers.
Referenced by impeller::CommandBufferVK::InsertDebugMarker(), impeller::QueueVK::InsertDebugMarker(), impeller::CommandBufferVK::PopDebugGroup(), impeller::CommandBufferVK::PushDebugGroup(), impeller::ContextVK::SetDebugName(), and impeller::TextureVK::TextureVK().
|
static |
Definition at line 12 of file tessellator_libtess.cc.
|
static |
Definition at line 20 of file tessellator_libtess.cc.
|
static |
Definition at line 16 of file tessellator_libtess.cc.
|
constexpr |
impeller::IMPELLER_ENUM_IS_MASK | ( | android::HardwareBufferUsageFlags | ) |
impeller::IMPELLER_ENUM_IS_MASK | ( | ColorWriteMaskBits | ) |
impeller::IMPELLER_ENUM_IS_MASK | ( | MyMaskBits | ) |
impeller::IMPELLER_ENUM_IS_MASK | ( | TextureUsage | ) |
|
inline |
void impeller::ImpellerValidationBreak | ( | const char * | message, |
const char * | file, | ||
int | line | ||
) |
Definition at line 54 of file validation.cc.
References ImpellerValidationErrorsAreFatal(), and sValidationFailureCallback.
Referenced by impeller::ValidationLog::~ValidationLog().
bool impeller::ImpellerValidationErrorsAreFatal | ( | ) |
Definition at line 71 of file validation.cc.
References sValidationLogsAreFatal.
Referenced by ImpellerValidationBreak(), and TEST().
void impeller::ImpellerValidationErrorsSetCallback | ( | ValidationFailureCallback | callback | ) |
Sets a callback that callers (usually tests) can set to intercept validation failures.
Returning true from the callback indicates that Impeller can continue and avoid any default behavior on tripping validation (which could include process termination).
[in] | callback | The callback |
Definition at line 21 of file validation.cc.
References sValidationFailureCallback.
Referenced by impeller::PlaygroundTest::PlaygroundTest(), and impeller::PlaygroundTest::~PlaygroundTest().
void impeller::ImpellerValidationErrorsSetFatal | ( | bool | fatal | ) |
Definition at line 17 of file validation.cc.
References sValidationLogsAreFatal.
Referenced by main().
|
static |
Definition at line 49 of file context_mtl.mm.
References impeller::CapabilitiesBuilder::Build(), DeviceMaxTextureSizeSupported(), DeviceSupportsComputeSubgroups(), DeviceSupportsExtendedRangeFormats(), DeviceSupportsFramebufferFetch(), kA8UNormInt, kD32FloatS8UInt, kS8UInt, impeller::CapabilitiesBuilder::SetDefaultColorFormat(), impeller::CapabilitiesBuilder::SetDefaultDepthStencilFormat(), impeller::CapabilitiesBuilder::SetDefaultGlyphAtlasFormat(), impeller::CapabilitiesBuilder::SetDefaultStencilFormat(), impeller::CapabilitiesBuilder::SetMaximumRenderPassAttachmentSize(), impeller::CapabilitiesBuilder::SetMinimumUniformAlignment(), impeller::CapabilitiesBuilder::SetSupportsCompute(), impeller::CapabilitiesBuilder::SetSupportsComputeSubgroups(), impeller::CapabilitiesBuilder::SetSupportsDecalSamplerAddressMode(), impeller::CapabilitiesBuilder::SetSupportsDeviceTransientTextures(), impeller::CapabilitiesBuilder::SetSupportsExtendedRangeFormats(), impeller::CapabilitiesBuilder::SetSupportsFramebufferFetch(), impeller::CapabilitiesBuilder::SetSupportsOffscreenMSAA(), impeller::CapabilitiesBuilder::SetSupportsReadFromResolve(), impeller::CapabilitiesBuilder::SetSupportsSSBO(), impeller::CapabilitiesBuilder::SetSupportsTextureToTextureBlits(), and impeller::CapabilitiesBuilder::SetSupportsTriangleFan().
Referenced by impeller::ContextMTL::UpdateOffscreenLayerPixelFormat().
std::optional<ArchiveShaderType> impeller::InferShaderTypefromFileExtension | ( | const std::filesystem::path & | path | ) |
Definition at line 20 of file shader_archive_writer.cc.
References kCompute, kFragment, and kVertex.
Referenced by impeller::ShaderArchiveWriter::AddShaderAtPath().
|
static |
void impeller::InsertBarrierForInputAttachmentRead | ( | const vk::CommandBuffer & | buffer, |
const vk::Image & | image | ||
) |
Inserts the appropriate barriers to ensure that subsequent commands can read from the specified image (itself a framebuffer attachment) as an input attachment.
Unlike most barriers, this barrier may only be inserted within a Vulkan render-pass.
The type of barrier inserted depends on the subpass setup and self-dependencies. Only use this utility method for inserting barriers in render passes created by RenderPassBuilderVK
.
[in] | buffer | The buffer |
[in] | image | The image |
Definition at line 244 of file render_pass_builder_vk.cc.
References kSelfDependencyDstAccessMask, kSelfDependencyDstStageMask, kSelfDependencyFlags, kSelfDependencySrcAccessMask, and kSelfDependencySrcStageMask.
|
static |
Definition at line 16 of file blit_pass_vk.cc.
class impeller::IPLR_CAPABILITY | ( | "mutex" | ) |
Definition at line 1 of file thread.h.
References IPLR_ACQUIRE, IPLR_ACQUIRE_SHARED, IPLR_RELEASE, and IPLR_RELEASE_SHARED.
|
static |
|
constexpr |
|
static |
Definition at line 389 of file capabilities_vk.cc.
References GetExtensionName().
Referenced by impeller::CapabilitiesVK::GetEnabledDeviceFeatures().
|
static |
Definition at line 116 of file shader_library_vk.cc.
|
constexpr |
Definition at line 283 of file formats.h.
References kTexture2D, kTexture2DMultisample, kTextureCube, kTextureExternalOES, and type.
Referenced by impeller::TextureDescriptor::SamplingOptionsAreValid().
|
constexpr |
|
static |
Definition at line 232 of file capabilities_vk.cc.
|
static |
Definition at line 48 of file debug_report_vk.cc.
|
static |
Definition at line 60 of file debug_report_vk.cc.
|
staticconstexpr |
Referenced by impeller::RoundRect::Contains().
|
staticconstexpr |
Referenced by impeller::RoundRect::Contains().
|
staticconstexpr |
Referenced by impeller::RoundRect::Contains().
|
staticconstexpr |
Referenced by impeller::RoundRect::Contains().
GaussianBlurPipeline::FragmentShader::KernelSamples impeller::LerpHackKernelSamples | ( | KernelSamples | samples | ) |
This will shrink the size of a kernel by roughly half by sampling between samples and relying on linear interpolation between the samples.
Definition at line 959 of file gaussian_blur_filter_contents.cc.
References impeller::KernelSample::coefficient, kGaussianBlurMaxKernelSize, impeller::KernelSamples::sample_count, impeller::KernelSamples::samples, impeller::KernelSample::uv_offset, impeller::TPoint< T >::x, and impeller::TPoint< T >::y.
Referenced by impeller::testing::TEST().
IMPELLER_API void impeller::LineTo | ( | PathBuilder * | builder, |
Scalar | x, | ||
Scalar | y | ||
) |
Definition at line 24 of file tessellator.cc.
References x.
Referenced by impeller::testing::TEST(), impeller::testing::TEST_P(), and impeller::interop::testing::TEST_P().
|
static |
Definition at line 77 of file pipeline_library_gles.cc.
References impeller::ReactorGLES::GetGLHandle(), impeller::ReactorGLES::GetProcTable(), GetShaderSource(), LogShaderCompilationFailure(), SPrintF(), and VALIDATION_LOG.
|
constexpr |
|
static |
Definition at line 60 of file command_buffer_mtl.mm.
References MTLCommandBufferErrorToString(), and VALIDATION_LOG.
|
static |
Definition at line 49 of file pipeline_library_gles.cc.
References GetShaderInfoLog(), GetShaderSource(), and VALIDATION_LOG.
Referenced by LinkProgram().
Definition at line 63 of file color.cc.
References impeller::Vector3::x, impeller::Vector3::y, and impeller::Vector3::z.
Referenced by impeller::Color::Blend(), ClipColor(), impeller::BlendFilterContents::SetBlendMode(), and SetLuminosity().
bool impeller::Main | ( | const fml::CommandLine & | command_line | ) |
Definition at line 13 of file shader_archive_main.cc.
References impeller::ShaderArchiveWriter::AddShaderAtPath(), and impeller::ShaderArchiveWriter::CreateMapping().
Referenced by main().
impeller::MAKE_STROKE_BENCHMARK_CAPTURE_ALL_CAPS_JOINS | ( | Cubic | , |
false | |||
) |
impeller::MAKE_STROKE_BENCHMARK_CAPTURE_ALL_CAPS_JOINS | ( | Quadratic | , |
false | |||
) |
impeller::MAKE_STROKE_PATH_BENCHMARK_CAPTURE | ( | RRect | , |
Butt | , | ||
Bevel | |||
) |
impeller::MAKE_STROKE_PATH_BENCHMARK_CAPTURE | ( | RRect | , |
Butt | , | ||
Miter | |||
) |
impeller::MAKE_STROKE_PATH_BENCHMARK_CAPTURE | ( | RRect | , |
Butt | , | ||
Round | |||
) |
impeller::MAKE_STROKE_PATH_BENCHMARK_CAPTURE | ( | RSuperellipse | , |
Butt | , | ||
Bevel | |||
) |
impeller::MAKE_STROKE_PATH_BENCHMARK_CAPTURE | ( | RSuperellipse | , |
Butt | , | ||
Miter | |||
) |
impeller::MAKE_STROKE_PATH_BENCHMARK_CAPTURE | ( | RSuperellipse | , |
Butt | , | ||
Round | |||
) |
|
static |
Definition at line 86 of file runtime_effect_contents.cc.
References impeller::RuntimeUniformDescription::array_elements, impeller::RuntimeUniformDescription::bit_width, impeller::RuntimeUniformDimensions::cols, impeller::RuntimeUniformDescription::dimensions, GetShaderType(), impeller::RuntimeUniformDescription::name, impeller::RuntimeUniformDimensions::rows, impeller::RuntimeUniformDescription::type, and impeller::ShaderStructMemberMetadata::type.
Referenced by impeller::RuntimeEffectContents::Render().
auto impeller::MakeSharedVK | ( | vk::UniqueHandle< T, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE > | handle | ) |
Definition at line 44 of file shared_object_vk.h.
Referenced by impeller::ExternalSemaphoreVK::ExternalSemaphoreVK().
std::shared_ptr< impeller::TextFrame > impeller::MakeTextFrameFromTextBlobSkia | ( | const sk_sp< SkTextBlob > & | blob | ) |
Definition at line 45 of file text_frame_skia.cc.
References impeller::Glyph::kBitmap, kNone, impeller::Glyph::kPath, kX, ToFont(), ToRect(), type, and impeller::TPoint< T >::x.
Referenced by impeller::testing::TEST_P().
Definition at line 55 of file color.cc.
References impeller::Color::alpha, impeller::Color::blue, impeller::Color::green, and impeller::Color::red.
Referenced by impeller::Color::Blend().
IMPELLER_API void impeller::MoveTo | ( | PathBuilder * | builder, |
Scalar | x, | ||
Scalar | y | ||
) |
Definition at line 20 of file tessellator.cc.
References x.
Referenced by impeller::testing::TEST(), and impeller::testing::TEST_P().
|
static |
Definition at line 35 of file command_buffer_mtl.mm.
Referenced by LogMTLCommandBufferErrorIfPresent().
|
static |
Definition at line 172 of file context_mtl.mm.
References data.
Referenced by impeller::ContextMTL::Create().
|
static |
Definition at line 149 of file context_mtl.mm.
References VALIDATION_LOG.
Referenced by impeller::ContextMTL::Create().
Definition at line 66 of file solid_rrect_like_blur_contents.cc.
|
inlinestatic |
Definition at line 9 of file rounding_radii.cc.
References impeller::TSize< T >::IsEmpty().
Referenced by impeller::RoundingRadii::Scaled().
|
static |
|
inlineconstexpr |
|
inlineconstexpr |
|
constexpr |
Definition at line 269 of file point.h.
References impeller::TPoint< T >::x, and impeller::TPoint< T >::y.
|
constexpr |
Definition at line 249 of file point.h.
References impeller::TPoint< T >::x, and impeller::TPoint< T >::y.
|
constexpr |
Definition at line 259 of file point.h.
References impeller::TPoint< T >::x, and impeller::TPoint< T >::y.
|
constexpr |
Definition at line 264 of file point.h.
References impeller::TPoint< T >::x, and impeller::TPoint< T >::y.
Definition at line 323 of file point.h.
References impeller::TPoint< T >::x, and impeller::TPoint< T >::y.
|
constexpr |
Definition at line 308 of file point.h.
References impeller::TSize< T >::height, impeller::TSize< T >::width, impeller::TPoint< T >::x, and impeller::TPoint< T >::y.
|
inlineconstexpr |
Definition at line 903 of file color.h.
References impeller::Color::alpha, impeller::Color::blue, impeller::Color::green, impeller::Color::red, and value.
|
constexpr |
Definition at line 279 of file point.h.
References impeller::TPoint< T >::x, and impeller::TPoint< T >::y.
|
constexpr |
Definition at line 284 of file point.h.
References impeller::TPoint< T >::x, and impeller::TPoint< T >::y.
|
constexpr |
Definition at line 318 of file point.h.
References impeller::TSize< T >::height, impeller::TSize< T >::width, impeller::TPoint< T >::x, and impeller::TPoint< T >::y.
|
inlineconstexpr |
Definition at line 914 of file color.h.
References impeller::Color::alpha, impeller::Color::blue, impeller::Color::green, impeller::Color::red, and value.
|
constexpr |
Definition at line 296 of file point.h.
References impeller::TPoint< T >::x, and impeller::TPoint< T >::y.
|
constexpr |
Definition at line 155 of file size.h.
References impeller::TSize< T >::height, and impeller::TSize< T >::width.
|
constexpr |
Definition at line 224 of file vector.h.
References impeller::Vector3::x, impeller::Vector3::y, and impeller::Vector3::z.
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
ContentContextOptions impeller::OptionsFromPass | ( | const RenderPass & | pass | ) |
Definition at line 19 of file contents.cc.
References impeller::ContentContextOptions::color_attachment_pixel_format, impeller::ContentContextOptions::depth_compare, impeller::RenderPass::GetRenderTargetPixelFormat(), impeller::RenderPass::GetSampleCount(), impeller::ContentContextOptions::has_depth_stencil_attachments, impeller::RenderPass::HasDepthAttachment(), impeller::RenderPass::HasStencilAttachment(), kGreaterEqual, impeller::ContentContextOptions::kIgnore, impeller::ContentContextOptions::sample_count, and impeller::ContentContextOptions::stencil_mode.
Referenced by AdvancedBlend(), OptionsFromPassAndEntity(), PipelineBlend(), impeller::ColorFilterAtlasContents::Render(), impeller::ClipContents::Render(), RenderClipRestore(), and impeller::testing::TEST_P().
ContentContextOptions impeller::OptionsFromPassAndEntity | ( | const RenderPass & | pass, |
const Entity & | entity | ||
) |
Definition at line 34 of file contents.cc.
References impeller::ContentContextOptions::blend_mode, impeller::Entity::GetBlendMode(), and OptionsFromPass().
Referenced by impeller::ColorSourceContents::DrawGeometry(), impeller::AtlasContents::Render(), impeller::SolidRRectLikeBlurContents::Render(), impeller::TextContents::Render(), impeller::TextureContents::Render(), impeller::VerticesSimpleBlendContents::Render(), and impeller::testing::TEST_P().
|
static |
Definition at line 136 of file typographer_context_skia.cc.
References impeller::TSize< T >::Ceil(), impeller::TSize< T >::height, impeller::TSize< T >::IsEmpty(), kPadding, impeller::TRect< Scalar >::MakeXYWH(), impeller::TSize< T >::width, impeller::IPoint16::x(), and impeller::IPoint16::y().
Referenced by ComputeNextAtlasSize().
|
static |
Definition at line 355 of file capabilities_vk.cc.
References HasSuitableColorFormat(), and HasSuitableDepthStencilFormat().
Referenced by impeller::CapabilitiesVK::GetEnabledDeviceFeatures().
|
static |
Definition at line 57 of file context_vk.cc.
References impeller::CapabilitiesVK::GetEnabledDeviceFeatures().
|
static |
|
static |
Definition at line 506 of file blend_filter_contents.cc.
References CreateVertexBuffer(), impeller::Entity::FromSnapshot(), impeller::Entity::GetBlendMode(), impeller::Entity::GetContents(), impeller::ContentContext::GetContext(), impeller::TRect< T >::GetOrigin(), impeller::TRect< T >::GetSize(), impeller::ContentContext::GetTexturePipeline(), impeller::ContentContext::GetTransientsBuffer(), impeller::TRect< T >::Intersection(), kSrc, kTriangleStrip, impeller::ColorFilterContents::kYes, impeller::TRect< Scalar >::MakeSize(), impeller::ContentContext::MakeSubpass(), impeller::Matrix::MakeTranslation(), OptionsFromPass(), impeller::Entity::Render(), impeller::Entity::SetBlendMode(), impeller::Entity::SetContents(), impeller::Snapshot::texture, and transform.
bool impeller::PipelineCacheDataPersist | ( | const fml::UniqueFD & | cache_directory, |
const VkPhysicalDeviceProperties & | props, | ||
const vk::UniquePipelineCache & | cache | ||
) |
Persist the pipeline cache to a file in the given cache directory. This function performs integrity checks the Vulkan driver may have missed.
[in] | cache_directory | The cache directory |
[in] | props | The physical device properties |
[in] | cache | The cache |
Definition at line 16 of file pipeline_cache_data_vk.cc.
References CreateMappingFromAllocation(), kPipelineCacheFileName, and VALIDATION_LOG.
Referenced by impeller::PipelineCacheVK::PersistCacheToDisk(), and impeller::testing::TEST_P().
std::unique_ptr< fml::Mapping > impeller::PipelineCacheDataRetrieve | ( | const fml::UniqueFD & | cache_directory, |
const VkPhysicalDeviceProperties & | props | ||
) |
Retrieve the previously persisted pipeline cache data. This function provides integrity checks the Vulkan driver may have missed.
The data is stripped of any additional headers that perform integrity checks. It can be used directly to construct a pre-initialized Vulkan pipeline cache.
[in] | cache_directory | The cache directory |
[in] | props | The properties |
Definition at line 62 of file pipeline_cache_data_vk.cc.
References kPipelineCacheFileName, and VALIDATION_LOG.
Referenced by impeller::PipelineCacheVK::PipelineCacheVK(), and impeller::testing::TEST_P().
|
constexpr |
Definition at line 414 of file formats_vk.h.
References kA8UNormInt, kB10G10R10A10XR, kB10G10R10XR, kB10G10R10XRSRGB, kB8G8R8A8UNormInt, kB8G8R8A8UNormIntSRGB, kD24UnormS8Uint, kD32FloatS8UInt, kR16G16B16A16Float, kR32G32B32A32Float, kR8G8B8A8UNormInt, kR8G8B8A8UNormIntSRGB, kR8G8UNormInt, kR8UNormInt, kS8UInt, and kUnknown.
Referenced by impeller::AllocatorVK::ToVKImageUsageFlags().
|
constexpr |
Definition at line 140 of file formats.h.
References kA8UNormInt, kB10G10R10A10XR, kB10G10R10XR, kB10G10R10XRSRGB, kB8G8R8A8UNormInt, kB8G8R8A8UNormIntSRGB, kD24UnormS8Uint, kD32FloatS8UInt, kR16G16B16A16Float, kR32G32B32A32Float, kR8G8B8A8UNormInt, kR8G8B8A8UNormIntSRGB, kR8G8UNormInt, kR8UNormInt, kS8UInt, and kUnknown.
Referenced by impeller::BlitPass::AddCopy(), impeller::testing::TEST_P(), and TextureDescriptorToString().
|
inlineconstexpr |
Definition at line 33 of file playground.h.
References kMetal, kOpenGLES, and kVulkan.
Referenced by impeller::testing::TEST_P().
std::string impeller::PlaygroundBackendToString | ( | PlaygroundBackend | backend | ) |
Definition at line 46 of file playground.cc.
References kMetal, kOpenGLES, and kVulkan.
Referenced by impeller::PlaygroundImpl::Create().
|
static |
Definition at line 168 of file playground.cc.
References gShouldOpenNewPlaygrounds.
Referenced by impeller::Playground::OpenPlaygroundHere().
int impeller::PopulateUniformGradientColors | ( | const std::vector< Color > & | colors, |
const std::vector< Scalar > & | stops, | ||
Vector4 | frag_info_colors[kMaxUniformGradientStops], | ||
Vector4 | frag_info_stop_pairs[kMaxUniformGradientStops/2] | ||
) |
Populate 2 arrays with the colors and stop data for a gradient.
The color data is simply converted to a vec4 format, but the stop data is both turned into pairs of {t, inverse_delta} information and also stops are themselves paired up into a vec4 format for efficient packing in the uniform data.
colors | colors from gradient |
stops | stops from gradient |
frag_info_colors | colors for fragment shader in vec4 format |
frag_info_stop_pairs | pairs of stop data for shader in vec4 format |
Definition at line 51 of file gradient_generator.cc.
References kMaxUniformGradientStops.
|
constexpr |
Definition at line 380 of file formats_vk.h.
References kLine, kLineStrip, kPoint, kTriangle, kTriangleFan, and kTriangleStrip.
|
static |
Definition at line 16 of file vertex_descriptor_mtl.mm.
References impeller::ShaderStageIOSlot::bit_width, impeller::ShaderStageIOSlot::columns, kAtomicCounter, kBoolean, kDouble, kFloat, kHalfFloat, kImage, kSampledImage, kSampler, kSignedByte, kSignedInt, kSignedInt64, kSignedShort, kStruct, kUnknown, kUnsignedByte, kUnsignedInt, kUnsignedInt64, kUnsignedShort, kVoid, impeller::ShaderStageIOSlot::type, and impeller::ShaderStageIOSlot::vec_size.
Referenced by impeller::VertexDescriptorMTL::SetStageInputsAndLayout().
std::future<T> impeller::RealizedFuture | ( | T | t | ) |
bool impeller::RenderClipRestore | ( | const ContentContext & | renderer, |
RenderPass & | pass, | ||
uint32_t | clip_depth, | ||
std::optional< Rect > | restore_coverage | ||
) |
Render a restore clip.
This is is intended to be used for prevent overdraw mechanism. The clip depth should be the depth of the entity that is currently being drawn, and restore_coverage should be its coverage. If restore_coverage is std::nullopt, the render pass coverage is used instead.
Definition at line 153 of file clip_contents.cc.
References CreateVertexBuffer(), impeller::RenderPass::Draw(), impeller::HostBuffer::EmplaceUniform(), impeller::ContentContext::GetClipPipeline(), impeller::RenderPass::GetOrthographicTransform(), impeller::RenderPass::GetRenderTargetSize(), GetShaderClipDepth(), impeller::ContentContext::GetTransientsBuffer(), kDst, impeller::ContentContextOptions::kOverdrawPreventionRestore, kTriangleStrip, impeller::TRect< Scalar >::MakeSize(), OptionsFromPass(), impeller::RenderPass::SetCommandLabel(), impeller::RenderPass::SetPipeline(), impeller::RenderPass::SetStencilReference(), and impeller::RenderPass::SetVertexBuffer().
Referenced by impeller::ColorSourceContents::DrawGeometry().
bool impeller::RenderToTarget | ( | ContentContext & | context, |
RenderTarget | render_target, | ||
const sk_sp< flutter::DisplayList > & | display_list, | ||
Rect | cull_rect, | ||
bool | reset_host_buffer, | ||
bool | is_onscreen = true |
||
) |
Render the provided display list to the render target.
If [is_onscreen] is true, then the onscreen command buffer will be submitted via Context::SubmitOnscreen.
Definition at line 1293 of file dl_dispatcher.cc.
References data, impeller::CanvasDlDispatcher::FinishRecording(), impeller::ContentContext::GetLazyGlyphAtlas(), impeller::ContentContext::GetTextShadowCache(), impeller::ContentContext::GetTransientsBuffer(), impeller::TextShadowCache::MarkFrameStart(), impeller::TRect< T >::RoundOut(), impeller::CanvasDlDispatcher::SetBackdropData(), and impeller::FirstPassDispatcher::TakeBackdropData().
Referenced by impeller::interop::Surface::DrawDisplayList(), impeller::AiksPlayground::OpenPlaygroundHere(), and impeller::DlPlayground::OpenPlaygroundHere().
|
static |
Definition at line 106 of file pipeline_vk.cc.
References ReportPipelineCreationFeedbackToLog(), and ReportPipelineCreationFeedbackToTrace().
|
static |
Definition at line 58 of file pipeline_vk.cc.
References impeller::PipelineDescriptor::GetLabel(), and ReportPipelineCreationFeedbackToLog().
|
static |
Definition at line 41 of file pipeline_vk.cc.
Referenced by ReportPipelineCreationFeedback(), and ReportPipelineCreationFeedbackToLog().
|
static |
|
static |
Subclasses.
Definition at line 941 of file dl_dispatcher.cc.
References impeller::ContentContext::GetDeviceCapabilities(), impeller::Entity::kLastPipelineBlendMode, and impeller::Capabilities::SupportsFramebufferFetch().
|
static |
Definition at line 342 of file proc_table_gles.cc.
References kBuffer, kFence, kFrameBuffer, kProgram, kRenderBuffer, kShader, kTexture, and type.
Referenced by impeller::ProcTableGLES::SetDebugLabel().
MTLPixelFormat impeller::SafeMTLPixelFormatBGR10_XR | ( | ) |
Safe accessor for MTLPixelFormatBGR10_XR. Returns PixelFormat::kUnknown if MTLPixelFormatBGR10_XR isn't supported.
Definition at line 130 of file formats_mtl.mm.
Referenced by ToMTLPixelFormat().
MTLPixelFormat impeller::SafeMTLPixelFormatBGR10_XR_sRGB | ( | ) |
Safe accessor for MTLPixelFormatBGR10_XR_sRGB. Returns PixelFormat::kUnknown if MTLPixelFormatBGR10_XR_sRGB isn't supported.
Definition at line 122 of file formats_mtl.mm.
Referenced by ToMTLPixelFormat().
MTLPixelFormat impeller::SafeMTLPixelFormatBGRA10_XR | ( | ) |
Safe accessor for MTLPixelFormatBGRA10_XR. Returns PixelFormat::kUnknown if MTLPixelFormatBGR10_XR isn't supported.
Definition at line 138 of file formats_mtl.mm.
Referenced by ToMTLPixelFormat().
MTLPixelFormat impeller::SafeMTLPixelFormatDepth24Unorm_Stencil8 | ( | ) |
Safe accessor for MTLPixelFormatDepth24Unorm_Stencil8. Returns PixelFormat::kUnknown if MTLPixelFormatDepth24Unorm_Stencil8 isn't supported.
Definition at line 113 of file formats_mtl.mm.
Referenced by ToMTLPixelFormat().
Definition at line 89 of file color.cc.
References impeller::Vector3::x, impeller::Vector3::y, and impeller::Vector3::z.
Referenced by impeller::Color::Blend(), and impeller::BlendFilterContents::SetBlendMode().
|
inlineconstexpr |
Definition at line 36 of file scalar.h.
References ScalarNearlyZero(), and x.
Referenced by impeller::RoundingRadii::AreAllCornersSame(), CreateGradientBuffer(), impeller::Matrix::Equals(), impeller::RoundRect::IsOval(), impeller::RoundSuperellipse::IsOval(), impeller::Color::operator==(), impeller::testing::TEST(), and impeller::Color::Unpremultiply().
|
inlineconstexpr |
Definition at line 31 of file scalar.h.
References Absolute(), and x.
Referenced by impeller::Matrix::IsAligned(), impeller::Matrix::IsAligned2D(), and ScalarNearlyEqual().
|
inlineconstexpr |
Convert a scalar to a half precision float.
See also: https://clang.llvm.org/docs/LanguageExtensions.html This is not currently supported on Windows toolchains.
Definition at line 32 of file half.h.
Referenced by impeller::testing::TEST().
|
inlinestaticconstexpr |
Definition at line 83 of file color.cc.
References ClipColor(), and Luminosity().
Referenced by impeller::Color::Blend().
|
inlinestaticconstexpr |
Definition at line 94 of file color.cc.
References impeller::Vector3::x, impeller::Vector3::y, and impeller::Vector3::z.
Referenced by impeller::Color::Blend().
void impeller::SetupSwiftshaderOnce | ( | bool | use_swiftshader | ) |
Find and setup the installable client driver for a locally built SwiftShader at known paths. The option to use SwiftShader can only be used once in the process. While calling this method multiple times is fine, specifying a different use_swiftshader value will trip an assertion.
[in] | use_swiftshader | If SwiftShader should be used. |
Definition at line 54 of file swiftshader_utilities.cc.
References FindSwiftShaderICDAtKnownPaths().
Referenced by impeller::Playground::Playground().
|
static |
Definition at line 106 of file playground_impl_gles.cc.
Referenced by impeller::PlaygroundImplMTL::PlaygroundImplMTL(), and impeller::PlaygroundImplVK::PlaygroundImplVK().
|
static |
Definition at line 37 of file playground_impl_mtl.mm.
|
static |
Definition at line 31 of file playground_impl_vk.cc.
Definition at line 21 of file text_contents.cc.
References impeller::TSize< T >::height, and impeller::TSize< T >::width.
Referenced by impeller::TextContents::ComputeVertexData().
std::vector< spirv_cross::ID > impeller::SortUniforms | ( | const spirv_cross::ParsedIR * | ir, |
const spirv_cross::Compiler * | compiler, | ||
std::optional< spirv_cross::SPIRType::BaseType > | type_filter = std::nullopt , |
||
bool | include = true |
||
) |
Sorts uniform declarations in an IR according to decoration order.
The [type_filter] may be optionally supplied to limit which types are returned The [include] value can be set to false change this filter to exclude instead of include.
Definition at line 11 of file uniform_sorter.cc.
References type.
std::string impeller::SPrintF | ( | const char * | format, |
... | |||
) |
Definition at line 12 of file strings.cc.
Referenced by impeller::BlitPass::AddCopy(), ColorToString(), CreateCompatRenderPassForPipeline(), DepthAttachmentToString(), impeller::ProcTableGLES::DescribeCurrentFramebuffer(), DrawPlaygroundPoint(), ImGui_ImplImpeller_RenderDrawData(), impeller::ComputePipelineBuilder< ComputeShader_ >::InitializePipelineDescriptorDefaults(), impeller::PipelineBuilder< VertexShader_, FragmentShader_ >::InitializePipelineDescriptorDefaults(), LinkProgram(), impeller::VerticesSimpleBlendContents::Render(), impeller::ContextVK::SetDebugName(), impeller::testing::TEST(), and impeller::RenderTarget::ToString().
std::string impeller::StencilAttachmentToString | ( | const StencilAttachment & | stencil | ) |
Definition at line 137 of file formats.cc.
References AttachmentToString(), and impeller::StencilAttachment::clear_stencil.
Referenced by impeller::RenderTarget::ToString().
|
constexpr |
Definition at line 60 of file formats.h.
References kDevicePrivate, kDeviceTransient, and kHostVisible.
Referenced by impeller::AllocatedTextureSourceVK::AllocatedTextureSourceVK(), and TextureDescriptorToString().
|
constexpr |
Definition at line 15 of file formats.cc.
References kDontCare, kMultisampleResolve, kStore, and kStoreAndMultisampleResolve.
Referenced by impeller::Attachment::IsValid().
|
constexpr |
Definition at line 343 of file formats_vk.h.
References kDontCare, kMultisampleResolve, kStore, and kStoreAndMultisampleResolve.
Referenced by impeller::RenderPassBuilderVK::SetColorAttachment().
|
constexpr |
Definition at line 226 of file formats.h.
References kDontCare, kMultisampleResolve, kStore, and kStoreAndMultisampleResolve.
Referenced by AttachmentToString().
std::string impeller::StripPrefix | ( | const std::string & | string, |
const std::string & | to_strip | ||
) |
|
static |
Definition at line 207 of file typographer_context_skia.cc.
Referenced by DrawGlyph().
|
static |
Definition at line 40 of file allocator_mtl.mm.
IMPELLER_API struct Vertices * impeller::Tessellate | ( | PathBuilder * | builder, |
int | fill_type, | ||
Scalar | tolerance | ||
) |
Definition at line 42 of file tessellator.cc.
References impeller::TessellatorLibtess::kSuccess, points, and impeller::TessellatorLibtess::Tessellate().
impeller::TEST | ( | RationalTest | , |
DifferentHashes | |||
) |
Definition at line 53 of file rational_unittests.cc.
impeller::TEST | ( | RationalTest | , |
EqualsDifferentDen | |||
) |
Definition at line 25 of file rational_unittests.cc.
impeller::TEST | ( | RationalTest | , |
EqualsSameDen | |||
) |
Definition at line 17 of file rational_unittests.cc.
impeller::TEST | ( | RationalTest | , |
LessThanDifferentDen | |||
) |
Definition at line 41 of file rational_unittests.cc.
impeller::TEST | ( | RationalTest | , |
LessThanNegation | |||
) |
Definition at line 37 of file rational_unittests.cc.
impeller::TEST | ( | RationalTest | , |
LessThanSameDen | |||
) |
Definition at line 33 of file rational_unittests.cc.
impeller::TEST | ( | RationalTest | , |
Make | |||
) |
impeller::TEST | ( | RationalTest | , |
NegationNotEquals | |||
) |
Definition at line 29 of file rational_unittests.cc.
impeller::TEST | ( | RationalTest | , |
NotEqualsSameDen | |||
) |
Definition at line 21 of file rational_unittests.cc.
impeller::TEST | ( | RationalTest | , |
NotLessThanDifferentDen | |||
) |
Definition at line 45 of file rational_unittests.cc.
impeller::TEST | ( | RationalTest | , |
SameHashes | |||
) |
Definition at line 49 of file rational_unittests.cc.
impeller::TEST | ( | ValidationTest | , |
IsFatal | |||
) |
Definition at line 29 of file main.cc.
References ImpellerValidationErrorsAreFatal().
std::string impeller::TextureDescriptorToString | ( | const TextureDescriptor & | desc | ) |
Definition at line 11 of file texture_descriptor.cc.
References impeller::TextureDescriptor::compression_type, CompressionTypeToString(), impeller::TextureDescriptor::format, impeller::TextureDescriptor::mip_count, PixelFormatToString(), impeller::TextureDescriptor::sample_count, impeller::TextureDescriptor::size, impeller::TextureDescriptor::storage_mode, StorageModeToString(), TextureTypeToString(), and impeller::TextureDescriptor::type.
Referenced by AttachmentToString().
|
constexpr |
Definition at line 269 of file formats.h.
References kTexture2D, kTexture2DMultisample, kTextureCube, kTextureExternalOES, and type.
Referenced by impeller::AllocatedTextureSourceVK::AllocatedTextureSourceVK(), impeller::RenderTarget::IsValid(), and TextureDescriptorToString().
std::string impeller::TextureUsageMaskToString | ( | TextureUsageMask | mask | ) |
Definition at line 81 of file formats.cc.
References kRenderTarget, kShaderRead, kShaderWrite, and TextureUsageToString().
Referenced by impeller::AllocatedTextureSourceVK::AllocatedTextureSourceVK().
|
constexpr |
Definition at line 310 of file formats.h.
References kRenderTarget, kShaderRead, kShaderWrite, and kUnknown.
Referenced by TextureUsageMaskToString().
|
static |
Definition at line 16 of file tiled_texture_contents.cc.
References impeller::Entity::kClamp, kClampToEdge, kDecal, impeller::Entity::kDecal, kMirror, impeller::Entity::kMirror, kRepeat, impeller::Entity::kRepeat, and impeller::Capabilities::SupportsDecalSamplerAddressMode().
Referenced by impeller::VerticesSimpleBlendContents::Render().
|
static |
Definition at line 52 of file sampler_gles.cc.
References IMPELLER_GL_CLAMP_TO_BORDER.
Referenced by impeller::SamplerGLES::ConfigureBoundTexture().
|
constexpr |
Definition at line 539 of file formats_vk.h.
References kTexture2D, kTexture2DMultisample, kTextureCube, kTextureExternalOES, type, and VALIDATION_LOG.
Referenced by impeller::AllocatedTextureSourceVK::AllocatedTextureSourceVK(), impeller::KHRSwapchainImageVK::KHRSwapchainImageVK(), and impeller::TextureSourceVK::SetLayout().
|
static |
Definition at line 598 of file texture_gles.cc.
References impeller::TextureGLES::kColor0, impeller::TextureGLES::kDepth, and impeller::TextureGLES::kStencil.
Referenced by impeller::TextureGLES::SetAsFramebufferAttachment().
|
constexpr |
Definition at line 92 of file formats_gles.h.
References kBlendAlpha, kBlendColor, kDestinationAlpha, kDestinationColor, kOne, kOneMinusBlendAlpha, kOneMinusBlendColor, kOneMinusDestinationAlpha, kOneMinusDestinationColor, kOneMinusSourceAlpha, kOneMinusSourceColor, kSourceAlpha, kSourceAlphaSaturated, kSourceColor, and kZero.
Referenced by ConfigureBlending().
|
constexpr |
Definition at line 128 of file formats_gles.h.
References kAdd, kReverseSubtract, and kSubtract.
Referenced by ConfigureBlending().
|
static |
Definition at line 256 of file dl_dispatcher.cc.
References impeller::FilterContents::kInner, impeller::FilterContents::kNormal, impeller::FilterContents::kOuter, and impeller::FilterContents::kSolid.
Referenced by impeller::DlDispatcherBase::setMaskFilter().
|
static |
Definition at line 427 of file dl_dispatcher.cc.
References impeller::Entity::kDifference, and impeller::Entity::kIntersect.
Referenced by impeller::DlDispatcherBase::clipOval(), impeller::DlDispatcherBase::clipPath(), impeller::DlDispatcherBase::clipRect(), impeller::DlDispatcherBase::clipRoundRect(), and impeller::DlDispatcherBase::clipRoundSuperellipse().
|
static |
Definition at line 153 of file command_buffer_mtl.mm.
|
constexpr |
Definition at line 70 of file formats_gles.h.
References kAlways, kEqual, kGreater, kGreaterEqual, kLess, kLessEqual, kNever, and kNotEqual.
Referenced by ConfigureStencil(), and EncodeCommandsInReactor().
|
static |
Definition at line 322 of file proc_table_gles.cc.
References kBuffer, kFence, kFrameBuffer, kProgram, kRenderBuffer, kShader, kTexture, and type.
Referenced by impeller::ProcTableGLES::SetDebugLabel().
|
static |
Definition at line 268 of file reactor_gles.cc.
References kBuffer, kFence, kFrameBuffer, kProgram, kRenderBuffer, kTexture, kUnknown, and type.
Referenced by impeller::ReactorGLES::SetDebugLabel().
|
constexpr |
Definition at line 239 of file driver_info_vk.cc.
References kCPU, kDiscreteGPU, kIntegratedGPU, kUnknown, kVirtualGPU, and type.
Referenced by impeller::DriverInfoVK::DriverInfoVK().
|
static |
Definition at line 25 of file text_frame_skia.cc.
References impeller::Font::Metrics::embolden, impeller::Font::Metrics::point_size, impeller::Font::Metrics::scaleX, and impeller::Font::Metrics::skewX.
Referenced by MakeTextFrameFromTextBlobSkia().
HandleType impeller::ToHandleType | ( | TextureGLES::Type | type | ) |
Definition at line 135 of file texture_gles.cc.
References kRenderBuffer, impeller::TextureGLES::kRenderBuffer, impeller::TextureGLES::kRenderBufferMultisampled, kTexture, impeller::TextureGLES::kTexture, impeller::TextureGLES::kTextureMultisampled, and type.
|
constexpr |
Definition at line 586 of file formats_vk.h.
References kA8UNormInt, kB10G10R10A10XR, kB10G10R10XR, kB10G10R10XRSRGB, kB8G8R8A8UNormInt, kB8G8R8A8UNormIntSRGB, kD24UnormS8Uint, kD32FloatS8UInt, kR16G16B16A16Float, kR32G32B32A32Float, kR8G8B8A8UNormInt, kR8G8B8A8UNormIntSRGB, kR8G8UNormInt, kR8UNormInt, kS8UInt, and kUnknown.
Referenced by impeller::TextureSourceVK::SetLayout().
|
constexpr |
Definition at line 35 of file formats_gles.h.
References k16bit, k32bit, kNone, kUnknown, and type.
Referenced by EncodeCommandsInReactor().
|
constexpr |
Definition at line 17 of file formats_gles.h.
References kLine, kLineStrip, kPoint, kTriangle, kTriangleFan, and kTriangleStrip.
Referenced by EncodeCommandsInReactor().
|
constexpr |
Definition at line 114 of file formats_mtl.h.
References kBlendAlpha, kBlendColor, kDestinationAlpha, kDestinationColor, kOne, kOneMinusBlendAlpha, kOneMinusBlendColor, kOneMinusDestinationAlpha, kOneMinusDestinationColor, kOneMinusSourceAlpha, kOneMinusSourceColor, kSourceAlpha, kSourceAlphaSaturated, kSourceColor, kZero, and type.
Referenced by ToMTLRenderPipelineColorAttachmentDescriptor().
|
constexpr |
Definition at line 201 of file formats_mtl.h.
References kAdd, kReverseSubtract, kSubtract, and type.
Referenced by ToMTLRenderPipelineColorAttachmentDescriptor().
|
inline |
Definition at line 374 of file formats_mtl.h.
References impeller::Color::alpha, impeller::Color::blue, impeller::Color::green, and impeller::Color::red.
Referenced by ConfigureColorAttachment().
|
constexpr |
Definition at line 213 of file formats_mtl.h.
References kAlpha, kBlue, kGreen, kRed, and type.
Referenced by ToMTLRenderPipelineColorAttachmentDescriptor().
|
constexpr |
Definition at line 235 of file formats_mtl.h.
References kAlways, kEqual, kGreater, kGreaterEqual, kLess, kLessEqual, kNever, and kNotEqual.
Referenced by ToMTLDepthStencilDescriptor(), and ToMTLStencilDescriptor().
|
constexpr |
MTLDepthStencilDescriptor * impeller::ToMTLDepthStencilDescriptor | ( | std::optional< DepthAttachmentDescriptor > | depth, |
std::optional< StencilAttachmentDescriptor > | front, | ||
std::optional< StencilAttachmentDescriptor > | back | ||
) |
Definition at line 54 of file formats_mtl.mm.
References impeller::DepthAttachmentDescriptor::depth_compare, kAlways, ToMTLCompareFunction(), and ToMTLStencilDescriptor().
Referenced by CreateDepthStencilDescriptor().
|
static |
Definition at line 28 of file shader_library_mtl.mm.
|
constexpr |
Definition at line 180 of file formats_mtl.h.
|
constexpr |
Definition at line 279 of file formats_mtl.h.
References kClear, kDontCare, and kLoad.
Referenced by ConfigureAttachment().
|
constexpr |
Definition at line 76 of file formats_mtl.h.
References kA8UNormInt, kB10G10R10A10XR, kB10G10R10XR, kB10G10R10XRSRGB, kB8G8R8A8UNormInt, kB8G8R8A8UNormIntSRGB, kD24UnormS8Uint, kD32FloatS8UInt, kR16G16B16A16Float, kR32G32B32A32Float, kR8G8B8A8UNormInt, kR8G8B8A8UNormIntSRGB, kR8G8UNormInt, kR8UNormInt, kS8UInt, kUnknown, SafeMTLPixelFormatBGR10_XR(), SafeMTLPixelFormatBGR10_XR_sRGB(), SafeMTLPixelFormatBGRA10_XR(), and SafeMTLPixelFormatDepth24Unorm_Stencil8().
Referenced by GetMTLRenderPipelineDescriptor(), impeller::PlaygroundImplMTL::PlaygroundImplMTL(), ToMTLRenderPipelineColorAttachmentDescriptor(), and ToMTLTextureDescriptor().
|
constexpr |
Definition at line 150 of file formats_mtl.h.
References kLine, kLineStrip, kPoint, kTriangle, kTriangleFan, kTriangleStrip, and type.
|
static |
Definition at line 103 of file render_pass_mtl.mm.
References ConfigureColorAttachment(), ConfigureDepthAttachment(), ConfigureStencilAttachment(), impeller::RenderTarget::GetDepthAttachment(), impeller::RenderTarget::GetStencilAttachment(), impeller::RenderTarget::IterateAllColorAttachments(), and VALIDATION_LOG.
MTLRenderPipelineColorAttachmentDescriptor * impeller::ToMTLRenderPipelineColorAttachmentDescriptor | ( | ColorAttachmentDescriptor | descriptor | ) |
Definition at line 15 of file formats_mtl.mm.
References impeller::ColorAttachmentDescriptor::alpha_blend_op, impeller::ColorAttachmentDescriptor::blending_enabled, impeller::ColorAttachmentDescriptor::color_blend_op, impeller::ColorAttachmentDescriptor::dst_alpha_blend_factor, impeller::ColorAttachmentDescriptor::dst_color_blend_factor, impeller::ColorAttachmentDescriptor::format, impeller::ColorAttachmentDescriptor::src_alpha_blend_factor, impeller::ColorAttachmentDescriptor::src_color_blend_factor, ToMTLBlendFactor(), ToMTLBlendOperation(), ToMTLColorWriteMask(), ToMTLPixelFormat(), and impeller::ColorAttachmentDescriptor::write_mask.
Referenced by GetMTLRenderPipelineDescriptor().
|
static |
Definition at line 79 of file allocator_mtl.mm.
References kDevicePrivate, kDeviceTransient, kHostVisible, and type.
|
constexpr |
Definition at line 359 of file formats_mtl.h.
References kClampToEdge, kDecal, kMirror, and kRepeat.
|
constexpr |
Definition at line 337 of file formats_mtl.h.
|
constexpr |
Definition at line 347 of file formats_mtl.h.
MTLStencilDescriptor* impeller::ToMTLStencilDescriptor | ( | const StencilAttachmentDescriptor & | descriptor | ) |
Definition at line 38 of file formats_mtl.mm.
References impeller::StencilAttachmentDescriptor::depth_failure, impeller::StencilAttachmentDescriptor::depth_stencil_pass, impeller::StencilAttachmentDescriptor::read_mask, impeller::StencilAttachmentDescriptor::stencil_compare, impeller::StencilAttachmentDescriptor::stencil_failure, ToMTLCompareFunction(), ToMTLStencilOperation(), and impeller::StencilAttachmentDescriptor::write_mask.
Referenced by ToMTLDepthStencilDescriptor().
|
constexpr |
Definition at line 257 of file formats_mtl.h.
References kDecrementClamp, kDecrementWrap, kIncrementClamp, kIncrementWrap, kInvert, kKeep, kSetToReferenceValue, and kZero.
Referenced by ToMTLStencilDescriptor().
|
static |
Definition at line 111 of file allocator_mtl.mm.
References kDevicePrivate, kDeviceTransient, and kHostVisible.
|
constexpr |
Definition at line 307 of file formats_mtl.h.
References kDontCare, kMultisampleResolve, kStore, and kStoreAndMultisampleResolve.
Referenced by ConfigureAttachment().
MTLTextureDescriptor * impeller::ToMTLTextureDescriptor | ( | const TextureDescriptor & | desc | ) |
Definition at line 86 of file formats_mtl.mm.
References impeller::TextureDescriptor::format, impeller::TSize< T >::height, impeller::TextureDescriptor::IsValid(), kRenderTarget, kShaderRead, kShaderWrite, kUnknown, impeller::TextureDescriptor::mip_count, impeller::TextureDescriptor::sample_count, impeller::TextureDescriptor::size, ToMTLPixelFormat(), ToMTLTextureType(), impeller::TextureDescriptor::type, impeller::TextureDescriptor::usage, and impeller::TSize< T >::width.
|
constexpr |
Definition at line 378 of file formats_mtl.h.
References kTexture2D, kTexture2DMultisample, kTextureCube, kTextureExternalOES, type, and VALIDATION_LOG.
Referenced by ToMTLTextureDescriptor().
|
constexpr |
Definition at line 170 of file formats_mtl.h.
|
static |
Definition at line 139 of file dl_dispatcher.cc.
Referenced by impeller::DlDispatcherBase::drawAtlas().
|
static |
Definition at line 20 of file sampler_gles.cc.
|
static |
Definition at line 30 of file sampler_gles.cc.
Referenced by impeller::SamplerGLES::ConfigureBoundTexture().
|
constexpr |
Definition at line 13 of file ahb_formats.h.
References kR8G8B8A8UNormInt, and impeller::android::kR8G8B8A8UNormInt.
|
constexpr |
Definition at line 183 of file formats_vk.h.
References kB8G8R8A8UNormInt, kB8G8R8A8UNormIntSRGB, kD24UnormS8Uint, kD32FloatS8UInt, kR16G16B16A16Float, kR32G32B32A32Float, kR8G8B8A8UNormInt, kR8G8B8A8UNormIntSRGB, kR8G8UNormInt, kR8UNormInt, kS8UInt, and kUnknown.
Referenced by impeller::AHBSwapchainVK::GetSurfaceFormat(), and ToSwapchainTextureDescriptor().
|
static |
Definition at line 41 of file text_frame_skia.cc.
References impeller::TRect< Scalar >::MakeLTRB().
Referenced by MakeTextFrameFromTextBlobSkia().
|
static |
Definition at line 376 of file texture_gles.cc.
References kA8UNormInt, kB10G10R10A10XR, kB10G10R10XR, kB10G10R10XRSRGB, kB8G8R8A8UNormInt, kB8G8R8A8UNormIntSRGB, kD24UnormS8Uint, kD32FloatS8UInt, kR16G16B16A16Float, kR32G32B32A32Float, kR8G8B8A8UNormInt, kR8G8B8A8UNormIntSRGB, kR8G8UNormInt, kR8UNormInt, kS8UInt, and kUnknown.
Definition at line 111 of file color.cc.
References impeller::Color::blue, impeller::Color::green, and impeller::Color::red.
Referenced by DoColorBlend().
|
static |
Definition at line 121 of file dl_dispatcher.cc.
References kLinear, kNearest, impeller::SamplerDescriptor::label, impeller::SamplerDescriptor::mag_filter, and impeller::SamplerDescriptor::min_filter.
Referenced by impeller::DlDispatcherBase::drawImageNine().
|
static |
Definition at line 17 of file shader_library_gles.cc.
|
static |
Definition at line 17 of file shader_library_vk.cc.
|
static |
Definition at line 31 of file runtime_stage.cc.
|
constexpr |
Definition at line 29 of file shader_types.h.
References kCompute, kFragment, and kVertex.
Referenced by impeller::RuntimeStagePlayground::RegisterStage(), impeller::RuntimeStage::RuntimeStage(), and impeller::testing::TEST_P().
|
constexpr |
Definition at line 16 of file shader_archive.cc.
References kCompute, kFragment, and kVertex.
Referenced by impeller::ShaderArchive::ShaderArchive().
|
constexpr |
Definition at line 95 of file shader_archive_writer.cc.
References kCompute, kFragment, kVertex, and type.
Referenced by impeller::ShaderArchiveWriter::CreateMapping().
|
constexpr |
Definition at line 48 of file formats_gles.h.
References kDecrementClamp, kDecrementWrap, kIncrementClamp, kIncrementWrap, kInvert, kKeep, kSetToReferenceValue, and kZero.
Referenced by ConfigureStencil().
|
static |
Definition at line 153 of file dl_dispatcher.cc.
References impeller::Paint::kFill, impeller::Paint::kStroke, and UNIMPLEMENTED.
Referenced by impeller::DlDispatcherBase::setDrawStyle(), and impeller::FirstPassDispatcher::setDrawStyle().
|
static |
Definition at line 17 of file ahb_swapchain_impl_vk.cc.
References impeller::TextureDescriptor::compression_type, impeller::TextureDescriptor::format, impeller::android::HardwareBufferDescriptor::format, kCount1, kDevicePrivate, kLossless, kRenderTarget, kTexture2D, impeller::TextureDescriptor::mip_count, impeller::TextureDescriptor::sample_count, impeller::TextureDescriptor::size, impeller::android::HardwareBufferDescriptor::size, impeller::TextureDescriptor::storage_mode, ToPixelFormat(), impeller::TextureDescriptor::type, and impeller::TextureDescriptor::usage.
|
static |
Definition at line 78 of file device_buffer_gles.cc.
References impeller::DeviceBufferGLES::kArrayBuffer, impeller::DeviceBufferGLES::kElementArrayBuffer, impeller::DeviceBufferGLES::kUniformBuffer, and type.
Referenced by impeller::DeviceBufferGLES::BindAndUploadDataIfNecessary().
|
static |
Definition at line 47 of file tessellator_libtess.cc.
References kNonZero, and kOdd.
Referenced by impeller::TessellatorLibtess::Tessellate().
|
constexpr |
Definition at line 185 of file formats_gles.h.
References kTexture2D, kTexture2DMultisample, kTextureCube, kTextureExternalOES, and type.
Referenced by impeller::TextureGLES::Bind(), and impeller::SamplerGLES::ConfigureBoundTexture().
|
constexpr |
Definition at line 171 of file formats_gles.h.
References kTexture2D, kTexture2DMultisample, kTextureCube, kTextureExternalOES, and type.
Referenced by impeller::TextureGLES::GenerateMipmap().
|
static |
Definition at line 19 of file runtime_stage.cc.
References kFloat, kSampledImage, kStruct, and type.
Referenced by impeller::RuntimeStage::RuntimeStage().
Definition at line 190 of file shader_types.h.
References impeller::Color::alpha, impeller::Color::blue, impeller::Color::green, and impeller::Color::red.
Referenced by impeller::TextContents::Render().
|
constexpr |
Definition at line 140 of file formats_gles.h.
References kAtomicCounter, kBoolean, kDouble, kFloat, kHalfFloat, kImage, kSampledImage, kSampler, kSignedByte, kSignedInt, kSignedInt64, kSignedShort, kStruct, kUnknown, kUnsignedByte, kUnsignedInt, kUnsignedInt64, kUnsignedShort, kVoid, and type.
Referenced by impeller::BufferBindingsGLES::RegisterVertexStageInput().
vk::Format impeller::ToVertexDescriptorFormat | ( | const ShaderStageIOSlot & | input | ) |
Definition at line 11 of file vertex_descriptor_vk.cc.
References impeller::ShaderStageIOSlot::bit_width, impeller::ShaderStageIOSlot::columns, kAtomicCounter, kBoolean, kDouble, kFloat, kHalfFloat, kImage, kSampledImage, kSampler, kSignedByte, kSignedInt, kSignedInt64, kSignedShort, kStruct, kUnknown, kUnsignedByte, kUnsignedInt, kUnsignedInt64, kUnsignedShort, kVoid, impeller::ShaderStageIOSlot::type, and impeller::ShaderStageIOSlot::vec_size.
|
constexpr |
Definition at line 306 of file formats_vk.h.
References kClear, kDontCare, and kLoad.
Referenced by impeller::RenderPassBuilderVK::SetColorAttachment(), impeller::RenderPassBuilderVK::SetDepthStencilAttachment(), and impeller::RenderPassBuilderVK::SetStencilAttachment().
|
constexpr |
Definition at line 319 of file formats_vk.h.
References kDontCare, kMultisampleResolve, kStore, and kStoreAndMultisampleResolve.
Referenced by impeller::RenderPassBuilderVK::SetColorAttachment(), impeller::RenderPassBuilderVK::SetDepthStencilAttachment(), and impeller::RenderPassBuilderVK::SetStencilAttachment().
|
constexpr |
Definition at line 42 of file formats_vk.h.
References kBlendAlpha, kBlendColor, kDestinationAlpha, kDestinationColor, kOne, kOneMinusBlendAlpha, kOneMinusBlendColor, kOneMinusDestinationAlpha, kOneMinusDestinationColor, kOneMinusSourceAlpha, kOneMinusSourceColor, kSourceAlpha, kSourceAlphaSaturated, kSourceColor, and kZero.
Referenced by ToVKPipelineColorBlendAttachmentState().
|
constexpr |
Definition at line 78 of file formats_vk.h.
References kAdd, kReverseSubtract, and kSubtract.
Referenced by ToVKPipelineColorBlendAttachmentState().
|
staticconstexpr |
Definition at line 24 of file allocator_vk.cc.
References kDevicePrivate, kDeviceTransient, and kHostVisible.
Referenced by CreateBufferPool().
|
constexpr |
Definition at line 90 of file formats_vk.h.
References kAlpha, kBlue, kGreen, kRed, and type.
Referenced by ToVKPipelineColorBlendAttachmentState().
|
constexpr |
Definition at line 453 of file formats_vk.h.
References kAlways, kEqual, kGreater, kGreaterEqual, kLess, kLessEqual, kNever, and kNotEqual.
Referenced by ToVKPipelineDepthStencilStateCreateInfo(), and ToVKStencilOpState().
|
constexpr |
|
constexpr |
Definition at line 296 of file formats_vk.h.
References impeller::DescriptorSetLayout::binding, impeller::DescriptorSetLayout::descriptor_type, impeller::DescriptorSetLayout::shader_stage, ToVKDescriptorType(), and ToVkShaderStage().
|
constexpr |
Definition at line 292 of file formats_vk.h.
References type.
Referenced by impeller::testing::TEST(), and ToVKDescriptorSetLayoutBinding().
|
constexpr |
|
constexpr |
Definition at line 513 of file formats_vk.h.
References kA8UNormInt, kB10G10R10A10XR, kB10G10R10XR, kB10G10R10XRSRGB, kB8G8R8A8UNormInt, kB8G8R8A8UNormIntSRGB, kD24UnormS8Uint, kD32FloatS8UInt, kR16G16B16A16Float, kR32G32B32A32Float, kR8G8B8A8UNormInt, kR8G8B8A8UNormIntSRGB, kR8G8UNormInt, kR8UNormInt, kS8UInt, and kUnknown.
Referenced by impeller::AllocatedTextureSourceVK::AllocatedTextureSourceVK().
|
constexpr |
Definition at line 567 of file formats_vk.h.
References kTexture2D, kTexture2DMultisample, kTextureCube, kTextureExternalOES, type, and VALIDATION_LOG.
Referenced by impeller::AllocatedTextureSourceVK::AllocatedTextureSourceVK().
|
constexpr |
Definition at line 146 of file formats_vk.h.
References kA8UNormInt, kB10G10R10A10XR, kB10G10R10XR, kB10G10R10XRSRGB, kB8G8R8A8UNormInt, kB8G8R8A8UNormIntSRGB, kD24UnormS8Uint, kD32FloatS8UInt, kR16G16B16A16Float, kR32G32B32A32Float, kR8G8B8A8UNormInt, kR8G8B8A8UNormIntSRGB, kR8G8UNormInt, kR8UNormInt, kS8UInt, and kUnknown.
Referenced by impeller::AllocatedTextureSourceVK::AllocatedTextureSourceVK(), ChooseSurfaceFormat(), impeller::AHBSwapchainVK::GetSurfaceFormat(), impeller::KHRSwapchainImageVK::KHRSwapchainImageVK(), impeller::RenderPassBuilderVK::SetColorAttachment(), impeller::RenderPassBuilderVK::SetDepthStencilAttachment(), and impeller::RenderPassBuilderVK::SetStencilAttachment().
|
constexpr |
Definition at line 553 of file formats_vk.h.
References kTexture2D, kTexture2DMultisample, kTextureCube, kTextureExternalOES, type, and VALIDATION_LOG.
Referenced by impeller::AllocatedTextureSourceVK::AllocatedTextureSourceVK().
|
constexpr |
Definition at line 355 of file formats_vk.h.
|
constexpr |
Definition at line 113 of file formats_vk.h.
References impeller::ColorAttachmentDescriptor::alpha_blend_op, impeller::ColorAttachmentDescriptor::blending_enabled, impeller::ColorAttachmentDescriptor::color_blend_op, impeller::ColorAttachmentDescriptor::dst_alpha_blend_factor, impeller::ColorAttachmentDescriptor::dst_color_blend_factor, impeller::ColorAttachmentDescriptor::src_alpha_blend_factor, impeller::ColorAttachmentDescriptor::src_color_blend_factor, ToVKBlendFactor(), ToVKBlendOp(), ToVKColorComponentFlags(), and impeller::ColorAttachmentDescriptor::write_mask.
vk::PipelineDepthStencilStateCreateInfo impeller::ToVKPipelineDepthStencilStateCreateInfo | ( | std::optional< DepthAttachmentDescriptor > | depth, |
std::optional< StencilAttachmentDescriptor > | front, | ||
std::optional< StencilAttachmentDescriptor > | back | ||
) |
Definition at line 9 of file formats_vk.cc.
References ToVKCompareOp(), and ToVKStencilOpState().
|
constexpr |
Definition at line 370 of file formats_vk.h.
|
constexpr |
Definition at line 395 of file formats_vk.h.
References kLine, kLineStrip, kPoint, kTriangle, kTriangleFan, and kTriangleStrip.
|
constexpr |
Definition at line 214 of file formats_vk.h.
References e1, kCount1, and kCount4.
Referenced by impeller::AllocatedTextureSourceVK::AllocatedTextureSourceVK(), impeller::RenderPassBuilderVK::SetColorAttachment(), impeller::RenderPassBuilderVK::SetDepthStencilAttachment(), and impeller::RenderPassBuilderVK::SetStencilAttachment().
|
constexpr |
Definition at line 32 of file formats_vk.h.
|
constexpr |
Definition at line 248 of file formats_vk.h.
References kClampToEdge, kDecal, kMirror, and kRepeat.
Referenced by CreateSampler().
|
constexpr |
Definition at line 225 of file formats_vk.h.
References kLinear, and kNearest.
Referenced by CreateSampler().
|
constexpr |
Definition at line 236 of file formats_vk.h.
|
constexpr |
Definition at line 264 of file formats_vk.h.
References kCompute, kFragment, kUnknown, and kVertex.
Referenced by ToVKDescriptorSetLayoutBinding().
|
constexpr |
Definition at line 131 of file formats_vk.h.
|
constexpr |
Definition at line 475 of file formats_vk.h.
References kDecrementClamp, kDecrementWrap, kIncrementClamp, kIncrementWrap, kInvert, kKeep, kSetToReferenceValue, and kZero.
Referenced by ToVKStencilOpState().
|
constexpr |
Definition at line 498 of file formats_vk.h.
References impeller::StencilAttachmentDescriptor::depth_failure, impeller::StencilAttachmentDescriptor::depth_stencil_pass, impeller::StencilAttachmentDescriptor::read_mask, impeller::StencilAttachmentDescriptor::stencil_compare, impeller::StencilAttachmentDescriptor::stencil_failure, ToVKCompareOp(), ToVKStencilOp(), and impeller::StencilAttachmentDescriptor::write_mask.
Referenced by ToVKPipelineDepthStencilStateCreateInfo().
|
staticconstexpr |
Definition at line 256 of file allocator_vk.cc.
Referenced by impeller::AllocatedTextureSourceVK::AllocatedTextureSourceVK().
|
static |
Definition at line 36 of file allocator_vk.cc.
References kDevicePrivate, kDeviceTransient, and kHostVisible.
Referenced by CreateBufferPool().
|
static |
Definition at line 274 of file allocator_vk.cc.
Referenced by impeller::AllocatedTextureSourceVK::AllocatedTextureSourceVK().
|
staticconstexpr |
Definition at line 251 of file allocator_vk.cc.
Referenced by impeller::AllocatedTextureSourceVK::AllocatedTextureSourceVK().
|
static |
Definition at line 324 of file typographer_context_skia.cc.
References impeller::TSize< T >::Area(), buffer_view, BytesPerPixelForPixelFormat(), data, DrawGlyph(), impeller::HostBuffer::Emplace(), impeller::GlyphAtlas::FindFontGlyphBounds(), GetImageInfo(), impeller::HostBuffer::GetMinimumUniformAlignment(), impeller::GlyphAtlas::GetTexture(), impeller::GlyphAtlas::GetType(), impeller::FontGlyphPair::glyph, impeller::TSize< T >::height, impeller::TSize< T >::IsEmpty(), impeller::GlyphAtlas::kColorBitmap, impeller::TRect< T >::MakeXYWH(), impeller::SubpixelGlyph::properties, impeller::FontGlyphPair::scaled_font, and impeller::TSize< T >::width.
Referenced by impeller::TypographerContextSkia::CreateGlyphAtlas().
|
inlinestaticconstexpr |
Definition at line 28 of file color.cc.
References _IMPELLER_ASSERT_BLEND_MODE, IMPELLER_FOR_EACH_BLEND_MODE, and kLastMode.
|
constexpr |
|
static |
Definition at line 37 of file render_pass_vk.cc.
References impeller::Color::alpha, impeller::Color::blue, impeller::Color::green, impeller::Color::red, and value.
Referenced by GetVKClearValues().
|
static |
Definition at line 44 of file render_pass_vk.cc.
References value.
Referenced by GetVKClearValues().
|
constexpr |
|
static |
Definition at line 29 of file shader_library_vk.cc.
std::shared_ptr< FilterContents > impeller::WrapInput | ( | const flutter::DlImageFilter * | filter, |
const FilterInput::Ref & | input | ||
) |
Generate a new FilterContents using this filter's configuration.
Definition at line 18 of file image_filter.cc.
References impeller::FilterContents::kDilate, impeller::FilterContents::kErode, impeller::ColorFilterContents::kNo, impeller::FilterContents::kNormal, impeller::FilterInput::Make(), impeller::FilterContents::MakeGaussianBlur(), impeller::FilterContents::MakeLocalMatrixFilter(), impeller::FilterContents::MakeMatrixFilter(), impeller::FilterContents::MakeMorphology(), impeller::FilterContents::MakeRuntimeEffect(), impeller::skia_conversions::ToSamplerDescriptor(), and WrapWithGPUColorFilter().
Referenced by impeller::Canvas::SaveLayer(), and impeller::Paint::WithImageFilter().
ProcTableGLES::Resolver impeller::WrappedResolver | ( | const ProcTableGLES::Resolver & | resolver | ) |
Definition at line 52 of file proc_table_gles.cc.
Referenced by impeller::ProcTableGLES::ProcTableGLES().
std::shared_ptr<Texture> impeller::WrapperMTL | ( | TextureDescriptor | desc, |
const void * | mtl_texture, | ||
std::function< void()> | deletion_proc | ||
) |
std::shared_ptr< Texture > impeller::WrapTextureMTL | ( | TextureDescriptor | desc, |
const void * | mtl_texture, | ||
std::function< void()> | deletion_proc = nullptr |
||
) |
Definition at line 14 of file texture_wrapper_mtl.mm.
References impeller::TextureDescriptor::format, FromMTLPixelFormat(), and impeller::TextureMTL::Wrapper().
|
static |
Definition at line 51 of file surface_mtl.mm.
References impeller::ColorAttachment::clear_color, impeller::DepthAttachment::clear_depth, impeller::StencilAttachment::clear_stencil, impeller::TextureMTL::Create(), impeller::Color::DarkSlateGray(), impeller::TextureDescriptor::format, FromMTLPixelFormat(), kClear, kCount1, impeller::RenderTarget::kDefaultStencilAttachmentConfig, kDevicePrivate, kMultisampleResolve, kRenderTarget, kShaderRead, kUnknown, impeller::Attachment::load_action, impeller::RenderTarget::AttachmentConfig::load_action, impeller::Attachment::resolve_texture, impeller::TextureDescriptor::sample_count, impeller::RenderTarget::SetColorAttachment(), impeller::RenderTarget::SetDepthAttachment(), impeller::RenderTarget::SetStencilAttachment(), impeller::TextureDescriptor::size, impeller::TextureDescriptor::storage_mode, impeller::Attachment::store_action, impeller::RenderTarget::AttachmentConfig::store_action, impeller::Attachment::texture, impeller::TextureDescriptor::usage, and VALIDATION_LOG.
Referenced by impeller::SurfaceMTL::MakeFromTexture().
std::shared_ptr< ColorFilterContents > impeller::WrapWithGPUColorFilter | ( | const flutter::DlColorFilter * | filter, |
const std::shared_ptr< FilterInput > & | input, | ||
ColorFilterContents::AbsorbOpacity | absorb_opacity | ||
) |
Definition at line 24 of file color_filter.cc.
References impeller::ColorMatrix::array, impeller::ColorFilterContents::MakeBlend(), impeller::ColorFilterContents::MakeColorMatrix(), impeller::ColorFilterContents::MakeLinearToSrgbFilter(), impeller::ColorFilterContents::MakeSrgbToLinearFilter(), and impeller::skia_conversions::ToColor().
Referenced by impeller::Paint::CreateContents(), impeller::Paint::MaskBlurDescriptor::CreateMaskBlur(), and WrapInput().
std::shared_ptr< ColorFilterContents > impeller::WrapWithInvertColors | ( | const std::shared_ptr< FilterInput > & | input, |
ColorFilterContents::AbsorbOpacity | absorb_opacity | ||
) |
Definition at line 16 of file color_filter.cc.
References kColorInversion, and impeller::ColorFilterContents::MakeColorMatrix().
Referenced by impeller::Paint::CreateContents(), and impeller::Paint::MaskBlurDescriptor::CreateMaskBlur().
|
static |
Definition at line 172 of file command_pool_vk.cc.
Referenced by impeller::CommandPoolRecyclerVK::DestroyThreadLocalPools(), impeller::CommandPoolRecyclerVK::Dispose(), impeller::CommandPoolRecyclerVK::Get(), and impeller::CommandPoolRecyclerVK::GetGlobalPoolCount().
|
static |
Definition at line 51 of file context_vk.cc.
Referenced by HasValidationLayers().
|
static |
Definition at line 162 of file playground.cc.
Referenced by PlaygroundKeyCallback(), and impeller::Playground::ShouldOpenNewPlaygrounds().
|
constexpr |
Definition at line 38 of file constants.h.
|
constexpr |
Definition at line 50 of file constants.h.
Referenced by impeller::testing::TEST(), and impeller::testing::TEST_P().
|
constexpr |
Definition at line 41 of file constants.h.
|
constexpr |
Definition at line 44 of file constants.h.
|
constexpr |
Definition at line 29 of file constants.h.
Referenced by impeller::testing::TEST(), and impeller::testing::TEST_P().
const std::unordered_map<std::string_view, AdrenoGPU> impeller::kAdrenoVersions |
Definition at line 16 of file driver_info_vk.cc.
Referenced by GetAdrenoVersion().
|
static |
Definition at line 25 of file tessellator_libtess.cc.
Referenced by impeller::TessellatorLibtess::TessellatorLibtess().
|
constexpr |
Definition at line 19 of file host_buffer.cc.
|
staticconstexpr |
Definition at line 24 of file buffer_bindings_gles.cc.
|
staticconstexpr |
Definition at line 44 of file color.cc.
Referenced by BlendModeToString().
|
staticconstexpr |
A color matrix which inverts colors.
Definition at line 16 of file color_filter.h.
Referenced by impeller::testing::TEST_P(), and WrapWithInvertColors().
|
staticconstexpr |
Descriptor pools are always allocated with the following sizes.
Definition at line 21 of file descriptor_pool_vk.cc.
|
constexpr |
Definition at line 11 of file constants.h.
|
constexpr |
Definition at line 57 of file constants.h.
Referenced by impeller::Color::Blend(), ClipColor(), impeller::LineGeometry::ComputeAlongVector(), impeller::SolidRRectLikeBlurContents::Render(), impeller::TextureContents::RenderToSnapshot(), impeller::Tessellator::RoundCapLine(), impeller::testing::TEST(), and impeller::testing::TEST_P().
|
static |
Definition at line 43 of file geometry.h.
|
staticconstexpr |
Definition at line 13 of file capabilities_gles.cc.
Referenced by impeller::CapabilitiesGLES::CapabilitiesGLES().
|
staticconstexpr |
Definition at line 17 of file gaussian_blur_filter_contents.h.
Referenced by LerpHackKernelSamples(), and impeller::testing::TEST().
|
staticconstexpr |
Approximately the same size as the max frames in flight.
Definition at line 20 of file host_buffer.h.
Referenced by impeller::HostBuffer::Reset().
|
constexpr |
Definition at line 16 of file limits_vk.h.
|
staticconstexpr |
Definition at line 17 of file capabilities_vk.cc.
Referenced by impeller::CapabilitiesVK::CapabilitiesVK().
|
staticconstexpr |
For filters that use a Gaussian distribution, this is the Radius
size to use per Sigma
(standard deviation).
This cutoff (sqrt(3)) is taken from Flutter and Skia (where the multiplicative inverse of this constant is used (1 / sqrt(3)): https://api.flutter.dev/flutter/dart-ui/Shadow/convertRadiusToSigma.html
In practice, this value is somewhat arbitrary, and can be changed to a higher number to integrate more of the Gaussian function and render higher quality blurs (with exponentially diminishing returns for the same sigma input). Making this value any lower results in a noticable loss of quality in the blur.
Definition at line 24 of file sigma.h.
Referenced by impeller::Sigma::operator Radius(), and impeller::Radius::operator Sigma().
|
constexpr |
Definition at line 17 of file constants.h.
|
constexpr |
Definition at line 14 of file constants.h.
|
constexpr |
Definition at line 23 of file constants.h.
|
constexpr |
Definition at line 20 of file constants.h.
|
staticconstexpr |
Definition at line 35 of file render_pass_vk.cc.
const std::unordered_map<std::string_view, MaliGPU> impeller::kMaliVersions |
Definition at line 71 of file driver_info_vk.cc.
Referenced by GetMaliVersion().
|
constexpr |
Definition at line 24 of file yuv_to_rgb_filter_contents.cc.
|
constexpr |
Definition at line 17 of file yuv_to_rgb_filter_contents.cc.
|
staticconstexpr |
Definition at line 18 of file render_pass_builder_vk.h.
|
staticconstexpr |
Definition at line 23 of file pipeline_vk.h.
|
staticconstexpr |
Definition at line 17 of file render_pass_builder_vk.h.
|
staticconstexpr |
Definition at line 21 of file khr_swapchain_impl_vk.cc.
|
staticconstexpr |
Definition at line 26 of file ahb_swapchain_impl_vk.h.
Referenced by impeller::AHBSwapchainImplVK::AcquireNextDrawable().
|
staticconstexpr |
Definition at line 16 of file text_shadow_cache.cc.
|
staticconstexpr |
Definition at line 1658 of file canvas.cc.
Referenced by impeller::Canvas::DrawTextFrame().
|
staticconstexpr |
Definition at line 47 of file gradient_generator.h.
Referenced by PopulateUniformGradientColors(), impeller::ConicalGradientContents::Render(), impeller::LinearGradientContents::Render(), impeller::RadialGradientContents::Render(), and impeller::SweepGradientContents::Render().
|
constexpr |
Definition at line 13 of file vertex_buffer.h.
Referenced by impeller::RenderPass::ValidateVertexBuffers().
|
staticconstexpr |
Definition at line 19 of file geometry.h.
Referenced by impeller::LineGeometry::ComputePixelHalfWidth(), impeller::Geometry::ComputeStrokeAlphaCoverage(), impeller::StrokeRectGeometry::GetPositionBuffer(), and impeller::StrokeSegmentsGeometry::GetStrokeCoverage().
|
staticconstexpr |
Definition at line 26 of file capabilities_gles.cc.
Referenced by impeller::CapabilitiesGLES::CapabilitiesGLES().
|
staticconstexpr |
Definition at line 22 of file capabilities_gles.cc.
Referenced by impeller::CapabilitiesGLES::CapabilitiesGLES().
|
static |
Definition at line 18 of file lazy_glyph_atlas.cc.
Referenced by impeller::LazyGlyphAtlas::CreateOrGetGlyphAtlas().
|
staticconstexpr |
Definition at line 18 of file capabilities_gles.cc.
Referenced by impeller::CapabilitiesGLES::CapabilitiesGLES().
|
constexpr |
Definition at line 48 of file typographer_context_skia.cc.
Referenced by AppendToExistingAtlas(), and PairsFitInAtlasOfSize().
|
constexpr |
Definition at line 54 of file constants.h.
Referenced by impeller::testing::TEST_P().
|
constexpr |
Definition at line 26 of file constants.h.
Referenced by impeller::Degrees::operator Radians(), impeller::testing::TEST(), and impeller::testing::TEST_P().
|
constexpr |
Definition at line 32 of file constants.h.
Referenced by impeller::testing::TEST(), and impeller::testing::TEST_P().
|
constexpr |
Definition at line 35 of file constants.h.
Referenced by impeller::testing::TEST().
|
staticconstexpr |
Definition at line 13 of file pipeline_cache_data_vk.cc.
Referenced by PipelineCacheDataPersist(), and PipelineCacheDataRetrieve().
|
staticconstexpr |
The size of the point arena buffer stored on the tessellator.
Definition at line 25 of file tessellator.h.
Referenced by impeller::testing::TEST_P().
|
staticconstexpr |
Definition at line 20 of file gpu_tracer_vk.cc.
Referenced by impeller::GPUTracerVK::InitializeQueryPool().
|
constexpr |
Definition at line 15 of file blend_filter_contents.h.
|
staticconstexpr |
Definition at line 335 of file point.h.
Referenced by impeller::Arc::ComputeIterations(), and impeller::Arc::GetTightArcBounds().
|
constexpr |
Definition at line 29 of file render_pass_builder_vk.cc.
Referenced by impeller::RenderPassBuilderVK::Build(), and InsertBarrierForInputAttachmentRead().
|
constexpr |
Definition at line 27 of file render_pass_builder_vk.cc.
Referenced by impeller::RenderPassBuilderVK::Build(), and InsertBarrierForInputAttachmentRead().
|
constexpr |
Definition at line 32 of file render_pass_builder_vk.cc.
Referenced by impeller::RenderPassBuilderVK::Build(), and InsertBarrierForInputAttachmentRead().
|
constexpr |
Definition at line 24 of file render_pass_builder_vk.cc.
Referenced by impeller::RenderPassBuilderVK::Build(), and InsertBarrierForInputAttachmentRead().
|
constexpr |
Definition at line 22 of file render_pass_builder_vk.cc.
Referenced by impeller::RenderPassBuilderVK::Build(), and InsertBarrierForInputAttachmentRead().
|
static |
Definition at line 69 of file golden_playground_test_mac.cc.
Referenced by impeller::GoldenPlaygroundTest::SetUp().
|
constexpr |
Definition at line 47 of file constants.h.
Referenced by impeller::StrokeSegmentsGeometry::GetStrokeCoverage(), impeller::testing::TEST(), and impeller::testing::TEST_P().
|
constexpr |
Definition at line 51 of file constants.h.
Referenced by impeller::EllipsePathSource::Dispatch(), impeller::testing::TEST(), and impeller::testing::TEST_P().
|
staticconstexpr |
Definition at line 16 of file capabilities_gles.cc.
Referenced by impeller::CapabilitiesGLES::CapabilitiesGLES().
Definition at line 56 of file solid_rrect_like_blur_contents.cc.
Referenced by computeErf7().
|
staticconstexpr |
Definition at line 438 of file formats_vk.h.
Referenced by impeller::RenderPassBuilderVK::Build().
|
static |
Definition at line 11 of file comparable.cc.
|
static |
Definition at line 15 of file validation.cc.
Referenced by ImpellerValidationBreak(), and ImpellerValidationErrorsSetCallback().
|
static |
Definition at line 14 of file validation.cc.
Referenced by ImpellerValidationErrorsAreFatal(), ImpellerValidationErrorsSetFatal(), impeller::ScopedValidationFatal::ScopedValidationFatal(), and impeller::ScopedValidationFatal::~ScopedValidationFatal().
|
static |
Definition at line 13 of file validation.cc.
Referenced by impeller::ScopedValidationDisable::ScopedValidationDisable(), impeller::ScopedValidationDisable::~ScopedValidationDisable(), and impeller::ValidationLog::~ValidationLog().
|
static |
Definition at line 38 of file geometry_benchmarks.cc.
|
static |
Definition at line 168 of file command_pool_vk.cc.
Referenced by impeller::CommandPoolRecyclerVK::DestroyThreadLocalPools(), impeller::CommandPoolRecyclerVK::Dispose(), and impeller::CommandPoolRecyclerVK::Get().