|
| ResourceLoader () |
| constructor
|
|
virtual | ~ResourceLoader () |
| destructor
|
|
virtual void | Setup () |
| setup resource loader, initiates the placeholder and error resources if valid, so don't forget to run!
|
|
virtual void | Discard () |
| discard resource loader
|
|
virtual void | LoadFallbackResources () |
| load placeholder and error resources
|
|
Resources::ResourceId | CreateResource (const Resources::ResourceName &res, const void *loadInfo, SizeT loadInfoSize, const Util::StringAtom &tag, std::function< void(const Resources::ResourceId)> success, std::function< void(const Resources::ResourceId)> failed, bool immediate, bool stream) |
| create a container with a tag associated with it, if no tag is provided, the resource will be untagged
|
|
void | DiscardResource (const Resources::ResourceId id) |
| discard container
|
|
void | DiscardByTag (const Util::StringAtom &tag) |
| discard all resources associated with a tag
|
|
void | CreateListener (const Resources::ResourceId res, std::function< void(const Resources::ResourceId)> success, std::function< void(const Resources::ResourceId)> failed) |
| Create new listener on resource.
|
|
const Resources::ResourceName & | GetName (const Resources::ResourceId id) const |
| get resource name
|
|
const uint32_t | GetUsage (const Resources::ResourceId id) const |
| get resource usage from resource id
|
|
const Util::StringAtom | GetTag (const Resources::ResourceId id) const |
| get resource tag was first registered with
|
|
const Resource::State | GetState (const Resources::ResourceId id) const |
| get resource state
|
|
const Resources::ResourceId | GetId (const Resources::ResourceName &name) const |
| get resource id by name, use with care
|
|
const Util::Dictionary< Resources::ResourceName, Ids::Id32 > & | GetResources () const |
| get the dictionary of all resource-id pairs
|
|
const bool | HasResource (const Resources::ResourceId id) const |
| returns true if pool has resource
|
|
const int32_t & | GetUniqueId () const |
| get the global identifier for this pool
|
|
void | ReloadResource (const Resources::ResourceName &res, std::function< void(const Resources::ResourceId)> success, std::function< void(const Resources::ResourceId)> failed) |
| reload resource using resource name
|
|
void | ReloadResource (const Resources::ResourceId &id, std::function< void(const Resources::ResourceId)> success, std::function< void(const Resources::ResourceId)> failed) |
| reload resource using resource id
|
|
void | SetMinLod (const Resources::ResourceId &id, const float lod, bool immediate) |
| begin updating a resources lod
|
|
| RefCounted () |
| constructor
|
|
int | GetRefCount () const |
| get the current refcount
|
|
void | AddRef () |
| increment refcount by one
|
|
void | Release () |
| decrement refcount and destroy object if refcount is zero
|
|
bool | IsInstanceOf (const Rtti &rtti) const |
| return true if this object is instance of given class
|
|
bool | IsInstanceOf (const Util::String &className) const |
| return true if this object is instance of given class by string
|
|
bool | IsInstanceOf (const Util::FourCC &classFourCC) const |
| return true if this object is instance of given class by fourcc
|
|
bool | IsA (const Rtti &rtti) const |
| return true if this object is instance of given class, or a derived class
|
|
bool | IsA (const Util::String &rttiName) const |
| return true if this object is instance of given class, or a derived class, by string
|
|
bool | IsA (const Util::FourCC &rttiFourCC) const |
| return true if this object is instance of given class, or a derived class, by fourcc
|
|
const Util::String & | GetClassName () const |
| get the class name
|
|
Util::FourCC | GetClassFourCC () const |
| get the class FourCC code
|
|
static void | DumpRefCountingLeaks () |
| dump refcounting leaks, call at end of application (NEBULA_DEBUG builds only!)
|
|
virtual void | UpdateLoaderSyncState () |
| Update loader internal state.
|
|
virtual ResourceStreamOutput | StreamResource (const ResourceLoadJob &job) |
| Stream resource.
|
|
virtual Resource::State | ReloadFromStream (const Resources::ResourceId id, const Ptr< IO::Stream > &stream) |
| perform a reload
|
|
virtual uint | LodMask (const _StreamData &stream, float lod, bool async) const |
| Create load mask based on LOD. This will be used to determine if the resoure is fully loaded.
|
|
virtual void | RequestLOD (const Ids::Id32 entry, float lod) const |
| Set lod factor for resource.
|
|
virtual void | Update (IndexT frameIndex) |
| update the resource loader, this is done every frame
|
|
void | SetupIdFromEntry (const Ids::Id32 entry, ResourceId &cacheEntry) |
| Construct resource ID based on loader entry.
|
|
void | RunCallbacks (Resource::State status, const Resources::ResourceId id) |
| run callbacks
|
|
void | EnqueueJob (const std::function< void()> &func) |
| Issue async job.
|
|
Resources::ResourceId | GetPlaceholder (const Resources::ResourceName &name) |
| get placeholder based on resource name
|
|
virtual | ~RefCounted () |
| destructor (called when refcount reaches zero)
|
|
Util::FixedArray< _PlaceholderResource > | placeholders |
|
Util::StringAtom | placeholderResourceName |
| these types need to be properly initiated in a subclass Setup function
|
|
Util::StringAtom | failResourceName |
|
Resources::ResourceId | placeholderResourceId |
|
Resources::ResourceId | failResourceId |
|
bool | async |
|
Ptr< ResourceLoaderThread > | streamerThread |
|
std::function< void()> | preJobFunc |
|
std::function< void()> | postJobFunc |
|
Util::StringAtom | streamerThreadName |
|
Util::Array< IndexT > | pendingLoads |
|
Util::Array< _PendingResourceUnload > | pendingUnloads |
|
Util::Array< _PendingStreamLod > | pendingStreamLods |
|
Threading::SafeQueue< _PendingStreamLod > | pendingStreamQueue |
|
Threading::SafeQueue< ResourceLoadOutput > | loadOutputs |
|
Util::Array< ResourceLoadJob > | dependentJobs |
|
Util::Dictionary< Resources::ResourceName, uint32_t > | ids |
|
Ids::IdPool | resourceInstanceIndexPool |
|
Util::FixedArray< Resources::ResourceName > | names |
|
Util::FixedArray< uint32_t > | usage |
|
Util::FixedArray< Util::StringAtom > | tags |
|
Util::FixedArray< Resource::State > | states |
|
Util::FixedArray< LoadState > | loadStates |
|
Util::FixedArray< ResourceId > | resources |
|
Util::FixedArray< Util::Array< _Callbacks > > | callbacks |
|
Util::FixedArray< _PendingResourceLoad > | loads |
|
Util::FixedArray< _LoadMetaData > | metaData |
|
Util::FixedArray< _StreamData > | streamDatas |
|
uint32_t | uniqueResourceId |
|
int32_t | uniqueId |
| id in resource manager
|
|
Threading::CriticalSection | asyncSection |
| async section to sync callbacks and pending list with thread
|
|
Threading::ThreadId | creatorThread |
|
static const uint32_t | ResourceIndexGrow = 512 |
|