Kiwano Engine  v1.2.x
kiwano::ResourceCache类 参考final

资源缓存 更多...

#include <ResourceCache.h>

类 kiwano::ResourceCache 继承关系图:
kiwano::ResourceCache 的协作图:

Public 成员函数

bool LoadFromJsonFile (const String &file_path)
 从 JSON 文件加载资源信息 更多...
 
bool LoadFromXmlFile (const String &file_path)
 从 XML 文件加载资源信息 更多...
 
ObjectBasePtr Get (const String &id) const
 获取资源 更多...
 
template<typename _Ty >
RefPtr< _Ty > Get (const String &id) const
 获取资源 更多...
 
void AddObject (const String &id, ObjectBasePtr obj)
 将对象放入缓存 更多...
 
void Remove (const String &id)
 删除指定资源 更多...
 
void Clear ()
 清空所有资源
 
- Public 成员函数 继承自 kiwano::ObjectBase
 ObjectBase ()
 构造基础对象
 
void SetName (const String &name)
 设置对象名
 
String GetName () const
 获取对象名
 
bool IsName (const String &name) const
 判断对象的名称是否相同 更多...
 
void * GetUserData () const
 获取用户数据
 
void SetUserData (void *data)
 设置用户数据
 
uint64_t GetObjectID () const
 获取对象ID
 
void DoSerialize (Serializer *serializer) const override
 序列化
 
void DoDeserialize (Deserializer *deserializer) override
 反序列化
 
virtual bool IsValid () const
 判断对象是否有效
 
ObjectStatusGetStatus () const
 获取对象状态
 
void SetStatus (const ObjectStatus &status)
 设置对象状态
 
void Fail (const String &msg, int code=ObjectStatus::fail)
 将对象标记为失败状态
 
void ClearStatus ()
 清除对象状态
 
- Public 成员函数 继承自 kiwano::RefObject
void Retain ()
 增加引用计数
 
void Release ()
 减少引用计数
 
uint32_t GetRefCount () const
 获取引用计数
 
- Public 成员函数 继承自 kiwano::Serializable
Vector< uint8_t > Serialize () const
 序列化为字节串
 
void Deserialize (const Vector< uint8_t > &data)
 从字节串反序列化
 

额外继承的成员函数

- 静态 Public 成员函数 继承自 kiwano::ObjectBase
static void SetObjectPolicy (const ObjectPolicyFunc &policy)
 设置对象处理策略
 
static bool IsTracingLeaks ()
 是否启用了内存泄漏追踪
 
static void StartTracingLeaks ()
 开始追踪内存泄漏
 
static void StopTracingLeaks ()
 停止追踪内存泄漏
 
static void DumpTracingObjects ()
 打印所有追踪中的对象信息
 
static Vector< ObjectBase * > & GetTracingObjects ()
 获取所有追踪中的对象
 
- 静态 Public 成员函数 继承自 kiwano::RefObject
static void * operator new (size_t size)
 
static void operator delete (void *ptr)
 
static void * operator new (size_t size, std::nothrow_t const &) noexcept
 
static void operator delete (void *ptr, std::nothrow_t const &) noexcept
 
static void * operator new (size_t size, void *ptr) noexcept
 
static void operator delete (void *ptr, void *place) noexcept
 

详细描述

资源缓存

成员函数说明

void kiwano::ResourceCache::AddObject ( const String &  id,
ObjectBasePtr  obj 
)

将对象放入缓存

参数
id对象ID
obj对象
ObjectBasePtr kiwano::ResourceCache::Get ( const String &  id) const

获取资源

参数
id对象ID
template<typename _Ty >
RefPtr<_Ty> kiwano::ResourceCache::Get ( const String &  id) const
inline

获取资源

模板参数
_Ty对象类型
参数
id对象ID
返回
指定对象类型的指针
bool kiwano::ResourceCache::LoadFromJsonFile ( const String &  file_path)

从 JSON 文件加载资源信息

参数
file_pathJSON文件路径
bool kiwano::ResourceCache::LoadFromXmlFile ( const String &  file_path)

从 XML 文件加载资源信息

参数
file_pathXML文件路径
void kiwano::ResourceCache::Remove ( const String &  id)

删除指定资源

参数
id对象ID