|
const xiiMeshResourceDescriptor & | GetDescriptor () const |
|
XII_ALWAYS_INLINE xiiStringView | GetResourceID () const |
| Returns the unique ID that identifies this resource. On a file resource this might be a path. Can also be a GUID or any other scheme that uniquely identifies the resource.
|
|
XII_ALWAYS_INLINE xiiUInt64 | GetResourceIDHash () const |
| Returns the hash of the unique ID.
|
|
void | SetResourceDescription (xiiStringView sDescription) |
| The resource description allows to store an additional string that might be more descriptive during debugging, than the unique ID.
|
|
const xiiString & | GetResourceDescription () const |
| The resource description allows to store an additional string that might be more descriptive during debugging, than the unique ID.
|
|
const xiiString & | GetResourceIdOrDescription () const |
| The returns the resource description, if available, otherwise the resource ID.
|
|
XII_ALWAYS_INLINE xiiResourceState | GetLoadingState () const |
| Returns the current state in which this resource is in.
|
|
XII_ALWAYS_INLINE xiiUInt8 | GetNumQualityLevelsDiscardable () const |
| Returns the current maximum quality level that the resource could have.
|
|
XII_ALWAYS_INLINE xiiUInt8 | GetNumQualityLevelsLoadable () const |
| Returns how many quality levels the resource may additionally load.
|
|
float | GetLoadingPriority (xiiTime now) const |
| Returns the priority that is used by the resource manager to determine which resource to load next.
|
|
xiiResourcePriority | GetPriority () const |
| Returns the current resource priority.
|
|
void | SetPriority (xiiResourcePriority priority) |
| Changes the current resource priority.
|
|
XII_ALWAYS_INLINE const xiiBitflags< xiiResourceFlags > & | GetBaseResourceFlags () const |
| Returns the basic flags for the resource type. Mostly used the resource manager.
|
|
XII_ALWAYS_INLINE const MemoryUsage & | GetMemoryUsage () const |
| Returns the information about the current memory usage of the resource.
|
|
XII_ALWAYS_INLINE xiiTime | GetLastAcquireTime () const |
| Returns the time at which the resource was (tried to be) acquired last. If a resource is acquired using xiiResourceAcquireMode::PointerOnly, this does not update the last acquired time, since the resource is not acquired for full use.
|
|
XII_ALWAYS_INLINE xiiInt32 | GetReferenceCount () const |
| Returns the reference count of this resource.
|
|
XII_ALWAYS_INLINE const xiiTimestamp & | GetLoadedFileModificationTime () const |
| Returns the modification date of the file from which this resource was loaded.
|
|
XII_ALWAYS_INLINE xiiUInt32 | GetCurrentResourceChangeCounter () const |
| Returns the current value of the resource change counter. Can be used to detect whether the resource has changed since using it last time.
|
|
XII_ALWAYS_INLINE void | IncResourceChangeCounter () |
| Allows to manually increase the resource change counter to signal that dependent code might need to update.
|
|
virtual void | ResetResource () |
| If the resource has modifications from the original state, it should reset itself to that state now (or force a reload on itself).
|
|
void | PrintHandleStackTraces () |
| Prints the stack-traces for all handles that currently reference this resource.
|
|
virtual const xiiRTTI * | GetDynamicRTTI () const |
|
bool | IsInstanceOf (const xiiRTTI *pType) const |
| Returns whether the type of this instance is of the given type or derived from it.
|
|
template<typename T> |
XII_ALWAYS_INLINE bool | IsInstanceOf () const |
| Returns whether the type of this instance is of the given type or derived from it.
|
|
|
enum class | DoUpdate { OnMainThread
, OnAnyThread
, OnGraphicsResourceThreads
} |
|
static const xiiRTTI * | GetStaticRTTI () |
|
xiiEvent< const xiiResourceEvent &, xiiMutex > | m_ResourceEvents |
|
static DoUpdate | UpdateGraphicsResource = xiiResource::DoUpdate::OnAnyThread |
|
enum class | Unload { AllQualityLevels
, OneQualityLevel
} |
|
| xiiResource (DoUpdate ResourceUpdateThread, xiiUInt8 uiQualityLevelsLoadable) |
| Default constructor.
|
|
virtual | ~xiiResource () |
| virtual destructor.
|
|
MemoryUsage & | ModifyMemoryUsage () |
| Non-const version for resources that want to write this variable directly.
|
|
void | SetIsReloadable (bool bIsReloadable) |
| Call this to specify whether a resource is reloadable.
|
|
void | SetHasLoadingFallback (bool bHasLoadingFallback) |
| Used internally by the code injection macros.
|
|