Plasma Engine  2.0
Loading...
Searching...
No Matches
plResourceTypeLoader Class Referenceabstract

Base class for all resource loaders. More...

#include <ResourceTypeLoader.h>

Inheritance diagram for plResourceTypeLoader:

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.
 

Detailed Description

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.

Member Function Documentation

◆ CloseDataStream()

virtual void plResourceTypeLoader::CloseDataStream ( const plResource * pResource,
const plResourceLoadData & loaderData )
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.

◆ IsResourceOutdated()

virtual bool plResourceTypeLoader::IsResourceOutdated ( const plResource * pResource) const
inlinevirtual

◆ OpenDataStream()

virtual plResourceLoadData plResourceTypeLoader::OpenDataStream ( const plResource * pResource)
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.

See also
plResourceLoadData

Implemented in plConfigFileResourceLoader, plDecalResourceLoader, plFmodSoundBankResourceLoader, plFmodSoundEventResourceLoader, plResourceLoaderFromFile, plResourceLoaderFromMemory, plShaderPermutationResourceLoader, and plTextureResourceLoader.


The documentation for this class was generated from the following file: