![]() |
Plasma Engine
2.0
|
Base class for all resource loaders. More...
#include <ResourceTypeLoader.h>
Public Member Functions | |
virtual plResourceLoadData | OpenDataStream (const plResource *pResource)=0 |
Override this function to implement the resource loading. | |
virtual void | CloseDataStream (const plResource *pResource, const plResourceLoadData &loaderData)=0 |
This function is called when the resource has been updated with the data from the resource loader and the loader can deallocate any temporary memory. | |
virtual bool | IsResourceOutdated (const plResource *pResource) const |
If this function returns true, a resource is unloaded and loaded again to update its content. | |
Base class for all resource loaders.
A resource loader handles preparing the data before the resource is updated with the data. Resource loaders are always executed on a separate thread.
|
pure virtual |
This function is called when the resource has been updated with the data from the resource loader and the loader can deallocate any temporary memory.
Implemented in plConfigFileResourceLoader, plDecalResourceLoader, plFmodSoundBankResourceLoader, plFmodSoundEventResourceLoader, plResourceLoaderFromFile, plResourceLoaderFromMemory, plShaderPermutationResourceLoader, and plTextureResourceLoader.
|
inlinevirtual |
If this function returns true, a resource is unloaded and loaded again to update its content.
Call plResource::GetLoadedFileModificationTime() to query the file modification time that was returned through plResourceLoadData::m_LoadedFileModificationDate.
Reimplemented in plConfigFileResourceLoader, plDecalResourceLoader, plFmodSoundBankResourceLoader, plFmodSoundEventResourceLoader, plResourceLoaderFromFile, plResourceLoaderFromMemory, plRmlUiResourceLoader, plShaderPermutationResourceLoader, and plTextureResourceLoader.
|
pure virtual |
Override this function to implement the resource loading.
This function should take the information from pResource, e.g. which file to load, and do the loading work. It should allocate temporary storage for the loaded data and encode it in a memory stream, such that the resource can read all necessary information from the stream.
Implemented in plConfigFileResourceLoader, plDecalResourceLoader, plFmodSoundBankResourceLoader, plFmodSoundEventResourceLoader, plResourceLoaderFromFile, plResourceLoaderFromMemory, plShaderPermutationResourceLoader, and plTextureResourceLoader.