Flutter Engine
The Flutter Engine
|
Namespaces | |
namespace | android |
namespace | compiler |
namespace | egl |
namespace | saturated |
namespace | scene |
namespace | skia_conversions |
namespace | testing |
Classes | |
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 | AHBTextureSourceVK |
A texture source that wraps an instance of AHardwareBuffer. More... | |
class | AiksContext |
class | AiksPlayground |
class | AllocatedTextureSourceVK |
class | Allocation |
class | Allocator |
An object that allocates device memory. More... | |
class | AllocatorGLES |
class | AllocatorMTL |
class | AllocatorVK |
struct | AllocatorVMATraits |
class | AnonymousContents |
class | AtlasContents |
struct | Attachment |
struct | AutoErrorCheck |
class | BackendCast |
class | BackgroundCommandPoolVK |
class | BackgroundDescriptorPoolVK |
struct | BarrierVK |
Defines an operations and memory access barrier on a resource. More... | |
struct | Bindings |
class | BitmapSTB |
class | BlendColorFilter |
class | BlendFilterContents |
struct | BlitCommand |
struct | BlitCopyBufferToTextureCommand |
struct | BlitCopyBufferToTextureCommandGLES |
struct | BlitCopyTextureToBufferCommand |
struct | BlitCopyTextureToBufferCommandGLES |
struct | BlitCopyTextureToTextureCommand |
struct | BlitCopyTextureToTextureCommandGLES |
struct | BlitEncodeGLES |
Mixin for dispatching GLES commands. More... | |
struct | BlitGenerateMipmapCommand |
struct | BlitGenerateMipmapCommandGLES |
class | BlitPass |
Blit passes encode blit into the underlying command buffer. More... | |
class | BlitPassGLES |
class | BlitPassMTL |
class | BlitPassVK |
class | BlurImageFilter |
struct | BlurParameters |
class | BorderMaskBlurFilterContents |
struct | BufferAndUniformSlot |
combines the buffer resource and its uniform slot information. More... | |
class | BufferBindingsGLES |
Sets up stage bindings for single draw call in the OpenGLES backend. More... | |
struct | BufferView |
struct | BufferVMA |
struct | BufferVMATraits |
class | Canvas |
struct | CanvasStackEntry |
class | Capabilities |
class | CapabilitiesBuilder |
class | CapabilitiesGLES |
The Vulkan layers and extensions wrangler. More... | |
class | CapabilitiesVK |
The Vulkan layers and extensions wrangler. More... | |
class | CircleGeometry |
class | ClipContents |
struct | ClipCoverageLayer |
class | ClipRestoreContents |
struct | Color |
struct | ColorAttachment |
struct | ColorAttachmentDescriptor |
Describe the color attachment that will be used with this pipeline. More... | |
class | ColorFilter |
class | ColorFilterContents |
struct | ColorHSB |
class | ColorImageFilter |
struct | ColorMatrix |
class | ColorMatrixFilterContents |
class | ColorSource |
class | ColorSourceContents |
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 | CommandBufferGLES |
class | CommandBufferMTL |
class | CommandBufferVK |
class | CommandEncoderFactoryVK |
class | CommandEncoderVK |
class | CommandPoolRecyclerVK |
Creates and manages the lifecycle of |vk::CommandPool| objects. More... | |
class | CommandPoolVK |
Manages the lifecycle of a single |vk::CommandPool|. More... | |
class | CommandQueue |
An interface for submitting command buffers to the GPU for encoding and execution. More... | |
class | CommandQueueVK |
class | Comparable |
class | ComparableBase |
struct | ComparableEqual |
struct | ComparableHash |
class | ComposedColorFilter |
Applies color filters as f(g(x)), where x is the input color. More... | |
class | ComposeImageFilter |
class | CompressedImage |
class | CompressedImageSkia |
class | ComputePass |
Compute passes encode compute shader into the underlying command buffer. More... | |
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 | ComputePassVK |
struct | ComputePipelineBuilder |
An optional (but highly recommended) utility for creating pipelines from reflected shader information. More... | |
class | ComputePipelineDescriptor |
class | ComputePipelineHandle |
class | ComputePipelineMTL |
class | ComputePipelineVK |
class | ComputePlaygroundTest |
class | ConditionVariable |
A condition variable exactly similar to the one in libcxx with two major differences: More... | |
class | ConicalGradientContents |
struct | ConicalGradientData |
class | ContentContext |
struct | ContentContextOptions |
class | Contents |
class | ContentsFilterInput |
class | Context |
To do anything rendering related with Impeller, you need a context. More... | |
class | ContextGLES |
class | ContextMTL |
class | ContextVK |
struct | ContourComponent |
class | CoverGeometry |
A geometry that implements "drawPaint" like behavior by covering the entire render pass area. More... | |
struct | CubicPathComponent |
class | DebugReportVK |
class | DecompressedImage |
class | DefaultEntityPassDelegate |
struct | Degrees |
struct | DepthAttachment |
struct | DepthAttachmentDescriptor |
struct | DepthRange |
class | DescriptionGLES |
class | DescriptorPoolRecyclerVK |
Creates and manages the lifecycle of |vk::DescriptorPoolVK| objects. More... | |
struct | DescriptorPoolSize |
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... | |
struct | DescriptorSetLayout |
class | DeviceBuffer |
struct | DeviceBufferDescriptor |
class | DeviceBufferGLES |
class | DeviceBufferMTL |
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 | DilateImageFilter |
class | DirectionalMorphologyFilterContents |
class | DlDispatcher |
class | DlDispatcherBase |
class | DlImageImpeller |
class | DlPlayground |
class | DriverInfoVK |
Get information about the Vulkan driver. More... | |
struct | EGLImageKHRWithDisplay |
struct | EGLImageKHRWithDisplayTraits |
struct | EGLImageWithDisplay |
struct | EGLImageWithDisplayTraits |
class | EllipseGeometry |
class | Entity |
class | EntityPass |
class | EntityPassClipStack |
A class that tracks all clips that have been recorded in the current entity pass stencil. More... | |
class | EntityPassDelegate |
class | EntityPassTarget |
class | EntityPlayground |
class | ErodeImageFilter |
class | ExperimentalCanvas |
class | ExperimentalDlDispatcher |
class | ExternalFenceVK |
A Vulkan fence that can be exported as a platform specific file descriptor. More... | |
class | FenceWaiterVK |
class | FillPathGeometry |
A geometry that is created from a filled path object. More... | |
class | FilterContents |
class | FilterContentsFilterInput |
class | FilterInput |
class | Font |
Describes a typeface along with any modifications to its intrinsic properties. More... | |
class | FontGlyphAtlas |
An object that can look up glyph locations within the GlyphAtlas for a particular typeface. More... | |
struct | FontGlyphPair |
A font along with a glyph in that font rendered at a particular scale and subpixel position. More... | |
class | FramebufferBlendContents |
class | GaussianBlurFilterContents |
class | Geometry |
struct | GeometryResult |
struct | GLProc |
struct | GLTexture |
struct | GLTextureTraits |
struct | Glyph |
The glyph index in the typeface. More... | |
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 | GlyphAtlasContextSTB |
struct | GlyphProperties |
class | GoldenPlaygroundTest |
class | GPUProbe |
class | GPUTracerGLES |
Trace GPU execution times using GL_EXT_disjoint_timer_query on GLES. More... | |
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... | |
class | GPUTracerVK |
A class that uses timestamp queries to record the approximate GPU execution time. More... | |
struct | GradientData |
struct | Half |
A storage only class for half precision floating point. More... | |
struct | HalfVector2 |
A storage only class for half precision floating point vector 2. More... | |
struct | HalfVector3 |
A storage only class for half precision floating point vector 3. More... | |
struct | HalfVector4 |
A storage only class for half precision floating point vector 4. More... | |
struct | HandleGLES |
class | HostBuffer |
class | Image |
struct | ImageData |
class | ImageFilter |
class | ImageFilterVisitor |
struct | ImageVMA |
struct | ImageVMATraits |
struct | ImmutableSamplerKeyVK |
class | ImpellerBenchmarkAccessor |
class | ImpellerEntityUnitTestAccessor |
class | InlinePassContext |
struct | IPoint16 |
struct | KHRFrameSynchronizerVK |
class | KHRSwapchainImageVK |
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 | LazyGlyphAtlas |
class | LinearGradientContents |
struct | LinearGradientData |
struct | LinearPathComponent |
class | LinearToSrgbColorFilter |
class | LinearToSrgbFilterContents |
class | LineGeometry |
class | LocalMatrixFilterContents |
class | LocalMatrixImageFilter |
class | Lock |
struct | Mask |
A mask of typed enums. More... | |
struct | MaskTraits |
struct | Matrix |
A 4x4 matrix using column-major storage. More... | |
class | MatrixColorFilter |
struct | MatrixDecomposition |
class | MatrixFilterContents |
class | MatrixImageFilter |
struct | MixedOp_ |
class | NinePatchConverter |
class | NoExceptionPromise |
struct | Padded |
Struct used for padding uniform buffer array elements. More... | |
struct | Padding |
struct | Paint |
class | PaintPassDelegate |
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 | Path |
Paths are lightweight objects that describe a collection of linear, quadratic, or cubic segments. These segments may be broken up by move commands, which are effectively linear commands that pick up the pen rather than continuing to draw. More... | |
class | PathBuilder |
struct | PathComponentEndDirectionVisitor |
struct | PathComponentStartDirectionVisitor |
struct | Picture |
class | PictureRecorder |
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... | |
struct | PipelineBuilder |
An optional (but highly recommended) utility for creating pipelines from reflected shader information. More... | |
class | PipelineCacheVK |
class | PipelineDescriptor |
struct | PipelineFuture |
class | PipelineGLES |
class | PipelineLibrary |
class | PipelineLibraryGLES |
class | PipelineLibraryMTL |
class | PipelineLibraryVK |
class | PipelineMTL |
class | PipelineVK |
class | PlaceholderFilterInput |
class | Playground |
class | PlaygroundImpl |
class | PlaygroundImplGLES |
class | PlaygroundImplMTL |
class | PlaygroundImplVK |
struct | PlaygroundPoint |
struct | PlaygroundSwitches |
class | PlaygroundTest |
class | PointFieldGeometry |
class | Pool |
A thread-safe pool with a limited byte size. More... | |
struct | PoolVMA |
struct | PoolVMATraits |
class | ProcTableGLES |
struct | QuadraticPathComponent |
struct | Quaternion |
struct | QueueIndexVK |
struct | QueuesVK |
The collection of queues used by the context. The queues may all be the same. More... | |
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... | |
class | RadialGradientContents |
struct | RadialGradientData |
struct | Radians |
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 | Range |
class | ReactorGLES |
The reactor attempts to make thread-safe usage of OpenGL ES easier to reason about. More... | |
class | ReaderLock |
class | RecordingRenderPass |
class | RectanglePacker |
Packs rectangles into a specified area without rotating them. More... | |
class | RectGeometry |
class | Renderer |
class | RenderPass |
Render passes encode render commands directed as one specific render target into an underlying command buffer. More... | |
class | RenderPassBuilderVK |
struct | RenderPassData |
Encapsulates data that will be needed in the reactor for the encoding of commands for this render pass. More... | |
class | RenderPassGLES |
class | RenderPassMTL |
class | RenderPassVK |
class | RenderPipelineHandle |
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 | RenderTargetCache |
An implementation of the [RenderTargetAllocator] that caches all allocated texture data for one frame. More... | |
struct | RenderTargetConfig |
struct | Resource |
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... | |
class | ResourceManagerVK |
A resource manager controls how resources are allocated and reclaimed. More... | |
class | ResourceVK |
A resource that may be reclaimed by a |ResourceManagerVK|. More... | |
class | ResourceVKT |
An internal type that is used to move a resource reference. More... | |
class | RoundRectGeometry |
class | RuntimeEffectContents |
struct | RuntimeEffectData |
class | RuntimeStage |
class | RuntimeStagePlayground |
struct | RuntimeUniformDescription |
struct | RuntimeUniformDimensions |
struct | SampledImageSlot |
Metadata required to bind a combined texture and sampler. More... | |
class | Sampler |
struct | SamplerDescriptor |
class | SamplerGLES |
class | SamplerLibrary |
class | SamplerLibraryGLES |
class | SamplerLibraryMTL |
class | SamplerLibraryVK |
class | SamplerMTL |
class | SamplerVK |
struct | ScaledFont |
A font and a scale. Used as a key that represents a typeface within a glyph atlas. More... | |
class | SceneContents |
struct | ScopedValidationDisable |
struct | ScopedValidationFatal |
struct | SeparatedVector2 |
A Vector2, broken down as a separate magnitude and direction. Assumes that the direction given is normalized. More... | |
class | ShaderArchive |
class | ShaderArchiveWriter |
class | ShaderFunction |
class | ShaderFunctionGLES |
class | ShaderFunctionMTL |
class | ShaderFunctionVK |
struct | ShaderKey |
class | ShaderLibrary |
class | ShaderLibraryGLES |
class | ShaderLibraryMTL |
class | ShaderLibraryVK |
struct | ShaderMetadata |
struct | ShaderStageBufferLayout |
class | ShaderStageCompatibilityChecker |
class | ShaderStageCompatibilityChecker< ClipVertexShader, FragmentShaderT > |
class | ShaderStageCompatibilityChecker< SolidFillVertexShader, FragmentShaderT > |
struct | ShaderStageIOSlot |
struct | ShaderStructMemberMetadata |
struct | ShaderUniformSlot |
Metadata required to bind a buffer. More... | |
class | SharedObjectVK |
class | SharedObjectVKT |
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... | |
class | SkylineRectanglePacker |
struct | Snapshot |
Represents a texture and its intended draw transform/sampler configuration. More... | |
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 | SrgbToLinearColorFilter |
class | SrgbToLinearFilterContents |
class | StandardCapabilities |
struct | StencilAttachment |
struct | StencilAttachmentDescriptor |
struct | StopData |
class | StrokePathGeometry |
A geometry that is created from a stroked path object. More... | |
struct | SubpixelGlyph |
A glyph and its subpixel position. More... | |
class | Surface |
class | SurfaceContextVK |
class | SurfaceGLES |
class | SurfaceMTL |
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... | |
class | SweepGradientContents |
struct | SweepGradientData |
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... | |
class | TestImpellerAllocator |
class | TestImpellerContext |
class | TestImpellerDeviceBuffer |
class | TestImpellerTexture |
class | TextContents |
class | TextFrame |
Represents a collection of shaped text runs. More... | |
class | TextFrameDispatcher |
Performs a first pass over the display list to collect all text frames. More... | |
class | TextRun |
Represents a collection of positioned glyphs from a specific font. More... | |
class | Texture |
struct | TextureAndSampler |
combines the texture, sampler and sampler slot information. More... | |
class | TextureContents |
struct | TextureDescriptor |
A lightweight object that describes the attributes of a texture that can then used an allocator to create that texture. More... | |
class | TextureFilterInput |
class | TextureGLES |
class | TextureMTL |
class | TextureSourceVK |
Abstract base class that represents a vkImage and an vkImageView. More... | |
class | TextureVK |
class | TiledTextureContents |
struct | TPoint |
class | TrackedObjectsVK |
A per-frame object used to track resource lifetimes and allocate command buffers and descriptor sets. More... | |
struct | TRect |
struct | Trig |
A structure to store the sine and cosine of an angle. More... | |
struct | TSize |
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 | TypefaceSkia |
class | TypefaceSTB |
class | TypographerContext |
The graphics context necessary to render text. More... | |
class | TypographerContextSkia |
class | TypographerContextSTB |
struct | UniqueID |
class | UniqueResourceVKT |
A unique handle to a resource which will be reclaimed by the specified resource manager. More... | |
class | ValidationLog |
struct | Vector3 |
struct | Vector4 |
struct | Version |
struct | VertexBuffer |
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 | VertexDescriptorMTL |
class | VertexWriter |
An interface for generating a multi contour polyline as a triangle strip. More... | |
struct | Vertices |
class | VerticesGeometry |
A geometry that is created from a vertices object. More... | |
class | VerticesSimpleBlendContents |
struct | Viewport |
class | WaitSetEntry |
class | WriterLock |
struct | YUVConversionDescriptorVKEqual |
struct | YUVConversionDescriptorVKHash |
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... | |
class | YUVToRGBFilterContents |
Typedefs | |
using | ColorSourceData = std::variant< LinearGradientData, RadialGradientData, ConicalGradientData, SweepGradientData, ImageData, RuntimeEffectData, std::monostate > |
using | MyMask = Mask< MyMaskBits > |
using | MillisecondsF = std::chrono::duration< float, std::milli > |
using | SecondsF = std::chrono::duration< float > |
using | Clock = std::chrono::high_resolution_clock |
using | TimePoint = std::chrono::time_point< std::chrono::high_resolution_clock > |
using | TextureUsageMask = Mask< TextureUsage > |
using | ColorWriteMask = Mask< ColorWriteMaskBits > |
using | SamplerMap = std::unordered_map< SamplerDescriptor, std::unique_ptr< const Sampler >, ComparableHash< SamplerDescriptor >, ComparableEqual< SamplerDescriptor > > |
using | DlScalar = flutter::DlScalar |
using | DlPoint = flutter::DlPoint |
using | FastGradientPipeline = RenderPipelineHandle< FastGradientVertexShader, FastGradientFragmentShader > |
using | LinearGradientFillPipeline = RenderPipelineHandle< GradientFillVertexShader, LinearGradientFillFragmentShader > |
using | SolidFillPipeline = RenderPipelineHandle< SolidFillVertexShader, SolidFillFragmentShader > |
using | RadialGradientFillPipeline = RenderPipelineHandle< GradientFillVertexShader, RadialGradientFillFragmentShader > |
using | ConicalGradientFillPipeline = RenderPipelineHandle< GradientFillVertexShader, ConicalGradientFillFragmentShader > |
using | SweepGradientFillPipeline = RenderPipelineHandle< GradientFillVertexShader, SweepGradientFillFragmentShader > |
using | LinearGradientSSBOFillPipeline = RenderPipelineHandle< GradientFillVertexShader, LinearGradientSsboFillFragmentShader > |
using | ConicalGradientSSBOFillPipeline = RenderPipelineHandle< GradientFillVertexShader, ConicalGradientSsboFillFragmentShader > |
using | RadialGradientSSBOFillPipeline = RenderPipelineHandle< GradientFillVertexShader, RadialGradientSsboFillFragmentShader > |
using | SweepGradientSSBOFillPipeline = RenderPipelineHandle< GradientFillVertexShader, SweepGradientSsboFillFragmentShader > |
using | RRectBlurPipeline = RenderPipelineHandle< RrectBlurVertexShader, RrectBlurFragmentShader > |
using | TexturePipeline = RenderPipelineHandle< TextureFillVertexShader, TextureFillFragmentShader > |
using | TextureStrictSrcPipeline = RenderPipelineHandle< TextureFillVertexShader, TextureFillStrictSrcFragmentShader > |
using | TiledTexturePipeline = RenderPipelineHandle< TextureUvFillVertexShader, TiledTextureFillFragmentShader > |
using | GaussianBlurPipeline = RenderPipelineHandle< FilterPositionUvVertexShader, GaussianFragmentShader > |
using | BorderMaskBlurPipeline = RenderPipelineHandle< FilterPositionUvVertexShader, BorderMaskBlurFragmentShader > |
using | MorphologyFilterPipeline = RenderPipelineHandle< FilterPositionUvVertexShader, MorphologyFilterFragmentShader > |
using | ColorMatrixColorFilterPipeline = RenderPipelineHandle< FilterPositionVertexShader, ColorMatrixColorFilterFragmentShader > |
using | LinearToSrgbFilterPipeline = RenderPipelineHandle< FilterPositionVertexShader, LinearToSrgbFilterFragmentShader > |
using | SrgbToLinearFilterPipeline = RenderPipelineHandle< FilterPositionVertexShader, SrgbToLinearFilterFragmentShader > |
using | YUVToRGBFilterPipeline = RenderPipelineHandle< FilterPositionVertexShader, YuvToRgbFilterFragmentShader > |
using | GlyphAtlasPipeline = RenderPipelineHandle< GlyphAtlasVertexShader, GlyphAtlasFragmentShader > |
using | PorterDuffBlendPipeline = RenderPipelineHandle< PorterDuffBlendVertexShader, PorterDuffBlendFragmentShader > |
using | ClipPipeline = RenderPipelineHandle< ClipVertexShader, ClipFragmentShader > |
using | BlendColorPipeline = RenderPipelineHandle< AdvancedBlendVertexShader, AdvancedBlendFragmentShader > |
using | BlendColorBurnPipeline = RenderPipelineHandle< AdvancedBlendVertexShader, AdvancedBlendFragmentShader > |
using | BlendColorDodgePipeline = RenderPipelineHandle< AdvancedBlendVertexShader, AdvancedBlendFragmentShader > |
using | BlendDarkenPipeline = RenderPipelineHandle< AdvancedBlendVertexShader, AdvancedBlendFragmentShader > |
using | BlendDifferencePipeline = RenderPipelineHandle< AdvancedBlendVertexShader, AdvancedBlendFragmentShader > |
using | BlendExclusionPipeline = RenderPipelineHandle< AdvancedBlendVertexShader, AdvancedBlendFragmentShader > |
using | BlendHardLightPipeline = RenderPipelineHandle< AdvancedBlendVertexShader, AdvancedBlendFragmentShader > |
using | BlendHuePipeline = RenderPipelineHandle< AdvancedBlendVertexShader, AdvancedBlendFragmentShader > |
using | BlendLightenPipeline = RenderPipelineHandle< AdvancedBlendVertexShader, AdvancedBlendFragmentShader > |
using | BlendLuminosityPipeline = RenderPipelineHandle< AdvancedBlendVertexShader, AdvancedBlendFragmentShader > |
using | BlendMultiplyPipeline = RenderPipelineHandle< AdvancedBlendVertexShader, AdvancedBlendFragmentShader > |
using | BlendOverlayPipeline = RenderPipelineHandle< AdvancedBlendVertexShader, AdvancedBlendFragmentShader > |
using | BlendSaturationPipeline = RenderPipelineHandle< AdvancedBlendVertexShader, AdvancedBlendFragmentShader > |
using | BlendScreenPipeline = RenderPipelineHandle< AdvancedBlendVertexShader, AdvancedBlendFragmentShader > |
using | BlendSoftLightPipeline = RenderPipelineHandle< AdvancedBlendVertexShader, AdvancedBlendFragmentShader > |
using | FramebufferBlendColorPipeline = RenderPipelineHandle< FramebufferBlendVertexShader, FramebufferBlendFragmentShader > |
using | FramebufferBlendColorBurnPipeline = RenderPipelineHandle< FramebufferBlendVertexShader, FramebufferBlendFragmentShader > |
using | FramebufferBlendColorDodgePipeline = RenderPipelineHandle< FramebufferBlendVertexShader, FramebufferBlendFragmentShader > |
using | FramebufferBlendDarkenPipeline = RenderPipelineHandle< FramebufferBlendVertexShader, FramebufferBlendFragmentShader > |
using | FramebufferBlendDifferencePipeline = RenderPipelineHandle< FramebufferBlendVertexShader, FramebufferBlendFragmentShader > |
using | FramebufferBlendExclusionPipeline = RenderPipelineHandle< FramebufferBlendVertexShader, FramebufferBlendFragmentShader > |
using | FramebufferBlendHardLightPipeline = RenderPipelineHandle< FramebufferBlendVertexShader, FramebufferBlendFragmentShader > |
using | FramebufferBlendHuePipeline = RenderPipelineHandle< FramebufferBlendVertexShader, FramebufferBlendFragmentShader > |
using | FramebufferBlendLightenPipeline = RenderPipelineHandle< FramebufferBlendVertexShader, FramebufferBlendFragmentShader > |
using | FramebufferBlendLuminosityPipeline = RenderPipelineHandle< FramebufferBlendVertexShader, FramebufferBlendFragmentShader > |
using | FramebufferBlendMultiplyPipeline = RenderPipelineHandle< FramebufferBlendVertexShader, FramebufferBlendFragmentShader > |
using | FramebufferBlendOverlayPipeline = RenderPipelineHandle< FramebufferBlendVertexShader, FramebufferBlendFragmentShader > |
using | FramebufferBlendSaturationPipeline = RenderPipelineHandle< FramebufferBlendVertexShader, FramebufferBlendFragmentShader > |
using | FramebufferBlendScreenPipeline = RenderPipelineHandle< FramebufferBlendVertexShader, FramebufferBlendFragmentShader > |
using | FramebufferBlendSoftLightPipeline = RenderPipelineHandle< FramebufferBlendVertexShader, FramebufferBlendFragmentShader > |
using | VerticesUberShader = RenderPipelineHandle< PorterDuffBlendVertexShader, VerticesUberFragmentShader > |
Draw Vertices/Atlas Uber Shader. More... | |
using | PipelineProc = std::shared_ptr< Pipeline< PipelineDescriptor > >(ContentContext::*)(ContentContextOptions) const |
using | GaussianBlurVertexShader = GaussianBlurPipeline::VertexShader |
using | GaussianBlurFragmentShader = GaussianBlurPipeline::FragmentShader |
using | VS = SolidFillVertexShader |
using | PathComponentVariant = std::variant< std::monostate, const LinearPathComponent *, const QuadraticPathComponent *, const CubicPathComponent * > |
using | Point = TPoint< Scalar > |
using | IPoint = TPoint< int64_t > |
using | IPoint32 = TPoint< int32_t > |
using | UintPoint32 = TPoint< uint32_t > |
using | Vector2 = Point |
using | Quad = std::array< Point, 4 > |
using | Rect = TRect< Scalar > |
using | IRect32 = TRect< int32_t > |
using | IRect64 = TRect< int64_t > |
using | IRect = IRect64 |
using | Scalar = float |
using | Size = TSize< Scalar > |
using | ISize32 = TSize< int32_t > |
using | ISize64 = TSize< int64_t > |
using | ISize = ISize64 |
template<class F , class I > | |
using | MixedOp = typename MixedOp_< F, I >::type |
using | Callback = std::function< void(MTLRenderPipelineDescriptor *)> |
using | AHBProperties = vk::StructureChain< vk::AndroidHardwareBufferPropertiesANDROID, vk::AndroidHardwareBufferFormatPropertiesANDROID > |
using | CommandPoolMap = std::unordered_map< uint64_t, std::shared_ptr< CommandPoolVK > > |
using | WaitSet = std::vector< std::shared_ptr< WaitSetEntry > > |
template<class T > | |
using | SharedHandleVK = std::shared_ptr< SharedObjectVKT< T > > |
using | UniqueAllocatorVMA = fml::UniqueObject< VmaAllocator, AllocatorVMATraits > |
using | UniquePoolVMA = fml::UniqueObject< PoolVMA, PoolVMATraits > |
using | UniqueBufferVMA = fml::UniqueObject< BufferVMA, BufferVMATraits > |
using | UniqueImageVMA = fml::UniqueObject< ImageVMA, ImageVMATraits > |
using | YUVConversionDescriptorVK = vk::StructureChain< vk::SamplerYcbcrConversionCreateInfo > |
using | BufferResource = Resource< BufferView > |
using | TextureResource = Resource< std::shared_ptr< const Texture > > |
using | PipelineMap = std::unordered_map< PipelineDescriptor, PipelineFuture< PipelineDescriptor >, ComparableHash< PipelineDescriptor >, ComparableEqual< PipelineDescriptor > > |
using | ComputePipelineMap = std::unordered_map< ComputePipelineDescriptor, PipelineFuture< ComputePipelineDescriptor >, ComparableHash< ComputePipelineDescriptor >, ComparableEqual< ComputePipelineDescriptor > > |
using | ShaderFunctionMap = std::unordered_map< ShaderKey, std::shared_ptr< const ShaderFunction >, ShaderKey::Hash, ShaderKey::Equal > |
using | TessellatedVertexProc = Tessellator::TessellatedVertexProc |
using | EllipticalVertexGenerator = Tessellator::EllipticalVertexGenerator |
using | CTessellator = std::unique_ptr< TESStesselator, decltype(&DestroyTessellator)> |
using | UniqueEGLImage = fml::UniqueObject< EGLImageWithDisplay, EGLImageWithDisplayTraits > |
using | UniqueEGLImageKHR = fml::UniqueObject< EGLImageKHRWithDisplay, EGLImageKHRWithDisplayTraits > |
using | UniqueGLTexture = fml::UniqueObject< GLTexture, GLTextureTraits > |
using | FontGlyphMap = std::unordered_map< ScaledFont, std::unordered_set< SubpixelGlyph > > |
Functions | |
static bool | UseColorSourceContents (const std::shared_ptr< VerticesGeometry > &vertices, const Paint &paint) |
template<class... Args> | |
static void | BM_CanvasRecord (benchmark::State &state, Args &&... args) |
BENCHMARK_CAPTURE (BM_CanvasRecord, draw_rect, &DrawRect) | |
BENCHMARK_CAPTURE (BM_CanvasRecord, draw_circle, &DrawCircle) | |
BENCHMARK_CAPTURE (BM_CanvasRecord, draw_line, &DrawLine) | |
static std::unique_ptr< EntityPassTarget > | CreateRenderTarget (ContentContext &renderer, ISize size, int mip_count, const Color &clear_color) |
std::shared_ptr< fml::Mapping > | CreateMappingWithCopy (const uint8_t *contents, size_t length) |
std::shared_ptr< fml::Mapping > | CreateMappingFromAllocation (const std::shared_ptr< Allocation > &allocation) |
std::shared_ptr< fml::Mapping > | CreateMappingWithString (std::string string) |
std::shared_ptr< fml::Mapping > | CreateMappingWithString (std::shared_ptr< const std::string > string) |
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 | ImpellerValidationBreak (const char *message) |
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 size_t | DefaultUniformAlignment () |
constexpr ShaderStage | ToShaderStage (RuntimeShaderStage stage) |
constexpr Vector4 | ToVector (Color color) |
std::string | TextureDescriptorToString (const TextureDescriptor &desc) |
constexpr const char * | CompressionTypeToString (CompressionType type) |
static BlendMode | ToBlendMode (flutter::DlBlendMode mode) |
static Entity::TileMode | ToTileMode (flutter::DlTileMode tile_mode) |
static impeller::SamplerDescriptor | ToSamplerDescriptor (const flutter::DlImageSampling options) |
static impeller::SamplerDescriptor | ToSamplerDescriptor (const flutter::DlFilterMode options) |
static Matrix | ToMatrix (const SkMatrix &m) |
static Paint::Style | ToStyle (flutter::DlDrawStyle style) |
static std::vector< Color > | ToColors (const flutter::DlColor colors[], int count) |
static std::optional< ColorSource::Type > | ToColorSourceType (flutter::DlColorSourceType type) |
static std::shared_ptr< ColorFilter > | ToColorFilter (const flutter::DlColorFilter *filter) |
static FilterContents::BlurStyle | ToBlurStyle (flutter::DlBlurStyle blur_style) |
static std::shared_ptr< ImageFilter > | ToImageFilter (const flutter::DlImageFilter *filter) |
static Entity::ClipOperation | ToClipOperation (flutter::DlCanvas::ClipOp clip_op) |
static bool | RequiresReadbackForBlends (const ContentContext &renderer, flutter::DlBlendMode max_root_blend_mode) |
static Rect | ToRect (const SkRect &rect) |
static VerticesGeometry::VertexMode | ToVertexMode (flutter::DlVertexMode mode) |
std::shared_ptr< impeller::VerticesGeometry > | MakeVertices (const flutter::DlVertices *vertices) |
static Scalar | GetShaderClipDepth (const Entity &entity) |
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) |
GaussianBlurPipeline::FragmentShader::KernelSamples | GenerateBlurInfo (BlurParameters parameters) |
GaussianBlurPipeline::FragmentShader::KernelSamples | LerpHackKernelSamples (GaussianBlurPipeline::FragmentShader::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... | |
static ShaderType | GetShaderType (RuntimeUniformType type) |
static std::shared_ptr< ShaderMetadata > | MakeShaderMetadata (const RuntimeUniformDescription &uniform) |
template<typename T > | |
T::VertInfo * | GetVertInfo (const Command &command) |
Retrieve the [VertInfo] struct data from the provided [command]. More... | |
template<typename T > | |
T::FragInfo * | GetFragInfo (const Command &command) |
Retrieve the [FragInfo] struct data from the provided [command]. More... | |
static std::optional< SamplerAddressMode > | TileModeToAddressMode (Entity::TileMode tile_mode, const Capabilities &capabilities) |
static EntityPassTarget | CreateRenderTarget (ContentContext &renderer, ISize size, int mip_count, const Color &clear_color) |
static void | SetClipScissor (std::optional< Rect > clip_coverage, RenderPass &pass, Point global_pass_position) |
static std::vector< uint16_t > | fromFanIndices (const std::vector< Point > &vertices, const std::vector< uint16_t > &indices) |
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 constexpr Color | DoColorBlend (Color dst, Color src, const std::function< Vector3(Vector3, Vector3)> &blend_rgb_func) |
static constexpr 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_Polyline (benchmark::State &state, Args &&... args) |
template<class... Args> | |
static void | BM_StrokePolyline (benchmark::State &state, Args &&... args) |
template<class... Args> | |
static void | BM_Convex (benchmark::State &state, Args &&... args) |
BENCHMARK_CAPTURE (BM_Polyline, cubic_polyline, CreateCubic(true)) | |
BENCHMARK_CAPTURE (BM_Polyline, unclosed_cubic_polyline, CreateCubic(false)) | |
MAKE_STROKE_BENCHMARK_CAPTURE_ALL_CAPS_JOINS (Cubic, false) | |
BENCHMARK_CAPTURE (BM_Polyline, quad_polyline, CreateQuadratic(true)) | |
BENCHMARK_CAPTURE (BM_Polyline, unclosed_quad_polyline, CreateQuadratic(false)) | |
MAKE_STROKE_BENCHMARK_CAPTURE_ALL_CAPS_JOINS (Quadratic, false) | |
BENCHMARK_CAPTURE (BM_Convex, rrect_convex, CreateRRect(), true) | |
MAKE_STROKE_BENCHMARK_CAPTURE (RRect, Butt, Bevel,) | |
MAKE_STROKE_BENCHMARK_CAPTURE (RRect, Butt, Miter,) | |
MAKE_STROKE_BENCHMARK_CAPTURE (RRect, 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... | |
static Scalar | LinearSolve (Scalar t, Scalar p0, Scalar p1) |
static Scalar | QuadraticSolve (Scalar t, Scalar p0, Scalar p1, Scalar p2) |
static Scalar | QuadraticSolveDerivative (Scalar t, Scalar p0, Scalar p1, Scalar p2) |
static Scalar | CubicSolve (Scalar t, Scalar p0, Scalar p1, Scalar p2, Scalar p3) |
static Scalar | CubicSolveDerivative (Scalar t, Scalar p0, Scalar p1, Scalar p2, Scalar p3) |
static bool | NearEqual (Scalar a, Scalar b, Scalar epsilon) |
static bool | NearZero (Scalar a) |
static void | CubicPathBoundingPopulateValues (std::vector< Scalar > &values, Scalar p1, Scalar p2, Scalar p3, Scalar p4) |
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 , class = std::enable_if_t<std::is_arithmetic_v<T>>> | |
constexpr T | Absolute (const T &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 | ComputeQuadradicSubdivisions (Scalar scale_factor, const QuadraticPathComponent &quad) |
Scalar | ComputeCubicSubdivisions (float scale_factor, const CubicPathComponent &cub) |
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 std::shared_ptr< Allocator > &transients_allocator, 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, const std::string &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) |
void() | glClearDepthf (GLfloat depth) |
void() | glDepthRangef (GLfloat n, GLfloat f) |
void() | glClearDepth (GLdouble depth) |
void() | glDepthRange (GLdouble n, GLdouble f) |
static std::optional< GLuint > | CreateGLHandle (const ProcTableGLES &gl, HandleType type) |
static bool | CollectGLHandle (const ProcTableGLES &gl, HandleType type, GLuint handle) |
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) |
bool | EncodeCommandsInReactor (const RenderPassData &pass_data, const std::shared_ptr< Allocator > &transients_allocator, const ReactorGLES &reactor, const std::vector< Command > &commands, 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) |
static bool | DeviceSupportsDeviceTransientTargets (id< MTLDevice > device) |
static bool | DeviceHasUnifiedMemoryArchitecture (id< MTLDevice > device) |
static ISize | DeviceMaxTextureSizeSupported (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 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) |
std::shared_future< id< CAMetalDrawable > > | GetDrawableDeferred (CAMetalLayer *layer) |
Create a deferred drawable from a CAMetalLayer. More... | |
std::shared_ptr< TextureMTL > | CreateTextureFromDrawableFuture (TextureDescriptor desc, const std::shared_future< id< CAMetalDrawable > > &drawble_future) |
Create a TextureMTL from a deferred drawable. More... | |
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, const std::unique_ptr< const Sampler > &sampler, const Texture &texture) |
static MTLFunctionType | ToMTLFunctionType (ShaderStage stage) |
static std::optional< RenderTarget > | WrapTextureWithRenderTarget (Allocator &allocator, 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 vk::UniqueImage | CreateVKImageWrapperForAndroidHarwareBuffer (const vk::Device &device, const AHBProperties &ahb_props, const AHardwareBuffer_Desc &ahb_desc) |
static vk::UniqueDeviceMemory | ImportVKDeviceMemoryFromAndroidHarwareBuffer (const vk::Device &device, const vk::PhysicalDevice &physical_device, const vk::Image &image, struct AHardwareBuffer *hardware_buffer, const AHBProperties &ahb_props) |
static std::shared_ptr< YUVConversionVK > | CreateYUVConversion (const ContextVK &context, const AHBProperties &ahb_props) |
static vk::UniqueImageView | CreateVKImageView (const vk::Device &device, const vk::Image &image, const vk::SamplerYcbcrConversion &yuv_conversion, const AHBProperties &ahb_props, const AHardwareBuffer_Desc &ahb_desc) |
static PixelFormat | ToPixelFormat (AHardwareBuffer_Format format) |
static TextureType | ToTextureType (const AHardwareBuffer_Desc &ahb_desc) |
static TextureDescriptor | ToTextureDescriptor (const AHardwareBuffer_Desc &ahb_desc) |
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 (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< const ContextVK *, std::vector< 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 VkDebugUtilsLabelEXT *labels, size_t count) |
static std::string | JoinVKDebugUtilsObjectNameInfoEXT (const VkDebugUtilsObjectNameInfoEXT *names, size_t count) |
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 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 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) |
static bool | VerifyExistingCache (const fml::Mapping &mapping, const CapabilitiesVK &caps) |
static std::shared_ptr< fml::Mapping > | DecorateCacheWithMetadata (std::shared_ptr< fml::Mapping > data) |
static std::unique_ptr< fml::Mapping > | RemoveMetadataFromCache (std::unique_ptr< fml::Mapping > data) |
static std::unique_ptr< fml::Mapping > | OpenCacheFile (const fml::UniqueFD &base_directory, const std::string &cache_file_name, const CapabilitiesVK &caps) |
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 std::vector< vk::ClearValue > | GetVKClearValues (const RenderTarget &target) |
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) |
PipelineFuture< PipelineDescriptor > | CreatePipelineFuture (const Context &context, std::optional< PipelineDescriptor > desc) |
PipelineFuture< ComputePipelineDescriptor > | CreatePipelineFuture (const Context &context, std::optional< ComputePipelineDescriptor > desc) |
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... | |
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 size_t | ComputeQuadrantDivisions (Scalar pixel_radius) |
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 AxisAlignment | ToAxisAligment (SkAxisAlignment aligment) |
Convert a Skia axis alignment into an Impeller alignment. More... | |
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 void | DrawGlyph (SkCanvas *canvas, const ScaledFont &scaled_font, const SubpixelGlyph &glyph, const Rect &scaled_bounds, const GlyphProperties &prop, bool has_color) |
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) |
std::shared_ptr< TextFrame > | MakeTextFrameSTB (const std::shared_ptr< TypefaceSTB > &typeface_stb, Font::Metrics metrics, const std::string &text) |
static size_t | PairsFitInAtlasOfSize (const std::vector< FontGlyphPair > &pairs, const ISize &atlas_size, std::vector< Rect > &glyph_positions, const std::shared_ptr< RectanglePacker > &rect_packer) |
static bool | CanAppendToExistingAtlas (const std::shared_ptr< GlyphAtlas > &atlas, const std::vector< FontGlyphPair > &extra_pairs, std::vector< Rect > &glyph_positions, ISize atlas_size, const std::shared_ptr< RectanglePacker > &rect_packer) |
static ISize | OptimumAtlasSizeForFontGlyphPairs (const std::vector< FontGlyphPair > &pairs, std::vector< Rect > &glyph_positions, const std::shared_ptr< GlyphAtlasContext > &atlas_context, GlyphAtlas::Type type, const ISize &max_texture_size) |
static void | DrawGlyph (BitmapSTB *bitmap, const ScaledFont &scaled_font, const Glyph &glyph, const Rect &location, bool has_color) |
static bool | UpdateAtlasBitmap (const GlyphAtlas &atlas, const std::shared_ptr< BitmapSTB > &bitmap, const std::vector< FontGlyphPair > &new_pairs) |
static std::shared_ptr< BitmapSTB > | CreateAtlasBitmap (const GlyphAtlas &atlas, const ISize &atlas_size) |
static bool | UpdateGlyphTextureAtlas (std::shared_ptr< BitmapSTB > &bitmap, const std::shared_ptr< Allocator > &allocator, std::shared_ptr< BlitPass > &blit_pass, const std::shared_ptr< Texture > &texture) |
static std::shared_ptr< Texture > | UploadGlyphTextureAtlas (const std::shared_ptr< Allocator > &allocator, std::shared_ptr< BlitPass > &blit_pass, std::shared_ptr< BitmapSTB > &bitmap, const ISize &atlas_size, PixelFormat format) |
static Rect | ComputeGlyphSize (const ScaledFont &font, const SubpixelGlyph &glyph) |
static constexpr Scalar | ComputeFractionalPosition (Scalar value) |
Variables | |
static const constexpr RenderTarget::AttachmentConfig | kDefaultStencilConfig |
constexpr ColorMatrix | kColorInversion |
A color matrix which inverts colors. More... | |
static std::atomic_size_t | sLastID |
static std::atomic_int32_t | sValidationLogsDisabledCount = 0 |
static std::atomic_int32_t | sValidationLogsAreFatal = 0 |
constexpr size_t | kAllocatorBlockSize = 1024000 |
static const constexpr size_t | kHostBufferArenaSize = 3u |
Approximately the same size as the max frames in flight. More... | |
constexpr std::array< std::array< Scalar, 5 >, 15 > | kPorterDuffCoefficients |
constexpr Matrix | kMatrixBT601LimitedRange |
constexpr Matrix | kMatrixBT601FullRange |
static const constexpr RenderTarget::AttachmentConfig | kDefaultStencilConfig |
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 | kPhi = 1.61803398874989484820f |
constexpr float | kEhCloseEnough = 1e-3f |
static TessellatorLibtess | tess |
static constexpr float | kKernelRadiusPerSigma = 1.73205080757 |
static const std::vector< std::string > | kSkipTests |
static std::atomic_bool | gShouldOpenNewPlaygrounds = true |
static constexpr std::string_view | kAngleInputAttachmentPrefix |
static const constexpr char * | kFramebufferFetchExt |
static const constexpr char * | kTextureBorderClampExt |
static const constexpr char * | kNvidiaTextureBorderClampExt |
static const constexpr char * | kMultisampledRenderToTextureExt |
static const std::unique_ptr< const Sampler > | kNullSampler = nullptr |
static const std::unique_ptr< const Sampler > | kNullSampler = nullptr |
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 const constexpr DescriptorPoolSize | kDefaultBindingSize |
Descriptor pools are always allocated with the following sizes. More... | |
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 | kMagicSubpassInputBinding = 64u |
static const std::unique_ptr< const Sampler > | kNullSampler = nullptr |
static constexpr const size_t | kMaxPendingPresents = 3u |
static constexpr size_t | kMaxFramesInFlight = 3u |
static constexpr size_t | kPollFramesForOrientation = 1u |
static constexpr int | kPrecomputedDivisionCount = 1024 |
static int | kPrecomputedDivisions [kPrecomputedDivisionCount] |
static const TESSalloc | kAlloc |
constexpr auto | kPadding = 2 |
static const std::shared_ptr< GlyphAtlas > | kNullGlyphAtlas = nullptr |
using impeller::AHBProperties = typedef vk::StructureChain< vk::AndroidHardwareBufferPropertiesANDROID, vk::AndroidHardwareBufferFormatPropertiesANDROID> |
Definition at line 14 of file ahb_texture_source_vk.cc.
using impeller::BlendColorBurnPipeline = typedef RenderPipelineHandle<AdvancedBlendVertexShader, AdvancedBlendFragmentShader> |
Definition at line 151 of file content_context.h.
using impeller::BlendColorDodgePipeline = typedef RenderPipelineHandle<AdvancedBlendVertexShader, AdvancedBlendFragmentShader> |
Definition at line 154 of file content_context.h.
using impeller::BlendColorPipeline = typedef RenderPipelineHandle<AdvancedBlendVertexShader, AdvancedBlendFragmentShader> |
Definition at line 149 of file content_context.h.
using impeller::BlendDarkenPipeline = typedef RenderPipelineHandle<AdvancedBlendVertexShader, AdvancedBlendFragmentShader> |
Definition at line 157 of file content_context.h.
using impeller::BlendDifferencePipeline = typedef RenderPipelineHandle<AdvancedBlendVertexShader, AdvancedBlendFragmentShader> |
Definition at line 159 of file content_context.h.
using impeller::BlendExclusionPipeline = typedef RenderPipelineHandle<AdvancedBlendVertexShader, AdvancedBlendFragmentShader> |
Definition at line 162 of file content_context.h.
using impeller::BlendHardLightPipeline = typedef RenderPipelineHandle<AdvancedBlendVertexShader, AdvancedBlendFragmentShader> |
Definition at line 165 of file content_context.h.
using impeller::BlendHuePipeline = typedef RenderPipelineHandle<AdvancedBlendVertexShader, AdvancedBlendFragmentShader> |
Definition at line 168 of file content_context.h.
using impeller::BlendLightenPipeline = typedef RenderPipelineHandle<AdvancedBlendVertexShader, AdvancedBlendFragmentShader> |
Definition at line 170 of file content_context.h.
using impeller::BlendLuminosityPipeline = typedef RenderPipelineHandle<AdvancedBlendVertexShader, AdvancedBlendFragmentShader> |
Definition at line 172 of file content_context.h.
using impeller::BlendMultiplyPipeline = typedef RenderPipelineHandle<AdvancedBlendVertexShader, AdvancedBlendFragmentShader> |
Definition at line 175 of file content_context.h.
using impeller::BlendOverlayPipeline = typedef RenderPipelineHandle<AdvancedBlendVertexShader, AdvancedBlendFragmentShader> |
Definition at line 177 of file content_context.h.
using impeller::BlendSaturationPipeline = typedef RenderPipelineHandle<AdvancedBlendVertexShader, AdvancedBlendFragmentShader> |
Definition at line 179 of file content_context.h.
using impeller::BlendScreenPipeline = typedef RenderPipelineHandle<AdvancedBlendVertexShader, AdvancedBlendFragmentShader> |
Definition at line 182 of file content_context.h.
using impeller::BlendSoftLightPipeline = typedef RenderPipelineHandle<AdvancedBlendVertexShader, AdvancedBlendFragmentShader> |
Definition at line 184 of file content_context.h.
using impeller::BorderMaskBlurPipeline = typedef RenderPipelineHandle<FilterPositionUvVertexShader, BorderMaskBlurFragmentShader> |
Definition at line 121 of file content_context.h.
using impeller::BufferResource = typedef Resource<BufferView> |
using impeller::Callback = typedef std::function<void(MTLRenderPipelineDescriptor*)> |
Definition at line 26 of file pipeline_library_mtl.mm.
using impeller::ClipPipeline = typedef RenderPipelineHandle<ClipVertexShader, ClipFragmentShader> |
Definition at line 146 of file content_context.h.
using impeller::Clock = typedef std::chrono::high_resolution_clock |
using impeller::ColorMatrixColorFilterPipeline = typedef RenderPipelineHandle<FilterPositionVertexShader, ColorMatrixColorFilterFragmentShader> |
Definition at line 127 of file content_context.h.
using impeller::ColorSourceData = typedef std::variant<LinearGradientData, RadialGradientData, ConicalGradientData, SweepGradientData, ImageData, RuntimeEffectData, std::monostate> |
Definition at line 88 of file color_source.h.
using impeller::ColorWriteMask = typedef Mask<ColorWriteMaskBits> |
using impeller::CommandPoolMap = typedef std::unordered_map<uint64_t, std::shared_ptr<CommandPoolVK> > |
Definition at line 159 of file command_pool_vk.cc.
using impeller::ComputePipelineMap = typedef std::unordered_map<ComputePipelineDescriptor, PipelineFuture<ComputePipelineDescriptor>, ComparableHash<ComputePipelineDescriptor>, ComparableEqual<ComputePipelineDescriptor> > |
Definition at line 23 of file pipeline_library.h.
using impeller::ConicalGradientFillPipeline = typedef RenderPipelineHandle<GradientFillVertexShader, ConicalGradientFillFragmentShader> |
Definition at line 91 of file content_context.h.
using impeller::ConicalGradientSSBOFillPipeline = typedef RenderPipelineHandle<GradientFillVertexShader, ConicalGradientSsboFillFragmentShader> |
Definition at line 100 of file content_context.h.
using impeller::CTessellator = typedef std::unique_ptr<TESStesselator, decltype(&DestroyTessellator)> |
Definition at line 19 of file tessellator_libtess.h.
using impeller::DlPoint = typedef flutter::DlPoint |
Definition at line 21 of file dl_dispatcher.h.
using impeller::DlScalar = typedef flutter::DlScalar |
Definition at line 20 of file dl_dispatcher.h.
Definition at line 224 of file tessellator.cc.
using impeller::FastGradientPipeline = typedef RenderPipelineHandle<FastGradientVertexShader, FastGradientFragmentShader> |
Definition at line 81 of file content_context.h.
using impeller::FontGlyphMap = typedef std::unordered_map<ScaledFont, std::unordered_set<SubpixelGlyph> > |
Definition at line 53 of file font_glyph_pair.h.
using impeller::FramebufferBlendColorBurnPipeline = typedef RenderPipelineHandle<FramebufferBlendVertexShader, FramebufferBlendFragmentShader> |
Definition at line 191 of file content_context.h.
using impeller::FramebufferBlendColorDodgePipeline = typedef RenderPipelineHandle<FramebufferBlendVertexShader, FramebufferBlendFragmentShader> |
Definition at line 194 of file content_context.h.
using impeller::FramebufferBlendColorPipeline = typedef RenderPipelineHandle<FramebufferBlendVertexShader, FramebufferBlendFragmentShader> |
Definition at line 188 of file content_context.h.
using impeller::FramebufferBlendDarkenPipeline = typedef RenderPipelineHandle<FramebufferBlendVertexShader, FramebufferBlendFragmentShader> |
Definition at line 197 of file content_context.h.
using impeller::FramebufferBlendDifferencePipeline = typedef RenderPipelineHandle<FramebufferBlendVertexShader, FramebufferBlendFragmentShader> |
Definition at line 200 of file content_context.h.
using impeller::FramebufferBlendExclusionPipeline = typedef RenderPipelineHandle<FramebufferBlendVertexShader, FramebufferBlendFragmentShader> |
Definition at line 203 of file content_context.h.
using impeller::FramebufferBlendHardLightPipeline = typedef RenderPipelineHandle<FramebufferBlendVertexShader, FramebufferBlendFragmentShader> |
Definition at line 206 of file content_context.h.
using impeller::FramebufferBlendHuePipeline = typedef RenderPipelineHandle<FramebufferBlendVertexShader, FramebufferBlendFragmentShader> |
Definition at line 209 of file content_context.h.
using impeller::FramebufferBlendLightenPipeline = typedef RenderPipelineHandle<FramebufferBlendVertexShader, FramebufferBlendFragmentShader> |
Definition at line 212 of file content_context.h.
using impeller::FramebufferBlendLuminosityPipeline = typedef RenderPipelineHandle<FramebufferBlendVertexShader, FramebufferBlendFragmentShader> |
Definition at line 215 of file content_context.h.
using impeller::FramebufferBlendMultiplyPipeline = typedef RenderPipelineHandle<FramebufferBlendVertexShader, FramebufferBlendFragmentShader> |
Definition at line 218 of file content_context.h.
using impeller::FramebufferBlendOverlayPipeline = typedef RenderPipelineHandle<FramebufferBlendVertexShader, FramebufferBlendFragmentShader> |
Definition at line 221 of file content_context.h.
using impeller::FramebufferBlendSaturationPipeline = typedef RenderPipelineHandle<FramebufferBlendVertexShader, FramebufferBlendFragmentShader> |
Definition at line 224 of file content_context.h.
using impeller::FramebufferBlendScreenPipeline = typedef RenderPipelineHandle<FramebufferBlendVertexShader, FramebufferBlendFragmentShader> |
Definition at line 227 of file content_context.h.
using impeller::FramebufferBlendSoftLightPipeline = typedef RenderPipelineHandle<FramebufferBlendVertexShader, FramebufferBlendFragmentShader> |
Definition at line 230 of file content_context.h.
Definition at line 20 of file gaussian_blur_filter_contents.cc.
using impeller::GaussianBlurPipeline = typedef RenderPipelineHandle<FilterPositionUvVertexShader, GaussianFragmentShader> |
Definition at line 119 of file content_context.h.
using impeller::GaussianBlurVertexShader = typedef GaussianBlurPipeline::VertexShader |
Definition at line 19 of file gaussian_blur_filter_contents.cc.
using impeller::GlyphAtlasPipeline = typedef RenderPipelineHandle<GlyphAtlasVertexShader, GlyphAtlasFragmentShader> |
Definition at line 140 of file content_context.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::LinearGradientFillPipeline = typedef RenderPipelineHandle<GradientFillVertexShader, LinearGradientFillFragmentShader> |
Definition at line 83 of file content_context.h.
using impeller::LinearGradientSSBOFillPipeline = typedef RenderPipelineHandle<GradientFillVertexShader, LinearGradientSsboFillFragmentShader> |
Definition at line 97 of file content_context.h.
using impeller::LinearToSrgbFilterPipeline = typedef RenderPipelineHandle<FilterPositionVertexShader, LinearToSrgbFilterFragmentShader> |
Definition at line 130 of file content_context.h.
using impeller::MillisecondsF = typedef std::chrono::duration<float, std::milli> |
Definition at line 19 of file type_traits.h.
using impeller::MorphologyFilterPipeline = typedef RenderPipelineHandle<FilterPositionUvVertexShader, MorphologyFilterFragmentShader> |
Definition at line 124 of file content_context.h.
using impeller::MyMask = typedef Mask<MyMaskBits> |
Definition at line 20 of file base_unittests.cc.
using impeller::PathComponentVariant = typedef std::variant<std::monostate, const LinearPathComponent*, const QuadraticPathComponent*, const CubicPathComponent*> |
Definition at line 165 of file path_component.h.
using impeller::PipelineMap = typedef std::unordered_map<PipelineDescriptor, PipelineFuture<PipelineDescriptor>, ComparableHash<PipelineDescriptor>, ComparableEqual<PipelineDescriptor> > |
Definition at line 18 of file pipeline_library.h.
using impeller::PipelineProc = typedef std::shared_ptr<Pipeline<PipelineDescriptor> > ( ContentContext::*)(ContentContextOptions) const |
Definition at line 72 of file blend_filter_contents.cc.
using impeller::Point = typedef TPoint<Scalar> |
using impeller::PorterDuffBlendPipeline = typedef RenderPipelineHandle<PorterDuffBlendVertexShader, PorterDuffBlendFragmentShader> |
Definition at line 143 of file content_context.h.
using impeller::Quad = typedef std::array<Point, 4> |
using impeller::RadialGradientFillPipeline = typedef RenderPipelineHandle<GradientFillVertexShader, RadialGradientFillFragmentShader> |
Definition at line 88 of file content_context.h.
using impeller::RadialGradientSSBOFillPipeline = typedef RenderPipelineHandle<GradientFillVertexShader, RadialGradientSsboFillFragmentShader> |
Definition at line 103 of file content_context.h.
using impeller::Rect = typedef TRect<Scalar> |
using impeller::RRectBlurPipeline = typedef RenderPipelineHandle<RrectBlurVertexShader, RrectBlurFragmentShader> |
Definition at line 109 of file content_context.h.
using impeller::SamplerMap = typedef std::unordered_map<SamplerDescriptor, std::unique_ptr<const Sampler>, ComparableHash<SamplerDescriptor>, ComparableEqual<SamplerDescriptor> > |
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 86 of file content_context.h.
using impeller::SrgbToLinearFilterPipeline = typedef RenderPipelineHandle<FilterPositionVertexShader, SrgbToLinearFilterFragmentShader> |
Definition at line 133 of file content_context.h.
using impeller::SweepGradientFillPipeline = typedef RenderPipelineHandle<GradientFillVertexShader, SweepGradientFillFragmentShader> |
Definition at line 94 of file content_context.h.
using impeller::SweepGradientSSBOFillPipeline = typedef RenderPipelineHandle<GradientFillVertexShader, SweepGradientSsboFillFragmentShader> |
Definition at line 106 of file content_context.h.
using impeller::TessellatedVertexProc = typedef Tessellator::TessellatedVertexProc |
Definition at line 223 of file tessellator.cc.
using impeller::TexturePipeline = typedef RenderPipelineHandle<TextureFillVertexShader, TextureFillFragmentShader> |
Definition at line 111 of file content_context.h.
using impeller::TextureResource = typedef Resource<std::shared_ptr<const Texture> > |
using impeller::TextureStrictSrcPipeline = typedef RenderPipelineHandle<TextureFillVertexShader, TextureFillStrictSrcFragmentShader> |
Definition at line 113 of file content_context.h.
using impeller::TextureUsageMask = typedef Mask<TextureUsage> |
using impeller::TiledTexturePipeline = typedef RenderPipelineHandle<TextureUvFillVertexShader, TiledTextureFillFragmentShader> |
Definition at line 116 of file content_context.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::UniqueGLTexture = typedef fml::UniqueObject<GLTexture, GLTextureTraits> |
using impeller::UniqueImageVMA = typedef fml::UniqueObject<ImageVMA, ImageVMATraits> |
using impeller::UniquePoolVMA = typedef fml::UniqueObject<PoolVMA, PoolVMATraits> |
using impeller::Vector2 = typedef Point |
using impeller::VerticesUberShader = typedef RenderPipelineHandle<PorterDuffBlendVertexShader, VerticesUberFragmentShader> |
Draw Vertices/Atlas Uber Shader.
Definition at line 235 of file content_context.h.
using impeller::VS = typedef SolidFillVertexShader |
Definition at line 16 of file stroke_path_geometry.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 136 of file content_context.h.
|
strong |
Enumerator | |
---|---|
kVertex | |
kFragment | |
kCompute |
Definition at line 10 of file shader_archive_types.h.
|
strong |
Determines the axis along which there is subpixel positioning.
Enumerator | |
---|---|
kNone | |
kX | |
kY | |
kAll |
|
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 59 of file color.h.
|
strong |
Enumerator | |
---|---|
kAdd | |
kSubtract | |
kReverseSubtract |
|
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 |
|
strong |
|
strong |
Definition at line 546 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 18 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 28 of file entity_pass.h.
|
strong |
|
strong |
Enumerator | |
---|---|
kNone | |
kFrontFace | |
kBackFace |
|
strong |
Enumerator | |
---|---|
kTexture | |
kBuffer | |
kProgram | |
kShader | |
kRenderBuffer | |
kFrameBuffer |
Definition at line 219 of file proc_table_gles.h.
|
strong |
Enumerator | |
---|---|
kUniformBuffer | |
kStorageBuffer | |
kSampledImage | |
kImage | |
kSampler | |
kInputAttachment |
Definition at line 153 of file shader_types.h.
|
strong |
Definition at line 36 of file driver_info_vk.h.
|
strong |
|
strong |
Enumerator | |
---|---|
kUnknown | |
kTexture | |
kBuffer | |
kProgram | |
kRenderBuffer | |
kFrameBuffer |
Definition at line 18 of file handle_gles.h.
|
strong |
|
strong |
|
strong |
|
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 409 of file formats.h.
|
strong |
Options for selecting and filtering between mipmap levels.
Enumerator | |
---|---|
kBase | The texture is sampled as if it only had a single mipmap level. All samples are read from level 0. |
kNearest | The nearst mipmap level is selected. |
kLinear | Sample from the two nearest mip levels and linearly interpolate. If the filter falls between levels, both levels are sampled, and their results linearly interpolated between levels. |
Definition at line 419 of file formats.h.
|
strong |
|
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 |
kLast |
Definition at line 118 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 |
Enumerator | |
---|---|
kMetal | |
kOpenGLES | |
kVulkan |
Definition at line 27 of file playground.h.
|
strong |
|
strong |
|
strong |
Decides how backend draws pixels based on input vertices.
Enumerator | |
---|---|
kTriangle | Draws a triage for each separate set of three vertices. Vertices [A, B, C, D, E, F] will produce triages [ABC, DEF]. |
kTriangleStrip | Draws a triage for every adjacent three vertices. Vertices [A, B, C, D, E, F] will produce triages [ABC, BCD, CDE, DEF]. |
kLine | Draws a line for each separate set of two vertices. |
kLineStrip | Draws a continuous line that connect every input vertices |
kPoint | Draws a point at each input vertex. |
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 |
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 45 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 26 of file capabilities_vk.h.
|
strong |
Enumerator | |
---|---|
kVertex | |
kFragment | |
kCompute |
Definition at line 28 of file runtime_types.h.
|
strong |
Enumerator | |
---|---|
kSkSL | |
kMetal | |
kOpenGLES | |
kVulkan |
Definition at line 15 of file runtime_types.h.
Enumerator | |
---|---|
kFloat | |
kSampledImage | |
kStruct |
Definition at line 22 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 435 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 52 of file canvas.h.
|
strong |
Definition at line 565 of file formats.h.
|
strong |
Specified where the allocation resides and how it is used.
Definition at line 32 of file formats.h.
|
strong |
Enumerator | |
---|---|
kDontCare | |
kStore | |
kMultisampleResolve | |
kStoreAndMultisampleResolve |
Definition at line 208 of file formats.h.
|
strong |
Enumerator | |
---|---|
kUploadFromHost | |
kRenderToTexture |
Definition at line 327 of file formats.h.
|
strong |
Enumerator | |
---|---|
kTexture2D | |
kTexture2DMultisample | |
kTextureCube | |
kTextureExternalOES |
Definition at line 262 of file formats.h.
|
strong |
Enumerator | |
---|---|
kUnknown | |
kShaderRead | |
kShaderWrite | |
kRenderTarget |
Definition at line 300 of file formats.h.
|
strong |
Definition at line 13 of file driver_info_vk.h.
|
strong |
Enumerator | |
---|---|
kClockwise | |
kCounterClockwise |
|
strong |
|
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 11 of file texture_mipmap.cc.
|
static |
Handle inputs.
Render to texture.
Definition at line 76 of file blend_filter_contents.cc.
impeller::API_AVAILABLE | ( | ios(14.0) | , |
macos(11.0) | |||
) |
Definition at line 17 of file command_buffer_mtl.mm.
|
static |
|
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 104 of file typographer_context_skia.cc.
|
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 201 of file color.cc.
std::string impeller::AttachmentToString | ( | const Attachment & | attachment | ) |
Definition at line 104 of file formats.cc.
|
static |
Definition at line 229 of file proc_table_gles.cc.
impeller::BENCHMARK_CAPTURE | ( | BM_CanvasRecord | , |
draw_circle | , | ||
& | DrawCircle | ||
) |
impeller::BENCHMARK_CAPTURE | ( | BM_CanvasRecord | , |
draw_line | , | ||
& | DrawLine | ||
) |
impeller::BENCHMARK_CAPTURE | ( | BM_CanvasRecord | , |
draw_rect | , | ||
& | DrawRect | ||
) |
impeller::BENCHMARK_CAPTURE | ( | BM_Polyline | , |
cubic_polyline | , | ||
CreateCubic(true) | |||
) |
impeller::BENCHMARK_CAPTURE | ( | BM_Polyline | , |
quad_polyline | , | ||
CreateQuadratic(true) | |||
) |
impeller::BENCHMARK_CAPTURE | ( | BM_Polyline | , |
unclosed_cubic_polyline | , | ||
CreateCubic(false) | |||
) |
impeller::BENCHMARK_CAPTURE | ( | BM_Polyline | , |
unclosed_quad_polyline | , | ||
CreateQuadratic(false) | |||
) |
|
static |
Definition at line 189 of file render_pass_mtl.mm.
|
static |
Definition at line 211 of file render_pass_mtl.mm.
const char * impeller::BlendModeToString | ( | BlendMode | blend_mode | ) |
|
static |
Definition at line 42 of file canvas_benchmarks.cc.
|
static |
Definition at line 99 of file geometry_benchmarks.cc.
|
static |
Definition at line 43 of file geometry_benchmarks.cc.
|
static |
Definition at line 68 of file geometry_benchmarks.cc.
|
constexpr |
Definition at line 460 of file formats.h.
|
static |
Definition at line 102 of file typographer_context_stb.cc.
|
constexpr |
Definition at line 239 of file formats.h.
|
constexpr |
Definition at line 250 of file formats.h.
|
static |
Definition at line 100 of file khr_swapchain_impl_vk.cc.
|
static |
Definition at line 78 of file khr_swapchain_impl_vk.cc.
IMPELLER_API void impeller::Close | ( | PathBuilder * | builder | ) |
Definition at line 38 of file tessellator.cc.
|
static |
Definition at line 108 of file reactor_gles.cc.
std::string impeller::ColorAttachmentToString | ( | const ColorAttachment & | color | ) |
Definition at line 123 of file formats.cc.
std::string impeller::ColorToString | ( | const Color & | color | ) |
|
inlinestaticconstexpr |
|
constexpr |
Definition at line 23 of file texture_descriptor.h.
Scalar impeller::ComputeCubicSubdivisions | ( | float | scale_factor, |
const CubicPathComponent & | cub | ||
) |
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 47 of file wangs_formula.cc.
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.
|
static |
Definition at line 386 of file typographer_context_stb.cc.
|
static |
Definition at line 322 of file typographer_context_skia.cc.
|
static |
Definition at line 168 of file typographer_context_skia.cc.
Scalar impeller::ComputeQuadradicSubdivisions | ( | Scalar | scale_factor, |
const QuadraticPathComponent & | quad | ||
) |
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 42 of file wangs_formula.cc.
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.
|
static |
Definition at line 144 of file tessellator.cc.
|
static |
Definition at line 56 of file render_pass_mtl.mm.
void impeller::ConfigureBlending | ( | const ProcTableGLES & | gl, |
const ColorAttachmentDescriptor * | color | ||
) |
Definition at line 43 of file render_pass_gles.cc.
|
static |
Definition at line 73 of file render_pass_mtl.mm.
|
static |
Definition at line 83 of file render_pass_mtl.mm.
|
static |
Definition at line 25 of file blit_command_gles.cc.
|
static |
Definition at line 27 of file render_pass_mtl.mm.
void impeller::ConfigureStencil | ( | const ProcTableGLES & | gl, |
const PipelineDescriptor & | pipeline, | ||
uint32_t | stencil_reference | ||
) |
Definition at line 94 of file render_pass_gles.cc.
void impeller::ConfigureStencil | ( | GLenum | face, |
const ProcTableGLES & | gl, | ||
const StencilAttachmentDescriptor & | stencil, | ||
uint32_t | stencil_reference | ||
) |
Definition at line 76 of file render_pass_gles.cc.
|
static |
Definition at line 93 of file render_pass_mtl.mm.
|
static |
Definition at line 73 of file khr_swapchain_impl_vk.cc.
|
static |
Definition at line 291 of file typographer_context_stb.cc.
|
static |
Definition at line 55 of file allocator_vk.cc.
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 126 of file pipeline_vk.cc.
|
static |
Definition at line 225 of file content_context.cc.
|
static |
Definition at line 94 of file pipeline_library_mtl.mm.
|
static |
Definition at line 84 of file reactor_gles.cc.
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.
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 53 of file gradient_generator.cc.
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 16 of file gradient_generator.cc.
std::shared_ptr< fml::Mapping > impeller::CreateMappingFromAllocation | ( | const std::shared_ptr< Allocation > & | allocation | ) |
Definition at line 99 of file allocation.cc.
std::shared_ptr< fml::Mapping > impeller::CreateMappingWithCopy | ( | const uint8_t * | contents, |
size_t | length | ||
) |
Definition at line 83 of file allocation.cc.
std::shared_ptr< fml::Mapping > impeller::CreateMappingWithString | ( | std::shared_ptr< const std::string > | string | ) |
std::shared_ptr< fml::Mapping > impeller::CreateMappingWithString | ( | std::string | string | ) |
Definition at line 211 of file context_mtl.mm.
|
static |
Definition at line 207 of file context_mtl.mm.
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 35 of file pipeline.cc.
PipelineFuture< PipelineDescriptor > impeller::CreatePipelineFuture | ( | const Context & | context, |
std::optional< PipelineDescriptor > | desc | ||
) |
Definition at line 24 of file pipeline.cc.
|
static |
All of the load/store actions are managed by InlinePassContext
when RenderPasses
are created, so we just set them to kDontCare
here. What's important is the StorageMode
of the textures, which cannot be changed for the lifetime of the textures.
Definition at line 55 of file experimental_canvas.cc.
|
static |
All of the load/store actions are managed by InlinePassContext
when RenderPasses
are created, so we just set them to kDontCare
here. What's important is the StorageMode
of the textures, which cannot be changed for the lifetime of the textures.
Definition at line 293 of file entity_pass.cc.
|
static |
Definition at line 14 of file sampler_vk.cc.
|
static |
Definition at line 399 of file playground.cc.
std::shared_ptr< TextureMTL > impeller::CreateTextureFromDrawableFuture | ( | TextureDescriptor | desc, |
const std::shared_future< id< CAMetalDrawable > > & | drawble_future | ||
) |
Create a TextureMTL from a deferred drawable.
This function is safe to call multiple times and will only call nextDrawable once.
Definition at line 41 of file lazy_drawable_holder.mm.
|
static |
Definition at line 84 of file buffer_bindings_gles.cc.
|
static |
Definition at line 68 of file buffer_bindings_gles.cc.
|
static |
Definition at line 175 of file ahb_texture_source_vk.cc.
|
static |
Definition at line 20 of file ahb_texture_source_vk.cc.
|
static |
Definition at line 141 of file ahb_texture_source_vk.cc.
|
static |
Definition at line 277 of file path_component.cc.
|
inlinestatic |
Definition at line 93 of file path_component.cc.
|
inlinestatic |
Definition at line 104 of file path_component.cc.
IMPELLER_API void impeller::CubicTo | ( | PathBuilder * | builder, |
Scalar | x1, | ||
Scalar | y1, | ||
Scalar | x2, | ||
Scalar | y2, | ||
Scalar | x3, | ||
Scalar | y3 | ||
) |
std::string impeller::DebugToFramebufferError | ( | int | status | ) |
Definition at line 9 of file formats_gles.cc.
|
static |
Definition at line 24 of file pipeline_cache_vk.cc.
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.
bool impeller::DeepComparePointer | ( | const std::shared_ptr< ComparableType > & | lhs, |
const std::shared_ptr< ComparableType > & | rhs | ||
) |
Definition at line 57 of file comparable.h.
|
constexpr |
Definition at line 14 of file platform.h.
|
static |
Definition at line 18 of file blit_command_gles.cc.
std::string impeller::DepthAttachmentToString | ( | const DepthAttachment & | depth | ) |
Definition at line 130 of file formats.cc.
|
static |
Definition at line 242 of file proc_table_gles.cc.
IMPELLER_API void impeller::DestroyPathBuilder | ( | PathBuilder * | builder | ) |
Definition at line 16 of file tessellator.cc.
void impeller::DestroyTessellator | ( | TESStesselator * | tessellator | ) |
Definition at line 163 of file tessellator_libtess.cc.
IMPELLER_API void impeller::DestroyVertices | ( | Vertices * | vertices | ) |
Definition at line 76 of file tessellator.cc.
|
static |
Definition at line 43 of file description_gles.cc.
|
static |
Definition at line 39 of file description_gles.cc.
|
static |
Definition at line 47 of file description_gles.cc.
|
static |
Definition at line 37 of file allocator_mtl.mm.
Definition at line 52 of file allocator_mtl.mm.
|
static |
Definition at line 42 of file context_mtl.mm.
|
static |
Definition at line 16 of file allocator_mtl.mm.
|
static |
Definition at line 22 of file context_mtl.mm.
|
constexpr |
Definition at line 75 of file driver_info_vk.cc.
|
inlinestaticconstexpr |
Definition at line 216 of file color.cc.
|
static |
Definition at line 199 of file typographer_context_stb.cc.
|
static |
Definition at line 209 of file typographer_context_skia.cc.
std::tuple< Point, Point > impeller::DrawPlaygroundLine | ( | PlaygroundPoint & | point_a, |
PlaygroundPoint & | point_b | ||
) |
Definition at line 50 of file widgets.cc.
Point impeller::DrawPlaygroundPoint | ( | PlaygroundPoint & | point | ) |
Definition at line 9 of file widgets.cc.
|
static |
Definition at line 21 of file pipeline_vk.cc.
bool impeller::EncodeCommandsInReactor | ( | const RenderPassData & | pass_data, |
const std::shared_ptr< Allocator > & | transients_allocator, | ||
const ReactorGLES & | reactor, | ||
const std::vector< Command > & | commands, | ||
const std::shared_ptr< GPUTracerGLES > & | tracer | ||
) |
Configure blending.
Setup stencil.
Configure depth.
Setup the viewport.
Setup the scissor rect.
Setup culling.
Setup winding order.
Bind vertex and index buffers.
Bind the pipeline program.
Bind vertex attribs.
Bind uniform data.
Determine the primitive type.
Finally! Invoke the draw call.
Unbind vertex attribs.
Unbind the program pipeline.
Definition at line 144 of file render_pass_gles.cc.
bool impeller::EncodeCommandsInReactor | ( | const std::shared_ptr< Allocator > & | transients_allocator, |
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.
|
static |
Definition at line 20 of file swiftshader_utilities.cc.
|
static |
Definition at line 44 of file compute_playground_test.cc.
|
static |
Definition at line 208 of file proc_table_gles.cc.
|
static |
Definition at line 22 of file vertices_geometry.cc.
|
constexpr |
Definition at line 288 of file formats_mtl.h.
|
constexpr |
Definition at line 22 of file formats_mtl.h.
|
constexpr |
Definition at line 317 of file formats_mtl.h.
GaussianBlurPipeline::FragmentShader::KernelSamples impeller::GenerateBlurInfo | ( | BlurParameters | parameters | ) |
Definition at line 642 of file gaussian_blur_filter_contents.cc.
|
static |
Definition at line 46 of file decompressed_image.cc.
std::shared_future< id< CAMetalDrawable > > impeller::GetDrawableDeferred | ( | CAMetalLayer * | layer | ) |
Create a deferred drawable from a CAMetalLayer.
Definition at line 23 of file lazy_drawable_holder.mm.
|
static |
Definition at line 196 of file capabilities_vk.cc.
|
static |
Definition at line 169 of file capabilities_vk.cc.
|
static |
Definition at line 159 of file capabilities_vk.cc.
|
static |
Definition at line 82 of file fence_waiter_vk.cc.
Retrieve the [FragInfo] struct data from the provided [command].
Definition at line 31 of file contents_test_helpers.h.
|
static |
Definition at line 21 of file description_gles.cc.
|
static |
Definition at line 29 of file description_gles.cc.
|
static |
Definition at line 91 of file typographer_context_skia.cc.
|
static |
Definition at line 84 of file pipeline_library_mtl.mm.
|
static |
Definition at line 28 of file pipeline_library_mtl.mm.
|
static |
Definition at line 63 of file context_vk.cc.
Definition at line 18 of file clip_contents.cc.
|
static |
Definition at line 22 of file pipeline_library_gles.cc.
|
static |
Definition at line 36 of file pipeline_library_gles.cc.
|
static |
Definition at line 46 of file runtime_effect_contents.cc.
|
static |
Definition at line 221 of file capabilities_vk.cc.
Retrieve the [VertInfo] struct data from the provided [command].
Definition at line 14 of file contents_test_helpers.h.
|
static |
Definition at line 53 of file render_pass_vk.cc.
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.
const char * impeller::GLErrorToString | ( | GLenum | value | ) |
Definition at line 18 of file proc_table_gles.cc.
|
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.
bool impeller::HasPrefix | ( | const std::string & | string, |
const std::string & | prefix | ||
) |
Definition at line 30 of file strings.cc.
|
static |
Definition at line 319 of file capabilities_vk.cc.
|
static |
Definition at line 328 of file capabilities_vk.cc.
bool impeller::HasSuffix | ( | const std::string & | string, |
const std::string & | suffix | ||
) |
Definition at line 34 of file strings.cc.
|
static |
Definition at line 294 of file capabilities_vk.cc.
|
static |
Definition at line 302 of file capabilities_vk.cc.
bool impeller::HasValidationLayers | ( | ) |
Definition at line 48 of file context_vk.cc.
|
static |
Definition at line 11 of file tessellator_libtess.cc.
|
static |
Definition at line 19 of file tessellator_libtess.cc.
|
static |
Definition at line 15 of file tessellator_libtess.cc.
|
constexpr |
Definition at line 14 of file driver_info_vk.cc.
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 | ) |
Definition at line 48 of file validation.cc.
bool impeller::ImpellerValidationErrorsAreFatal | ( | ) |
Definition at line 63 of file validation.cc.
void impeller::ImpellerValidationErrorsSetFatal | ( | bool | fatal | ) |
Definition at line 16 of file validation.cc.
|
static |
Definition at line 97 of file ahb_texture_source_vk.cc.
|
static |
Definition at line 53 of file context_mtl.mm.
std::optional< ArchiveShaderType > impeller::InferShaderTypefromFileExtension | ( | const std::filesystem::path & | path | ) |
Definition at line 19 of file shader_archive_writer.cc.
|
static |
Definition at line 57 of file playground.cc.
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 158 of file render_pass_builder_vk.cc.
|
static |
Definition at line 17 of file blit_pass_vk.cc.
Definition at line 31 of file blend_filter_contents.cc.
class impeller::IPLR_CAPABILITY | ( | "mutex" | ) |
Definition at line 1 of file thread.h.
|
static |
|
constexpr |
|
static |
Definition at line 343 of file capabilities_vk.cc.
|
static |
Definition at line 116 of file shader_library_vk.cc.
|
constexpr |
|
constexpr |
|
static |
|
static |
Definition at line 48 of file debug_report_vk.cc.
|
static |
Definition at line 60 of file debug_report_vk.cc.
GaussianBlurPipeline::FragmentShader::KernelSamples impeller::LerpHackKernelSamples | ( | GaussianBlurPipeline::FragmentShader::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 678 of file gaussian_blur_filter_contents.cc.
Definition at line 75 of file path_component.cc.
IMPELLER_API void impeller::LineTo | ( | PathBuilder * | builder, |
Scalar | x, | ||
Scalar | y | ||
) |
|
static |
Definition at line 77 of file pipeline_library_gles.cc.
|
constexpr |
|
static |
Definition at line 60 of file command_buffer_mtl.mm.
|
static |
Definition at line 49 of file pipeline_library_gles.cc.
bool impeller::Main | ( | const fml::CommandLine & | command_line | ) |
Definition at line 13 of file shader_archive_main.cc.
impeller::MAKE_STROKE_BENCHMARK_CAPTURE | ( | RRect | , |
Butt | , | ||
Bevel | |||
) |
impeller::MAKE_STROKE_BENCHMARK_CAPTURE | ( | RRect | , |
Butt | , | ||
Miter | |||
) |
impeller::MAKE_STROKE_BENCHMARK_CAPTURE | ( | RRect | , |
Butt | , | ||
Round | |||
) |
impeller::MAKE_STROKE_BENCHMARK_CAPTURE_ALL_CAPS_JOINS | ( | Cubic | , |
false | |||
) |
impeller::MAKE_STROKE_BENCHMARK_CAPTURE_ALL_CAPS_JOINS | ( | Quadratic | , |
false | |||
) |
|
static |
Definition at line 57 of file runtime_effect_contents.cc.
auto impeller::MakeSharedVK | ( | vk::UniqueHandle< T, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE > | handle | ) |
Definition at line 44 of file shared_object_vk.h.
std::shared_ptr< impeller::TextFrame > impeller::MakeTextFrameFromTextBlobSkia | ( | const sk_sp< SkTextBlob > & | blob | ) |
Definition at line 61 of file text_frame_skia.cc.
std::shared_ptr< TextFrame > impeller::MakeTextFrameSTB | ( | const std::shared_ptr< TypefaceSTB > & | typeface_stb, |
Font::Metrics | metrics, | ||
const std::string & | text | ||
) |
Definition at line 11 of file text_frame_stb.cc.
std::shared_ptr< VerticesGeometry > impeller::MakeVertices | ( | const flutter::DlVertices * | vertices | ) |
Definition at line 31 of file dl_vertices_geometry.cc.
IMPELLER_API void impeller::MoveTo | ( | PathBuilder * | builder, |
Scalar | x, | ||
Scalar | y | ||
) |
|
static |
Definition at line 35 of file command_buffer_mtl.mm.
|
static |
Definition at line 164 of file context_mtl.mm.
|
static |
Definition at line 141 of file context_mtl.mm.
|
inlinestatic |
Definition at line 273 of file path_component.cc.
|
static |
Definition at line 57 of file buffer_bindings_gles.cc.
|
static |
Definition at line 34 of file pipeline_cache_vk.cc.
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
constexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
static |
Definition at line 160 of file typographer_context_stb.cc.
ContentContextOptions impeller::OptionsFromPass | ( | const RenderPass & | pass | ) |
Definition at line 19 of file contents.cc.
ContentContextOptions impeller::OptionsFromPassAndEntity | ( | const RenderPass & | pass, |
const Entity & | entity | ||
) |
Definition at line 34 of file contents.cc.
|
static |
Definition at line 47 of file typographer_context_stb.cc.
|
static |
Definition at line 138 of file typographer_context_skia.cc.
|
static |
Definition at line 309 of file capabilities_vk.cc.
|
static |
Definition at line 52 of file context_vk.cc.
|
static |
Definition at line 86 of file context_vk.cc.
|
static |
Definition at line 504 of file blend_filter_contents.cc.
|
constexpr |
Definition at line 391 of file formats_vk.h.
|
constexpr |
Definition at line 140 of file formats.h.
|
inlineconstexpr |
Definition at line 33 of file playground.h.
std::string impeller::PlaygroundBackendToString | ( | PlaygroundBackend | backend | ) |
Definition at line 45 of file playground.cc.
|
static |
Definition at line 171 of file playground.cc.
Definition at line 79 of file path_component.cc.
|
inlinestatic |
Definition at line 85 of file path_component.cc.
|
static |
Definition at line 16 of file vertex_descriptor_mtl.mm.
|
static |
Definition at line 29 of file pipeline_cache_vk.cc.
|
static |
Definition at line 105 of file pipeline_vk.cc.
|
static |
Definition at line 57 of file pipeline_vk.cc.
|
static |
Definition at line 40 of file pipeline_vk.cc.
|
static |
Definition at line 82 of file pipeline_vk.cc.
|
static |
Definition at line 1209 of file dl_dispatcher.cc.
|
static |
Definition at line 328 of file proc_table_gles.cc.
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.
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.
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.
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.
|
inlineconstexpr |
Definition at line 30 of file scalar.h.
|
inlineconstexpr |
|
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.
|
static |
Definition at line 725 of file entity_pass.cc.
|
inlinestaticconstexpr |
Definition at line 160 of file color.cc.
|
inlinestaticconstexpr |
Definition at line 171 of file color.cc.
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.
|
static |
Definition at line 106 of file playground_impl_gles.cc.
|
static |
Definition at line 36 of file playground_impl_mtl.mm.
|
static |
Definition at line 31 of file playground_impl_vk.cc.
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.
std::string impeller::SPrintF | ( | const char * | format, |
... | |||
) |
Definition at line 12 of file strings.cc.
std::string impeller::StencilAttachmentToString | ( | const StencilAttachment & | stencil | ) |
Definition at line 137 of file formats.cc.
|
constexpr |
Definition at line 60 of file formats.h.
|
constexpr |
Definition at line 15 of file formats.cc.
|
constexpr |
Definition at line 337 of file formats_vk.h.
|
constexpr |
Definition at line 226 of file formats.h.
std::string impeller::StripPrefix | ( | const std::string & | string, |
const std::string & | to_strip | ||
) |
Definition at line 42 of file strings.cc.
|
static |
Definition at line 80 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.
impeller::TEST | ( | ValidationTest | , |
IsFatal | |||
) |
std::string impeller::TextureDescriptorToString | ( | const TextureDescriptor & | desc | ) |
Definition at line 11 of file texture_descriptor.cc.
|
constexpr |
Definition at line 269 of file formats.h.
std::string impeller::TextureUsageMaskToString | ( | TextureUsageMask | mask | ) |
Definition at line 81 of file formats.cc.
|
constexpr |
Definition at line 310 of file formats.h.
|
static |
Definition at line 15 of file tiled_texture_contents.cc.
|
static |
Definition at line 51 of file sampler_gles.cc.
|
constexpr |
Definition at line 516 of file formats_vk.h.
|
static |
Definition at line 502 of file texture_gles.cc.
|
static |
Convert a Skia axis alignment into an Impeller alignment.
This does not include a case for AxisAlignment::kNone, that should be used if SkFont::isSubpixel is false.
Definition at line 26 of file text_frame_skia.cc.
|
constexpr |
Definition at line 90 of file formats_gles.h.
|
static |
Definition at line 42 of file dl_dispatcher.cc.
|
constexpr |
Definition at line 126 of file formats_gles.h.
|
static |
Definition at line 481 of file dl_dispatcher.cc.
|
static |
Definition at line 708 of file dl_dispatcher.cc.
|
static |
Definition at line 440 of file dl_dispatcher.cc.
|
static |
|
static |
Definition at line 256 of file dl_dispatcher.cc.
|
static |
Definition at line 148 of file command_buffer_mtl.mm.
|
constexpr |
Definition at line 68 of file formats_gles.h.
|
static |
Definition at line 310 of file proc_table_gles.cc.
|
static |
Definition at line 173 of file reactor_gles.cc.
|
constexpr |
Definition at line 91 of file driver_info_vk.cc.
|
static |
Definition at line 41 of file text_frame_skia.cc.
HandleType impeller::ToHandleType | ( | TextureGLES::Type | type | ) |
Definition at line 130 of file texture_gles.cc.
|
constexpr |
Definition at line 563 of file formats_vk.h.
|
static |
Definition at line 515 of file dl_dispatcher.cc.
|
constexpr |
Definition at line 33 of file formats_gles.h.
Definition at line 161 of file dl_dispatcher.cc.
|
constexpr |
Definition at line 17 of file formats_gles.h.
|
constexpr |
Definition at line 114 of file formats_mtl.h.
|
constexpr |
Definition at line 197 of file formats_mtl.h.
|
inline |
|
constexpr |
Definition at line 209 of file formats_mtl.h.
|
constexpr |
Definition at line 231 of file formats_mtl.h.
|
constexpr |
Definition at line 185 of file formats_mtl.h.
MTLDepthStencilDescriptor * impeller::ToMTLDepthStencilDescriptor | ( | std::optional< DepthAttachmentDescriptor > | depth, |
std::optional< StencilAttachmentDescriptor > | front, | ||
std::optional< StencilAttachmentDescriptor > | back | ||
) |
Definition at line 54 of file formats_mtl.mm.
|
static |
Definition at line 28 of file shader_library_mtl.mm.
|
constexpr |
Definition at line 176 of file formats_mtl.h.
|
constexpr |
Definition at line 275 of file formats_mtl.h.
|
constexpr |
Definition at line 76 of file formats_mtl.h.
|
constexpr |
Definition at line 150 of file formats_mtl.h.
|
static |
Definition at line 104 of file render_pass_mtl.mm.
MTLRenderPipelineColorAttachmentDescriptor * impeller::ToMTLRenderPipelineColorAttachmentDescriptor | ( | ColorAttachmentDescriptor | descriptor | ) |
Definition at line 15 of file formats_mtl.mm.
|
static |
Definition at line 110 of file allocator_mtl.mm.
|
constexpr |
Definition at line 355 of file formats_mtl.h.
|
constexpr |
Definition at line 333 of file formats_mtl.h.
|
constexpr |
Definition at line 343 of file formats_mtl.h.
MTLStencilDescriptor * impeller::ToMTLStencilDescriptor | ( | const StencilAttachmentDescriptor & | descriptor | ) |
Definition at line 38 of file formats_mtl.mm.
|
constexpr |
Definition at line 253 of file formats_mtl.h.
|
static |
Definition at line 142 of file allocator_mtl.mm.
|
constexpr |
Definition at line 303 of file formats_mtl.h.
MTLTextureDescriptor * impeller::ToMTLTextureDescriptor | ( | const TextureDescriptor & | desc | ) |
Definition at line 86 of file formats_mtl.mm.
|
constexpr |
Definition at line 374 of file formats_mtl.h.
|
constexpr |
Definition at line 166 of file formats_mtl.h.
|
static |
Definition at line 19 of file sampler_gles.cc.
|
static |
Definition at line 29 of file sampler_gles.cc.
|
static |
Definition at line 221 of file ahb_texture_source_vk.cc.
|
constexpr |
Definition at line 13 of file ahb_formats.h.
|
constexpr |
Definition at line 170 of file formats_vk.h.
Definition at line 16 of file dl_vertices_geometry.cc.
|
static |
Definition at line 317 of file texture_gles.cc.
|
static |
Definition at line 143 of file dl_dispatcher.cc.
|
static |
Definition at line 119 of file dl_dispatcher.cc.
|
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.
|
constexpr |
Definition at line 16 of file shader_archive.cc.
|
constexpr |
Definition at line 86 of file shader_archive_writer.cc.
|
constexpr |
Definition at line 46 of file formats_gles.h.
|
static |
Definition at line 177 of file dl_dispatcher.cc.
|
static |
Definition at line 29 of file ahb_swapchain_impl_vk.cc.
|
static |
Definition at line 64 of file device_buffer_gles.cc.
Definition at line 46 of file tessellator_libtess.cc.
|
static |
Definition at line 268 of file ahb_texture_source_vk.cc.
|
constexpr |
Definition at line 183 of file formats_gles.h.
|
static |
Definition at line 255 of file ahb_texture_source_vk.cc.
|
constexpr |
Definition at line 169 of file formats_gles.h.
|
static |
Definition at line 106 of file dl_dispatcher.cc.
|
static |
Definition at line 19 of file runtime_stage.cc.
|
constexpr |
Definition at line 138 of file formats_gles.h.
vk::Format impeller::ToVertexDescriptorFormat | ( | const ShaderStageIOSlot & | input | ) |
Definition at line 11 of file vertex_descriptor_vk.cc.
|
static |
Definition at line 20 of file dl_vertices_geometry.cc.
|
constexpr |
Definition at line 300 of file formats_vk.h.
|
constexpr |
Definition at line 313 of file formats_vk.h.
|
constexpr |
Definition at line 29 of file formats_vk.h.
|
constexpr |
Definition at line 65 of file formats_vk.h.
|
staticconstexpr |
Definition at line 20 of file allocator_vk.cc.
|
constexpr |
Definition at line 77 of file formats_vk.h.
|
constexpr |
Definition at line 430 of file formats_vk.h.
|
constexpr |
Definition at line 418 of file formats_vk.h.
|
constexpr |
Definition at line 290 of file formats_vk.h.
|
constexpr |
Definition at line 266 of file formats_vk.h.
|
constexpr |
Definition at line 30 of file pipeline_vk.cc.
|
constexpr |
Definition at line 490 of file formats_vk.h.
|
constexpr |
Definition at line 544 of file formats_vk.h.
|
constexpr |
Definition at line 133 of file formats_vk.h.
|
constexpr |
Definition at line 530 of file formats_vk.h.
|
constexpr |
Definition at line 349 of file formats_vk.h.
|
constexpr |
Definition at line 100 of file formats_vk.h.
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.
|
constexpr |
Definition at line 364 of file formats_vk.h.
|
constexpr |
Definition at line 374 of file formats_vk.h.
|
constexpr |
Definition at line 201 of file formats_vk.h.
|
constexpr |
Definition at line 19 of file formats_vk.h.
|
constexpr |
Definition at line 235 of file formats_vk.h.
|
constexpr |
Definition at line 212 of file formats_vk.h.
|
constexpr |
Definition at line 223 of file formats_vk.h.
|
constexpr |
Definition at line 251 of file formats_vk.h.
|
constexpr |
Definition at line 118 of file formats_vk.h.
|
constexpr |
Definition at line 452 of file formats_vk.h.
|
constexpr |
Definition at line 475 of file formats_vk.h.
|
staticconstexpr |
Definition at line 249 of file allocator_vk.cc.
|
static |
Definition at line 32 of file allocator_vk.cc.
|
static |
Definition at line 267 of file allocator_vk.cc.
|
staticconstexpr |
Definition at line 244 of file allocator_vk.cc.
|
static |
Definition at line 272 of file typographer_context_stb.cc.
|
static |
Definition at line 252 of file typographer_context_skia.cc.
|
static |
Definition at line 316 of file typographer_context_stb.cc.
|
static |
Definition at line 340 of file typographer_context_stb.cc.
|
static |
Definition at line 918 of file canvas.cc.
|
inlinestaticconstexpr |
Definition at line 28 of file color.cc.
|
constexpr |
Definition at line 49 of file driver_info_vk.cc.
|
static |
Definition at line 19 of file pipeline_cache_vk.cc.
|
static |
|
static |
|
static |
Definition at line 29 of file shader_library_vk.cc.
ProcTableGLES::Resolver impeller::WrappedResolver | ( | const ProcTableGLES::Resolver & | resolver | ) |
Definition at line 52 of file proc_table_gles.cc.
std::shared_ptr< Texture > impeller::WrapperMTL | ( | TextureDescriptor | desc, |
const void * | mtl_texture, | ||
std::function< void()> | deletion_proc | ||
) |
Definition at line 13 of file texture_mtl.mm.
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.
|
static |
Definition at line 47 of file surface_mtl.mm.
|
static |
Definition at line 174 of file command_pool_vk.cc.
|
static |
Definition at line 46 of file context_vk.cc.
|
static |
Definition at line 165 of file playground.cc.
|
constexpr |
Definition at line 38 of file constants.h.
|
constexpr |
Definition at line 50 of file constants.h.
|
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.
|
static |
Definition at line 24 of file tessellator_libtess.cc.
|
constexpr |
Definition at line 18 of file host_buffer.cc.
|
staticconstexpr |
Definition at line 21 of file buffer_bindings_gles.cc.
|
staticconstexpr |
|
constexpr |
|
staticconstexpr |
Descriptor pools are always allocated with the following sizes.
Definition at line 24 of file descriptor_pool_vk.cc.
|
staticconstexpr |
Definition at line 48 of file experimental_canvas.cc.
|
staticconstexpr |
Definition at line 286 of file entity_pass.cc.
|
constexpr |
Definition at line 11 of file constants.h.
|
constexpr |
Definition at line 56 of file constants.h.
|
static |
Definition at line 41 of file geometry.h.
|
staticconstexpr |
Definition at line 13 of file capabilities_gles.cc.
|
staticconstexpr |
Approximately the same size as the max frames in flight.
Definition at line 22 of file host_buffer.h.
|
constexpr |
Definition at line 12 of file limits_vk.h.
|
staticconstexpr |
Definition at line 15 of file capabilities_vk.cc.
|
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.
|
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 36 of file render_pass_vk.cc.
|
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 26 of file pipeline_vk.h.
|
staticconstexpr |
Definition at line 21 of file khr_swapchain_impl_vk.cc.
|
staticconstexpr |
The maximum number of presents pending in the compositor after which the acquire calls will block. This value is 2 images given to the system compositor and one for the raster thread, Because the semaphore is acquired when the CPU Begins working on the texture
Definition at line 27 of file ahb_swapchain_impl_vk.cc.
|
staticconstexpr |
Definition at line 22 of file capabilities_gles.cc.
|
static |
Definition at line 17 of file lazy_glyph_atlas.cc.
|
static |
Definition at line 14 of file sampler_library_gles.cc.
|
static |
Definition at line 16 of file sampler_library_mtl.mm.
|
static |
Definition at line 19 of file sampler_library_vk.cc.
|
staticconstexpr |
Definition at line 18 of file capabilities_gles.cc.
|
constexpr |
Definition at line 50 of file typographer_context_skia.cc.
|
constexpr |
Definition at line 53 of file constants.h.
|
constexpr |
Definition at line 26 of file constants.h.
|
constexpr |
Definition at line 32 of file constants.h.
|
constexpr |
Definition at line 35 of file constants.h.
|
staticconstexpr |
Definition at line 16 of file pipeline_cache_vk.cc.
|
staticconstexpr |
Definition at line 26 of file khr_swapchain_impl_vk.cc.
|
staticconstexpr |
Definition at line 23 of file gpu_tracer_vk.cc.
|
constexpr |
Definition at line 15 of file blend_filter_contents.h.
|
staticconstexpr |
Definition at line 74 of file tessellator.cc.
|
static |
Definition at line 75 of file tessellator.cc.
|
constexpr |
Definition at line 20 of file render_pass_builder_vk.cc.
|
constexpr |
Definition at line 18 of file render_pass_builder_vk.cc.
|
constexpr |
Definition at line 23 of file render_pass_builder_vk.cc.
|
constexpr |
Definition at line 15 of file render_pass_builder_vk.cc.
|
constexpr |
Definition at line 13 of file render_pass_builder_vk.cc.
|
static |
Definition at line 67 of file golden_playground_test_mac.cc.
|
constexpr |
Definition at line 47 of file constants.h.
|
staticconstexpr |
Definition at line 16 of file capabilities_gles.cc.
|
staticconstexpr |
Definition at line 415 of file formats_vk.h.
|
static |
Definition at line 11 of file comparable.cc.
|
static |
Definition at line 14 of file validation.cc.
|
static |
Definition at line 13 of file validation.cc.
|
static |
Definition at line 40 of file geometry_benchmarks.cc.
|
static |
Definition at line 170 of file command_pool_vk.cc.