Class AssetManager
Syntax
public class AssetManager implements Expendable
Constructors
AssetManager(long context)
Creates a new AssetManager with all default loaders.
Declaration
public AssetManager(long context)
Parameters
| Type | Name | Description |
|---|---|---|
| long | context |
AssetManager(String assetsDir, boolean defaultLoaders)
Creates a new AssetManager with optionally all default loaders. If you don't add the default loaders then you do have to manually add the loaders you need, including any loaders they might depend on.
Declaration
public AssetManager(String assetsDir, boolean defaultLoaders)
Parameters
| Type | Name | Description |
|---|---|---|
| String | assetsDir | |
| boolean | defaultLoaders | whether to add the default loaders |
Methods
addAsset(final String fileName, Class<T> type, T asset)
Adds an asset to this AssetManager
Declaration
protected <T> AssetContainer addAsset(final String fileName, Class<T> type, T asset)
Parameters
| Type | Name | Description |
|---|---|---|
| final String | fileName | |
| Class<T> | type | |
| T | asset |
Returns
| Type | Description |
|---|---|
| <T> AssetContainer |
clear()
Clears and disposes all assets and the preloading queue.
Declaration
public synchronized void clear()
Returns
| Type | Description |
|---|---|
| synchronized void |
contains(String fileName)
Returns true if an asset with the specified name is loading, queued to be loaded, or has been loaded.
Declaration
public synchronized boolean contains(String fileName)
Parameters
| Type | Name | Description |
|---|---|---|
| String | fileName |
Returns
| Type | Description |
|---|---|
| synchronized boolean |
contains(String fileName, Class type)
Returns true if an asset with the specified name and type is loading, queued to be loaded, or has been loaded.
Declaration
public synchronized boolean contains(String fileName, Class type)
Parameters
| Type | Name | Description |
|---|---|---|
| String | fileName | |
| Class | type |
Returns
| Type | Description |
|---|---|
| synchronized boolean |
containsAsset(String name)
Declaration
public synchronized<T> boolean containsAsset(String name)
Parameters
| Type | Name | Description |
|---|---|---|
| String | name |
Returns
| Type | Description |
|---|---|
| synchronized<T> boolean | whether the asset is contained in this manager |
dispose()
Disposes all assets in the manager and stops all asynchronous loading.
Declaration
public synchronized void dispose()
Returns
| Type | Description |
|---|---|
| synchronized void |
Overrides
finishLoading()
Blocks until all assets are loaded.
Declaration
public void finishLoading()
finishLoadingAsset(AssetClassifier assetDesc)
Blocks until the specified asset is loaded.
Declaration
public <T> T finishLoadingAsset(AssetClassifier assetDesc)
Parameters
| Type | Name | Description |
|---|---|---|
| AssetClassifier<T> | assetDesc | the AssetClassifier of the asset |
Returns
| Type | Description |
|---|---|
| <T> T |
finishLoadingAsset(String fileName)
Blocks until the specified asset is loaded.
Declaration
public synchronized<T> T finishLoadingAsset(String fileName)
Parameters
| Type | Name | Description |
|---|---|---|
| String | fileName | the file name (interpretation depends on AssetLoader) |
Returns
| Type | Description |
|---|---|
| synchronized<T> T |
get(AssetClassifier<T> assetDescriptor)
Declaration
public synchronized<T> T get(AssetClassifier<T> assetDescriptor)
Parameters
| Type | Name | Description |
|---|---|---|
| AssetClassifier<T> | assetDescriptor | the asset descriptor |
Returns
| Type | Description |
|---|---|
| synchronized<T> T | the asset |
get(String fileName)
Declaration
public synchronized<T> T get(String fileName)
Parameters
| Type | Name | Description |
|---|---|---|
| String | fileName | the asset file name |
Returns
| Type | Description |
|---|---|
| synchronized<T> T | the asset |
get(String fileName, Class<T> type)
Declaration
public synchronized<T> T get(String fileName, Class<T> type)
Parameters
| Type | Name | Description |
|---|---|---|
| String | fileName | the asset file name |
| Class<T> | type | the asset type |
Returns
| Type | Description |
|---|---|
| synchronized<T> T | the asset |
getAll(Class<T> type)
Declaration
public synchronized<T> ArrayList<T> getAll(Class<T> type)
Parameters
| Type | Name | Description |
|---|---|---|
| Class<T> | type | the asset type |
Returns
| Type | Description |
|---|---|
| synchronized<T> ArrayList<T> | all the assets matching the specified type |
getAssetsDir()
Declaration
public String getAssetsDir()
Returns
| Type | Description |
|---|---|
| String |
getGlfw_handle()
Declaration
public long getGlfw_handle()
Returns
| Type | Description |
|---|---|
| long |
getLoadedAssets()
Declaration
public synchronized int getLoadedAssets()
Returns
| Type | Description |
|---|---|
| synchronized int | the number of loaded assets |
getLoader(final Class<T> type)
Returns the default loader for the given type
Declaration
public <T> AssetLoader getLoader(final Class<T> type)
Parameters
| Type | Name | Description |
|---|---|---|
| final Class<T> | type | The type of the loader to get |
Returns
| Type | Description |
|---|---|
| <T> AssetLoader | The loader capable of loading the type, or null if none exists |
getLoader(final Class<T> type, final String fileName)
Returns the loader for the given type and the specified filename. If no loader exists for the specific filename, the default loader for that type is returned.
Declaration
public <T> AssetLoader getLoader(final Class<T> type, final String fileName)
Parameters
| Type | Name | Description |
|---|---|---|
| final Class<T> | type | The type of the loader to get |
| final String | fileName | The filename of the asset to get a loader for, or null to get the default loader |
Returns
| Type | Description |
|---|---|
| <T> AssetLoader | The loader capable of loading the type and filename, or null if none exists |
getProgress()
Declaration
public synchronized float getProgress()
Returns
| Type | Description |
|---|---|
| synchronized float | the progress in percent of completion. |
getQueuedAssets()
Declaration
public synchronized int getQueuedAssets()
Returns
| Type | Description |
|---|---|
| synchronized int | the number of currently queued assets |
getReferenceCount(String fileName)
Returns the reference count of an asset.
Declaration
public synchronized int getReferenceCount(String fileName)
Parameters
| Type | Name | Description |
|---|---|---|
| String | fileName |
Returns
| Type | Description |
|---|---|
| synchronized int |
isFinished()
Returns true when all assets are loaded. Can be called from any thread but note update() or related methods must be called to process tasks.
Declaration
public synchronized boolean isFinished()
Returns
| Type | Description |
|---|---|
| synchronized boolean |
isLoaded(AssetClassifier assetDesc)
Declaration
public synchronized boolean isLoaded(AssetClassifier assetDesc)
Parameters
| Type | Name | Description |
|---|---|---|
| AssetClassifier<T> | assetDesc | the AssetClassifier of the asset |
Returns
| Type | Description |
|---|---|
| synchronized boolean | the filename of the asset or null |
isLoaded(String fileName)
Declaration
public synchronized boolean isLoaded(String fileName)
Parameters
| Type | Name | Description |
|---|---|---|
| String | fileName | the file name of the asset |
Returns
| Type | Description |
|---|---|
| synchronized boolean | whether the asset is loaded |
isLoaded(String fileName, Class type)
Declaration
public synchronized boolean isLoaded(String fileName, Class type)
Parameters
| Type | Name | Description |
|---|---|---|
| String | fileName | the file name of the asset |
| Class | type |
Returns
| Type | Description |
|---|---|
| synchronized boolean | whether the asset is loaded |
load(AssetClassifier desc)
Adds the given asset to the loading queue of the AssetManager.
Declaration
public synchronized void load(AssetClassifier desc)
Parameters
| Type | Name | Description |
|---|---|---|
| AssetClassifier<T> | desc | the AssetClassifier |
Returns
| Type | Description |
|---|---|
| synchronized void |
load(String fileName, Class<T> type)
Adds the given asset to the loading queue of the AssetManager.
Declaration
public synchronized<T> void load(String fileName, Class<T> type)
Parameters
| Type | Name | Description |
|---|---|---|
| String | fileName | the file name (interpretation depends on AssetLoader) |
| Class<T> | type | the type of the asset. |
Returns
| Type | Description |
|---|---|
| synchronized<T> void |
load(String fileName, Class<T> type, AssetLoaderParameters<T> parameter)
Adds the given asset to the loading queue of the AssetManager.
Declaration
public synchronized<T> void load(String fileName, Class<T> type, AssetLoaderParameters<T> parameter)
Parameters
| Type | Name | Description |
|---|---|---|
| String | fileName | the file name (interpretation depends on AssetLoader) |
| Class<T> | type | the type of the asset. |
| AssetLoaderParameters<T> | parameter | parameters for the AssetLoader. |
Returns
| Type | Description |
|---|---|
| synchronized<T> void |
setLoader(Class<T> type, AssetLoader<T, P> loader)
Sets a new AssetLoader for the given type.
Declaration
public synchronized<T, P extends AssetLoaderParameters<T>> void setLoader(Class<T> type, AssetLoader<T, P> loader)
Parameters
| Type | Name | Description |
|---|---|---|
| Class<T> | type | the type of the asset |
| AssetLoader<T, P> | loader | the loader |
Returns
| Type | Description |
|---|---|
| synchronized<T, P extends AssetLoaderParameters<T>> void |
setLoader(Class<T> type, String suffix, AssetLoader<T, P> loader)
Sets a new AssetLoader for the given type.
Declaration
public synchronized<T, P extends AssetLoaderParameters<T>> void setLoader(Class<T> type, String suffix, AssetLoader<T, P> loader)
Parameters
| Type | Name | Description |
|---|---|---|
| Class<T> | type | the type of the asset |
| String | suffix | the suffix the filename must have for this loader to be used or null to specify the default loader. |
| AssetLoader<T, P> | loader | the loader |
Returns
| Type | Description |
|---|---|
| synchronized<T, P extends AssetLoaderParameters<T>> void |
taskFailed(AssetClassifier assetDesc, RuntimeException ex)
Called when a task throws an exception during loading. The default implementation rethrows the exception. A subclass may supress the default implementation when loading assets where loading failure is recoverable.
Declaration
protected void taskFailed(AssetClassifier assetDesc, RuntimeException ex)
Parameters
| Type | Name | Description |
|---|---|---|
| AssetClassifier<T> | assetDesc | |
| RuntimeException | ex |
unload(String fileName)
Removes the asset and all its dependencies, if they are not used by other assets.
Declaration
public synchronized void unload(String fileName)
Parameters
| Type | Name | Description |
|---|---|---|
| String | fileName | the file name |
Returns
| Type | Description |
|---|---|
| synchronized void |
update()
Updates the AssetManager for a single task. Returns if the current task is still being processed or there are no tasks, otherwise it finishes the current task and starts the next task.
Declaration
public synchronized boolean update()
Returns
| Type | Description |
|---|---|
| synchronized boolean | true if all loading is finished. |