Class AssetManager
Loads and caches typed assets through DI-provided loaders.
public sealed class AssetManager : IDisposable
- Inheritance
-
AssetManager
- Implements
- Inherited Members
Constructors
AssetManager(IServiceProvider)
Loads and caches typed assets through DI-provided loaders.
public AssetManager(IServiceProvider services)
Parameters
servicesIServiceProvider
Methods
Dispose()
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
public void Dispose()
GetLoadedAssets()
Returns a point-in-time view of cached and in-progress assets.
public IReadOnlyList<AssetInfo> GetLoadedAssets()
Returns
Get<TAsset>(string)
Returns a previously loaded asset.
public TAsset Get<TAsset>(string key) where TAsset : class
Parameters
keystring
Returns
- TAsset
Type Parameters
TAsset
LoadAsync<TAsset>(string, Stream, CancellationToken)
Loads an asset once and caches it under a type-safe key.
public ValueTask<TAsset> LoadAsync<TAsset>(string key, Stream stream, CancellationToken cancellationToken = default) where TAsset : class
Parameters
keystringstreamStreamcancellationTokenCancellationToken
Returns
- ValueTask<TAsset>
Type Parameters
TAsset
LoadEmbeddedAsync<TAsset>(string, Assembly, string, CancellationToken)
Loads an embedded resource and caches it.
public ValueTask<TAsset> LoadEmbeddedAsync<TAsset>(string key, Assembly assembly, string resourceName, CancellationToken cancellationToken = default) where TAsset : class
Parameters
keystringassemblyAssemblyresourceNamestringcancellationTokenCancellationToken
Returns
- ValueTask<TAsset>
Type Parameters
TAsset
LoadFileAsync<TAsset>(string, string, CancellationToken)
Loads an asset from a file and caches it.
public ValueTask<TAsset> LoadFileAsync<TAsset>(string key, string path, CancellationToken cancellationToken = default) where TAsset : class
Parameters
keystringpathstringcancellationTokenCancellationToken
Returns
- ValueTask<TAsset>
Type Parameters
TAsset
TryGet<TAsset>(string, out TAsset?)
Attempts to return a loaded asset without blocking for in-progress loads.
public bool TryGet<TAsset>(string key, out TAsset? asset) where TAsset : class
Parameters
keystringassetTAsset
Returns
Type Parameters
TAsset
Unload<TAsset>(string)
Removes and disposes an asset when it has finished loading.
public bool Unload<TAsset>(string key) where TAsset : class
Parameters
keystring
Returns
Type Parameters
TAsset