<doc>
    <assembly>
        <name>SkiaSharp.Resources</name>
    </assembly>
    <members>
        <member name="T:SkiaSharp.Resources.CachingResourceProvider">
            <summary>A resource provider proxy that caches loaded image assets.</summary>
            <remarks>
                <para>This provider wraps another <see cref="T:SkiaSharp.Resources.ResourceProvider" /> and caches loaded image assets to avoid repeated loading of the same resources.</para>
                <para>Use this provider to improve performance when an animation references the same image assets multiple times.</para>
            </remarks>
        </member>
        <member name="C:SkiaSharp.Resources.CachingResourceProvider(SkiaSharp.Resources.ResourceProvider)">
            <param name="resourceProvider">The underlying resource provider to wrap with caching.</param>
            <summary>Creates a caching proxy around the specified resource provider.</summary>
            <remarks>Image assets loaded through this provider will be cached and reused on subsequent requests for the same resource.</remarks>
        </member>
        <member name="T:SkiaSharp.Resources.DataUriResourceProvider">
            <summary>A resource provider that can load resources from data URIs embedded in Lottie JSON files.</summary>
            <remarks>
                <para>Data URIs allow embedding image and font data directly in the Lottie JSON file using base64 encoding. This provider parses and decodes such embedded resources.</para>
                <para>Use the constructor with a fallback provider to handle both embedded data URIs and external resources.</para>
            </remarks>
        </member>
        <member name="C:SkiaSharp.Resources.DataUriResourceProvider(System.Boolean)">
            <param name="preDecode">If <see langword="true" />, images are decoded upfront at load time; if <see langword="false" />, images are decoded on-the-fly at rasterization time.</param>
            <summary>Creates a data URI resource provider without a fallback provider.</summary>
            <remarks>
                <para>This constructor creates a provider that only handles data URIs. Resources that are not embedded as data URIs will not be loaded.</para>
                <para>Use the constructor with a fallback provider if you need to load both embedded and external resources.</para>
            </remarks>
        </member>
        <member name="C:SkiaSharp.Resources.DataUriResourceProvider(SkiaSharp.Resources.ResourceProvider,System.Boolean)">
            <param name="fallbackProvider">A resource provider to use for resources that are not embedded as data URIs. Can be <see langword="null" />.</param>
            <param name="preDecode">If <see langword="true" />, images are decoded upfront at load time; if <see langword="false" />, images are decoded on-the-fly at rasterization time.</param>
            <summary>Creates a data URI resource provider with an optional fallback provider.</summary>
            <remarks>
                <para>Resources that are embedded as data URIs will be decoded directly. Resources that are not data URIs will be delegated to the fallback provider.</para>
                <para>A common pattern is to use a <see cref="T:SkiaSharp.Resources.FileResourceProvider" /> as the fallback to load non-embedded resources from the file system.</para>
            </remarks>
        </member>
        <member name="T:SkiaSharp.Resources.FileResourceProvider">
            <summary>A resource provider that loads resources from a directory on the file system.</summary>
            <remarks>Use this provider to load Lottie animation assets (images, fonts, nested animations) from a local directory.</remarks>
        </member>
        <member name="C:SkiaSharp.Resources.FileResourceProvider(System.String,System.Boolean)">
            <param name="baseDirectory">The base directory path from which to load resources.</param>
            <param name="preDecode">If <see langword="true" />, images are decoded upfront at load time; if <see langword="false" />, images are decoded on-the-fly at rasterization time.</param>
            <summary>Creates a new file resource provider with the specified base directory.</summary>
            <remarks>
                <para>By default, images are decoded on-the-fly at rasterization time. Large images may cause jank as decoding is expensive and can thrash internal caches.</para>
                <para>Set <paramref name="preDecode" /> to <see langword="true" /> to force-decode all images upfront, at the cost of potentially more RAM and slower animation build times.</para>
            </remarks>
        </member>
        <member name="T:SkiaSharp.Resources.ResourceProvider">
            <summary>An interface that lets rich-content modules defer loading of external resources (images, fonts, etc.) to embedding clients.</summary>
            <remarks>
                <para>ResourceProvider is used by <see cref="T:SkiaSharp.Skottie.AnimationBuilder" /> to load external assets referenced by Lottie animations, such as images, fonts, and nested animations.</para>
                <para>Several built-in implementations are available: <see cref="T:SkiaSharp.Resources.FileResourceProvider" /> for loading from the file system, <see cref="T:SkiaSharp.Resources.CachingResourceProvider" /> for caching loaded assets, and <see cref="T:SkiaSharp.Resources.DataUriResourceProvider" /> for loading embedded data URIs.</para>
            </remarks>
        </member>
        <member name="M:SkiaSharp.Resources.ResourceProvider.Load(System.String)">
            <param name="resourceName">The name of the resource to load.</param>
            <summary>Loads a generic resource by name and returns it as data.</summary>
            <returns>The resource data, or <see langword="null" /> if the resource could not be loaded.</returns>
            <remarks>This is equivalent to calling <see cref="M:SkiaSharp.Resources.ResourceProvider.Load(System.String,System.String)" /> with an empty path.</remarks>
        </member>
        <member name="M:SkiaSharp.Resources.ResourceProvider.Load(System.String,System.String)">
            <param name="resourcePath">The path to the resource directory.</param>
            <param name="resourceName">The name of the resource to load.</param>
            <summary>Loads a generic resource specified by path and name, and returns it as data.</summary>
            <returns>The resource data, or <see langword="null" /> if the resource could not be loaded.</returns>
            <remarks>This method is typically used to load nested animations or other generic data assets.</remarks>
        </member>
    </members>
</doc>
